| | |
| | | <template> |
| | | <div> |
| | | <div style="background-color: #fff;height: 100%;"> |
| | | <el-container> |
| | | <el-header :height="headerHeight"> |
| | | <el-row> |
| | | <el-col :span="16"> |
| | | <el-col :span="15"> |
| | | <h3 class="bu-tian-jia-title">离职员工</h3> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-input v-model="input" placeholder="请输入内容" style="width:200px" /> |
| | | <el-button type="primary">查询</el-button> |
| | | <el-button type="danger" @click="advancedQueryShowMethods">高级查询</el-button> |
| | | <el-col :span="9" style="margin-top: 15px;"> |
| | | <el-input v-model="queryParams.baseKey" placeholder="请输入内容" style="width:300px" /> |
| | | <span class="search-btn" @click="vagueSearch">查询</span> |
| | | <span class="sup-search-btn" @click="advancedQueryShowMethods">高级查询</span> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-button type="primary">删除员工</el-button> |
| | | <el-button type="danger" @click="showDkda">打开档案</el-button> |
| | | <el-button type="danger">离职证明</el-button> |
| | | <el-button type="danger">导出报表</el-button> |
| | | <el-button type="primary" @click="showXzyg">选择员工</el-button> |
| | | <el-button type="primary" @click="showXzbm">选择部门</el-button> |
| | | </el-col> |
| | | </el-row> |
| | | |
| | | <div v-show="advancedQueryShow"> |
| | | <el-row style="margin: 10px 0;"> |
| | | <el-col :span="3">编号: |
| | | <el-input v-model="queryParams.empNumb" size="small" maxlength="20" style="width:85px" /> |
| | | </el-col> |
| | | <el-col :span="3">姓名: |
| | | <el-input v-model="queryParams.empName" size="small" maxlength="10" style="width:110px" /> |
| | | </el-col> |
| | | <el-col :span="4">身份证号: |
| | | <el-input v-model="queryParams.certificateNumb" size="small" maxlength="18" style="width:140px" /> |
| | | </el-col> |
| | | <el-col :span="4">部门(护卫点): |
| | | <el-input v-model="queryParams.deptName" size="small" maxlength="20" style="width:100px" /> |
| | | </el-col> |
| | | <el-col :span="7">入职日期: |
| | | <el-date-picker |
| | | v-model="queryParams.entryDateStr" |
| | | size="small" |
| | | type="daterange" |
| | | align="right" |
| | | unlink-panels |
| | | range-separator="~" |
| | | value-format="yyyy-MM-dd" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | :picker-options="pickerOptions" |
| | | style="width: 300px;" |
| | | /> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="7">离职日期: |
| | | <el-date-picker |
| | | v-model="queryParams.dimissionDateStr" |
| | | size="small" |
| | | type="daterange" |
| | | align="right" |
| | | unlink-panels |
| | | range-separator="~" |
| | | value-format="yyyy-MM-dd" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | :picker-options="pickerOptions" |
| | | style="width: 300px;" |
| | | /> |
| | | </el-col> |
| | | <el-col :span="3"> |
| | | <el-button size="mini" class="hr-but-all" type="primary" @click="search">查询</el-button> |
| | | <el-button size="mini" class="hr-but" type="danger" @click="resetSearch">重置</el-button> |
| | | </el-col> |
| | | </el-row> |
| | | <form> |
| | | <el-row> |
| | | <el-col :span="3">员工编号: |
| | | <el-input v-model="input" placeholder="请输入内容" style="width:80px" /> |
| | | </el-col> |
| | | <el-col :span="3">姓名: |
| | | <el-input v-model="input" placeholder="请输入内容" style="width:80px" /> |
| | | </el-col> |
| | | <el-col :span="3">身份证号: |
| | | <el-input v-model="input" placeholder="请输入内容" style="width:80px" /> |
| | | </el-col> |
| | | <el-col :span="3">所属部门: |
| | | <el-input v-model="input" placeholder="请输入内容" style="width:80px" /> |
| | | </el-col> |
| | | <el-col :span="3">岗位: |
| | | <el-input v-model="input" placeholder="请输入内容" style="width:80px" /> |
| | | </el-col> |
| | | <el-col :span="3">保安证号: |
| | | <el-input v-model="input" placeholder="请输入内容" style="width:80px" /> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-button type="primary">查询</el-button> |
| | | <el-button type="danger">重置</el-button> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <table id="searchTable"> |
| | | <table class="searchTable"> |
| | | <tr> |
| | | <td>性别:</td> |
| | | <td> |
| | | <el-radio-group v-model="radio"> |
| | | <el-radio :label="3">全部</el-radio> |
| | | <el-radio :label="6">男性</el-radio> |
| | | <el-radio :label="9">女性</el-radio> |
| | | </el-radio-group> |
| | | <td class="td">性别:</td> |
| | | <td class="td-group"> |
| | | <el-checkbox-group v-model="queryParams.sex" class="fj-checkbox"> |
| | | <el-checkbox label="" @change="selectAllSex">全部</el-checkbox> |
| | | <el-checkbox |
| | | v-for="data in sexOptions" |
| | | :key="data.dicItemName" |
| | | :label="data.dicItemCode" |
| | | > |
| | | {{ data.dicItemName }} |
| | | </el-checkbox> |
| | | </el-checkbox-group> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td>最高学历:</td> |
| | | <td> |
| | | <el-radio-group v-model="radio"> |
| | | <el-radio :label="3">全部</el-radio> |
| | | <el-radio :label="6">初中</el-radio> |
| | | <el-radio :label="9">高中</el-radio> |
| | | <el-radio :label="9">大专</el-radio> |
| | | <el-radio :label="9">本科</el-radio> |
| | | <el-radio :label="9">硕士</el-radio> |
| | | <el-radio :label="9">博士</el-radio> |
| | | </el-radio-group> |
| | | <td class="td">学历:</td> |
| | | <td class="td-group"> |
| | | <el-checkbox-group v-model="queryParams.education" class="fj-checkbox"> |
| | | <el-checkbox label="" @change="selectAllEducation">全部</el-checkbox> |
| | | <el-checkbox |
| | | v-for="data in educationOptions" |
| | | :key="data.dicItemName" |
| | | :label="data.dicItemCode" |
| | | > |
| | | {{ data.dicItemName }} |
| | | </el-checkbox> |
| | | </el-checkbox-group> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td>政治面貌:</td> |
| | | <td> |
| | | <el-radio-group v-model="radio"> |
| | | <el-radio :label="3">全部</el-radio> |
| | | <el-radio :label="6">党员</el-radio> |
| | | <el-radio :label="9">团员</el-radio> |
| | | <el-radio :label="9">群众</el-radio> |
| | | </el-radio-group> |
| | | <td class="td">政治面貌:</td> |
| | | <td class="td-group"> |
| | | <el-checkbox-group v-model="queryParams.politics" class="fj-checkbox"> |
| | | <el-checkbox label="" @change="selectAllPolitics">全部</el-checkbox> |
| | | <el-checkbox |
| | | v-for="data in statusOptions" |
| | | :key="data.dicItemName" |
| | | :label="data.dicItemCode" |
| | | > |
| | | {{ data.dicItemName }} |
| | | </el-checkbox> |
| | | </el-checkbox-group> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td>入职日期:</td> |
| | | <td> |
| | | <el-radio-group v-model="radio"> |
| | | <el-radio :label="3">全部</el-radio> |
| | | </el-radio-group> |
| | | <td class="td">年龄:</td> |
| | | <td class="td-group"> |
| | | <el-checkbox-group v-model="queryParams.ageStr" class="fj-checkbox"> |
| | | <el-checkbox label="" @change="selectAllAgeStr">全部</el-checkbox> |
| | | <el-checkbox |
| | | v-for="data in ageStrOptions" |
| | | :key="data.dicItemName" |
| | | :label="data.dicItemCode" |
| | | > |
| | | {{ data.dicItemName }} |
| | | </el-checkbox> |
| | | </el-checkbox-group> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td>年龄:</td> |
| | | <td> |
| | | <el-radio-group v-model="radio"> |
| | | <el-radio :label="3">全部</el-radio> |
| | | <el-radio :label="6">18-29</el-radio> |
| | | <el-radio :label="9">30-39</el-radio> |
| | | <el-radio :label="9">40-49</el-radio> |
| | | <el-radio :label="9">50-59</el-radio> |
| | | <el-radio :label="9">60-69</el-radio> |
| | | <el-radio :label="9">69及以上</el-radio> |
| | | </el-radio-group> |
| | | <td class="td">档案情况:</td> |
| | | <td class="td-group"> |
| | | <el-checkbox-group v-model="queryParams.archivesStatus" class="fj-checkbox"> |
| | | <el-checkbox label="" @change="selectAllArchivesStatus">全部</el-checkbox> |
| | | <el-checkbox |
| | | v-for="data in archivesStatusOptions" |
| | | :key="data.dicItemName" |
| | | :label="data.dicItemCode" |
| | | > |
| | | {{ data.dicItemName }} |
| | | </el-checkbox> |
| | | </el-checkbox-group> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td>档案情况:</td> |
| | | <td> |
| | | <el-radio-group v-model="radio"> |
| | | <el-radio :label="3">全部</el-radio> |
| | | <el-radio :label="6">已移交</el-radio> |
| | | <el-radio :label="9">未移交</el-radio> |
| | | </el-radio-group> |
| | | <td class="td">社保档位:</td> |
| | | <td class="td-group"> |
| | | <el-checkbox-group v-model="queryParams.insuranceType" class="fj-checkbox"> |
| | | <el-checkbox label="" @change="selectAllInsuranceType">全部</el-checkbox> |
| | | <el-checkbox |
| | | v-for="data in insuranceTypeOptions" |
| | | :key="data.dicItemName" |
| | | :label="data.dicItemCode" |
| | | > |
| | | {{ data.dicItemName }} |
| | | </el-checkbox> |
| | | </el-checkbox-group> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td>保险类型:</td> |
| | | <td> |
| | | <el-radio-group v-model="radio"> |
| | | <el-radio :label="3">全部</el-radio> |
| | | <el-radio :label="6">深户(五险一档)</el-radio> |
| | | </el-radio-group> |
| | | <td class="td">员工类型:</td> |
| | | <td class="td-group"> |
| | | <el-checkbox-group v-model="queryParams.empType" class="fj-checkbox"> |
| | | <el-checkbox label="" @change="selectAllEmpType">全部</el-checkbox> |
| | | <el-checkbox |
| | | v-for="data in empTypeOptions" |
| | | :key="data.dicItemName" |
| | | :label="data.dicItemCode" |
| | | > |
| | | {{ data.dicItemName }} |
| | | </el-checkbox> |
| | | </el-checkbox-group> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td class="td">离职类型:</td> |
| | | <td class="td-group"> |
| | | <el-checkbox-group v-model="queryParams.dimissionType" class="fj-checkbox"> |
| | | <el-checkbox label="" @change="selectAllDimissionType">全部</el-checkbox> |
| | | <el-checkbox :label="6">正常离职</el-checkbox> |
| | | <el-checkbox :label="4">自动离职</el-checkbox> |
| | | <el-checkbox :label="2">公司劝退</el-checkbox> |
| | | <el-checkbox :label="1">合同期满</el-checkbox> |
| | | <el-checkbox :label="3">公司辞退</el-checkbox> |
| | | <el-checkbox :label="5">试用期内</el-checkbox> |
| | | <el-checkbox :label="7">到龄退休</el-checkbox> |
| | | </el-checkbox-group> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td class="td">相关证件:</td> |
| | | <td class="td-group"> |
| | | <el-checkbox-group v-model="queryParams.certificateList" class="fj-checkbox"> |
| | | <el-checkbox label="" @change="selectAllCertificateList">全部</el-checkbox> |
| | | <el-checkbox |
| | | v-for="data in certificateListOptions" |
| | | :key="data.dicItemName" |
| | | :label="data.dicItemCode" |
| | | > |
| | | {{ data.dicItemName }} |
| | | </el-checkbox> |
| | | </el-checkbox-group> |
| | | </td> |
| | | </tr> |
| | | <!-- <tr> |
| | | <td class="td">员工状态:</td> |
| | | <td class="td-group"> |
| | | <el-checkbox-group v-model="queryParams.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-group> |
| | | </td> |
| | | </tr> --> |
| | | </table> |
| | | </el-col> |
| | | </el-row> |
| | | </form> |
| | | </div> |
| | | </el-header> |
| | | <el-container> |
| | | <el-aside width="300px"> |
| | | <el-tree :data="data" :props="defaultProps" @node-click="handleNodeClick" /> |
| | | </el-aside> |
| | | <el-main> |
| | | <el-table :data="tableData" style="width: 100%;"> |
| | | <el-table-column prop="prop0" label="" width="180" /> |
| | | <el-table-column prop="prop1" label="操作" width="180" /> |
| | | <el-table-column prop="prop2" label="员工编号" width="180" /> |
| | | <el-table-column prop="prop3" label="姓名" width="180" /> |
| | | <el-table-column prop="prop4" label="身份证号" width="180" /> |
| | | <el-table-column prop="prop5" label="性别" width="180" /> |
| | | <el-table-column prop="prop6" label="年龄" width="180" /> |
| | | <el-table-column prop="prop7" label="所属部门" width="180" /> |
| | | <el-table-column prop="prop8" label="岗位" width="180" /> |
| | | <el-table-column prop="prop9" label="入职日期" width="180" /> |
| | | <el-table-column prop="prop10" label="最高学历" width="180" /> |
| | | <el-table-column prop="prop11" label="籍贯" width="180" /> |
| | | <el-table-column prop="prop12" label="联系电话" width="180" /> |
| | | <el-table-column prop="prop13" label="员工状态" width="180" /> |
| | | </el-table> |
| | | </el-main> |
| | | </el-container> |
| | | <el-main style="height: 85vh;"> |
| | | <el-row style="margin: 10px 0 10px 0;"> |
| | | <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.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 |
| | | ref="multipleTable" |
| | | :data="tableData" |
| | | stripe |
| | | border |
| | | :header-cell-style="{'height':'5.3vh','background-color':'#e6e6e6','text-align':'center'}" |
| | | :cell-style="{padding:'7px 0','text-align':'center'}" |
| | | style="width: 100%;color: #000;" |
| | | @sort-change="changeSort" |
| | | > |
| | | <el-table-column type="selection" width="55" /> |
| | | <el-table-column label="操作" width="70"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-button--> |
| | | <!-- type="text"--> |
| | | <!-- size="small"--> |
| | | <!-- @click="editArchives(scope.row)"--> |
| | | <!-- >--> |
| | | <!-- 档案</el-button>--> |
| | | <!-- <el-button type="text" size="small" @click="editEmpBase(scope.row)">编辑--> |
| | | <!-- </el-button>--> |
| | | |
| | | <span |
| | | style="color: #a00515;display: inline-block;width: 90%;cursor: pointer" |
| | | @click="editArchives(scope.row)" |
| | | >档案</span> |
| | | <!-- <span |
| | | style="color: #a00515;display: inline-block;width: 50%;cursor: pointer" |
| | | @click="editEmpBase(scope.row)" |
| | | >编辑</span> --> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column show-overflow-tooltip prop="empNumb" label="编号" width="80" sortable="custom" :sort-orders="['ascending', 'descending']" /> |
| | | <el-table-column show-overflow-tooltip prop="allDeptName" label="部门(护卫点)" width="280" sortable="custom" :sort-orders="['ascending', 'descending']" /> |
| | | <el-table-column show-overflow-tooltip prop="jobName" label="岗位" width="80" /> |
| | | <el-table-column show-overflow-tooltip prop="empName" label="姓名" width="80" sortable="custom" :sort-orders="['ascending', 'descending']" /> |
| | | <el-table-column show-overflow-tooltip prop="certificateNumb" label="身份证号码" width="160" sortable="custom" :sort-orders="['ascending', 'descending']" /> |
| | | <el-table-column show-overflow-tooltip prop="sex" label="性别" width="50" :formatter="sexFormat" /> |
| | | <el-table-column show-overflow-tooltip prop="age" label="年龄" width="80" sortable="custom" :sort-orders="['ascending', 'descending']" /> |
| | | <el-table-column |
| | | show-overflow-tooltip |
| | | prop="education" |
| | | label="学历" |
| | | width="60" |
| | | :formatter="educationFormat" |
| | | ortable="custom" |
| | | :sort-orders="['ascending', 'descending']" |
| | | /> |
| | | <el-table-column show-overflow-tooltip prop="nativePlaceName" label="籍贯" width="70" /> |
| | | <el-table-column show-overflow-tooltip prop="telePhone" label="联系电话" width="110" /> |
| | | <el-table-column |
| | | show-overflow-tooltip |
| | | prop="empType" |
| | | label="员工类型" |
| | | width="80" |
| | | :formatter="empTypeFormat" |
| | | /> |
| | | <el-table-column show-overflow-tooltip prop="entryDate" label="入职日期" width="110" sortable="custom" :sort-orders="['ascending', 'descending']" /> |
| | | <el-table-column show-overflow-tooltip prop="dimissionDate" label="离职日期" width="110" sortable="custom" :sort-orders="['ascending', 'descending']" /> |
| | | <el-table-column show-overflow-tooltip prop="empStatus" label="员工状态" width="80"> |
| | | <template slot-scope="{row}"> |
| | | {{ transEmpStatus(row.empStatus) }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="dimissionType" label="离职类型" width="120" sortable="custom" :sort-orders="['ascending', 'descending']"> |
| | | <template slot-scope="{row}"> |
| | | {{ transEntryType(row.dimissionType) }} |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | v-show="total>0" |
| | | style="text-align: right;width: 98%;" |
| | | :total="total" |
| | | :page.sync="pagination.num" |
| | | :limit.sync="pagination.size" |
| | | @pagination="search" |
| | | /> |
| | | </el-main> |
| | | </el-container> |
| | | <el-dialog id="ygxq" title="" width="100%" :visible.sync="dialogTableVisible"> |
| | | <div> |
| | |
| | | <el-container> |
| | | <el-aside width="200px"> |
| | | <el-card class="info-card" shadow="always" @click.native="isShow(showArr[0],0)"> |
| | | 员工编号 |
| | | 编号 |
| | | </el-card> |
| | | <el-card class="info-card" shadow="always" @click.native="isShow(showArr[0],0)"> |
| | | 100452312 |
| | |
| | | <td>群众</td> |
| | | <td>出生日期</td> |
| | | <td>1974-02-22</td> |
| | | <td>最高学历</td> |
| | | <td>学历</td> |
| | | <td>高中</td> |
| | | </tr> |
| | | <tr> |
| | |
| | | <tr> |
| | | <td>入职日期</td> |
| | | <td>2020-01-02</td> |
| | | <td>保险类型</td> |
| | | <td>社保档位</td> |
| | | <td>深户(五险一档)</td> |
| | | <td>社保电脑号</td> |
| | | <td /> |
| | |
| | | <td>已发</td> |
| | | </tr> |
| | | <tr> |
| | | <td>家庭成员及关系</td> |
| | | <td>家庭成员及关系1</td> |
| | | <td /> |
| | | <td>紧急联系电话</td> |
| | | <td>家庭成员及关系2</td> |
| | | <td /> |
| | | <td>员工手册</td> |
| | | <td>已发</td> |
| | |
| | | </table> |
| | | <table> |
| | | <tr> |
| | | <td colspan="8" class="tdTitle">劳资案件</td> |
| | | <td class="link_button">新增劳资案件</td> |
| | | <td colspan="8" class="tdTitle">仲裁案件</td> |
| | | <td class="link_button">新增仲裁案件</td> |
| | | <td class="del_button">删除</td> |
| | | </tr> |
| | | <tr> |
| | |
| | | |
| | | </el-dialog> |
| | | <el-dialog title="打开档案" :visible.sync="dialogShowDkda" width="50%"> |
| | | <el-form :model="baseicInformationForm" label-position="right" label-width="120px"> |
| | | <el-form |
| | | ref="baseicInformationForm" |
| | | :model="baseicInformationForm" |
| | | rules="openArchivesRules" |
| | | label-position="right" |
| | | label-width="120px" |
| | | > |
| | | <el-row> |
| | | <el-col span="24"> |
| | | <el-form-item label="打开类型" prop="region"> |
| | | <el-radio-group v-model="radio"> |
| | | <el-radio :label="1">重新入职</el-radio> |
| | | <el-radio :label="2">返聘</el-radio> |
| | | <el-radio-group v-model="baseicInformationForm.openType"> |
| | | <el-radio :label="21">重新入职</el-radio> |
| | | <el-radio :label="22">返聘</el-radio> |
| | | </el-radio-group> |
| | | (主要对已退休员工返聘) |
| | | </el-form-item> |
| | | <el-form-item label="打开日期"> |
| | | <el-input v-model="name" /> |
| | | <el-date-picker |
| | | v-model="baseicInformationForm.openDate" |
| | | value-format="yyyy-MM-dd" |
| | | type="date" |
| | | placeholder="选择打开日期" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="部门(护卫点)" required message="请选择部门(护卫点)" prop="allDeptName"> |
| | | <treeselect |
| | | v-model="baseicInformationForm.deptId" |
| | | :multiple="false" |
| | | :options="depts" |
| | | :clear-value-text="$t('common.clear')" |
| | | placeholder="请选择部门(护卫点)" |
| | | style="width:100%" |
| | | @select="DeptNameSelect" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="备注说明"> |
| | | <el-input v-model="name" type="textarea" :rows="4" /> |
| | | <el-input v-model="baseicInformationForm.remark" type="textarea" :rows="4" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button @click="dialogIsShow()">取 消</el-button> |
| | | <el-button type="primary" @click="dialogIsShow()">确 定</el-button> |
| | | <el-button @click="showDkda(1, '')">取 消</el-button> |
| | | <el-button type="primary" @click="showDkda(2, 'baseicInformationForm')">确 定</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | <el-dialog title="选择员工" :visible.sync="dialogShowXzyg" width="90%"> |
| | | <el-dialog title="选择员工" :visible.sync="dialogShowXzyg"> |
| | | <Selectuser @selectedUser="selectedUser" @cancleChooseUser="cancleChooseUser" /> |
| | | </el-dialog> |
| | | <el-dialog title="选择员工" :visible.sync="dialogShowXzbm" width="90%"> |
| | | <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="allDeptName"><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>家庭成员及关系1</td> |
| | | <td> |
| | | <el-checkbox label="family"><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="empCardStatusName"><span /></el-checkbox> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td>相关证件</td> |
| | | <td> |
| | | <el-checkbox label="certificateListName"><span /></el-checkbox> |
| | | </td> |
| | | <td>家庭成员及关系2</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="entryTypeName"><span /></el-checkbox> |
| | | </td> |
| | | <td>离职类型</td> |
| | | <td> |
| | | <el-checkbox label="dimissionTypeName"><span /></el-checkbox> |
| | | </td> |
| | | <td>编号</td> |
| | | <td> |
| | | <el-checkbox label="empNumb"><span /></el-checkbox> |
| | | </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" |
| | | :dialog-visible="dialog.isVisible" |
| | | :title="dialog.title" |
| | | :type="dialog.type" |
| | | @close="editClose" |
| | | /> |
| | | </div> |
| | | </template> |
| | | <script> |
| | | import Pagination from '@/components/Pagination' |
| | | import ArchivesChange from './archivesChange' |
| | | import Treeselect from '@riophae/vue-treeselect' |
| | | |
| | | export default { |
| | | components: { |
| | | Treeselect, |
| | | ArchivesChange, |
| | | Pagination |
| | | }, |
| | | data() { |
| | | return { |
| | | headerHeight: '70px', |
| | | dialog: { |
| | | isVisible: false, |
| | | title: '', |
| | | type: '' |
| | | }, |
| | | total: 0, // 总数量 |
| | | queryParams: { |
| | | baseKey: '', |
| | | empNumb: '', |
| | | vague: '', |
| | | sex: [], |
| | | education: [], |
| | | politics: [], |
| | | ageStr: [], |
| | | archivesStatus: [], |
| | | insuranceType: [], |
| | | empStatus: [], |
| | | dimissionType: [], |
| | | empType: [], |
| | | certificateList: [] |
| | | }, // 查询参数 |
| | | sort: {}, // 排序 |
| | | pagination: { // 分页参数 |
| | | size: 15, |
| | | num: 1 |
| | | }, |
| | | depts: [], |
| | | headerHeight: '30px', |
| | | advancedQueryShow: false, |
| | | dialogTableVisible: false, |
| | | dialogShowDkda: false, |
| | | dialogShowXzyg: false, |
| | | dialogShowXzbm: false, |
| | | tableData: [{ |
| | | 'prop0': '', |
| | | 'prop1': '查看', |
| | | 'prop2': '2100452312', |
| | | 'prop3': '赵建国', |
| | | 'prop4': '510304197402225813', |
| | | 'prop5': '男', |
| | | 'prop6': '46', |
| | | 'prop7': '一分公司', |
| | | 'prop8': '保安员', |
| | | 'prop9': '2019-08-01', |
| | | 'prop10': '2020-08-01', |
| | | 'prop11': '高中', |
| | | 'prop12': '133023187889', |
| | | 'prop13': '正常离职' |
| | | }, { |
| | | 'prop0': '', |
| | | 'prop1': '查看', |
| | | 'prop2': '2101620946', |
| | | 'prop3': '罗启艳', |
| | | 'prop4': '41272619740120543X', |
| | | 'prop5': '女', |
| | | 'prop6': '46', |
| | | 'prop7': '一分公司', |
| | | 'prop8': '保安员', |
| | | 'prop9': '2019-08-01', |
| | | 'prop10': '2020-08-01', |
| | | 'prop11': '高中', |
| | | 'prop12': '189135789889', |
| | | 'prop13': '正常离职' |
| | | }, { |
| | | 'prop0': '', |
| | | 'prop1': '查看', |
| | | 'prop2': '2100629950', |
| | | 'prop3': '毛玉平', |
| | | 'prop4': '522528198202071629', |
| | | 'prop5': '男', |
| | | 'prop6': '38', |
| | | 'prop7': '一分公司', |
| | | 'prop8': '保安员', |
| | | 'prop9': '2019-08-01', |
| | | 'prop10': '2020-08-01', |
| | | 'prop11': '高中', |
| | | 'prop12': '135098784561', |
| | | 'prop13': '正常离职' |
| | | }, { |
| | | 'prop0': '', |
| | | 'prop1': '查看', |
| | | 'prop2': '2100882835', |
| | | 'prop3': '梅均均', |
| | | 'prop4': '510504198704260927', |
| | | 'prop5': '女', |
| | | 'prop6': '33', |
| | | 'prop7': '一分公司', |
| | | 'prop8': '保安员', |
| | | 'prop9': '2019-08-01', |
| | | 'prop10': '2020-08-01', |
| | | 'prop11': '高中', |
| | | 'prop12': '133023187889', |
| | | 'prop13': '正常离职' |
| | | }, { |
| | | 'prop0': '', |
| | | 'prop1': '查看', |
| | | 'prop2': '2101356718', |
| | | 'prop3': '王香妮', |
| | | 'prop4': '433122199508091511', |
| | | 'prop5': '女', |
| | | 'prop6': '25', |
| | | 'prop7': '一分公司', |
| | | 'prop8': '保安员', |
| | | 'prop9': '2019-08-01', |
| | | 'prop10': '2020-08-01', |
| | | 'prop11': '大专', |
| | | 'prop12': '189135789889', |
| | | 'prop13': '正常离职' |
| | | }, { |
| | | 'prop0': '', |
| | | 'prop1': '查看', |
| | | 'prop2': '2100900981', |
| | | 'prop3': '易金洪', |
| | | 'prop4': '610424198306152860', |
| | | 'prop5': '男', |
| | | 'prop6': '39', |
| | | 'prop7': '一分公司', |
| | | 'prop8': '保安员', |
| | | 'prop9': '2019-08-01', |
| | | 'prop10': '2020-08-01', |
| | | 'prop11': '大专', |
| | | 'prop12': '135098784561', |
| | | 'prop13': '正常离职' |
| | | }, { |
| | | 'prop0': '', |
| | | 'prop1': '查看', |
| | | 'prop2': '2101529670', |
| | | 'prop3': '李忠敏', |
| | | 'prop4': '511123198602016016', |
| | | 'prop5': '男', |
| | | 'prop6': '32', |
| | | 'prop7': '一分公司', |
| | | 'prop8': '保安员', |
| | | 'prop9': '2019-08-01', |
| | | 'prop10': '2020-08-01', |
| | | 'prop11': '大专', |
| | | 'prop12': '133023187889', |
| | | 'prop13': '正常离职' |
| | | }, { |
| | | 'prop0': '', |
| | | 'prop1': '查看', |
| | | 'prop2': '2101578011', |
| | | 'prop3': '徐健', |
| | | 'prop4': '512927197202166053', |
| | | 'prop5': '男', |
| | | 'prop6': '48', |
| | | 'prop7': '一分公司', |
| | | 'prop8': '保安员', |
| | | 'prop9': '2019-08-01', |
| | | 'prop10': '2020-08-01', |
| | | 'prop11': '大专', |
| | | 'prop12': '189135789889', |
| | | 'prop13': '正常离职' |
| | | }, { |
| | | 'prop0': '', |
| | | 'prop1': '查看', |
| | | 'prop2': '2100326122', |
| | | 'prop3': '曾昌玖', |
| | | 'prop4': '510322197606103351', |
| | | 'prop5': '男', |
| | | 'prop6': '44', |
| | | 'prop7': '一分公司', |
| | | 'prop8': '经理', |
| | | 'prop9': '2019-08-01', |
| | | 'prop10': '2020-08-01', |
| | | 'prop11': '本科', |
| | | 'prop12': '135098784561', |
| | | 'prop13': '自动离职' |
| | | }, { |
| | | 'prop0': '', |
| | | 'prop1': '查看', |
| | | 'prop2': '2101788698', |
| | | 'prop3': '赵高', |
| | | 'prop4': '511123197510263074', |
| | | 'prop5': '男', |
| | | 'prop6': '55', |
| | | 'prop7': '一分公司', |
| | | 'prop8': '保安员', |
| | | 'prop9': '2019-08-01', |
| | | 'prop10': '2020-08-01', |
| | | 'prop11': '大专', |
| | | 'prop12': '133023187889', |
| | | 'prop13': '正常离职' |
| | | }, { |
| | | 'prop0': '', |
| | | 'prop1': '查看', |
| | | 'prop2': '2101861146', |
| | | 'prop3': '王忠山', |
| | | 'prop4': '522426199904290419', |
| | | 'prop5': '男', |
| | | 'prop6': '21', |
| | | 'prop7': '一分公司', |
| | | 'prop8': '主管', |
| | | 'prop9': '2019-08-01', |
| | | 'prop10': '2020-08-01', |
| | | 'prop11': '大专', |
| | | 'prop12': '189135789889', |
| | | 'prop13': '正常离职' |
| | | }, { |
| | | 'prop0': '', |
| | | 'prop1': '查看', |
| | | 'prop2': '2100315416', |
| | | 'prop3': '严福林', |
| | | 'prop4': '433130197205180710', |
| | | 'prop5': '男', |
| | | 'prop6': '55', |
| | | 'prop7': '一分公司', |
| | | 'prop8': '经理', |
| | | 'prop9': '2019-08-01', |
| | | 'prop10': '2020-08-01', |
| | | 'prop11': '本科', |
| | | 'prop12': '135098784561', |
| | | 'prop13': '自动离职' |
| | | }, { |
| | | 'prop0': '', |
| | | 'prop1': '查看', |
| | | 'prop2': '2101382208', |
| | | 'prop3': '叶金云', |
| | | 'prop4': '512923197703020639', |
| | | 'prop5': '男', |
| | | 'prop6': '43', |
| | | 'prop7': '一分公司', |
| | | 'prop8': '保安员', |
| | | 'prop9': '2019-08-01', |
| | | 'prop10': '2020-08-01', |
| | | 'prop11': '高中', |
| | | 'prop12': '1350987861234', |
| | | 'prop13': '正常离职' |
| | | }], |
| | | data: [{ |
| | | label: '一级 1', |
| | | children: [{ |
| | | label: '二级 1-1', |
| | | children: [{ |
| | | label: '三级 1-1-1' |
| | | }] |
| | | }] |
| | | dialogShowDcyg: false, |
| | | openArchivesRules: { |
| | | openType: [{ required: true, message: '请选择打开类型', trigger: 'change' }], |
| | | openDate: [{ required: true, message: '请选择打开日期', trigger: 'change' }], |
| | | remark: [{ max: 500, message: '长度不超过500个字符', trigger: 'blur' }] |
| | | }, |
| | | { |
| | | label: '一级 2', |
| | | children: [{ |
| | | label: '二级 2-1', |
| | | children: [{ |
| | | label: '三级 2-1-1' |
| | | }] |
| | | }, |
| | | { |
| | | label: '二级 2-2', |
| | | children: [{ |
| | | label: '三级 2-2-1' |
| | | }] |
| | | } |
| | | ] |
| | | tableData: [], |
| | | baseicInformationForm: { |
| | | openDate: new Date() |
| | | }, |
| | | { |
| | | label: '一级 3', |
| | | children: [{ |
| | | label: '二级 3-1', |
| | | children: [{ |
| | | label: '三级 3-1-1' |
| | | }] |
| | | }, |
| | | { |
| | | label: '二级 3-2', |
| | | children: [{ |
| | | label: '三级 3-2-1' |
| | | }] |
| | | } |
| | | ] |
| | | } |
| | | ], |
| | | defaultProps: { |
| | | children: 'children', |
| | | label: 'label' |
| | | } |
| | | educationOptions: [], |
| | | statusOptions: [], |
| | | ageStrOptions: [], |
| | | insuranceTypeOptions: [], |
| | | archivesStatusOptions: [], |
| | | sexOptions: [], |
| | | empTypeOptions: [], |
| | | cityOptions: ['archivesNumb', 'allDeptName', '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', 'empCardStatusName', 'certificateListName', 'urgencyPhone', 'handbookStatusName', 'family', 'empStatusName', 'dimissionDate', 'entryTypeName', 'dimissionTypeName', 'empNumb'], |
| | | checkedCities: [] |
| | | } |
| | | }, |
| | | mounted() { |
| | | this.fetch() |
| | | this.getDicts('INSURANCETYPE').then(response => { |
| | | this.insuranceTypeOptions = response.data |
| | | }) |
| | | this.getDicts('archivesStatus').then(response => { |
| | | this.archivesStatusOptions = response.data |
| | | }) |
| | | this.getDicts('EDUCATION').then(response => { |
| | | this.educationOptions = response.data |
| | | }) |
| | | this.getDicts('sex').then(response => { |
| | | this.sexOptions = response.data |
| | | }) |
| | | this.getDicts('PLITICAL').then(response => { |
| | | this.statusOptions = response.data |
| | | }) |
| | | this.getDicts('ageStr').then(response => { |
| | | this.ageStrOptions = response.data |
| | | }) |
| | | this.getDicts('EMPTYPE').then(response => { |
| | | this.empTypeOptions = response.data |
| | | }) |
| | | this.getDicts('certificateList').then(response => { |
| | | this.certificateListOptions = response.data |
| | | }) |
| | | this.initDept() |
| | | }, |
| | | methods: { |
| | | handleNodeClick(data) { |
| | | console.log(data) |
| | | initDept() { |
| | | this.$get('system/dept').then((r) => { |
| | | this.depts = r.data.data.rows |
| | | this.deptTree = this.depts |
| | | }).catch((error) => { |
| | | console.error(error) |
| | | this.$message({ |
| | | message: this.$t('tips.getDataFail'), |
| | | type: 'error' |
| | | }) |
| | | }) |
| | | }, |
| | | DeptNameSelect(val) { |
| | | this.baseicInformationForm.deptId = val.deptId |
| | | this.baseicInformationForm.deptName = val.label |
| | | this.baseicInformationForm.allDeptName = val.allDeptName |
| | | }, |
| | | exportExcel() { |
| | | this.queryParams.baseKey = this.queryParams.vague |
| | | var params = this.queryParams |
| | | params.empStatus = '1,2,3' |
| | | this.$download('hr/empBaseInfo/exportEmpAll', { ...params }, `基本信息_${new Date().getTime()}.xls`).then(() => { |
| | | this.$message({ |
| | | message: '下载成功!', |
| | | type: 'success' |
| | | }) |
| | | }) |
| | | }, |
| | | doDcda() { |
| | | this.$confirm('是否确定要导出档案?', '提示', { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | this.$message({ |
| | | type: 'success', |
| | | message: '导出成功!' |
| | | }) |
| | | }).catch(() => { |
| | | this.$message({ |
| | | type: 'info', |
| | | message: '已取消' |
| | | }) |
| | | }) |
| | | }, |
| | | educationFormat(row, column) { |
| | | return this.selectDictLabel(this.educationOptions, row.education) |
| | | }, |
| | | sexFormat(row, column) { |
| | | return this.selectDictLabel(this.sexOptions, row.sex) |
| | | }, |
| | | empTypeFormat(row, column) { |
| | | return this.selectDictLabel(this.empTypeOptions, row.empType) |
| | | }, |
| | | editClose() { |
| | | this.dialog.isVisible = false |
| | | }, |
| | | resetSearch() { |
| | | this.queryParams = { |
| | | empNumb: '', |
| | | empName: '', |
| | | deptName: '', |
| | | vague: '', |
| | | sex: [], |
| | | education: [], |
| | | politics: [], |
| | | ageStr: [], |
| | | archivesStatus: [], |
| | | insuranceType: [], |
| | | certificateNumb: '', |
| | | nativePlaceName: '', |
| | | censusAddress: '', |
| | | empStatus: [], |
| | | baseKey: '', |
| | | empType: [], |
| | | dimissionType: [] |
| | | } |
| | | this.search() |
| | | }, |
| | | // 翻页方法 |
| | | search() { |
| | | this.queryParams.baseKey = '' |
| | | this.fetch({ |
| | | ...this.queryParams, |
| | | ...this.sort |
| | | }) |
| | | }, |
| | | fetch(params = {}) { |
| | | var that = this |
| | | params.pageSize = this.pagination.size |
| | | params.pageNum = this.pagination.num |
| | | params.delFlag = 0 |
| | | params.empStatus = '1,2,3' |
| | | this.$get('hr/empBaseInfo/zslist', { |
| | | ...params |
| | | }).then((r) => { |
| | | const data = r.data.data |
| | | that.total = data.total |
| | | that.tableData = data.rows |
| | | }) |
| | | }, |
| | | vagueSearch() { |
| | | this.fetch({ |
| | | baseKey: this.queryParams.baseKey |
| | | }) |
| | | }, |
| | | transEmpStatus(empStatus) { |
| | | switch (empStatus) { |
| | | case '0': |
| | | return '在职' |
| | | case '1': |
| | | return '离职' |
| | | case '2': |
| | | return '退休' |
| | | } |
| | | }, |
| | | transEntryType(entryType) { |
| | | switch (entryType) { |
| | | case '1': |
| | | return '合同期满' |
| | | case '2': |
| | | return '公司劝退' |
| | | case '3': |
| | | return '公司辞退' |
| | | case '4': |
| | | return '自动离职' |
| | | case '5': |
| | | return '试用期内' |
| | | case '6': |
| | | return '正常离职' |
| | | case '7': |
| | | return '到龄退休' |
| | | } |
| | | }, |
| | | transDimissionType(dimissionType) { |
| | | switch (dimissionType) { |
| | | case '1': |
| | | return '正常离职' |
| | | case '2': |
| | | return '自动离职' |
| | | case '3': |
| | | return '公司辞退' |
| | | // case '4': |
| | | // return '公司辞退' |
| | | // case '5': |
| | | // return '试用期内' |
| | | } |
| | | }, |
| | | advancedQueryShowMethods() { |
| | | if (this.advancedQueryShow) { |
| | | this.headerHeight = '70px' |
| | | this.headerHeight = '30px' |
| | | this.advancedQueryShow = false |
| | | } else { |
| | | this.headerHeight = '300px' |
| | | this.headerHeight = 'auto' |
| | | this.advancedQueryShow = true |
| | | } |
| | | }, |
| | | editArchives(row) { |
| | | this.$refs.article.setArchives(row) |
| | | this.dialog.title = row.empName + '员工档案' |
| | | this.dialog.isVisible = true |
| | | }, |
| | | delEmp() { |
| | | var selection = this.$refs.multipleTable.store.states.selection |
| | | if (selection.length === 0) { |
| | | this.$message({ |
| | | message: '请先选中需要删除的数据', |
| | | type: 'error' |
| | | }) |
| | | } else { |
| | | this.$confirm('您确认删除该员工么?', '提示', { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | var empIds = [] |
| | | for (var i = 0; i < selection.length; i++) { |
| | | var data = selection[i] |
| | | empIds.push(data.empId) |
| | | } |
| | | this.$delete(`hr/empBaseInfo/` + empIds.join(',')).then(() => { |
| | | this.$message({ |
| | | message: this.$t('tips.deleteSuccess'), |
| | | type: 'success' |
| | | }) |
| | | this.search() |
| | | }) |
| | | }) |
| | | } |
| | | }, |
| | | showEmpInfo() { |
| | | this.dialogTableVisible = true |
| | | }, |
| | | showDkda() { |
| | | this.dialogShowDkda = true |
| | | showDkda(operate, formName) { |
| | | switch (operate) { |
| | | case 0: |
| | | var selection = this.$refs.multipleTable.store.states.selection |
| | | if (selection.length === 1) { |
| | | var id = selection[0].empId |
| | | var name = selection[0].empName |
| | | var number = selection[0].certificateNumb |
| | | var deptName = selection[0].deptName |
| | | var deptId = selection[0].deptId |
| | | var allDeptName = selection[0].allDeptName |
| | | const nowDate = new Date() |
| | | const year = nowDate.getFullYear() |
| | | const month = nowDate.getMonth() + 1 |
| | | const day = nowDate.getDate() |
| | | this.baseicInformationForm = { |
| | | empId: id, |
| | | empName: name, |
| | | certificateNumb: number, |
| | | openType: 21, |
| | | openDate: year + '-' + month + '-' + day, |
| | | remark: '', |
| | | deptId: deptId, |
| | | deptName: deptName, |
| | | allDeptName: allDeptName |
| | | } |
| | | this.dialogShowDkda = true |
| | | } else { |
| | | this.$message({ |
| | | message: '请选中一个要打开档案的人员', |
| | | type: 'error' |
| | | }) |
| | | } |
| | | break |
| | | case 1: |
| | | this.dialogShowDkda = false |
| | | break |
| | | case 2: |
| | | this.$refs[formName].validate((valid) => { |
| | | if (valid) { |
| | | this.$post('hr/empOpenArchives', { ...this.baseicInformationForm }).then(() => { |
| | | this.dialogShowDkda = false |
| | | this.$message({ |
| | | message: this.$t('员工档案打开成功'), |
| | | type: 'success' |
| | | }) |
| | | this.fetch({ |
| | | ...this.queryParams, |
| | | ...this.sort |
| | | }) |
| | | }) |
| | | } |
| | | }) |
| | | break |
| | | } |
| | | }, |
| | | showXzyg() { |
| | | this.dialogShowXzyg = true |
| | |
| | | var names = '' |
| | | for (var i = 0; i < users.length; i++) { |
| | | var data = users[i] |
| | | names += data.username + ',' |
| | | names += data.empName + ',' |
| | | } |
| | | alert('已选择人员' + names) |
| | | console.log(users) |
| | |
| | | } |
| | | alert('已选择部门' + names) |
| | | console.log(users) |
| | | }, |
| | | // dic列表转为数组 |
| | | dicListToArr(dicList) { |
| | | var arr = [] |
| | | for (var i = 0; i < dicList.length; i++) { |
| | | var dic = dicList[i] |
| | | arr.push(dic.dicItemCode) |
| | | } |
| | | return arr |
| | | }, |
| | | selectAllSex(val) { |
| | | if (val) { |
| | | this.queryParams.sex = this.dicListToArr(this.sexOptions) |
| | | } else { |
| | | this.queryParams.sex = [] |
| | | } |
| | | }, |
| | | selectAllEducation(val) { |
| | | if (val) { |
| | | this.queryParams.education = this.dicListToArr(this.educationOptions) |
| | | } else { |
| | | this.queryParams.education = [] |
| | | } |
| | | }, |
| | | selectAllPolitics(val) { |
| | | if (val) { |
| | | this.queryParams.politics = this.dicListToArr(this.statusOptions) |
| | | } else { |
| | | this.queryParams.politics = [] |
| | | } |
| | | }, |
| | | selectAllAgeStr(val) { |
| | | if (val) { |
| | | this.queryParams.ageStr = this.dicListToArr(this.ageStrOptions) |
| | | } else { |
| | | this.queryParams.ageStr = [] |
| | | } |
| | | }, |
| | | selectAllArchivesStatus(val) { |
| | | if (val) { |
| | | this.queryParams.archivesStatus = this.dicListToArr(this.archivesStatusOptions) |
| | | } else { |
| | | this.queryParams.archivesStatus = [] |
| | | } |
| | | }, |
| | | selectAllInsuranceType(val) { |
| | | if (val) { |
| | | this.queryParams.insuranceType = this.dicListToArr(this.insuranceTypeOptions) |
| | | } else { |
| | | this.queryParams.insuranceType = [] |
| | | } |
| | | }, |
| | | selectAllEmpType(val) { |
| | | if (val) { |
| | | this.queryParams.empType = this.dicListToArr(this.empTypeOptions) |
| | | } else { |
| | | this.queryParams.empType = [] |
| | | } |
| | | }, |
| | | selectAllDimissionType(val) { |
| | | if (val) { |
| | | this.queryParams.dimissionType = [1, 2, 3, 4, 5, 6] |
| | | } else { |
| | | this.queryParams.dimissionType = [] |
| | | } |
| | | }, |
| | | 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 |
| | | }, |
| | | selectAllCertificateList(val) { |
| | | if (val) { |
| | | this.queryParams.certificateList = this.dicListToArr(this.certificateListOptions) |
| | | } else { |
| | | this.queryParams.certificateList = [] |
| | | } |
| | | }, |
| | | 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 |
| | | } |
| | | }, |
| | | changeSort(val) { |
| | | this.sort.field = val.prop |
| | | this.sort.order = val.order |
| | | this.search() |
| | | } |
| | | |
| | | } |
| | | } |
| | | </script> |
| | | <style lang="scss"> |
| | | .el-aside { |
| | | padding: 20px; |
| | | background: #f3f5f8; |
| | | height: 600px; |
| | | |
| | | .el-tree { |
| | | height: 100%; |
| | | .fj-checkbox { |
| | | .el-checkbox__input.is-checked .el-checkbox__inner { |
| | | border-color: #a32c30;; |
| | | background: #a32c30;; |
| | | } |
| | | |
| | | .el-checkbox__label { |
| | | color: #000 !important; |
| | | } |
| | | } |
| | | </style> |
| | | <style lang="scss" scoped> |
| | | .el-main { |
| | | height: 600px; |
| | | } |
| | | |
| | | .el-aside { |
| | | padding: 20px; |
| | | background: #f3f5f8; |
| | | height: 600px; |
| | | |
| | | } |
| | | |
| | | .searchTable { |
| | | margin-top: 10px; |
| | | border-collapse: collapse; |
| | | width: 100%; |
| | | |
| | | tr { |
| | | border-bottom: 1px dashed #d9dadb; |
| | | } |
| | | |
| | | .td { |
| | | width: 90px; |
| | | text-align: right; |
| | | } |
| | | |
| | | .td-group { |
| | | padding-left: 20px; |
| | | } |
| | | } |
| | | |
| | | .searchTable td, |
| | | .searchTable th { |
| | | color: #000; |
| | | height: 50px; |
| | | background-color: #fff; |
| | | } |
| | | |
| | | #ygxq table { |
| | | border-collapse: collapse; |
| | | margin: 0 auto; |
| | | text-align: center; |
| | | width: 100%; |
| | | margin-top: 20px; |
| | | } |
| | | |
| | | #ygxq table td, |
| | | #ygxq table th { |
| | | border: 1px solid #DDDCDC; |
| | | color: #666; |
| | | height: 30px; |
| | | } |
| | | |
| | | #ygxq table thead th { |
| | | background-color: #CCE8EB; |
| | | width: 100px; |
| | | } |
| | | |
| | | #ygxq table tr:nth-child(odd) { |
| | | background: #fff; |
| | | } |
| | | |
| | | #ygxq table tr:nth-child(even) { |
| | | background: #F5FAFA; |
| | | } |
| | | |
| | | #dcygTable { |
| | | border-collapse: collapse; |
| | | tr { |
| | | width: 100%; |
| | | border-bottom: 1px dashed #ccc; |
| | | >td:nth-child(even) { |
| | | width: 100px; |
| | | text-align: left; |
| | | } |
| | | } |
| | | |
| | | .el-main { |
| | | height: 600px; |
| | | } |
| | | } |
| | | |
| | | #searchTable { |
| | | margin-top: 10px; |
| | | border-collapse: collapse; |
| | | width: 100%; |
| | | } |
| | | #dcygTable td { |
| | | width: 160px; |
| | | text-align: center; |
| | | height: 35px; |
| | | line-height: 35px; |
| | | font-size: 15px; |
| | | font-weight: 400; |
| | | } |
| | | |
| | | #searchTable td, |
| | | #searchTable th { |
| | | border: 1px solid #cad9ea; |
| | | color: #666; |
| | | height: 30px; |
| | | } |
| | | .tdTitle { |
| | | font-size: 14px; |
| | | font-weight: 700; |
| | | text-align: left; |
| | | } |
| | | |
| | | #ygxq table { |
| | | border-collapse: collapse; |
| | | margin: 0 auto; |
| | | text-align: center; |
| | | width: 100%; |
| | | margin-top: 20px; |
| | | } |
| | | .link_button { |
| | | color: #169BD5; |
| | | } |
| | | |
| | | #ygxq table td, |
| | | #ygxq table th { |
| | | border: 1px solid #DDDCDC; |
| | | color: #666; |
| | | height: 30px; |
| | | } |
| | | .del_button { |
| | | color: #D9001B; |
| | | } |
| | | |
| | | #ygxq table thead th { |
| | | background-color: #CCE8EB; |
| | | width: 100px; |
| | | } |
| | | </style> |
| | | <style> |
| | | .search-btn { |
| | | display: inline-block; |
| | | width: 3.64vw; |
| | | height: 3.2vh; |
| | | line-height: 3.2vh; |
| | | text-align: center; |
| | | background-color: #a00515; |
| | | color: #fff; |
| | | margin-left: 1vw; |
| | | box-sizing: border-box; |
| | | cursor: pointer; |
| | | vertical-align: middle; |
| | | } |
| | | |
| | | #ygxq table tr:nth-child(odd) { |
| | | background: #fff; |
| | | } |
| | | .sup-search-btn { |
| | | display: inline-block; |
| | | width: 5.2vw; |
| | | height: 3.2vh; |
| | | line-height: 3.2vh; |
| | | text-align: center; |
| | | margin-left: 1vw; |
| | | color: #a00515; |
| | | border: 1px solid #a00515; |
| | | box-sizing: border-box; |
| | | cursor: pointer; |
| | | vertical-align: middle; |
| | | } |
| | | |
| | | #ygxq table tr:nth-child(even) { |
| | | background: #F5FAFA; |
| | | } |
| | | |
| | | .tdTitle { |
| | | font-size: 14px; |
| | | font-weight: 700; |
| | | text-align: left; |
| | | } |
| | | |
| | | .link_button { |
| | | color: #169BD5; |
| | | } |
| | | |
| | | .del_button { |
| | | color: #D9001B; |
| | | } |
| | | .el-dialog.is-fullscreen { |
| | | overflow: hidden; |
| | | } |
| | | </style> |