web/src/components/config-uploader/src/config-uploader.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
web/src/views/modules/sys/user-add-or-update.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zt/common/src/main/java/com/zt/core/sys/model/SysUser.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zt/core/src/main/java/com/zt/modules/oss/controller/SysOssController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zt/core/src/main/java/com/zt/modules/sys/controller/SysUserController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
zt/core/src/main/java/com/zt/modules/sys/service/SysUserService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
web/src/components/config-uploader/src/config-uploader.vue
@@ -69,6 +69,10 @@ name: 'ConfigUploader', components: {}, props: { busiTypeVarName: { type : String, default:'files' }, lineHeight:{ type:Boolean, default:false @@ -86,9 +90,9 @@ computed: { fields() { let arr = [] if (this.dataForm.files && this.dataForm.files.groups) { if (this.value && this.value.groups) { console.log(this.dataForm,"fields this.dataForm") this.dataForm.files.groups.forEach(group => { this.value.groups.forEach(group => { group.fields.forEach(field => { let arrType = [] if (field.fileTypes) { @@ -109,9 +113,8 @@ ...this.getOss(), ...(val || {}) } // this.dataForm.files = this.oss this.$set(this.dataForm, 'files', this.oss) this.$set(this.dataForm, this.busiTypeVarName, this.oss) console.log(this.fields, 'watch this.fields') // 分解到每个字段给dataForm赋值 this.fields.forEach(field => { // this.dataForm[field.busiField] = field.files @@ -126,8 +129,7 @@ this.oss.groups.forEach(group => { this.activeNames.push(group.busiFieldGroup) }) // this.dataForm.files = this.oss this.$set(this.dataForm, 'files', this.oss) this.$set(this.dataForm, this.busiTypeVarName, this.oss) } }, methods: { @@ -157,6 +159,7 @@ }, change(busiField) { console.log(busiField, 'config_uploader change(busiField) busiField') console.log(this.fields, 'change this.fields') this.fields.forEach(field => { if (field.busiField === busiField) { field.files.length = 0 web/src/views/modules/sys/user-add-or-update.vue
@@ -6,12 +6,22 @@ <template slot="title"> <el-tag>{{ $t('user.title') }}</el-tag> </template> <config-uploader busi-type="users" model-name="dataForm" :dataForm="dataForm" <zt-form-item prop="username" label="用户头像"> <config-uploader busi-type="users_avatar" model-name="dataForm" :dataForm="dataForm" @getImageUrl="getImageUrl" v-model="dataForm.files"/> <div v-if="dataForm.url"> <el-image v-for="(url, index) in dataForm.url" :key="index" :src="url"></el-image> <el-image :src="dataForm.url"></el-image> </div> </zt-form-item> <zt-form-item prop="realName" label="用户签名"> <config-uploader :busiTypeVarName="busiTypeVarName" busi-type="users_sign" model-name="dataForm" :dataForm="dataForm" @getImageUrl="getImageUrl" v-model="dataForm.files2"/> <div v-if="dataForm.url2"> <el-image :src="dataForm.url2"></el-image> </div> </zt-form-item> <zt-form-item prop="username" :label="$t('user.username')" rules="required"> <el-input v-model="dataForm.username" :placeholder="$t('user.username')"></el-input> </zt-form-item> @@ -58,7 +68,8 @@ <zt-combo-tree v-model="dataForm.jobIdList" :datas="jobList" multiple :check-strictly="true"/> </zt-form-item> <zt-form-item prop="postIdList" :label="$t('user.postIdList')" class="role-list"> <zt-select v-model="dataForm.postIdList" :datas="postList" multiple :placeholder="$t('user.setPost')"></zt-select> <zt-select v-model="dataForm.postIdList" :datas="postList" multiple :placeholder="$t('user.setPost')"></zt-select> </zt-form-item> <zt-form-item prop="teamgroupIds" label="所属专业" class="role-list"> <team-group-selector v-model="dataForm.teamgroupIds" multiple="multiple" leafOnly placeholder="所属专业"/> @@ -81,6 +92,7 @@ export default { data() { return { busiTypeVarName: 'files2', activeNames: ['1', '2'], postList: [], jobList: [], @@ -105,12 +117,14 @@ register:0, teamgroupIds:'', shipIds: '', url: [] url: '', url2: '', files: [], files2: [] } } }, computed: { }, computed: {}, methods: { init() { this.getDeptList() @@ -162,32 +176,25 @@ } }, getImageUrl() { let pictureId=[] pictureId = this.getFirstImageId(this.dataForm.files) console.log(this.dataForm, 'this.dataForm') let pictureId = this.getFirstImageId(this.dataForm.files) console.log(pictureId,'getImageUrl() pictureId') if(pictureId.length>0){ for (let i=0;i<=pictureId.length;i++){ pictureId=pictureId[i] this.dataForm.url[i] = `${window.SITE_CONFIG['apiURL']}/sys/oss/content2?fileId=${pictureId}` console.log(this.dataForm.url[i], ' this.dataForm.url') } } this.dataForm.url = `${window.SITE_CONFIG['apiURL']}/sys/oss/content2?fileId=${pictureId}` let pictureId2 = this.getFirstImageId(this.dataForm.files2) console.log(pictureId2, 'getImageUrl() pictureId') this.dataForm.url2 = `${window.SITE_CONFIG['apiURL']}/sys/oss/content2?fileId=${pictureId2}` }, getFirstImageId(oss) { console.log(oss, ' getFirstImageId(oss)') let fileId = [] let fileId = 0 if (oss != null) { if (oss.groups.length > 0) { let group1 = oss.groups[0] let group2 = oss.groups[0] if (group1.fields.length > 0 ||group2.fields.length > 0 ) { let field1 = group1.fields[0] let field2 = group2.fields[0] if (field1.files.length > 0 || field2.files.length > 0) { let file1 = field1.files[0] let file2 = field2.files[0] fileId[0]=file1.id fileId[1]=file2.id let group = oss.groups[0] if (group.fields.length > 0) { let field = group.fields[0] if (field.files.length > 0) { let file = field.files[0] fileId = file.id } } } @@ -209,7 +216,8 @@ } </script> // <style lang="scss"> // <style lang="scss"> // .mod-sys__user { // .role-list { // .el-select { zt/common/src/main/java/com/zt/core/sys/model/SysUser.java
@@ -151,6 +151,11 @@ @TableField(exist = false) private OssDto files; @OssField("用户头像") @ApiModelProperty(value = "用户头像") @TableField(exist = false) private OssDto files2; @ApiModelProperty(value = "岗位ID列表") @TableField(exist = false) private List<Long> postIdList = new ArrayList<>(); zt/core/src/main/java/com/zt/modules/oss/controller/SysOssController.java
@@ -8,6 +8,7 @@ package com.zt.modules.oss.controller; import cn.hutool.core.convert.Convert; import com.zt.common.annotation.LogOperation; import com.zt.common.annotation.QueryParam; import com.zt.common.constant.Constant; @@ -127,7 +128,7 @@ //String id = fileId; String id = request.getParameter("fileId"); if (StringUtils.isNotEmpty(id)) { SysOss oss = sysOssService.getById(Long.parseLong(id)); SysOss oss = sysOssService.getById(Convert.toLong(id)); if (CloudChannel.LOCAL.getValue().equals(oss.getChannel())) { // 本地 System.out.println(CloudChannel.LOCAL.getValue()); System.out.println(oss.getChannel()); zt/core/src/main/java/com/zt/modules/sys/controller/SysUserController.java
@@ -105,10 +105,14 @@ public Result<SysUser> get(@PathVariable("id") Long id) { SysUser data = sysUserService.get(id); if (data != null) { OssDto ossDto= sysOssConfigService.getOssByBusiType(data.getId() , "users"); OssDto ossDto= sysOssConfigService.getOssByBusiType(data.getId() , "users_avatar"); if (ossDto != null) { data.setFiles(ossDto); } OssDto ossDto2= sysOssConfigService.getOssByBusiType(data.getId() , "users_sign"); if (ossDto2 != null) { data.setFiles2(ossDto2); } } // 用户岗位列表 data.setPostIdList(sysPostUserService.getUserPosts(id).stream().map(post -> post.getId()) zt/core/src/main/java/com/zt/modules/sys/service/SysUserService.java
@@ -167,6 +167,7 @@ entity.setCompanyId(sysDeptService.getCompanyIdByDeptId(entity.getDeptId())); // 保存用户 sysOssConfigService.updateOss(entity.getId(), entity.getFiles()); sysOssConfigService.updateOss(entity.getId(), entity.getFiles2()); super.insert(entity); sysPostUserService.saveOrUpdate(entity.getId(), entity.getPostIdList()); @@ -180,6 +181,7 @@ // 更新用户 entity.setCompanyId(sysDeptService.getCompanyIdByDeptId(entity.getDeptId())); sysOssConfigService.updateOss(entity.getId(), entity.getFiles()); sysOssConfigService.updateOss(entity.getId(), entity.getFiles2()); super.update(entity); // 保存岗位用户关系