yz_08
2021-02-24 3ca12c43a0cb1680e2508ca2d16bd207e29cb5c1
修改云盘智搜-附件管理,基础界面
6个文件已修改
158 ■■■■■ 已修改文件
src/settings.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/request.js 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/user/Informationinput.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/yunpan/fujian.vue 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/yunpan/uploadfj.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/yunpan/zhishou.vue 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/settings.js
@@ -25,6 +25,6 @@
    // 个人文件上传地址
    uploadSinglePath: 'http://120.24.23.155:8301/hr/empAccessory',
    // 个人文件上传地址
    getEmpBaseInfoImage: 'http://127.0.0.1:8301/hr/empBaseInfo/image/'
    getEmpBaseInfoImage: 'http://120.24.23.155:8301/hr/empBaseInfo/image/'
  }
}
src/utils/request.js
@@ -84,10 +84,12 @@
        })
        break
      case 401:
        Message({
          message: '很抱歉,认证已失效,请重新登录',
          type: 'error',
          duration: messageDuration
        MessageBox.alert('很抱歉,认证已失效', '温馨提示', {
          confirmButtonText: '确定',
          showClose: false,
          callback: action => {
            router.push('/login')
          }
        })
        break
      default:
@@ -151,7 +153,7 @@
        return tansParams(params)
      }],
      headers: {
        'Content-Type': 'multipart/form-data'
        'Content-Type': 'application/x-www-form-urlencoded'
      }
    })
  },
src/views/user/Informationinput.vue
@@ -72,7 +72,6 @@
              </el-button>
            </template>
          </el-table-column>
          <el-table-column prop="" label="照片" width="60" />
          <el-table-column prop="empNumb" label="员工编号" width="100" />
          <el-table-column prop="empName" label="姓名" width="100" />
          <el-table-column prop="deptName" label="护卫点" width="100" />
src/views/yunpan/fujian.vue
@@ -3,13 +3,12 @@
    <el-container>
      <el-header :height="headerHeight">
        <el-row class="search-title">
          <el-col :span="18" class="title">
          <el-col :span="16" class="title">
            <div class="zs-title">附件管理</div>
          </el-col>
          <el-col :span="6" class="search">
            <el-input v-model="empName" class="input-empName" maxlength="10" size="medium" style="width:220px">
              <el-button slot="append" icon="el-icon-search" @click.native="findEmpAccessory()" />
            </el-input>
          <el-col :span="8" class="search">
            <el-input v-model="basic" class="input-empName" maxlength="10" size="medium" style="width:220px" />
            <el-button type="primary" size="mini" @click="findEmpAccessory()">查询</el-button>
            <el-button
              type="danger"
              size="mini"
@@ -140,6 +139,18 @@
                    </el-checkbox-group>
                  </td>
                </tr>
                <tr>
                  <td class="td">员工状态:</td>
                  <td class="td-group">
                    <el-checkbox-group v-model="queryform.empStatus" class="fj-checkbox">
                      <el-checkbox label="" @change="selectAllEmpStatus">全部</el-checkbox>
                      <el-checkbox label="0">在职</el-checkbox>
                      <el-checkbox label="1">正常离职</el-checkbox>
                      <el-checkbox label="2">自动离职</el-checkbox>
                      <el-checkbox label="3">公司辞退</el-checkbox>
                    </el-checkbox-group>
                  </td>
                </tr>
              </table>
            </el-col>
          </el-row>
@@ -258,8 +269,8 @@
          </el-col>
        </el-row>
        <el-dialog title="附件管理" :visible.sync="dialogShowUploadfj" width="80%" class="fjgl-class" top="10px">
          <uploadfj v-if="dialogShowUploadfj" :rowitem="rowitem" @cancleChooseUser="cancleChooseUser()" />
        <el-dialog title="附件管理" :visible.sync="dialogShowUploadfj" width="80%" class="fjgl-class" top="10px" @close="closeDialog()">
          <uploadfj v-if="dialogShowUploadfj" :rowitem="rowitem" />
        </el-dialog>
        <el-table ref="empAccessoryTable" :data="tableData" class="fj-table" style="width: 100%;color: #000;">
          <el-table-column
@@ -277,10 +288,10 @@
              </el-button>
            </template>
          </el-table-column>
          <el-table-column prop="empName" label="姓名" width="100" />
          <el-table-column prop="certificateNumb" label="身份证号" width="180" />
          <el-table-column prop="deptName" label="护卫点(部门)" width="180" />
          <el-table-column prop="jobName" label="岗位" width="100" />
          <el-table-column prop="empName" label="姓名" />
          <el-table-column prop="certificateNumb" label="身份证号" />
          <el-table-column prop="deptName" label="护卫点(部门)" />
          <el-table-column prop="jobName" label="岗位" />
          <template v-for="(col) in labelData">
            <el-table-column :key="col.labelid" :prop="col.labelcode" :label="col.labelname">
              <template slot-scope="scope">
@@ -340,8 +351,9 @@
        labelid: [{ required: true, message: '请选择标签', trigger: 'change' }]
      },
      dialogShowUploadfj: false,
      empName: '',
      basic: '',
      queryform: {
        basic: '',
        empNumb: '',
        empName: '',
        certificateNumb: '',
@@ -352,7 +364,8 @@
        politics: [],
        age: [],
        archivesStatus: [],
        insuranceType: []
        insuranceType: [],
        empStatus: []
      },
      total: 0, // 总数量
      pagination: { // 分页参数
@@ -407,8 +420,10 @@
    this.fetch()
  },
  methods: {
    closeDialog() {
      this.search()
    },
    handleCheckAllChange(val) {
      debugger
      this.queryCheckAll.sexisIndeterminate = false
    },
    downloadlabel(formName) {
@@ -486,9 +501,6 @@
      this.rowitem = tableData
      this.dialogShowUploadfj = true
    },
    cancleChooseUser() {
      this.dialogShowUploadfj = false
    },
    skipuploadfj() {
      this.resolvePath('/uploadfj')
    },
@@ -513,16 +525,23 @@
      })
    },
    findEmpAccessory() {
      var params = { empName: this.empName }
      var params = { basic: this.basic }
      this.fetch({
        ...params
      })
    },
    // 翻页方法
    // 刷新方法
    search() {
      if (this.basic === '') {
      this.fetch({
        ...this.queryform
      })
      } else {
        var params = { basic: this.basic }
        this.fetch({
          ...params
        })
      }
    },
    handleNodeClick(data) {
      console.log(data)
@@ -545,10 +564,10 @@
    },
    advancedQueryShowMethods() {
      if (this.advancedQueryShow) {
        this.headerHeight = '70px'
        this.headerHeight = '20px'
        this.advancedQueryShow = false
      } else {
        this.headerHeight = '330px'
        this.headerHeight = '360px'
        this.advancedQueryShow = true
      }
    },
@@ -596,6 +615,13 @@
      } else {
        this.queryform.insuranceType = []
      }
    },
    selectAllEmpStatus(val) {
      if (val) {
        this.queryParams.empStatus = ['0', '1', '2', '3']
      } else {
        this.queryParams.empStatus = []
      }
    }
  }
}
src/views/yunpan/uploadfj.vue
@@ -116,9 +116,11 @@
                    :src="showFileImg(node.filesformat)"
                    class="uploading-image"
                  >
                  <el-tooltip class="item" effect="dark" :content="node.filesname" placement="bottom">
                  <div style="padding-top: 14px;">
                    <el-checkbox v-model="checkedArr[index * 8 + nodeIndex].isChecked" class="myRedCheckBox">{{ node.filesname }}</el-checkbox>
                  </div>
                  </el-tooltip>
                </el-card>
              </el-col>
              <el-col v-if="node.isUpload" :key="node.filesid" :span="3">
src/views/yunpan/zhishou.vue
@@ -78,17 +78,17 @@
            <i
              class="el-icon-bell"
              style=" color: #a32c30; margin-right: 10px;"
            />提示:文件不要超过10个,单个文件大小不超过50M,单击或者拖动文件到下面区域,支持单个或批量文件的上传。</el-col>
            />提示:文件不要超过10个,单个文件大小不超过200M,单击或者拖动文件到下面区域,支持单个或批量文件的上传。</el-col>
          </el-row>
          <el-row style="background-color: rgba(0,0,0,0.2);">
            <el-col :span="19">
            <el-col :span="17">
              <el-checkbox
                v-model="checkAll"
                class="myRedCheckBox"
                style="color: #000; margin-left: 20px;"
                @change="checkAllMethods()"
              >全选</el-checkbox></el-col>
            <el-col :span="5">
            <el-col :span="7">
              <el-button
                type="primary"
                icon="el-icon-download"
@@ -102,7 +102,7 @@
                @click="delFile()"
              >删除</el-button>
              <el-popconfirm title="是否移动文件?" @onConfirm="mvdialogFormVisible = true">
                <el-button slot="reference" class="hr-but" type="danger">转存</el-button>
                <el-button slot="reference" class="hr-but" type="danger">移动</el-button>
              </el-popconfirm>
            </el-col>
          </el-row>
@@ -140,21 +140,23 @@
        <el-main style="background-color: #fff;">
          <el-row v-for="(data, index) in filesUploadData" :key="index">
            <template v-for="(node, nodeIndex) in data.node">
              <el-col v-if="node.isUpload === false" :key="node.filesid" :span="3">
              <el-col v-if="node.isUpload === false" :key="node.filesid" :span="2">
                <el-card
                  shadow="never"
                  @click.native="clickCard(index * 8 + nodeIndex)"
                >
                  <img
                    :src="showFileImg(node.filesformat)"
                    class="uploading-image"
                    @click="clickCard(index * rowCount + nodeIndex)"
                  >
                  <el-tooltip class="item" effect="dark" :content="node.filesname" placement="bottom">
                  <div style="padding-top: 14px;">
                    <el-checkbox v-model="checkedArr[index * 8 + nodeIndex].isChecked" class="myRedCheckBox">{{ node.filesname }}</el-checkbox>
                      <el-checkbox v-model="checkedArr[index * rowCount + nodeIndex].isChecked" class="myRedCheckBox">{{ node.filesname }}</el-checkbox>
                  </div>
                  </el-tooltip>
                </el-card>
              </el-col>
              <el-col v-if="node.isUpload" :key="node.filesid" :span="3">
              <el-col v-if="node.isUpload" :key="node.filesid" :span="2">
                <el-card shadow="never">
                  <el-upload
                    class="avatar-uploader"
@@ -166,7 +168,7 @@
                    :on-success="handleAvatarSuccess"
                    :on-error="handleAvatarError"
                    :multiple="true"
                    :limit="10"
                    :limit="20"
                    drag
                  >
                    <i class="el-icon-upload" />
@@ -188,6 +190,7 @@
export default {
  data() {
    return {
      rowCount: 12,
      mvrules: {
        folderid: [{ required: true, message: '请选择目录', trigger: 'change' }]
      },
@@ -252,8 +255,8 @@
      this.$get('hr/filesUpload', { ...params }).then(r => {
        r.data.data.forEach((v, i) => {
          this.checkedArr.push({ isChecked: false, filesid: v.filesid })
          // 一行8个 等于8就换行
          if (i % 8 === 0 && i !== 0) {
          // 一行12个 等于12就换行
          if (i % this.rowCount === 0 && i !== 0) {
            this.filesUploadData.push(node)
            node = { node: [] }
          }
@@ -270,8 +273,8 @@
        if (this.filesUploadData.length === 0) {
          this.filesUploadData.push({ node: [{ isUpload: true }] })
        } else {
          // 如果不为空,但是这一行刚好满8个了,就将数组,新增一个对象
          if (this.filesUploadData[this.filesUploadData.length - 1].node.length === 8) {
          // 如果不为空,但是这一行刚好满12个了,就将数组,新增一个对象
          if (this.filesUploadData[this.filesUploadData.length - 1].node.length === this.rowCount) {
            this.filesUploadData.push({ node: [{ isUpload: true }] })
          } else {
            // 新增一个上传
@@ -635,25 +638,35 @@
.myRedCheckBox .el-checkbox__inner:hover {
    border-color: #a32c30;
}
.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-icon {
    font-size: 28px;
.avatar-uploader{
  .el-upload-dragger{
    width: 65px !important;
    height: 65px !important;
    .el-icon-upload{
      font-size: 40px;
    color: #8c939d;
    width: 178px;
    height: 178px;
    line-height: 178px;
    text-align: center;
      line-height: 30px;
}
  }
}
// .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-icon {
//     font-size: 28px;
//     color: #8c939d;
//     width: 178px;
//     height: 178px;
//     line-height: 178px;
//     text-align: center;
// }
.avatar {
    width: 178px;
    height: 178px;