From 478c128ba2796ee79540fb32bd554e92552b5ffd Mon Sep 17 00:00:00 2001 From: dataprince Date: Sun, 3 Dec 2023 09:40:49 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=BF=E7=94=A8MinIO=E5=AD=98=E5=82=A8?= =?UTF-8?q?=E4=B8=AA=E4=BA=BA=E5=A4=B4=E5=83=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- flex-ui/src/api/system/oss.js | 26 ++ flex-ui/src/api/system/ossConfig.js | 58 +++ flex-ui/src/api/system/user.js | 1 + flex-ui/src/components/FileUpload/index.vue | 44 ++- flex-ui/src/components/ImageUpload/index.vue | 44 ++- flex-ui/src/store/modules/user.js | 2 +- flex-ui/src/views/system/oss/config.vue | 337 ++++++++++++++++++ flex-ui/src/views/system/oss/index.vue | 330 +++++++++++++++++ .../src/views/system/user/profile/index.vue | 4 +- .../views/system/user/profile/userAvatar.vue | 139 ++++---- .../ruoyi/common/core/service/OssService.java | 18 + ruoyi-common/ruoyi-common-oss/pom.xml | 35 ++ .../common/oss/constant/OssConstant.java | 38 ++ .../com/ruoyi/common/oss/core/OssClient.java | 262 ++++++++++++++ .../ruoyi/common/oss/entity/UploadResult.java | 24 ++ .../common/oss/enumd/AccessPolicyType.java | 55 +++ .../ruoyi/common/oss/enumd/PolicyType.java | 35 ++ .../common/oss/exception/OssException.java | 19 + .../ruoyi/common/oss/factory/OssFactory.java | 65 ++++ .../common/oss/properties/OssProperties.java | 63 ++++ .../system/SysOssConfigController.java | 124 +++++++ .../controller/system/SysOssController.java | 110 ++++++ .../system/SysProfileController.java | 14 +- .../java/com/ruoyi/system/domain/SysOss.java | 50 +++ .../com/ruoyi/system/domain/SysOssConfig.java | 89 +++++ .../java/com/ruoyi/system/domain/SysUser.java | 251 +------------ .../com/ruoyi/system/domain/bo/SysOssBo.java | 49 +++ .../system/domain/bo/SysOssConfigBo.java | 109 ++++++ .../system/domain/vo/SysOssConfigVo.java | 97 +++++ .../system/domain/vo/SysOssUploadVo.java | 28 ++ .../com/ruoyi/system/domain/vo/SysOssVo.java | 69 ++++ .../com/ruoyi/system/domain/vo/SysUserVo.java | 13 +- .../system/mapper/SysOssConfigMapper.java | 17 + .../com/ruoyi/system/mapper/SysOssMapper.java | 14 + .../runner/SystemApplicationRunner.java | 28 ++ .../system/service/ISysOssConfigService.java | 66 ++++ .../ruoyi/system/service/ISysOssService.java | 37 ++ .../ruoyi/system/service/ISysUserService.java | 6 +- .../service/impl/SysOssConfigServiceImpl.java | 192 ++++++++++ .../service/impl/SysOssServiceImpl.java | 221 ++++++++++++ .../service/impl/SysUserServiceImpl.java | 13 +- .../mapper/system/SysOssConfigMapper.xml | 7 + .../resources/mapper/system/SysOssMapper.xml | 5 + 43 files changed, 2844 insertions(+), 364 deletions(-) create mode 100644 flex-ui/src/api/system/oss.js create mode 100644 flex-ui/src/api/system/ossConfig.js create mode 100644 flex-ui/src/views/system/oss/config.vue create mode 100644 flex-ui/src/views/system/oss/index.vue create mode 100644 ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/service/OssService.java create mode 100644 ruoyi-common/ruoyi-common-oss/pom.xml create mode 100644 ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/constant/OssConstant.java create mode 100644 ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/core/OssClient.java create mode 100644 ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/entity/UploadResult.java create mode 100644 ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/enumd/AccessPolicyType.java create mode 100644 ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/enumd/PolicyType.java create mode 100644 ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/exception/OssException.java create mode 100644 ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/factory/OssFactory.java create mode 100644 ruoyi-common/ruoyi-common-oss/src/main/java/com/ruoyi/common/oss/properties/OssProperties.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysOssConfigController.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/system/SysOssController.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysOss.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysOssConfig.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/bo/SysOssBo.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/bo/SysOssConfigBo.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysOssConfigVo.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysOssUploadVo.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysOssVo.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysOssConfigMapper.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysOssMapper.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/runner/SystemApplicationRunner.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysOssConfigService.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysOssService.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssConfigServiceImpl.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java create mode 100644 ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysOssConfigMapper.xml create mode 100644 ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysOssMapper.xml diff --git a/flex-ui/src/api/system/oss.js b/flex-ui/src/api/system/oss.js new file mode 100644 index 0000000..5cb1b01 --- /dev/null +++ b/flex-ui/src/api/system/oss.js @@ -0,0 +1,26 @@ +import request from '@/utils/request'; + +// 查询OSS对象存储列表 +export function listOss(query) { + return request({ + url: '/resource/oss/list', + method: 'get', + params: query + }); +} + +// 查询OSS对象基于id串 +export function listByIds(ossId) { + return request({ + url: '/resource/oss/listByIds/' + ossId, + method: 'get' + }); +} + +// 删除OSS对象存储 +export function delOss(ossId) { + return request({ + url: '/resource/oss/' + ossId, + method: 'delete' + }); +} diff --git a/flex-ui/src/api/system/ossConfig.js b/flex-ui/src/api/system/ossConfig.js new file mode 100644 index 0000000..29a8549 --- /dev/null +++ b/flex-ui/src/api/system/ossConfig.js @@ -0,0 +1,58 @@ +import request from '@/utils/request'; + +// 查询对象存储配置列表 +export function listOssConfig(query) { + return request({ + url: '/resource/oss/config/list', + method: 'get', + params: query + }); +} + +// 查询对象存储配置详细 +export function getOssConfig(ossConfigId) { + return request({ + url: '/resource/oss/config/' + ossConfigId, + method: 'get' + }); +} + +// 新增对象存储配置 +export function addOssConfig(data) { + return request({ + url: '/resource/oss/config', + method: 'post', + data: data + }); +} + +// 修改对象存储配置 +export function updateOssConfig(data) { + return request({ + url: '/resource/oss/config', + method: 'put', + data: data + }); +} + +// 删除对象存储配置 +export function delOssConfig(ossConfigId) { + return request({ + url: '/resource/oss/config/' + ossConfigId, + method: 'delete' + }); +} + +// 对象存储状态修改 +export function changeOssConfigStatus(ossConfigId, status, configKey) { + const data = { + ossConfigId, + status, + configKey + }; + return request({ + url: '/resource/oss/config/changeStatus', + method: 'put', + data: data + }); +} diff --git a/flex-ui/src/api/system/user.js b/flex-ui/src/api/system/user.js index f2f76ef..7064297 100644 --- a/flex-ui/src/api/system/user.js +++ b/flex-ui/src/api/system/user.js @@ -104,6 +104,7 @@ export function updateUserPwd(oldPassword, newPassword) { export function uploadAvatar(data) { return request({ url: '/system/user/profile/avatar', + headers: { 'Content-Type': 'multipart/form-data' }, method: 'post', data: data }) diff --git a/flex-ui/src/components/FileUpload/index.vue b/flex-ui/src/components/FileUpload/index.vue index 16e1fb0..383f526 100644 --- a/flex-ui/src/components/FileUpload/index.vue +++ b/flex-ui/src/components/FileUpload/index.vue @@ -39,7 +39,8 @@ diff --git a/flex-ui/src/components/ImageUpload/index.vue b/flex-ui/src/components/ImageUpload/index.vue index 55dafb8..b0635f4 100644 --- a/flex-ui/src/components/ImageUpload/index.vue +++ b/flex-ui/src/components/ImageUpload/index.vue @@ -46,7 +46,8 @@ @@ -210,4 +220,4 @@ function listToString(list, separator) { :deep(.hide .el-upload--picture-card) { display: none; } - \ No newline at end of file + diff --git a/flex-ui/src/store/modules/user.js b/flex-ui/src/store/modules/user.js index 434815c..29be1ba 100644 --- a/flex-ui/src/store/modules/user.js +++ b/flex-ui/src/store/modules/user.js @@ -36,7 +36,7 @@ const useUserStore = defineStore( return new Promise((resolve, reject) => { getInfo().then(res => { const user = res.user - const avatar = (user.avatar == "" || user.avatar == null) ? defAva : import.meta.env.VITE_APP_BASE_API + user.avatar; + const avatar = (user.url == "" || user.url == null) ? defAva : user.url; if (res.roles && res.roles.length > 0) { // 验证返回的roles是否是一个非空数组 this.roles = res.roles diff --git a/flex-ui/src/views/system/oss/config.vue b/flex-ui/src/views/system/oss/config.vue new file mode 100644 index 0000000..ccf2a31 --- /dev/null +++ b/flex-ui/src/views/system/oss/config.vue @@ -0,0 +1,337 @@ + + + diff --git a/flex-ui/src/views/system/oss/index.vue b/flex-ui/src/views/system/oss/index.vue new file mode 100644 index 0000000..1435649 --- /dev/null +++ b/flex-ui/src/views/system/oss/index.vue @@ -0,0 +1,330 @@ + + + diff --git a/flex-ui/src/views/system/user/profile/index.vue b/flex-ui/src/views/system/user/profile/index.vue index 77dbe8b..3bb80e7 100644 --- a/flex-ui/src/views/system/user/profile/index.vue +++ b/flex-ui/src/views/system/user/profile/index.vue @@ -1,6 +1,6 @@