wente
2023-12-19 dd5c0e7704a9ed729492b328e42d22014067b0b4
web/src/views/modules/sys/user-add-or-update.vue
@@ -6,13 +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 :lineHeight="true" busi-type="users_avatar" model-name="dataForm" :dataForm="dataForm"
                             @getImageUrl="getImageUrl"
                             v-model="dataForm.files"/>
            <div v-if="dataForm.url" >
              <el-image :src="dataForm.url" v-for="url in dataForm.url" :key="url[0,1]"></el-image>
            <div v-if="dataForm.url">
              <el-image :src="dataForm.url"></el-image>
            </div>
          </zt-form-item>
          <zt-form-item prop="realName" label="用户签名">
            <config-uploader :lineHeight="true" :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>
@@ -59,13 +68,14 @@
            <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="所属专业"/>
          </zt-form-item>
          <zt-form-item prop="shipIds" v-if="false" label="负责舰" class="role-list">
            <local-ship-selector v-model="dataForm.shipIds"  multiple="multiple" placeholder="负责舰"/>
            <local-ship-selector v-model="dataForm.shipIds" multiple="multiple" placeholder="负责舰"/>
          </zt-form-item>
          <el-form-item prop="sort" v-if="false" :label="$t('dept.sort')">
            <el-input-number v-model="dataForm.sort" controls-position="right" :min="0"
@@ -82,6 +92,7 @@
  export default {
    data() {
      return {
        busiTypeVarName: 'files2',
        activeNames: ['1', '2'],
        postList: [],
        jobList: [],
@@ -103,15 +114,17 @@
          wechat: '',
          sort: 1,
          status: 1,
          register:0,
          teamgroupIds:'',
          register: 0,
          teamgroupIds: '',
          shipIds: '',
          url: []
          url: '',
          url2: '',
          files: [],
          files2: []
        }
      }
    },
    computed: {
    },
    computed: {},
    methods: {
      init() {
        this.getDeptList()
@@ -146,7 +159,7 @@
            ...res.data
          }
          this.getImageUrl()
          console.log(this.dataForm,"getInfo this.dataForm ")
          console.log(this.dataForm, "getInfo this.dataForm ")
        }
      },
      onDeptSelect(data, isChange) {
@@ -163,29 +176,25 @@
        }
      },
      getImageUrl() {
        let pictureId=[];
        pictureId = this.getFirstImageId(this.dataForm.files)
        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')
        }
        console.log(this.dataForm, 'this.dataForm')
        let pictureId = this.getFirstImageId(this.dataForm.files)
        console.log(pictureId, 'getImageUrl() pictureId')
        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
              }
            }
          }
@@ -195,7 +204,7 @@
      // 表单提交
      async formSubmit() {
        this.dataForm.companyId = this.companyId
        console.log(this.dataForm,'this.dataForm')
        console.log(this.dataForm, 'this.dataForm')
        let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/sys/userEx', this.dataForm)
        if (res.success) {
          await this.$tip.success()
@@ -207,39 +216,40 @@
  }
</script>
// <style lang="scss">
//   .mod-sys__user {
//     .role-list {
//       .el-select {
//         width: 100%;
//       }
//     }
//   }
//
<style lang="scss">
  //   .mod-sys__user {
  //     .role-list {
  //       .el-select {
  //         width: 100%;
  //       }
  //     }
  //   }
//   .avatar-uploader .el-upload {
//     border: 1px dashed #d9d9d9;
//     border-radius: 6px;
//     cursor: pointer;
//     position: relative;
//     overflow: hidden;
//   }
  //   .avatar-uploader .el-upload {
  //     border: 1px dashed #d9d9d9;
  //     border-radius: 6px;
  //     cursor: pointer;
  //     position: relative;
  //     overflow: hidden;
  //   }
//   .avatar-uploader .el-upload:hover {
//     border-color: #409EFF;
//   }
  //   .avatar-uploader .el-upload:hover {
  //     border-color: #409EFF;
  //   }
//   .avatar-uploader-icon {
//     font-size: 2.8px;
//     color: #8c939d;
//     width: 27.8px;
//     height: 27.8px;
//     line-height: 27.8px;
//     text-align: center;
//   }
  //   .avatar-uploader-icon {
  //     font-size: 2.8px;
  //     color: #8c939d;
  //     width: 27.8px;
  //     height: 27.8px;
  //     line-height: 27.8px;
  //     text-align: center;
  //   }
//   .avatar {
//     width: 27.8px;
//     height: 27.8px;
//     display: block;
//   }
// </style>
  //   .avatar {
  //     width: 27.8px;
  //     height: 27.8px;
  //     display: block;
  //   }
  // </style>