luoyb
2021-03-09 ce4dc48d644343a35f31565c295ea88d8faa67c3
fix(bug修复): 在职员工和离职员工功能按钮调整
2个文件已修改
354 ■■■■ 已修改文件
src/views/user/inemployees.vue 57 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/user/outemployess.vue 297 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/user/inemployees.vue
@@ -213,7 +213,7 @@
            <el-button type="primary" style="background-color: #409EFF" @click="delEmp">删除员工</el-button>
            <el-button type="danger" class="hr-but-all" @click="showYgdg(0)">员工调岗</el-button>
            <!-- <el-button type="danger" class="hr-but-all" @click="showDryg(0)">导入员工</el-button> -->
            <el-button type="danger" class="hr-but-all" @click="exportExcel()">导出员工</el-button>
            <el-button type="danger" class="hr-but-all" @click="showDcyg(0)">导出EXCEL</el-button>
            <el-button type="primary" style="background-color: #409EFF" @click="showGbda(0)">关闭档案</el-button>
          </el-col>
        </el-row>
@@ -799,15 +799,15 @@
          <tr>
            <td>员工类型</td>
            <td>
              <el-checkbox label=""><span /></el-checkbox>
              <el-checkbox label="empTypeName"><span /></el-checkbox>
            </td>
            <td>员工状态</td>
            <td>
              <el-checkbox label=""><span /></el-checkbox>
              <el-checkbox label="empStatusName"><span /></el-checkbox>
            </td>
            <td>离职日期</td>
            <td>
              <el-checkbox label=""><span /></el-checkbox>
              <el-checkbox label="dimissionDate"><span /></el-checkbox>
            </td>
          </tr>
          <tr>
@@ -919,7 +919,7 @@
      }, // 查询参数
      sort: {}, // 排序
      pagination: { // 分页参数
        size: 15,
        size: 12,
        num: 1
      },
      baseicInformationForm: {},
@@ -1113,7 +1113,7 @@
      exportUrl: '',
      checkAll: false,
      isIndeterminate: false,
      cityOptions: ['archivesNumb', 'deptName', 'jobName', 'empName', 'certificateNumb', 'certificateValidity', 'sexName', 'nationName', 'age', 'marriageName', 'stature', 'birthdate', 'politicsName', 'empTypeName', 'educationName', 'nativePlaceName', 'censusAddress', 'currentAddress', 'guardNumb', 'returnReceipt', 'archivesStatusName', 'bankName', 'bankNumb', 'telePhone', 'entryDate', 'InsuranceTypeName', 'socialNumb', 'introducer', 'seniority', 'empCardStatus', 'certificateList', 'urgencyPhone', 'handbookStatusName', 'family'],
      cityOptions: ['archivesNumb', 'deptName', 'jobName', 'empName', 'certificateNumb', 'certificateValidity', 'sexName', 'nationName', 'age', 'marriageName', 'stature', 'birthdate', 'politicsName', 'empTypeName', 'educationName', 'nativePlaceName', 'censusAddress', 'currentAddress', 'guardNumb', 'returnReceipt', 'archivesStatusName', 'bankName', 'bankNumb', 'telePhone', 'entryDate', 'InsuranceTypeName', 'socialNumb', 'introducer', 'seniority', 'empCardStatus', 'certificateList', 'urgencyPhone', 'handbookStatusName', 'family', 'empTypeName', 'empStatusName', 'dimissionDate'],
      checkedCities: [],
      tableData: [],
      selectDimissionType: 1,
@@ -1539,51 +1539,6 @@
      this.$refs[formName].validate((valid) => {
        if (valid) {
          this.submitEmpInfo()
          // if (this.isAdd) {
          //   this.$post('hr/empBaseInfo/addInEmp', { ...this.empBaseInfoForm }).then((r) => {
          //     if (r.data != null) {
          //       if (r.data.data.empStatus === '0') {
          //         this.$confirm('该员工已存在,是否修改?', '提示', {
          //           confirmButtonText: '确定',
          //           cancelButtonText: '取消',
          //           type: 'warning'
          //         }).then(() => {
          //           this.editEmpBase(r.data.data)
          //         })
          //       } else {
          //         this.$confirm('该员工已离职,是否重新打开档案?', '提示', {
          //           confirmButtonText: '确定',
          //           cancelButtonText: '取消',
          //           type: 'warning'
          //         }).then(() => {
          //           this.openArchivesForm = {
          //             empId: r.data.data.empId,
          //             empName: r.data.data.empName,
          //             certificateNumb: r.data.data.certificateNumb,
          //             openType: 2,
          //             openDate: this.getDateString(),
          //             remark: ''
          //           }
          //           this.$post('hr/empOpenArchives', { ...this.openArchivesForm }).then(() => {
          //             this.$message({
          //               message: this.$t('员工档案打开成功'),
          //               type: 'success'
          //             })
          //           })
          //         })
          //       }
          //     }
          //   })
          // } else {
          //   this.$put('hr/empBaseInfo', { ...this.empBaseInfoForm }).then(() => {
          //     this.$message({
          //       message: this.$t('tips.updateSuccess'),
          //       type: 'success'
          //     })
          //     this.$emit('success')
          //     this.cleanEmpBase()
          //   })
          // }
          this.fetch({
            ...this.queryParams,
            ...this.sort
src/views/user/outemployess.vue
@@ -212,9 +212,10 @@
          <el-col :span="24">
            <el-button type="primary" @click="delEmp">删除员工</el-button>
            <el-button type="danger" class="hr-but-all" @click="showDkda(0)">打开档案</el-button>
            <!--            <el-button type="danger" class="hr-but-all" @click="doDcbb">导出报表</el-button>-->
            <el-button type="danger" class="hr-but-all" @click="exportExcel()">导出员工</el-button>
            <el-button type="danger" class="hr-but-all" @click="doDcda">导出档案</el-button>
            <el-button type="danger" class="hr-but-all" @click.native="showDcyg(0)">导出EXCEL
            </el-button>
            <!--            <el-button type="danger" class="hr-but-all" @click="exportExcel()">导出员工</el-button>-->
            <!--            <el-button type="danger" class="hr-but-all" @click="doDcda">导出档案</el-button>-->
          </el-col>
        </el-row>
        <el-table
@@ -255,9 +256,21 @@
          <el-table-column show-overflow-tooltip="true" prop="certificateNumb" label="身份证号码" />
          <el-table-column show-overflow-tooltip="true" prop="sex" label="性别" width="60" :formatter="sexFormat" />
          <el-table-column show-overflow-tooltip="true" prop="age" label="年龄" width="60" />
          <el-table-column show-overflow-tooltip="true" prop="education" label="学历" width="60" :formatter="educationFormat" />
          <el-table-column
            show-overflow-tooltip="true"
            prop="education"
            label="学历"
            width="60"
            :formatter="educationFormat"
          />
          <el-table-column show-overflow-tooltip="true" prop="nativePlaceName" label="籍贯" width="70" />
          <el-table-column show-overflow-tooltip="true" prop="empType" label="员工类型" width="80" :formatter="empTypeFormat" />
          <el-table-column
            show-overflow-tooltip="true"
            prop="empType"
            label="员工类型"
            width="80"
            :formatter="empTypeFormat"
          />
          <el-table-column show-overflow-tooltip="true" prop="telePhone" label="联系电话" width="120" />
          <el-table-column show-overflow-tooltip="true" prop="entryDate" label="入职日期" width="130" />
          <el-table-column show-overflow-tooltip="true" prop="dimissionDate" label="离职日期" width="130" />
@@ -995,8 +1008,203 @@
    <el-dialog title="选择员工" :visible.sync="dialogShowXzyg">
      <Selectuser @selectedUser="selectedUser" @cancleChooseUser="cancleChooseUser" />
    </el-dialog>
    <el-dialog title="选择员工" :visible.sync="dialogShowXzbm">
    <el-dialog title="选择部门" :visible.sync="dialogShowXzbm">
      <Selectdept @selectedDept="selectedDept" @cancleChooseDept="cancleChooseDept" />
    </el-dialog>
    <el-dialog title="导出员工" :visible.sync="dialogShowDcyg" width="40%">
      <div style="font-size: 16px;font-weight: 400;height: 35px;margin-top: -30px;color: #409EFF;">请勾选需要导出的字段</div>
      <table id="dcygTable" width="100%">
        <tr>
          <td colspan="6" style="text-align: left;">
            <el-checkbox v-model="checkAll" :indeterminate="isIndeterminate" @change="handleCheckAllChange" />
            全部字段
          </td>
        </tr>
        <el-checkbox-group v-model="checkedCities" @change="handleCheckedCitiesChange">
          <tr>
            <td>档案号</td>
            <td>
              <el-checkbox label="archivesNumb"><span /></el-checkbox>
            </td>
            <td>姓名</td>
            <td>
              <el-checkbox label="empName"><span /></el-checkbox>
            </td>
            <td>性别</td>
            <td>
              <el-checkbox label="sexName"><span /></el-checkbox>
            </td>
          </tr>
          <tr>
            <td>部门(护卫点)</td>
            <td>
              <el-checkbox label="deptName"><span /></el-checkbox>
            </td>
            <td>所属岗位</td>
            <td>
              <el-checkbox label="jobName"><span /></el-checkbox>
            </td>
            <td>员工类别</td>
            <td>
              <el-checkbox label="empTypeName"><span /></el-checkbox>
            </td>
          </tr>
          <tr>
            <td>民族</td>
            <td>
              <el-checkbox label="nationName"><span /></el-checkbox>
            </td>
            <td>身份证号码</td>
            <td>
              <el-checkbox label="certificateNumb"><span /></el-checkbox>
            </td>
            <td>年龄</td>
            <td>
              <el-checkbox label="age"><span /></el-checkbox>
            </td>
          </tr>
          <tr>
            <td>婚姻状况</td>
            <td>
              <el-checkbox label="marriageName"><span /></el-checkbox>
            </td>
            <td>身份证有效期</td>
            <td>
              <el-checkbox label="certificateValidity"><span /></el-checkbox>
            </td>
            <td>身高</td>
            <td>
              <el-checkbox label="stature"><span /></el-checkbox>
            </td>
          </tr>
          <tr>
            <td>政治面貌</td>
            <td>
              <el-checkbox label="politicsName"><span /></el-checkbox>
            </td>
            <td>出生日期</td>
            <td>
              <el-checkbox label="birthdate"><span /></el-checkbox>
            </td>
            <td>最高学历</td>
            <td>
              <el-checkbox label="educationName"><span /></el-checkbox>
            </td>
          </tr>
          <tr>
            <td>籍贯</td>
            <td>
              <el-checkbox label="nativePlaceName"><span /></el-checkbox>
            </td>
            <td>户籍地址</td>
            <td>
              <el-checkbox label="censusAddress"><span /></el-checkbox>
            </td>
            <td>现住址</td>
            <td>
              <el-checkbox label="currentAddress"><span /></el-checkbox>
            </td>
          </tr>
          <tr>
            <td>保安员证号</td>
            <td>
              <el-checkbox label="guardNumb"><span /></el-checkbox>
            </td>
            <td>保安员回执</td>
            <td>
              <el-checkbox label="returnReceipt"><span /></el-checkbox>
            </td>
            <td>档案情况</td>
            <td>
              <el-checkbox label="archivesStatusName"><span /></el-checkbox>
            </td>
          </tr>
          <tr>
            <td>银行名称</td>
            <td>
              <el-checkbox label="bankName"><span /></el-checkbox>
            </td>
            <td>银行账号</td>
            <td>
              <el-checkbox label="bankNumb"><span /></el-checkbox>
            </td>
            <td>电话号码</td>
            <td>
              <el-checkbox label="telePhone"><span /></el-checkbox>
            </td>
          </tr>
          <tr>
            <td>员工类型</td>
            <td>
              <el-checkbox label="empTypeName"><span /></el-checkbox>
            </td>
            <td>员工状态</td>
            <td>
              <el-checkbox label="empStatusName"><span /></el-checkbox>
            </td>
            <td>离职日期</td>
            <td>
              <el-checkbox label="dimissionDate"><span /></el-checkbox>
            </td>
          </tr>
          <tr>
            <td>入职日期</td>
            <td>
              <el-checkbox label="entryDate"><span /></el-checkbox>
            </td>
            <td>保险类型</td>
            <td>
              <el-checkbox label="InsuranceTypeName"><span /></el-checkbox>
            </td>
            <td>社保电脑号</td>
            <td>
              <el-checkbox label="socialNumb"><span /></el-checkbox>
            </td>
          </tr>
          <tr>
            <td>招聘介绍人</td>
            <td>
              <el-checkbox label="introducer"><span /></el-checkbox>
            </td>
            <td>入司工龄</td>
            <td>
              <el-checkbox label="seniority"><span /></el-checkbox>
            </td>
            <td>工作证</td>
            <td>
              <el-checkbox label="empCardStatus"><span /></el-checkbox>
            </td>
          </tr>
          <tr>
            <td>相关证件</td>
            <td>
              <el-checkbox label="certificateList"><span /></el-checkbox>
            </td>
            <td>紧急联系电话</td>
            <td>
              <el-checkbox label="urgencyPhone"><span /></el-checkbox>
            </td>
            <td>员工手册</td>
            <td>
              <el-checkbox label="handbookStatusName"><span /></el-checkbox>
            </td>
          </tr>
          <tr>
            <td>家庭成员及关系</td>
            <td>
              <el-checkbox label="family"><span /></el-checkbox>
            </td>
            <td />
            <td />
            <td />
            <td />
          </tr>
        </el-checkbox-group>
      </table>
      <div slot="footer" class="dialog-footer">
        <el-button @click="showDcyg(1)">取 消</el-button>
        <el-button type="primary" @click="showDcyg(2)">确 定</el-button>
      </div>
    </el-dialog>
    <archives-change
      ref="article"
@@ -1010,6 +1218,7 @@
<script>
import Pagination from '@/components/Pagination'
import ArchivesChange from './archivesChange'
export default {
  components: {
    ArchivesChange,
@@ -1039,7 +1248,7 @@
      }, // 查询参数
      sort: {}, // 排序
      pagination: { // 分页参数
        size: 15,
        size: 12,
        num: 1
      },
      headerHeight: '30px',
@@ -1048,6 +1257,7 @@
      dialogShowDkda: false,
      dialogShowXzyg: false,
      dialogShowXzbm: false,
      dialogShowDcyg: false,
      openArchivesRules: {
        openType: [{ required: true, message: '请选择打开类型', trigger: 'change' }],
        openDate: [{ required: true, message: '请选择打开日期', trigger: 'change' }],
@@ -1063,7 +1273,9 @@
      insuranceTypeOptions: [],
      archivesStatusOptions: [],
      sexOptions: [],
      empTypeOptions: []
      empTypeOptions: [],
      cityOptions: ['archivesNumb', 'deptName', 'jobName', 'empName', 'certificateNumb', 'certificateValidity', 'sexName', 'nationName', 'age', 'marriageName', 'stature', 'birthdate', 'politicsName', 'empTypeName', 'educationName', 'nativePlaceName', 'censusAddress', 'currentAddress', 'guardNumb', 'returnReceipt', 'archivesStatusName', 'bankName', 'bankNumb', 'telePhone', 'entryDate', 'InsuranceTypeName', 'socialNumb', 'introducer', 'seniority', 'empCardStatus', 'certificateList', 'urgencyPhone', 'handbookStatusName', 'family', 'empTypeName', 'empStatusName', 'dimissionDate'],
      checkedCities: []
    }
  },
  mounted() {
@@ -1392,24 +1604,36 @@
        this.queryParams.dimissionType = []
      }
    },
    doDcbb() {
      this.$confirm('是否确定要导出报表?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning'
      }).then(() => {
        this.$message({
          type: 'success',
          message: '导出成功!'
        })
      }).catch(() => {
        this.$message({
          type: 'info',
          message: '已取消'
        })
      })
    handleCheckedCitiesChange(value) {
      const checkedCount = value.length
      this.checkAll = checkedCount === this.cityOptions.length
      this.isIndeterminate = checkedCount > 0 && checkedCount < this.cityOptions.length
    },
    handleCheckAllChange(val) {
      this.checkedCities = val ? this.cityOptions : []
      this.isIndeterminate = false
    },
    showDcyg(operate) {
      switch (operate) {
        case 0:
          this.dialogShowDcyg = true
          break
        case 1:
          this.dialogShowDcyg = false
          break
        case 2:
          var params = this.queryParams
          params.empStatus = '1,2,3'
          params.exportField = this.checkedCities.join(',')
          this.$download('hr/empBaseInfo/exportWithField', { ...params }, '员工列表.xls').then(() => {
            this.$message({
              message: '下载成功!',
              type: 'success'
            })
          })
          break
      }
    }
  }
}
</script>
@@ -1492,6 +1716,28 @@
  background: #F5FAFA;
}
#dcygTable {
  border-collapse: collapse;
  tr {
    width: 100%;
    border-bottom: 1px dashed #ccc;
    >td:nth-child(even) {
      width: 100px;
      text-align: left;
    }
  }
}
#dcygTable td {
  width: 160px;
  text-align: center;
  height: 35px;
  line-height: 35px;
  font-size: 15px;
  font-weight: 400;
}
.tdTitle {
  font-size: 14px;
  font-weight: 700;
@@ -1535,6 +1781,7 @@
  cursor: pointer;
  vertical-align: middle;
}
.el-dialog.is-fullscreen {
  overflow: hidden;
}