From ad184fccffccbc3b9906e9ff45d2f2364e6509ce Mon Sep 17 00:00:00 2001 From: "udf_admin@163.com" Date: Tue, 5 May 2020 13:49:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- admin/src/App.vue | 9 +++-- admin/src/api/file.js | 11 +++++- admin/src/components/userCenter.vue | 9 +++-- .../org/itkk/udf/api/common/dto/UserDto.java | 5 --- .../page/auth/CommonHandlerInterceptor.java | 5 ++- .../itkk/udf/api/page/web/HomeController.java | 9 +++++ .../udf/api/rbac/service/UserService.java | 8 ----- .../src/main/resources/rbac/api.properties | 4 +++ .../resources/rbac/role-public.properties | 2 +- .../src/main/resources/templates/common.html | 15 ++++---- udf-starter/pom.xml | 1 + udf-starter/udf-starter-file-db/pom.xml | 6 ++++ .../udf/starter/file/db/DbFileConstant.java | 25 ++++++++++++++ .../file/db/service/DbFileService.java | 34 +++++++++++++++---- .../file/db/web/DbFileBaseController.java | 14 ++++---- 15 files changed, 117 insertions(+), 40 deletions(-) create mode 100644 udf-starter/udf-starter-file-db/src/main/java/org/itkk/udf/starter/file/db/DbFileConstant.java diff --git a/admin/src/App.vue b/admin/src/App.vue index 993f638..75aacfc 100644 --- a/admin/src/App.vue +++ b/admin/src/App.vue @@ -52,7 +52,8 @@
- + {{userDto.nickName}} @@ -68,7 +69,8 @@
- + @@ -147,6 +149,7 @@ import glob from "./assets/js/glob"; import leftMenu from "./components/leftMenu"; import userCenter from "./components/userCenter"; + import api_file from "./api/file"; export default { name: 'App', @@ -203,6 +206,7 @@ showSearchInput: false, searchInputText: null, userDto: {}, + avatarFilePath: null, menu: [], elAsideShow: true, leftMenuDrawerShow: false, @@ -233,6 +237,7 @@ //获得用户信息 const userDtoResponse = await api_rbac.infoByToken(glob.getToken()); this.userDto = userDtoResponse.data.result; + this.avatarFilePath = api_file.preview(this.userDto.avatarFileId, 40, 40); //获得菜单 const menuResponse = await api_rbac.menu(); this.menu = menuResponse.data.result; diff --git a/admin/src/api/file.js b/admin/src/api/file.js index 2b69c79..5bf8359 100644 --- a/admin/src/api/file.js +++ b/admin/src/api/file.js @@ -1,4 +1,13 @@ +import glob from "../assets/js/glob"; + const api_file = { - upload: (formData = {}) => axios.post('/private/file/upload', formData, {'Content-Type': 'multipart/form-data'}) + upload: (formData = {}) => axios.post('/private/file/upload', formData, {'Content-Type': 'multipart/form-data'}), + preview: (fileId = "", width, height) => { + let path = process.env.VUE_APP_BASE_URL + 'api/udf/web/private/file/preview/' + fileId + '?token=' + glob.getToken(); + if (width && height) { + path += '&width=' + width + '&height=' + height; + } + return path; + } }; export default api_file; diff --git a/admin/src/components/userCenter.vue b/admin/src/components/userCenter.vue index 0c8af24..a2d0b06 100644 --- a/admin/src/components/userCenter.vue +++ b/admin/src/components/userCenter.vue @@ -14,7 +14,7 @@ :show-file-list="false" :before-upload="beforeAvatarFileUpload" :http-request="avatarFileUpload"> - + @@ -35,7 +35,8 @@ data() { return { elUserCenter: {}, - form: {} + form: {}, + avatarFilePath: null } }, methods: { @@ -50,12 +51,14 @@ const loading = this.$loading({target: this.elUserCenter, lock: true,}); api_rbac.infoByToken(glob.getToken()).then(response => { this.form = response.data.result; + this.avatarFilePath = api_file.preview(this.form.avatarFileId); }).finally(() => loading.close()); }, //重置 reset() { this.elUserCenter = document.getElementsByClassName('userCenter')[0]; this.form = {}; + this.avatarFilePath = null; }, //保存按钮点击事件 saveBtnClick() { @@ -89,7 +92,7 @@ api_file.upload(data).then(response => { const fileInfo = response.data.result; this.form.avatarFileId = fileInfo.id; - this.form.avatarFilePath = '/file/' + fileInfo.rootPathCode + '/' + fileInfo.physicalRelativePath + '/' + fileInfo.physicalFileName; + this.avatarFilePath = api_file.preview(this.form.avatarFileId); }).finally(() => loading.close()); } } diff --git a/udf-api/udf-api-common/src/main/java/org/itkk/udf/api/common/dto/UserDto.java b/udf-api/udf-api-common/src/main/java/org/itkk/udf/api/common/dto/UserDto.java index cb96d3f..8074297 100644 --- a/udf-api/udf-api-common/src/main/java/org/itkk/udf/api/common/dto/UserDto.java +++ b/udf-api/udf-api-common/src/main/java/org/itkk/udf/api/common/dto/UserDto.java @@ -40,11 +40,6 @@ public class UserDto implements Serializable { */ private String avatarFileId; - /** - * 用户头像路径 - */ - private String avatarFilePath; - /** * 用户状态 (1:正常) */ diff --git a/udf-api/udf-api-page/src/main/java/org/itkk/udf/api/page/auth/CommonHandlerInterceptor.java b/udf-api/udf-api-page/src/main/java/org/itkk/udf/api/page/auth/CommonHandlerInterceptor.java index 2dc0d34..499ceb8 100644 --- a/udf-api/udf-api-page/src/main/java/org/itkk/udf/api/page/auth/CommonHandlerInterceptor.java +++ b/udf-api/udf-api-page/src/main/java/org/itkk/udf/api/page/auth/CommonHandlerInterceptor.java @@ -2,6 +2,7 @@ package org.itkk.udf.api.page.auth; import lombok.extern.slf4j.Slf4j; +import org.itkk.udf.api.common.CommonConstant; import org.itkk.udf.api.common.CommonUtil; import org.itkk.udf.api.common.dto.UserDto; import org.itkk.udf.api.common.service.IUserService; @@ -30,8 +31,10 @@ public class CommonHandlerInterceptor implements HandlerInterceptor { UserDto userDto = iUserService.infoByToken(CommonUtil.getTokenByCookie(request)); //判断是否登陆 if (userDto != null) { + //放入token + modelAndView.addObject(CommonConstant.PARAMETER_NAME_TOKEN, CommonUtil.getTokenByCookie(request)); //放入用户信息 - modelAndView.addObject("userDto", userDto); + modelAndView.addObject(CommonConstant.PARAMETER_NAME_TOKEN_INFO, userDto); } } } diff --git a/udf-api/udf-api-page/src/main/java/org/itkk/udf/api/page/web/HomeController.java b/udf-api/udf-api-page/src/main/java/org/itkk/udf/api/page/web/HomeController.java index 5ff4a7f..8510b7d 100644 --- a/udf-api/udf-api-page/src/main/java/org/itkk/udf/api/page/web/HomeController.java +++ b/udf-api/udf-api-page/src/main/java/org/itkk/udf/api/page/web/HomeController.java @@ -1,6 +1,8 @@ package org.itkk.udf.api.page.web; import org.apache.commons.lang3.StringUtils; +import org.itkk.udf.starter.file.db.service.DbFileService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; @@ -8,6 +10,13 @@ import org.springframework.web.bind.annotation.RequestParam; @Controller public class HomeController { + + /** + * + */ + @Autowired + private DbFileService dbFileService; + /** * 首页 * diff --git a/udf-api/udf-api-rbac/src/main/java/org/itkk/udf/api/rbac/service/UserService.java b/udf-api/udf-api-rbac/src/main/java/org/itkk/udf/api/rbac/service/UserService.java index 41b9acf..fea28b7 100644 --- a/udf-api/udf-api-rbac/src/main/java/org/itkk/udf/api/rbac/service/UserService.java +++ b/udf-api/udf-api-rbac/src/main/java/org/itkk/udf/api/rbac/service/UserService.java @@ -20,7 +20,6 @@ import org.itkk.udf.starter.cache.db.service.DbCacheService; import org.itkk.udf.starter.core.CoreUtil; import org.itkk.udf.starter.core.exception.ParameterValidException; import org.itkk.udf.starter.core.id.IdWorker; -import org.itkk.udf.starter.file.db.dto.DbFileInfoDto; import org.itkk.udf.starter.file.db.service.DbFileService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -259,13 +258,6 @@ public class UserService implements IUserService { userDto = new UserDto(); //转换 CoreUtil.copyPropertiesIgnoreNull(userEntity, userDto); - //获得头像路径 - if (StringUtils.isNotBlank(userDto.getAvatarFileId())) { - DbFileInfoDto dbFileInfoDto = dbFileService.get(userDto.getAvatarFileId()); - if (dbFileInfoDto != null) { - userDto.setAvatarFilePath("/file/" + dbFileInfoDto.getRootPathCode() + "/" + dbFileInfoDto.getPhysicalRelativePath() + "/" + dbFileInfoDto.getPhysicalFileName()); - } - } } //返回 return userDto; diff --git a/udf-api/udf-api-rbac/src/main/resources/rbac/api.properties b/udf-api/udf-api-rbac/src/main/resources/rbac/api.properties index 5e68df2..715708b 100644 --- a/udf-api/udf-api-rbac/src/main/resources/rbac/api.properties +++ b/udf-api/udf-api-rbac/src/main/resources/rbac/api.properties @@ -14,6 +14,10 @@ org.itkk.udf.api.rbac.api.fileUpload.name=\u6587\u4EF6\u4E0A\u4F20 org.itkk.udf.api.rbac.api.fileUpload.uri=/api/udf/web/private/file/upload org.itkk.udf.api.rbac.api.fileUpload.method=POST # +org.itkk.udf.api.rbac.api.filePreview.name=\u6587\u4EF6\u9884\u89C8 +org.itkk.udf.api.rbac.api.filePreview.uri=/api/udf/web/private/file/preview/{id} +org.itkk.udf.api.rbac.api.filePreview.method=GET +# org.itkk.udf.api.rbac.api.updateUser.name=\u66F4\u65B0\u7528\u6237\u4FE1\u606F org.itkk.udf.api.rbac.api.updateUser.uri=/api/udf/web/private/rbac/user/save org.itkk.udf.api.rbac.api.updateUser.method=PUT diff --git a/udf-api/udf-api-rbac/src/main/resources/rbac/role-public.properties b/udf-api/udf-api-rbac/src/main/resources/rbac/role-public.properties index fd2c8a8..351af61 100644 --- a/udf-api/udf-api-rbac/src/main/resources/rbac/role-public.properties +++ b/udf-api/udf-api-rbac/src/main/resources/rbac/role-public.properties @@ -1,3 +1,3 @@ org.itkk.udf.api.rbac.rolePublic.publicRole.name=\u516C\u5171\u89D2\u8272 -org.itkk.udf.api.rbac.rolePublic.publicRole.apis=infoByToken,logout,menu,fileUpload,updateUser +org.itkk.udf.api.rbac.rolePublic.publicRole.apis=infoByToken,logout,menu,fileUpload,filePreview,updateUser diff --git a/udf-api/udf-api-server/src/main/resources/templates/common.html b/udf-api/udf-api-server/src/main/resources/templates/common.html index ed69e01..d912bec 100644 --- a/udf-api/udf-api-server/src/main/resources/templates/common.html +++ b/udf-api/udf-api-server/src/main/resources/templates/common.html @@ -328,7 +328,7 @@ -
+
-
- - 头像 + 头像
-