|
|
@@ -0,0 +1,2224 @@
|
|
|
+<template>
|
|
|
+ <div>
|
|
|
+ <el-main ref="elMain" style="padding: 0px">
|
|
|
+ <Split :gutterSize="2" style="height: calc(100vh - 120px)">
|
|
|
+ <!-- 左侧树Start -->
|
|
|
+ <SplitArea :size="leftSplitWidth" :minSize="240">
|
|
|
+ <div>
|
|
|
+ <div>
|
|
|
+ <el-checkbox v-model="containsSubDeptChecked"
|
|
|
+ >包含下级机构</el-checkbox
|
|
|
+ >
|
|
|
+
|
|
|
+ <kt-button
|
|
|
+ style="
|
|
|
+ background-color: #ffc000;
|
|
|
+ border: #ffc000;
|
|
|
+ margin-left: 15px;
|
|
|
+ "
|
|
|
+ icon="fa fa-plus"
|
|
|
+ label="添加人员"
|
|
|
+ type="primary"
|
|
|
+ perms="sys:agent:add"
|
|
|
+ @click="handleAddButton"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ <el-divider></el-divider>
|
|
|
+ <!-- 左侧树形结构 -->
|
|
|
+ <el-tree
|
|
|
+ :data="ztreeNodes"
|
|
|
+ :props="{ children: 'children', label: 'name' }"
|
|
|
+ node-key="id"
|
|
|
+ :default-expanded-keys="['9']"
|
|
|
+ @node-click="onZTreeClick"
|
|
|
+ ></el-tree>
|
|
|
+ </div>
|
|
|
+ </SplitArea>
|
|
|
+ <!-- 左侧树End -->
|
|
|
+
|
|
|
+ <!-- 右侧列表页面Start -->
|
|
|
+ <SplitArea :size="rightSplitWidth">
|
|
|
+ <!-- 筛选区域Start -->
|
|
|
+ <el-row class="queryFrom">
|
|
|
+ <el-form ref="queryFormRef" :model="queryFrom" label-width="80px">
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="5">
|
|
|
+ <el-form-item label="工号">
|
|
|
+ <el-input
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ placeholder="工号"
|
|
|
+ v-model="queryFrom.id"
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="5">
|
|
|
+ <el-form-item label="姓名">
|
|
|
+ <el-input
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ placeholder="姓名"
|
|
|
+ v-model="queryFrom.name"
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="5">
|
|
|
+ <el-form-item label="手机号">
|
|
|
+ <el-input
|
|
|
+ clearable
|
|
|
+ size="small"
|
|
|
+ placeholder="手机号"
|
|
|
+ v-model="queryFrom.tel"
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="5">
|
|
|
+ <el-form-item label="状态">
|
|
|
+ <el-select
|
|
|
+ size="small"
|
|
|
+ v-model="queryFrom.status"
|
|
|
+ placeholder="请选择"
|
|
|
+ @change="statusChange"
|
|
|
+ >
|
|
|
+ <el-option label="待审核" value="0"></el-option>
|
|
|
+ <el-option label="审核通过" value="1"></el-option>
|
|
|
+ <el-option label="审核驳回" value="2"></el-option>
|
|
|
+ <el-option label="退回修改" value="3"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="4">
|
|
|
+ <el-form-item label="">
|
|
|
+ <el-button
|
|
|
+ size="small"
|
|
|
+ type="primary"
|
|
|
+ @click="queryStaffInfo"
|
|
|
+ >查询</el-button
|
|
|
+ >
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </el-form>
|
|
|
+ </el-row>
|
|
|
+ <!-- 筛选区域End -->
|
|
|
+ <!-- 审核中 或者 审核驳回-->
|
|
|
+ <template
|
|
|
+ v-if="
|
|
|
+ pageRequest.columnFilters.approvalStatus.value == '0' ||
|
|
|
+ pageRequest.columnFilters.approvalStatus.value == '2'
|
|
|
+ "
|
|
|
+ >
|
|
|
+ <kt-common-table
|
|
|
+ permsEdit="sys:agent:view"
|
|
|
+ :showBatchDelete="false"
|
|
|
+ :data="pageResult"
|
|
|
+ :columns="columns"
|
|
|
+ editButtonName="查看"
|
|
|
+ @findPage="findPage"
|
|
|
+ @handleEdit="handleTableEdit"
|
|
|
+ ></kt-common-table>
|
|
|
+ </template>
|
|
|
+
|
|
|
+ <!-- 审核通过 -->
|
|
|
+ <template
|
|
|
+ v-if="pageRequest.columnFilters.approvalStatus.value == '1'"
|
|
|
+ >
|
|
|
+ <kt-common-table
|
|
|
+ permsEdit="sys:agent:edit"
|
|
|
+ permsDelete="sys:agent:delete"
|
|
|
+ :data="pageResult"
|
|
|
+ :columns="columns"
|
|
|
+ editButtonName="编辑"
|
|
|
+ deleteButtonName="删除"
|
|
|
+ :showBatchDelete="false"
|
|
|
+ @findPage="findPage"
|
|
|
+ @handleEdit="handleTableEdit"
|
|
|
+ @handleDeleteFlag="handleTableDeleteFlag"
|
|
|
+ >
|
|
|
+ </kt-common-table>
|
|
|
+ </template>
|
|
|
+
|
|
|
+ <!-- 退回修改 -->
|
|
|
+ <template
|
|
|
+ v-if="pageRequest.columnFilters.approvalStatus.value == '3'"
|
|
|
+ >
|
|
|
+ <kt-common-table
|
|
|
+ permsEdit="sys:agent:edit"
|
|
|
+ :showBatchDelete="false"
|
|
|
+ :data="pageResult"
|
|
|
+ :columns="columns"
|
|
|
+ editButtonName="修改"
|
|
|
+ @findPage="findPage"
|
|
|
+ @handleEdit="handleTableEdit"
|
|
|
+ ></kt-common-table>
|
|
|
+ </template>
|
|
|
+ </SplitArea>
|
|
|
+ <!-- 右侧列表页面End -->
|
|
|
+ </Split>
|
|
|
+ </el-main>
|
|
|
+
|
|
|
+ <!-- 新增修改界面 -->
|
|
|
+ <el-dialog
|
|
|
+ :title="dialogTitle"
|
|
|
+ width="1000px"
|
|
|
+ :visible.sync="dialogVisible"
|
|
|
+ :close-on-click-modal="false"
|
|
|
+ :before-close="handleDialogBefore"
|
|
|
+ @close="closeDialog"
|
|
|
+ v-dialogDrag
|
|
|
+ >
|
|
|
+ <el-form
|
|
|
+ :disabled="dataForm.status1 == '0' || dataForm.status1 == '2'"
|
|
|
+ :model="dataForm"
|
|
|
+ :rules="dataFormRules"
|
|
|
+ ref="dataForm"
|
|
|
+ @keyup.enter.native="submitForm('提交审核')"
|
|
|
+ label-width="130px"
|
|
|
+ size="small"
|
|
|
+ style="text-align: left"
|
|
|
+ >
|
|
|
+ <template v-if="dataForm.status1 == '2' || dataForm.status1 == '3'">
|
|
|
+ <div style="color: red">
|
|
|
+ {{ dataForm.status1 == "2" ? "驳回原因:" : "退回修改原因:" }}
|
|
|
+ {{ dataForm.remark }}
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <el-tabs v-model="activeTabs">
|
|
|
+ <el-tab-pane label="行政信息" name="first">
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="机构名称">
|
|
|
+ <el-cascader
|
|
|
+ :options="option"
|
|
|
+ v-model="zrr"
|
|
|
+ clearable
|
|
|
+ :show-all-levels="false"
|
|
|
+ :props="{
|
|
|
+ value: 'id',
|
|
|
+ label: 'name',
|
|
|
+ checkStrictly: true,
|
|
|
+ expandTrigger: 'hover',
|
|
|
+ }"
|
|
|
+ @change="handleChange"
|
|
|
+ >
|
|
|
+ </el-cascader>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="机构编码">
|
|
|
+ <el-input :value="deptInfo.id" disabled></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="上级机构编码">
|
|
|
+ <el-input :value="deptInfo.parentId" disabled></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="机构类型">
|
|
|
+ <el-select
|
|
|
+ disabled
|
|
|
+ :value="deptInfo.comtype"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in comtypeoptions"
|
|
|
+ :key="item.label"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="机构级别">
|
|
|
+ <el-select
|
|
|
+ disabled
|
|
|
+ :value="deptInfo.comlevel"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in comleveloptions"
|
|
|
+ :key="item.label"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="机构性质">
|
|
|
+ <el-select
|
|
|
+ disabled
|
|
|
+ :value="deptInfo.comattribute"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in comattributeoptions"
|
|
|
+ :key="item.label"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="24">
|
|
|
+ <el-form-item label="机构地址" style="width: 100%">
|
|
|
+ <el-input
|
|
|
+ type="textarea"
|
|
|
+ :rows="3"
|
|
|
+ :autosize="{ minRows: 3, maxRows: 4 }"
|
|
|
+ placeholder="请输入内容"
|
|
|
+ :value="deptInfo.address"
|
|
|
+ disabled
|
|
|
+ >
|
|
|
+ </el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </el-tab-pane>
|
|
|
+ <el-tab-pane label="基本信息" name="second">
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="员工工号" prop="id">
|
|
|
+ <el-input v-model="dataForm.id" disabled></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="部门" prop="deptId">
|
|
|
+ <el-select
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.deptId"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in departmentList"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="岗位" prop="jobCode">
|
|
|
+ <el-select
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.jobCode"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in jobcodeoptions"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="薪资等级" prop="salarycode">
|
|
|
+ <el-select
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.salarycode"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option label="一级" value="一级"></el-option>
|
|
|
+ <el-option label="二级" value="二级"></el-option>
|
|
|
+ <el-option label="三级" value="三级"></el-option>
|
|
|
+ <el-option label="四级" value="四级"></el-option>
|
|
|
+ <el-option label="五级" value="五级"></el-option>
|
|
|
+ <el-option label="六级" value="六级"></el-option>
|
|
|
+ <el-option label="七级" value="七级"></el-option>
|
|
|
+ <el-option label="八级" value="八级"></el-option>
|
|
|
+ <el-option label="九级" value="九级"></el-option>
|
|
|
+ <el-option label="十级" value="十级"></el-option>
|
|
|
+ <el-option label="十一级" value="十一级"></el-option>
|
|
|
+ <el-option label="十二级" value="十二级"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8" v-if="operation">
|
|
|
+ <el-form-item label="修改密码" prop="password">
|
|
|
+ <el-input v-model="dataForm.password"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8" v-if="!operation">
|
|
|
+ <el-form-item label="修改密码">
|
|
|
+ <el-input value="******" disabled></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="档案号" prop="documentno">
|
|
|
+ <el-input v-model="dataForm.documentno"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="姓名" prop="name">
|
|
|
+ <el-input v-model="dataForm.name"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="性别" prop="sex">
|
|
|
+ <el-select
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.sex"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option label="男" value="男"></el-option>
|
|
|
+ <el-option label="女" value="女"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="电话" prop="mobile">
|
|
|
+ <el-input v-model="dataForm.mobile"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="身份证号" prop="identity">
|
|
|
+ <el-input v-model="dataForm.identity"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="出生日期" prop="birthday">
|
|
|
+ <el-date-picker
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.birthday"
|
|
|
+ type="date"
|
|
|
+ placeholder="选择日期"
|
|
|
+ >
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="开户银行" prop="bankname">
|
|
|
+ <el-input v-model="dataForm.bankname" disabled></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="银行账号" prop="accountno">
|
|
|
+ <el-input v-model="dataForm.accountno"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="民族" prop="nations">
|
|
|
+ <el-select
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.nations"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ :label="national"
|
|
|
+ :value="national"
|
|
|
+ v-for="national in nationalList"
|
|
|
+ :key="national"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="政治面貌" prop="politicalstatus">
|
|
|
+ <el-select
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.politicalstatus"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option label="群众" value="群众"></el-option>
|
|
|
+ <el-option label="共青团员" value="共青团员"></el-option>
|
|
|
+ <el-option label="中共党员" value="中共党员"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="户口所在地" prop="addressresident">
|
|
|
+ <el-input v-model="dataForm.addressresident"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="健康状况" prop="health">
|
|
|
+ <el-select
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.health"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option label="健康" value="健康"></el-option>
|
|
|
+ <el-option label="亚健康" value="亚健康"></el-option>
|
|
|
+ <el-option label="疾病" value="疾病"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="邮政编码" prop="postalcode">
|
|
|
+ <el-input v-model="dataForm.postalcode"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="居住地址" prop="addressnow">
|
|
|
+ <el-input v-model="dataForm.addressnow"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="邮箱" prop="email">
|
|
|
+ <el-input v-model="dataForm.email"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="住宅电话" prop="phonehouse">
|
|
|
+ <el-input v-model="dataForm.phonehouse"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="籍贯" prop="nativeplace">
|
|
|
+ <el-input v-model="dataForm.nativeplace"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="入司时间" prop="intime">
|
|
|
+ <el-date-picker
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.intime"
|
|
|
+ type="date"
|
|
|
+ placeholder="选择日期"
|
|
|
+ >
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="转正时间" prop="regulartm">
|
|
|
+ <el-date-picker
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.regulartm"
|
|
|
+ type="date"
|
|
|
+ placeholder="选择日期"
|
|
|
+ >
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="毕业院校" prop="college">
|
|
|
+ <el-input v-model="dataForm.college"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="毕业时间" prop="collegetm">
|
|
|
+ <el-date-picker
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.collegetm"
|
|
|
+ type="date"
|
|
|
+ placeholder="选择日期"
|
|
|
+ >
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="专业" prop="speciality">
|
|
|
+ <el-input v-model="dataForm.speciality"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="婚姻状况" prop="marrycode">
|
|
|
+ <el-select
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.marrycode"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option label="未婚" value="未婚"></el-option>
|
|
|
+ <el-option label="已婚" value="已婚"></el-option>
|
|
|
+ <el-option label="离异" value="离异"></el-option>
|
|
|
+ <el-option label="再婚" value="再婚"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="学历" prop="education">
|
|
|
+ <el-select
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.education"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option label="小学" value="小学"></el-option>
|
|
|
+ <el-option label="初中" value="初中"></el-option>
|
|
|
+ <el-option label="高中" value="高中"></el-option>
|
|
|
+ <el-option label="专科" value="专科"></el-option>
|
|
|
+ <el-option label="本科" value="本科"></el-option>
|
|
|
+ <el-option label="硕士" value="硕士"></el-option>
|
|
|
+ <el-option label="博士" value="博士"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="血型" prop="blood">
|
|
|
+ <el-select
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="dataForm.blood"
|
|
|
+ placeholder="请选择"
|
|
|
+ >
|
|
|
+ <el-option label="A型" value="A型"></el-option>
|
|
|
+ <el-option label="B型" value="B型"></el-option>
|
|
|
+ <el-option label="O型" value="O型"></el-option>
|
|
|
+ <el-option label="AB型" value="AB型"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="紧急联系姓名" prop="namespecial">
|
|
|
+ <el-input v-model="dataForm.namespecial"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="紧急联系电话" prop="phonespecial">
|
|
|
+ <el-input v-model="dataForm.phonespecial"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="操作员" prop="createBy">
|
|
|
+ <el-input v-model="dataForm.createBy"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row v-if="dataForm.status1 == '0' || dataForm.status1 == '2'">
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="录入时间" prop="createTime">
|
|
|
+ <el-input v-model="dataForm.createTime"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="最后修改时间" prop="lastUpdateTime">
|
|
|
+ <el-input v-model="dataForm.lastUpdateTime"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="操作员" prop="lastUpdateBy">
|
|
|
+ <el-input v-model="dataForm.lastUpdateBy"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="原工作单位" prop="orglast">
|
|
|
+ <el-input v-model="dataForm.orglast"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </el-tab-pane>
|
|
|
+ <el-tab-pane label="影像资料" name="third">
|
|
|
+ <div class="imageLibraryItem">
|
|
|
+ <el-row class="imageLibraryItemTitle">
|
|
|
+ <label @click="pic1Control = !pic1Control"> 身份证照片 </label>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="imageLibraryItemBody" v-show="pic1Control">
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="身份证正面:" style="width: 50%">
|
|
|
+ <el-upload
|
|
|
+ class="avatar-uploader"
|
|
|
+ action=""
|
|
|
+ name="photo1"
|
|
|
+ :show-file-list="false"
|
|
|
+ :http-request="httpRequest"
|
|
|
+ :before-upload="beforeAvatarUpload"
|
|
|
+ >
|
|
|
+ <img
|
|
|
+ v-if="dataForm.photo1"
|
|
|
+ :src="dataForm.photo1"
|
|
|
+ v-show="!!dataForm.photo1"
|
|
|
+ class="avatar"
|
|
|
+ />
|
|
|
+ <i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
|
|
+ </el-upload>
|
|
|
+
|
|
|
+ <viewer :images="photo1List">
|
|
|
+ <img
|
|
|
+ style="
|
|
|
+ width: 50px;
|
|
|
+ height: 30px;
|
|
|
+ opacity: 0;
|
|
|
+ position: absolute;
|
|
|
+ top: 122px;
|
|
|
+ left: 0;
|
|
|
+ right: 0;
|
|
|
+ bottom: 0;
|
|
|
+ "
|
|
|
+ :src="photo1Item"
|
|
|
+ v-for="(photo1Item, photo1Index) in photo1List"
|
|
|
+ :key="photo1Index"
|
|
|
+ />
|
|
|
+ </viewer>
|
|
|
+ <button @click.prevent v-show="!!dataForm.photo1">
|
|
|
+ 预览
|
|
|
+ </button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="身份证反面:" style="width: 50%">
|
|
|
+ <el-upload
|
|
|
+ class="avatar-uploader"
|
|
|
+ action=""
|
|
|
+ name="photo2"
|
|
|
+ :show-file-list="false"
|
|
|
+ :http-request="httpRequest"
|
|
|
+ :before-upload="beforeAvatarUpload"
|
|
|
+ >
|
|
|
+ <img
|
|
|
+ v-if="dataForm.photo2"
|
|
|
+ :src="dataForm.photo2"
|
|
|
+ v-show="!!dataForm.photo2"
|
|
|
+ class="avatar"
|
|
|
+ />
|
|
|
+ <i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
|
|
+ </el-upload>
|
|
|
+ <viewer :images="photo2List">
|
|
|
+ <img
|
|
|
+ style="
|
|
|
+ width: 50px;
|
|
|
+ height: 30px;
|
|
|
+ opacity: 0;
|
|
|
+ position: absolute;
|
|
|
+ top: 122px;
|
|
|
+ left: 0;
|
|
|
+ right: 0;
|
|
|
+ bottom: 0;
|
|
|
+ "
|
|
|
+ :src="photo2Item"
|
|
|
+ v-for="(photo2Item, photo2Index) in photo2List"
|
|
|
+ :key="photo2Index"
|
|
|
+ />
|
|
|
+ </viewer>
|
|
|
+ <button @click.prevent v-show="!!dataForm.photo2">
|
|
|
+ 预览
|
|
|
+ </button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="imageLibraryItem">
|
|
|
+ <el-row class="imageLibraryItemTitle">
|
|
|
+ <label @click="pic3Control = !pic3Control"> 展业资格证 </label>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="imageLibraryItemBody" v-show="pic3Control">
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="资格证照片:" style="width: 50%">
|
|
|
+ <el-upload
|
|
|
+ class="avatar-uploader"
|
|
|
+ action=""
|
|
|
+ name="photo3"
|
|
|
+ :show-file-list="false"
|
|
|
+ :http-request="httpRequest"
|
|
|
+ :before-upload="beforeAvatarUpload"
|
|
|
+ >
|
|
|
+ <img
|
|
|
+ v-if="dataForm.photo3"
|
|
|
+ :src="dataForm.photo3"
|
|
|
+ v-show="!!dataForm.photo3"
|
|
|
+ class="avatar"
|
|
|
+ />
|
|
|
+ <i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
|
|
+ </el-upload>
|
|
|
+ <viewer :images="photo3List">
|
|
|
+ <img
|
|
|
+ style="
|
|
|
+ width: 50px;
|
|
|
+ height: 30px;
|
|
|
+ opacity: 0;
|
|
|
+ position: absolute;
|
|
|
+ top: 122px;
|
|
|
+ left: 0;
|
|
|
+ right: 0;
|
|
|
+ bottom: 0;
|
|
|
+ "
|
|
|
+ :src="photo3Item"
|
|
|
+ v-for="(photo3Item, photo3Index) in photo3List"
|
|
|
+ :key="photo3Index"
|
|
|
+ />
|
|
|
+ </viewer>
|
|
|
+ <button @click.prevent v-show="!!dataForm.photo3">
|
|
|
+ 预览
|
|
|
+ </button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="imageLibraryItem">
|
|
|
+ <el-row class="imageLibraryItemTitle">
|
|
|
+ <label @click="pic4Control = !pic4Control"> 劳动合同 </label>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="imageLibraryItemBody" v-show="pic4Control">
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="劳动合同照片:" style="width: 50%">
|
|
|
+ <el-upload
|
|
|
+ class="avatar-uploader"
|
|
|
+ action=""
|
|
|
+ name="photo4"
|
|
|
+ :show-file-list="false"
|
|
|
+ :http-request="httpRequest"
|
|
|
+ :before-upload="beforeAvatarUpload"
|
|
|
+ >
|
|
|
+ <img
|
|
|
+ v-if="dataForm.photo4"
|
|
|
+ :src="dataForm.photo4"
|
|
|
+ v-show="!!dataForm.photo4"
|
|
|
+ class="avatar"
|
|
|
+ />
|
|
|
+ <i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
|
|
+ </el-upload>
|
|
|
+ <viewer :images="photo4List">
|
|
|
+ <img
|
|
|
+ style="
|
|
|
+ width: 50px;
|
|
|
+ height: 30px;
|
|
|
+ opacity: 0;
|
|
|
+ position: absolute;
|
|
|
+ top: 122px;
|
|
|
+ left: 0;
|
|
|
+ right: 0;
|
|
|
+ bottom: 0;
|
|
|
+ "
|
|
|
+ :src="photo4Item"
|
|
|
+ v-for="(photo4Item, photo4Index) in photo4List"
|
|
|
+ :key="photo4Index"
|
|
|
+ />
|
|
|
+ </viewer>
|
|
|
+ <button @click.prevent v-show="!!dataForm.photo4">
|
|
|
+ 预览
|
|
|
+ </button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="imageLibraryItem">
|
|
|
+ <el-row class="imageLibraryItemTitle">
|
|
|
+ <label @click="pic5Control = !pic5Control"> 应聘表 </label>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="imageLibraryItemBody" v-show="pic5Control">
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="应聘表照片:" style="width: 50%">
|
|
|
+ <el-upload
|
|
|
+ class="avatar-uploader"
|
|
|
+ action=""
|
|
|
+ name="photo5"
|
|
|
+ :show-file-list="false"
|
|
|
+ :http-request="httpRequest"
|
|
|
+ :before-upload="beforeAvatarUpload"
|
|
|
+ >
|
|
|
+ <img
|
|
|
+ v-if="dataForm.photo5"
|
|
|
+ :src="dataForm.photo5"
|
|
|
+ v-show="!!dataForm.photo5"
|
|
|
+ class="avatar"
|
|
|
+ />
|
|
|
+ <i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
|
|
+ </el-upload>
|
|
|
+ <viewer :images="photo5List">
|
|
|
+ <img
|
|
|
+ style="
|
|
|
+ width: 50px;
|
|
|
+ height: 30px;
|
|
|
+ opacity: 0;
|
|
|
+ position: absolute;
|
|
|
+ top: 122px;
|
|
|
+ left: 0;
|
|
|
+ right: 0;
|
|
|
+ bottom: 0;
|
|
|
+ "
|
|
|
+ :src="photo5Item"
|
|
|
+ v-for="(photo5Item, photo5Index) in photo5List"
|
|
|
+ :key="photo5Index"
|
|
|
+ />
|
|
|
+ </viewer>
|
|
|
+ <button @click.prevent v-show="!!dataForm.photo5">
|
|
|
+ 预览
|
|
|
+ </button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="imageLibraryItem">
|
|
|
+ <el-row class="imageLibraryItemTitle">
|
|
|
+ <label @click="pic6Control = !pic6Control"> 定薪表 </label>
|
|
|
+ </el-row>
|
|
|
+ <el-row class="imageLibraryItemBody" v-show="pic6Control">
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="定薪表照片:" style="width: 50%">
|
|
|
+ <el-upload
|
|
|
+ class="avatar-uploader"
|
|
|
+ action=""
|
|
|
+ name="photo6"
|
|
|
+ :show-file-list="false"
|
|
|
+ :http-request="httpRequest"
|
|
|
+ :before-upload="beforeAvatarUpload"
|
|
|
+ >
|
|
|
+ <img
|
|
|
+ v-if="dataForm.photo6"
|
|
|
+ :src="dataForm.photo6"
|
|
|
+ v-show="!!dataForm.photo6"
|
|
|
+ class="avatar"
|
|
|
+ />
|
|
|
+ <i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
|
|
+ </el-upload>
|
|
|
+ <viewer :images="photo6List">
|
|
|
+ <img
|
|
|
+ style="
|
|
|
+ width: 50px;
|
|
|
+ height: 30px;
|
|
|
+ opacity: 0;
|
|
|
+ position: absolute;
|
|
|
+ top: 122px;
|
|
|
+ left: 0;
|
|
|
+ right: 0;
|
|
|
+ bottom: 0;
|
|
|
+ "
|
|
|
+ :src="photo6Item"
|
|
|
+ v-for="(photo6Item, photo6Index) in photo6List"
|
|
|
+ :key="photo6Index"
|
|
|
+ />
|
|
|
+ </viewer>
|
|
|
+ <button @click.prevent v-show="!!dataForm.photo6">
|
|
|
+ 预览
|
|
|
+ </button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </div>
|
|
|
+ </el-tab-pane>
|
|
|
+ </el-tabs>
|
|
|
+ </el-form>
|
|
|
+ <span slot="footer" class="dialog-footer" v-show="activeTabs == 'third'">
|
|
|
+ <el-button
|
|
|
+ size="small"
|
|
|
+ type="primary"
|
|
|
+ style="background-color: #ffc000; border: 1px solid #ffc000"
|
|
|
+ @click="closeDialog"
|
|
|
+ >取消</el-button
|
|
|
+ >
|
|
|
+ <el-button
|
|
|
+ v-if="dataForm.status1 != '0' && dataForm.status1 != '2'"
|
|
|
+ size="small"
|
|
|
+ type="primary"
|
|
|
+ @click="submitForm"
|
|
|
+ >提交</el-button
|
|
|
+ >
|
|
|
+ </span>
|
|
|
+ </el-dialog>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import Cookies from "js-cookie";
|
|
|
+import KtButton from "@/views/Core/KtButton"; // 按钮权限组件
|
|
|
+import tree from "@/components/ztree.vue"; // 机构树组件
|
|
|
+import KtCommonTable from "@/views/Core/KtCommonTable.vue"; //表格组件
|
|
|
+import bankBin from "@/assets/js/bankcardinfo.js";
|
|
|
+import CommonUtil from "@/utils/comutil.js";
|
|
|
+
|
|
|
+export default {
|
|
|
+ components: {
|
|
|
+ KtButton,
|
|
|
+ tree,
|
|
|
+ KtCommonTable,
|
|
|
+ },
|
|
|
+ data() {
|
|
|
+ // 验证银行卡号
|
|
|
+ var validateBankCard = (rule, value, callback) => {
|
|
|
+ let that = this;
|
|
|
+ that.dataForm.bankname = "";
|
|
|
+ if (value == "") {
|
|
|
+ callback(new Error("请输入银行账号"));
|
|
|
+ } else {
|
|
|
+ bankBin
|
|
|
+ .getBankBin(value)
|
|
|
+ .then((data) => {
|
|
|
+ that.dataForm.bankname = data.bankName;
|
|
|
+ callback();
|
|
|
+ })
|
|
|
+ .catch((err) => {
|
|
|
+ callback(new Error("卡号输入有误"));
|
|
|
+ });
|
|
|
+ }
|
|
|
+ };
|
|
|
+
|
|
|
+ //验证身份证
|
|
|
+ var validateIdCard = (rule, value, callback) => {
|
|
|
+ let that = this;
|
|
|
+ var pattern =
|
|
|
+ /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X|x)$/;
|
|
|
+ if (!pattern.test(value) || value == "") {
|
|
|
+ callback(new Error("身份证输入有误"));
|
|
|
+ } else {
|
|
|
+ let upperCaseValue = value.toUpperCase();
|
|
|
+ var such = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];
|
|
|
+ var sum = 0;
|
|
|
+ for (var i = 0; i < value.length - 1; i++) {
|
|
|
+ var product = value[i] * such[i];
|
|
|
+ sum += product;
|
|
|
+ }
|
|
|
+ var result = sum % 11;
|
|
|
+ var example = ["1", "0", "X", "9", "8", "7", "6", "5", "4", "3", "2"];
|
|
|
+ if (upperCaseValue[17] == example[result]) {
|
|
|
+ that.dataForm.identity = upperCaseValue;
|
|
|
+ that.dataForm.birthday =
|
|
|
+ value.substr(6, 4) +
|
|
|
+ "-" +
|
|
|
+ value.substr(10, 2) +
|
|
|
+ "-" +
|
|
|
+ value.substr(12, 2);
|
|
|
+ that.dataForm.sex = value.substr(16, 1) % 2 == 0 ? "女" : "男";
|
|
|
+ callback();
|
|
|
+ } else {
|
|
|
+ callback(new Error("身份证输入有误"));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ };
|
|
|
+
|
|
|
+ return {
|
|
|
+ jobNameList: [], //岗位下拉框数组
|
|
|
+ filterObject: {},
|
|
|
+ zrr: [],
|
|
|
+ peopleid: "",
|
|
|
+ peopledeptid: "",
|
|
|
+ /**Split 开始 */
|
|
|
+ leftSplitWidth: 20,
|
|
|
+ rightSplitWidth: 80,
|
|
|
+ /**Split 结束 */
|
|
|
+
|
|
|
+ // 控制影像
|
|
|
+ pic1Control: false,
|
|
|
+ pic3Control: false,
|
|
|
+ pic4Control: false,
|
|
|
+ pic5Control: false,
|
|
|
+ pic6Control: false,
|
|
|
+
|
|
|
+ //----ztreeLeft begin---------
|
|
|
+ ztreeObj: null,
|
|
|
+ ztreeSetting: {
|
|
|
+ check: {
|
|
|
+ enable: false,
|
|
|
+ },
|
|
|
+ data: {
|
|
|
+ simpleData: {
|
|
|
+ enable: true,
|
|
|
+ pIdKey: "parentId",
|
|
|
+ },
|
|
|
+ },
|
|
|
+ view: {
|
|
|
+ showIcon: false,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ ztreeNodes: [],
|
|
|
+ currentTreeNode: null,
|
|
|
+ //----ztreeLeft end---------
|
|
|
+
|
|
|
+ recommenderList: [],
|
|
|
+
|
|
|
+ teamleadername: "",
|
|
|
+ teamleaderid: "",
|
|
|
+
|
|
|
+ // 右侧列表查询数据Start
|
|
|
+ queryFrom: {
|
|
|
+ status: "1",
|
|
|
+ },
|
|
|
+ pageResult: {},
|
|
|
+ containsSubDeptChecked: true, //是否包含下级机构
|
|
|
+ pageRequest: {
|
|
|
+ //查询的默认条件
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 20,
|
|
|
+ columnFilters: {
|
|
|
+ deptId: {
|
|
|
+ name: "deptId",
|
|
|
+ value: "99",
|
|
|
+ },
|
|
|
+ containsSubDept: {
|
|
|
+ name: "containsSubDept",
|
|
|
+ value: 1,
|
|
|
+ },
|
|
|
+ usertype: {
|
|
|
+ name: "usertype",
|
|
|
+ value: "1",
|
|
|
+ },
|
|
|
+ approvalStatus: {
|
|
|
+ name: "approvalStatus",
|
|
|
+ value: "1",
|
|
|
+ },
|
|
|
+ isteamleader: {
|
|
|
+ name: "isteamleader",
|
|
|
+ value: "0",
|
|
|
+ },
|
|
|
+ userId: {
|
|
|
+ name: "userId",
|
|
|
+ value: "",
|
|
|
+ },
|
|
|
+ realName: {
|
|
|
+ name: "realName",
|
|
|
+ value: "",
|
|
|
+ },
|
|
|
+ mobile: {
|
|
|
+ name: "mobile",
|
|
|
+ value: "",
|
|
|
+ },
|
|
|
+ delFlag: {
|
|
|
+ name: "delFlag",
|
|
|
+ value: 0,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ },
|
|
|
+ columns: [
|
|
|
+ // 数据列
|
|
|
+ { prop: "deptId", label: "部门编码", minWidth: 80, sortable: false },
|
|
|
+ {
|
|
|
+ prop: "pdeptName",
|
|
|
+ label: "机构名称",
|
|
|
+ minWidth: 120,
|
|
|
+ sortable: false,
|
|
|
+ },
|
|
|
+
|
|
|
+ { prop: "deptName", label: "部门名称", minWidth: 80, sortable: false },
|
|
|
+ {
|
|
|
+ prop: "jobName",
|
|
|
+ label: "岗位",
|
|
|
+ minWidth: 80,
|
|
|
+ sortable: false,
|
|
|
+ },
|
|
|
+ { prop: "userId", label: "工号", minWidth: 80, sortable: false },
|
|
|
+ { prop: "name", label: "姓名", minWidth: 120, sortable: false },
|
|
|
+ {
|
|
|
+ prop: "sex",
|
|
|
+ label: "性别",
|
|
|
+ minWidth: 120,
|
|
|
+ sortable: false,
|
|
|
+ formatter: this.sexFormatter,
|
|
|
+ },
|
|
|
+ { prop: "mobile", label: "联系电话", minWidth: 100, sortable: false },
|
|
|
+ {
|
|
|
+ prop: "approvalStatus",
|
|
|
+ label: "状态",
|
|
|
+ minWidth: 70,
|
|
|
+ sortable: false,
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ // 右侧列表查询数据End
|
|
|
+
|
|
|
+ // 新增或修改的弹出框Start
|
|
|
+ activeTabs: "first",
|
|
|
+ dialogTitle: "",
|
|
|
+ dialogVisible: false, // 新增编辑界面是否显示
|
|
|
+ operation: false, // true:新增, false:编辑
|
|
|
+ departmentList: [], // 选中公司的所有部门的集合
|
|
|
+ deptInfo: {}, //选中机构的基本信息
|
|
|
+ dataForm: {
|
|
|
+ // 人员个人信息
|
|
|
+ id: "",
|
|
|
+ checkid: "",
|
|
|
+ name: "", //用户名
|
|
|
+ password: "", //密码
|
|
|
+ email: "", //邮箱
|
|
|
+ mobile: "", //手机号
|
|
|
+ birthday: "", //出生日期
|
|
|
+ status: "", //状态 1:正常 0:离司
|
|
|
+ marrycode: "", //婚姻状况
|
|
|
+ deptId: "", //机构号或者部门号
|
|
|
+ createBy: "", //创建人
|
|
|
+ createTime: "", //创建时间
|
|
|
+ lastUpdateBy: "", //更新人
|
|
|
+ lastUpdateTime: "", //更新时间
|
|
|
+ delFlag: "", //是否删除 -1:已删除 0:正常
|
|
|
+ usertype: "", //用户类型:0:系统用户 1:后线人员 2:代理人员
|
|
|
+ tenantId: "", //所属租户
|
|
|
+ sex: "", //性别
|
|
|
+ jobName: "", //岗位
|
|
|
+ jobCode: "",
|
|
|
+ esmUserInternalid: "",
|
|
|
+ addressnow: "", //居住地址
|
|
|
+ nations: "", //民族
|
|
|
+ politicalstatus: "", //政治面貌
|
|
|
+ college: "", //毕业院校
|
|
|
+ identity: "", //身份证号
|
|
|
+ education: "", //学历
|
|
|
+ bankname: "", //开户行
|
|
|
+ accountno: "", //开户账号
|
|
|
+ addressresident: "", //户口地址
|
|
|
+ health: "", //健康状态
|
|
|
+ postalcode: "", //邮政编码
|
|
|
+ phonehouse: "", //住宅电话
|
|
|
+ collegetm: "", //毕业时间
|
|
|
+ speciality: "", //专业
|
|
|
+ nativeplace: "", //籍贯
|
|
|
+ worktype: "", //工作性质
|
|
|
+ blood: "", //血型
|
|
|
+ saleno: "", //业务员职业证书号
|
|
|
+ orglast: "", //原工作单位
|
|
|
+ joblast: "", //工作职务
|
|
|
+ hobby: "", //爱好特长
|
|
|
+ namespecial: "", //紧急联系人姓名
|
|
|
+ phonespecial: "", //紧急联系人电话
|
|
|
+ intimes: "", //是否二次入司
|
|
|
+ intime: "", //入司时间
|
|
|
+ contracttime: "", //签约时间(财)
|
|
|
+ isteamleader: "", //是否团队长(财)
|
|
|
+ documentno: "", //后线人员档案号
|
|
|
+ hrcode: "", //后线人员HR编码
|
|
|
+ regulartm: "", //转正时间
|
|
|
+ salarycode: "", //薪资等级
|
|
|
+ esmUserAgentid: "", //主键
|
|
|
+ recommenderid: "", //推荐人代码
|
|
|
+ recommendername: "", //推荐人姓名
|
|
|
+ leaderupid: "", //上级主管代码
|
|
|
+ leaderupname: "", //上级主管姓名
|
|
|
+ grouppersonid: "", //组育成人代码
|
|
|
+ grouppersonname: "", //组育成人姓名
|
|
|
+ deppersonid: "", //部育成人代码
|
|
|
+ deppersonname: "", //部育成人姓名
|
|
|
+ isshowteam: "", //是否显示团队
|
|
|
+ isshowsalesroom: "", //是否显示门店
|
|
|
+
|
|
|
+ photo1: "",
|
|
|
+ photo2: "",
|
|
|
+ photo3: "",
|
|
|
+ photo4: "",
|
|
|
+ photo5: "",
|
|
|
+ photo6: "",
|
|
|
+ },
|
|
|
+ // 新增或修改的弹出框End
|
|
|
+
|
|
|
+ //------------下拉框数据字典 begin-----------------
|
|
|
+ comleveloptions: [],
|
|
|
+ comattributeoptions: [],
|
|
|
+ comtypeoptions: [],
|
|
|
+ jobcodeoptions: [],
|
|
|
+ statusoptions: [
|
|
|
+ { label: "待审核", value: "0" },
|
|
|
+ { label: "审核通过", value: "1" },
|
|
|
+ { label: "审核驳回", value: "2" },
|
|
|
+ { label: "退回修改", value: "3" },
|
|
|
+ ],
|
|
|
+ //------------下拉框数据字典 end----------------
|
|
|
+
|
|
|
+ //56个民族
|
|
|
+ nationalList: [
|
|
|
+ "汉族",
|
|
|
+ "壮族",
|
|
|
+ "满族",
|
|
|
+ "回族",
|
|
|
+ "苗族",
|
|
|
+ "维吾尔族",
|
|
|
+ "土家族",
|
|
|
+ "彝族",
|
|
|
+ "蒙古族",
|
|
|
+ "藏族",
|
|
|
+ "布依族",
|
|
|
+ "侗族",
|
|
|
+ "瑶族",
|
|
|
+ "朝鲜族",
|
|
|
+ "白族",
|
|
|
+ "哈尼族",
|
|
|
+ "哈萨克族",
|
|
|
+ "黎族",
|
|
|
+ "傣族",
|
|
|
+ "畲族",
|
|
|
+ "傈僳族",
|
|
|
+ "仡佬族",
|
|
|
+ "东乡族",
|
|
|
+ "高山族",
|
|
|
+ "拉祜族",
|
|
|
+ "水族",
|
|
|
+ "佤族",
|
|
|
+ "纳西族",
|
|
|
+ "羌族",
|
|
|
+ "土族",
|
|
|
+ "仫佬族",
|
|
|
+ "锡伯族",
|
|
|
+ "柯尔克孜族",
|
|
|
+ "达斡尔族",
|
|
|
+ "景颇族",
|
|
|
+ "毛南族",
|
|
|
+ "撒拉族",
|
|
|
+ "布朗族",
|
|
|
+ "塔吉克族",
|
|
|
+ "阿昌族",
|
|
|
+ "普米族",
|
|
|
+ "鄂温克族",
|
|
|
+ "怒族",
|
|
|
+ "京族",
|
|
|
+ "基诺族",
|
|
|
+ "德昂族",
|
|
|
+ "保安族",
|
|
|
+ "俄罗斯族",
|
|
|
+ "裕固族",
|
|
|
+ "乌兹别克族",
|
|
|
+ "门巴族",
|
|
|
+ "鄂伦春族",
|
|
|
+ "独龙族",
|
|
|
+ "塔塔尔族",
|
|
|
+ "赫哲族",
|
|
|
+ "珞巴族",
|
|
|
+ ],
|
|
|
+
|
|
|
+ dataFormRules: {
|
|
|
+ name: [{ required: true, message: "请输入用户名", trigger: "blur" }],
|
|
|
+ mobile: [
|
|
|
+ { required: true, message: "请输入电话", trigger: "blur" },
|
|
|
+ { min: 11, max: 11, message: "请输入11位手机号码", trigger: "blur" },
|
|
|
+ {
|
|
|
+ pattern:
|
|
|
+ /^(13[0-9]|14[579]|15[0-3,5-9]|16[6]|17[0135678]|18[0-9]|19[89])\d{8}$/,
|
|
|
+ message: "请输入正确的手机号",
|
|
|
+ trigger: "blur",
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ deptId: [{ required: true, message: "请选择部门", trigger: "change" }],
|
|
|
+ // identity: [{ required: true,message: '请输入身份证',trigger: 'blur'},{ validator: validateIdCard, trigger: 'blur'}],
|
|
|
+ },
|
|
|
+ option: [], //机构列表
|
|
|
+ };
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ this.peopleid = Cookies.get("user");
|
|
|
+ if (this.peopleid != "admin") {
|
|
|
+ this.peopledeptid = Cookies.get("user").split("D")[0];
|
|
|
+ this.pageRequest.columnFilters.deptId.value = this.peopledeptid;
|
|
|
+ } else {
|
|
|
+ this.peopledeptid = "9";
|
|
|
+ this.pageRequest.columnFilters.deptId.value = this.peopledeptid;
|
|
|
+ }
|
|
|
+
|
|
|
+ //获取所有下拉框数据(字典)
|
|
|
+ this.getDictItems("comlevel");
|
|
|
+ this.getDictItems("comattribute");
|
|
|
+ this.getDictItems("comtype");
|
|
|
+ this.jobCodeList();
|
|
|
+
|
|
|
+ this.findLeftTreeData(); // 获取机构树的数据
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+ //用像素初始化左边的split的宽度
|
|
|
+ this.changeTreeWidth(240); // 初始化树的宽度
|
|
|
+ },
|
|
|
+ computed: {
|
|
|
+ photo1List() {
|
|
|
+ if (!!this.dataForm.photo1) {
|
|
|
+ return this.dataForm.photo1.split("___");
|
|
|
+ } else {
|
|
|
+ return [];
|
|
|
+ }
|
|
|
+ },
|
|
|
+ photo2List() {
|
|
|
+ if (!!this.dataForm.photo2) {
|
|
|
+ return this.dataForm.photo2.split("___");
|
|
|
+ } else {
|
|
|
+ return [];
|
|
|
+ }
|
|
|
+ },
|
|
|
+ photo3List() {
|
|
|
+ if (!!this.dataForm.photo3) {
|
|
|
+ return this.dataForm.photo3.split("___");
|
|
|
+ } else {
|
|
|
+ return [];
|
|
|
+ }
|
|
|
+ },
|
|
|
+ photo4List() {
|
|
|
+ if (!!this.dataForm.photo4) {
|
|
|
+ return this.dataForm.photo4.split("___");
|
|
|
+ } else {
|
|
|
+ return [];
|
|
|
+ }
|
|
|
+ },
|
|
|
+ photo5List() {
|
|
|
+ if (!!this.dataForm.photo5) {
|
|
|
+ return this.dataForm.photo5.split("___");
|
|
|
+ } else {
|
|
|
+ return [];
|
|
|
+ }
|
|
|
+ },
|
|
|
+ photo6List() {
|
|
|
+ if (!!this.dataForm.photo6) {
|
|
|
+ return this.dataForm.photo6.split("___");
|
|
|
+ } else {
|
|
|
+ return [];
|
|
|
+ }
|
|
|
+ },
|
|
|
+ },
|
|
|
+
|
|
|
+ watch: {
|
|
|
+ containsSubDeptChecked() {
|
|
|
+ // 监听是否包含下级
|
|
|
+ this.pageRequest.columnFilters.containsSubDept.value = this
|
|
|
+ .containsSubDeptChecked
|
|
|
+ ? "1"
|
|
|
+ : "0";
|
|
|
+ this.findPage();
|
|
|
+ },
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ jobCodeList() {
|
|
|
+ let typeName = "jobcode";
|
|
|
+ this.$api.dict.findByLableName(typeName).then((res) => {
|
|
|
+ console.log(res);
|
|
|
+ this.jobcodeoptions = res.data;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ // 查询Start
|
|
|
+ queryStaffInfo() {
|
|
|
+ this.pageRequest.columnFilters.userId.value = this.queryFrom.id;
|
|
|
+ this.pageRequest.columnFilters.realName.value = this.queryFrom.name;
|
|
|
+ this.pageRequest.columnFilters.mobile.value = this.queryFrom.tel;
|
|
|
+ this.pageRequest.columnFilters.approvalStatus.value =
|
|
|
+ this.queryFrom.status;
|
|
|
+ this.pageRequest.pageNum = 1;
|
|
|
+ this.findPage();
|
|
|
+ },
|
|
|
+ statusChange(e) {
|
|
|
+ //状态选择事件
|
|
|
+ // this.pageRequest.columnFilters.approvalStatus.value = e;
|
|
|
+ // this.findPage();
|
|
|
+ },
|
|
|
+ // 查询End
|
|
|
+
|
|
|
+ //改变部门
|
|
|
+ changeDept(value) {
|
|
|
+ console.log(value);
|
|
|
+ let that = this;
|
|
|
+ that.dataForm.recommenderid = "";
|
|
|
+ that.dataForm.recommendername = "";
|
|
|
+ this.$api.user.selectByDeptId(value).then((res2) => {
|
|
|
+ if (res2.code == 200 && res2.data != null) {
|
|
|
+ this.teamleaderid = res2.data.id;
|
|
|
+ this.teamleadername = res2.data.name;
|
|
|
+ } else {
|
|
|
+ this.teamleaderid = "";
|
|
|
+ this.teamleadername = "";
|
|
|
+ }
|
|
|
+ });
|
|
|
+ var personRequest = {
|
|
|
+ //查询的默认条件
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 9999999,
|
|
|
+ columnFilters: {
|
|
|
+ deptId: {
|
|
|
+ name: "deptId",
|
|
|
+ value: value,
|
|
|
+ },
|
|
|
+ containsSubDept: {
|
|
|
+ name: "containsSubDept",
|
|
|
+ value: 0,
|
|
|
+ },
|
|
|
+ usertype: {
|
|
|
+ name: "usertype",
|
|
|
+ value: "1",
|
|
|
+ },
|
|
|
+ status: {
|
|
|
+ name: "status",
|
|
|
+ value: "1",
|
|
|
+ },
|
|
|
+ delFlag: {
|
|
|
+ name: "delFlag",
|
|
|
+ value: 0,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ };
|
|
|
+ this.$api.user.findPage(personRequest).then((res) => {
|
|
|
+ // console.log(res);
|
|
|
+ if (res.code == 200) {
|
|
|
+ if (res.data.content.length > 0) {
|
|
|
+ that.recommenderList = [];
|
|
|
+ Object.assign(that.recommenderList, res.data.content);
|
|
|
+ } else {
|
|
|
+ that.recommenderList = [];
|
|
|
+ that.$message({ message: "该团队下无可推荐人员", type: "info" });
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ that.recommenderList = [];
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+ changeRecommender(value) {
|
|
|
+ this.dataForm.recommendername = "";
|
|
|
+ this.$api.user.findBasePersonById(value).then((res) => {
|
|
|
+ if (res.code == 200) {
|
|
|
+ this.dataForm.recommendername = res.data.name;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+ //-- formatter begin--
|
|
|
+
|
|
|
+ jobcodeFormatter(row, column) {
|
|
|
+ let jobCode = row.jobCode;
|
|
|
+ return CommonUtil.getDataName({
|
|
|
+ dataList: this.jobcodeoptions,
|
|
|
+ value: "value",
|
|
|
+ label: "label",
|
|
|
+ data: jobCode,
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //-- formatter end--
|
|
|
+
|
|
|
+ /**Split 开始 */
|
|
|
+ changeTreeWidth(widthVal) {
|
|
|
+ // 初始化树的宽度
|
|
|
+ this.leftSplitWidth = Math.ceil(
|
|
|
+ (widthVal / this.$refs.elMain.$el.clientWidth) * 100
|
|
|
+ );
|
|
|
+ this.rightSplitWidth = 100 - this.leftSplitWidth;
|
|
|
+ },
|
|
|
+ /**Split 结束 */
|
|
|
+
|
|
|
+ //--left tree begin-------
|
|
|
+ findLeftTreeData: function () {
|
|
|
+ // 获取数据
|
|
|
+ this.$api.dept.findDeptTree().then((res) => {
|
|
|
+ this.ztreeNodes = res.data;
|
|
|
+ });
|
|
|
+ },
|
|
|
+ onZTreeClick: function (evt, treeId, treeNode) {
|
|
|
+ // 点击事件
|
|
|
+ this.currentTreeNode = evt;
|
|
|
+ this.pageRequest.columnFilters.deptId.value = this.currentTreeNode.id;
|
|
|
+ this.findPage();
|
|
|
+ this.zrr = [];
|
|
|
+ this.platform(treeId);
|
|
|
+ this.$api.dept.getDeptById(evt.id).then((res) => {
|
|
|
+ if (res.data.deptType == "D") {
|
|
|
+ console.log(this.zrr);
|
|
|
+ this.zrr.map((item, index) => {
|
|
|
+ if (res.data.id == item) {
|
|
|
+ this.zrr.splice(index, 1);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ platform(array) {
|
|
|
+ if (!array.parent) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ this.zrr.unshift(array.data.id);
|
|
|
+ this.platform(array.parent);
|
|
|
+ },
|
|
|
+ //联级选择器触发事件
|
|
|
+ handleChange(val) {
|
|
|
+ let that = this;
|
|
|
+
|
|
|
+ if (val.length == 0) {
|
|
|
+ that.deptInfo = {};
|
|
|
+ this.departmentList = [];
|
|
|
+ } else {
|
|
|
+ var arr = val;
|
|
|
+ var lastItem = arr.at(-1);
|
|
|
+ this.dataForm.deptId = "";
|
|
|
+ this.$api.dept.getDeptById(lastItem).then((res) => {
|
|
|
+ that.deptInfo = res.data;
|
|
|
+ this.$api.dept.getDeptById(lastItem).then((result) => {
|
|
|
+ this.departmentList = [];
|
|
|
+ this.filterTreeData(this.ztreeNodes, lastItem);
|
|
|
+
|
|
|
+ for (var i = 0; i < this.filterObject.children.length; i++) {
|
|
|
+ if (this.filterObject.children[i].deptType == "D") {
|
|
|
+ this.departmentList.push({
|
|
|
+ label: this.filterObject.children[i].name,
|
|
|
+ value: this.filterObject.children[i].id,
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.dialogVisible = true;
|
|
|
+ });
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //--left tree start-------
|
|
|
+
|
|
|
+ // 右侧列表的方法Start
|
|
|
+ findPage(data) {
|
|
|
+ // 获取分页数据
|
|
|
+ if (data && data.pageRequest) {
|
|
|
+ this.pageRequest.pageNum = data.pageRequest.pageNum;
|
|
|
+ this.pageRequest.pageSize = data.pageRequest.pageSize;
|
|
|
+ }
|
|
|
+ this.$api.user
|
|
|
+ .findPage(this.pageRequest)
|
|
|
+ .then((res) => {
|
|
|
+ this.pageResult = res.data;
|
|
|
+ })
|
|
|
+ .then(data != null ? data.callback : "");
|
|
|
+ },
|
|
|
+ getParentId(list, id) {
|
|
|
+ for (let i in list) {
|
|
|
+ if (list[i].id == id) {
|
|
|
+ //递归条件
|
|
|
+ return [list[i].id];
|
|
|
+ }
|
|
|
+ if (list[i].children) {
|
|
|
+ let node = this.getParentId(list[i].children, id);
|
|
|
+ if (node !== undefined) {
|
|
|
+ return node.concat(list[i].id);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ handleTableEdit(params) {
|
|
|
+ this.getParentId(this.ztreeNodes, params.row.pdeptId);
|
|
|
+ this.zrr = this.getParentId(
|
|
|
+ this.ztreeNodes,
|
|
|
+ params.row.pdeptId
|
|
|
+ ).reverse();
|
|
|
+
|
|
|
+ this.$api.dept.findDeptTree().then((res) => {
|
|
|
+ this.option = res.data;
|
|
|
+ this.option = this.getDisableList(this.option);
|
|
|
+ });
|
|
|
+ // 编辑代理人员
|
|
|
+ this.pic1Control = false;
|
|
|
+ this.pic3Control = false;
|
|
|
+ this.pic4Control = false;
|
|
|
+ this.pic5Control = false;
|
|
|
+ this.pic6Control = false;
|
|
|
+
|
|
|
+ this.activeTabs = "first";
|
|
|
+ //true:新增 false:编辑
|
|
|
+ this.operation = false;
|
|
|
+ this.dialogTitle = "后线人员信息";
|
|
|
+
|
|
|
+ this.$api.dept
|
|
|
+ .getDeptById(params.row.deptId.split("D")[0])
|
|
|
+ .then((deptRes) => {
|
|
|
+ this.deptInfo = deptRes.data;
|
|
|
+ this.departmentList = [];
|
|
|
+ this.$api.dept.getDeptById(deptRes.data.id).then((result) => {
|
|
|
+ this.departmentList = [];
|
|
|
+ this.filterTreeData(this.ztreeNodes, deptRes.data.id);
|
|
|
+ for (var i = 0; i < this.filterObject.children.length; i++) {
|
|
|
+ if (this.filterObject.children[i].deptType == "D") {
|
|
|
+ this.departmentList.push({
|
|
|
+ label: this.filterObject.children[i].name,
|
|
|
+ value: this.filterObject.children[i].id,
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.dialogVisible = true;
|
|
|
+ });
|
|
|
+
|
|
|
+ if (this.pageRequest.columnFilters.approvalStatus.value == "1") {
|
|
|
+ this.$api.user.findById(params.row.userId).then((personRes) => {
|
|
|
+ Object.assign(this.dataForm, personRes.data.sysUser);
|
|
|
+ Object.assign(this.dataForm, personRes.data.sysUserInternal);
|
|
|
+ Object.assign(this.dataForm, personRes.data.esmUserAgent);
|
|
|
+ Object.assign(this.dataForm, params.row);
|
|
|
+ // this.dataForm.status = personRes.data.esmUserAgent.approvalStatus;
|
|
|
+ this.dataForm.status1 = personRes.data.sysUser.approvalStatus;
|
|
|
+ this.dialogVisible = true;
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ this.$api.user.findById(params.row.userId).then((personRes) => {
|
|
|
+ Object.assign(this.dataForm, personRes.data.sysUser);
|
|
|
+ Object.assign(this.dataForm, personRes.data.sysUserInternal);
|
|
|
+ Object.assign(this.dataForm, personRes.data.esmUserAgent);
|
|
|
+ Object.assign(this.dataForm, params.row);
|
|
|
+ // this.dataForm.status = personRes.data.sysUser.status;
|
|
|
+ this.dataForm.status1 = personRes.data.sysUser.approvalStatus;
|
|
|
+ this.dialogVisible = true;
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ this.$api.user
|
|
|
+ .findPersonImage({
|
|
|
+ taskid: params.row.id,
|
|
|
+ imgtype: "T1",
|
|
|
+ })
|
|
|
+ .then((resImage) => {
|
|
|
+ this.dataForm["photo1"] = resImage.data.imgList[0];
|
|
|
+ });
|
|
|
+ this.$api.user
|
|
|
+ .findPersonImage({
|
|
|
+ taskid: params.row.id,
|
|
|
+ imgtype: "T2",
|
|
|
+ })
|
|
|
+ .then((resImage) => {
|
|
|
+ this.dataForm["photo2"] = resImage.data.imgList[0];
|
|
|
+ });
|
|
|
+ this.$api.user
|
|
|
+ .findPersonImage({
|
|
|
+ taskid: params.row.id,
|
|
|
+ imgtype: "T3",
|
|
|
+ })
|
|
|
+ .then((resImage) => {
|
|
|
+ this.dataForm["photo3"] = resImage.data.imgList[0];
|
|
|
+ });
|
|
|
+ this.$api.user
|
|
|
+ .findPersonImage({
|
|
|
+ taskid: params.row.id,
|
|
|
+ imgtype: "T4",
|
|
|
+ })
|
|
|
+ .then((resImage) => {
|
|
|
+ this.dataForm["photo4"] = resImage.data.imgList[0];
|
|
|
+ });
|
|
|
+ this.$api.user
|
|
|
+ .findPersonImage({
|
|
|
+ taskid: params.row.id,
|
|
|
+ imgtype: "T5",
|
|
|
+ })
|
|
|
+ .then((resImage) => {
|
|
|
+ this.dataForm["photo5"] = resImage.data.imgList[0];
|
|
|
+ });
|
|
|
+ this.$api.user
|
|
|
+ .findPersonImage({
|
|
|
+ taskid: params.row.id,
|
|
|
+ imgtype: "T6",
|
|
|
+ })
|
|
|
+ .then((resImage) => {
|
|
|
+ this.dataForm["photo6"] = resImage.data.imgList[0];
|
|
|
+ });
|
|
|
+ });
|
|
|
+ },
|
|
|
+ // 批量删除人员
|
|
|
+ // handleTableBatchDelete(data) {
|
|
|
+ // this.$api.user
|
|
|
+ // .batchDelete(data.params)
|
|
|
+ // .then(data != null ? data.callback : "");
|
|
|
+ // },
|
|
|
+ // 删除单个人员
|
|
|
+ handleTableDeleteFlag(data) {
|
|
|
+ let params = [
|
|
|
+ {
|
|
|
+ approvalStatus: 1,
|
|
|
+ id: data.row.userId,
|
|
|
+ mobile: data.row.mobile,
|
|
|
+ name: data.row.name,
|
|
|
+ sex: data.row.sex,
|
|
|
+ status: Number(data.row.status),
|
|
|
+ deptId: data.row.deptId,
|
|
|
+ email: this.dataForm.email,
|
|
|
+ createTime: this.dataForm.createTime,
|
|
|
+ jobCode: "17",
|
|
|
+ lastUpdateBy: this.dataForm.lastUpdateBy,
|
|
|
+ lastUpdateTime: this.dataForm.lastUpdateTime,
|
|
|
+ createBy: this.dataForm.createBy,
|
|
|
+ openid: this.dataForm.openid,
|
|
|
+ password: this.dataForm.password,
|
|
|
+ salt: this.dataForm.salt,
|
|
|
+ delFlag: 0,
|
|
|
+ tenantId: this.dataForm.tenantId,
|
|
|
+ usertype: "1",
|
|
|
+ },
|
|
|
+ ];
|
|
|
+
|
|
|
+ this.$confirm("确认删除?")
|
|
|
+ .then(() => {
|
|
|
+ this.$api.user.deleteFlag(params).then((res) => {
|
|
|
+ if (res.code == 200) {
|
|
|
+ this.$message({
|
|
|
+ message: "删除成功",
|
|
|
+ type: "success",
|
|
|
+ });
|
|
|
+ this.findPage();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ })
|
|
|
+ .catch(() => {});
|
|
|
+ },
|
|
|
+ filterTreeData(source, target) {
|
|
|
+ for (let i = 0; i < source.length; i++) {
|
|
|
+ if (source[i].id == target) {
|
|
|
+ this.filterObject = source[i];
|
|
|
+ // return data[i]
|
|
|
+ break;
|
|
|
+ } else {
|
|
|
+ this.filterTreeData(source[i].children, target);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ getDisableList(list) {
|
|
|
+ list.forEach((item) => {
|
|
|
+ if (item.deptType === "D") {
|
|
|
+ item.disabled = true;
|
|
|
+ }
|
|
|
+ if (item.children) {
|
|
|
+ this.getDisableList(item.children);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ return list;
|
|
|
+ },
|
|
|
+ //添加人员
|
|
|
+ handleAddButton() {
|
|
|
+ //级联渲染部门列表
|
|
|
+ this.$api.dept.findDeptTree().then((res) => {
|
|
|
+ this.option = res.data;
|
|
|
+ this.option = this.getDisableList(this.option);
|
|
|
+ });
|
|
|
+
|
|
|
+ var that = this;
|
|
|
+ this.pic1Control = false;
|
|
|
+ this.pic3Control = false;
|
|
|
+ this.pic4Control = false;
|
|
|
+ this.pic5Control = false;
|
|
|
+ this.pic6Control = false;
|
|
|
+ this.filterObject = {};
|
|
|
+ if (this.currentTreeNode == null) {
|
|
|
+ this.$message.info("请选择所属公司或部门");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ this.activeTabs = "first";
|
|
|
+ this.operation = true; // 表示弹出框为新智能功能
|
|
|
+ this.dialogTitle = "新增后线人员";
|
|
|
+ // this.dataForm.jobName = "核保";
|
|
|
+ // 查询机构信息
|
|
|
+ this.$api.dept.getDeptById(this.currentTreeNode.id).then((res) => {
|
|
|
+ this.departmentList = [];
|
|
|
+ if (res.data.deptType == "D") {
|
|
|
+ //选中的是部门
|
|
|
+ this.dataForm.deptId = res.data.id;
|
|
|
+ this.$api.dept.getDeptById(res.data.parentId).then((result) => {
|
|
|
+ this.deptInfo = result.data;
|
|
|
+
|
|
|
+ this.departmentList = [];
|
|
|
+ this.filterTreeData(this.ztreeNodes, res.data.parentId);
|
|
|
+ for (var i = 0; i < this.filterObject.children.length; i++) {
|
|
|
+ if (this.filterObject.children[i].deptType == "D") {
|
|
|
+ this.departmentList.push({
|
|
|
+ label: this.filterObject.children[i].name,
|
|
|
+ value: this.filterObject.children[i].id,
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.dialogVisible = true;
|
|
|
+ });
|
|
|
+ //推荐人工号
|
|
|
+ this.$api.user
|
|
|
+ .findPersonByDeptid(this.currentTreeNode.id)
|
|
|
+ .then((res1) => {
|
|
|
+ if (res1.code == 200) {
|
|
|
+ this.recommenderList = [];
|
|
|
+ Object.assign(this.recommenderList, res1.data);
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ var personRequest = {
|
|
|
+ //查询的默认条件
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 9999999,
|
|
|
+ columnFilters: {
|
|
|
+ deptId: {
|
|
|
+ name: "deptId",
|
|
|
+ value: this.currentTreeNode.id,
|
|
|
+ },
|
|
|
+ containsSubDept: {
|
|
|
+ name: "containsSubDept",
|
|
|
+ value: 0,
|
|
|
+ },
|
|
|
+ usertype: {
|
|
|
+ name: "usertype",
|
|
|
+ value: "1",
|
|
|
+ },
|
|
|
+ status: {
|
|
|
+ name: "status",
|
|
|
+ value: "1",
|
|
|
+ },
|
|
|
+ },
|
|
|
+ };
|
|
|
+ this.$api.user.findPage(personRequest).then((res) => {
|
|
|
+ if (res.code == 200) {
|
|
|
+ if (res.data.content.length > 0) {
|
|
|
+ that.recommenderList = [];
|
|
|
+ Object.assign(that.recommenderList, res.data.content);
|
|
|
+ } else {
|
|
|
+ that.recommenderList = [];
|
|
|
+ that.$message({
|
|
|
+ message: "该团队下无可推荐人员",
|
|
|
+ type: "info",
|
|
|
+ });
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ that.recommenderList = [];
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ // this.$api.user
|
|
|
+ // .selectByDeptId(this.currentTreeNode.id)
|
|
|
+ // .then((res2) => {
|
|
|
+ // if (res2.code == 200) {
|
|
|
+ // this.teamleaderid = res2.data.id;
|
|
|
+ // this.teamleadername = res2.data.name;
|
|
|
+ // }
|
|
|
+ // });
|
|
|
+ } else {
|
|
|
+ //选中的是公司
|
|
|
+ this.deptInfo = res.data;
|
|
|
+ if (this.currentTreeNode.children) {
|
|
|
+ for (var i = 0; i < this.currentTreeNode.children.length; i++) {
|
|
|
+ if (this.currentTreeNode.children[i].id.indexOf("D") >= 0) {
|
|
|
+ this.departmentList.push({
|
|
|
+ label: this.currentTreeNode.children[i].name,
|
|
|
+ value: this.currentTreeNode.children[i].id,
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.dialogVisible = true;
|
|
|
+ } else {
|
|
|
+ this.$message.info(
|
|
|
+ "该机构下还没部门,无法添加人员,请先到机构管理为该机构添加部门"
|
|
|
+ );
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ // 右侧工具方法End
|
|
|
+
|
|
|
+ // 新增或修改的弹出框Start
|
|
|
+ getDictItems(typeName) {
|
|
|
+ //--数据字典--
|
|
|
+ this.$api.dict
|
|
|
+ .findByLableName(typeName)
|
|
|
+ .then((response) => {
|
|
|
+ this[typeName + "options"] = response.data; // 把获取到的数据赋给this.data
|
|
|
+ })
|
|
|
+ .catch((error) => {
|
|
|
+ this[typeName + "options"] = [];
|
|
|
+ });
|
|
|
+ },
|
|
|
+ handleDialogBefore(done) {
|
|
|
+ // 退出对话框之前确认提示
|
|
|
+ var that = this;
|
|
|
+ this.$confirm("确认关闭?")
|
|
|
+ .then((_) => {
|
|
|
+ done();
|
|
|
+ })
|
|
|
+ .catch((_) => {});
|
|
|
+ },
|
|
|
+ closeDialog() {
|
|
|
+ // 清空数据
|
|
|
+ this.deptInfo = {};
|
|
|
+ this.$refs["dataForm"].resetFields();
|
|
|
+ for (let key in this.dataForm) {
|
|
|
+ this.dataForm[key] = "";
|
|
|
+ }
|
|
|
+ this.dialogVisible = false;
|
|
|
+ },
|
|
|
+ //重置
|
|
|
+ clearDialog() {
|
|
|
+ if (!this.dataForm.id) {
|
|
|
+ this.$refs["dataForm"].resetFields();
|
|
|
+ } else {
|
|
|
+ this.$refs["dataForm"].resetFields();
|
|
|
+ this.$api.sysUserInternal
|
|
|
+ .findById(this.dataForm.id)
|
|
|
+ .then((personRes) => {
|
|
|
+ Object.assign(this.dataForm, personRes.data.sysUser);
|
|
|
+ Object.assign(this.dataForm, personRes.data.sysUserInternal);
|
|
|
+ Object.assign(this.dataForm, personRes.data.esmUserAgent);
|
|
|
+ this.dataForm.status = personRes.data.sysUser.status;
|
|
|
+ this.dataForm.status1 = personRes.data.sysUserInternal.status;
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 提交
|
|
|
+ submitForm() {
|
|
|
+ if (!this.operation) {
|
|
|
+ this.dataForm.password = "123456";
|
|
|
+ }
|
|
|
+ this.$refs.dataForm.validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ this.$confirm("确认提交审核吗?", "提示", {})
|
|
|
+ .then(() => {
|
|
|
+ this.editLoading = true;
|
|
|
+ let params = {
|
|
|
+ sysUser: {},
|
|
|
+ sysUserInternal: {},
|
|
|
+ esmUserAgent: {},
|
|
|
+ sysDept: {},
|
|
|
+ };
|
|
|
+ params.sysDept.address = this.deptInfo.address;
|
|
|
+ params.sysDept.children = this.deptInfo.children;
|
|
|
+ params.sysDept.city = this.deptInfo.city;
|
|
|
+ params.sysDept.comattribute = this.deptInfo.comattribute;
|
|
|
+ params.sysDept.comlevel = this.deptInfo.comlevel;
|
|
|
+ params.sysDept.comtype = this.deptInfo.comtype;
|
|
|
+ params.sysDept.createBy = this.deptInfo.createBy;
|
|
|
+ params.sysDept.createTime = this.deptInfo.createTime;
|
|
|
+ params.sysDept.delFlag = this.deptInfo.delFlag;
|
|
|
+ params.sysDept.deptCode = this.deptInfo.deptCode;
|
|
|
+ params.sysDept.deptType = this.deptInfo.deptType;
|
|
|
+ params.sysDept.house = this.deptInfo.house;
|
|
|
+ params.sysDept.id = this.deptInfo.id;
|
|
|
+ params.sysDept.isstop = this.deptInfo.isstop;
|
|
|
+ params.sysDept.lastUpdateBy = this.deptInfo.lastUpdateBy;
|
|
|
+ params.sysDept.lastUpdateTime = this.deptInfo.lastUpdateTime;
|
|
|
+ params.sysDept.leadername = this.deptInfo.leadername;
|
|
|
+ params.sysDept.leaderphone = this.deptInfo.leaderphone;
|
|
|
+ params.sysDept.level = this.deptInfo.level;
|
|
|
+ params.sysDept.name = this.deptInfo.name;
|
|
|
+ params.sysDept.orderNum = this.deptInfo.orderNum;
|
|
|
+ params.sysDept.parentId = this.deptInfo.parentId;
|
|
|
+ params.sysDept.parentName = this.deptInfo.parentName;
|
|
|
+ params.sysDept.province = this.deptInfo.province;
|
|
|
+
|
|
|
+ params.sysUser.approvalStatus = 0;
|
|
|
+ params.sysUser.id = this.dataForm.id;
|
|
|
+ params.sysUser.checkid = this.dataForm.checkid;
|
|
|
+ params.sysUser.name = this.dataForm.name;
|
|
|
+ params.sysUser.password = this.dataForm.password;
|
|
|
+ params.sysUser.email = this.dataForm.email;
|
|
|
+ params.sysUser.mobile = this.dataForm.mobile;
|
|
|
+ params.sysUser.status = 0;
|
|
|
+ params.sysUser.deptId = this.dataForm.deptId;
|
|
|
+ params.sysUser.createBy = this.dataForm.createBy;
|
|
|
+ params.sysUser.createTime = this.dataForm.createTime;
|
|
|
+ params.sysUser.lastUpdateBy = this.dataForm.lastUpdateBy;
|
|
|
+ params.sysUser.lastUpdateTime = this.dataForm.lastUpdateTime;
|
|
|
+ params.sysUser.delFlag = this.dataForm.delFlag;
|
|
|
+ params.sysUser.usertype = "1";
|
|
|
+ params.sysUser.tenantId = this.dataForm.tenantId;
|
|
|
+ params.sysUser.sex = this.dataForm.sex;
|
|
|
+ params.sysUser.jobCode = this.dataForm.jobCode;
|
|
|
+ params.sysUser.openid = this.dataForm.openid;
|
|
|
+ params.sysUser.salt = this.dataForm.salt;
|
|
|
+ params.sysUserInternal.id = this.dataForm.id;
|
|
|
+ params.sysUserInternal.checkid = this.dataForm.checkid;
|
|
|
+ params.sysUserInternal.marrycode = this.dataForm.marrycode;
|
|
|
+ params.sysUserInternal.addressnow = this.dataForm.addressnow;
|
|
|
+ params.sysUserInternal.birthday = this.dataForm.birthday;
|
|
|
+ params.sysUserInternal.salarycode = this.dataForm.salarycode;
|
|
|
+ params.sysUserInternal.nations = this.dataForm.nations;
|
|
|
+ params.sysUserInternal.politicalstatus =
|
|
|
+ this.dataForm.politicalstatus;
|
|
|
+ params.sysUserInternal.college = this.dataForm.college;
|
|
|
+ params.sysUserInternal.identity = this.dataForm.identity;
|
|
|
+ params.sysUserInternal.education = this.dataForm.education;
|
|
|
+ params.sysUserInternal.bankname = this.dataForm.bankname;
|
|
|
+ params.sysUserInternal.accountno = this.dataForm.accountno;
|
|
|
+ params.sysUserInternal.addressresident =
|
|
|
+ this.dataForm.addressresident;
|
|
|
+ params.sysUserInternal.health = this.dataForm.health;
|
|
|
+ params.sysUserInternal.postalcode = this.dataForm.postalcode;
|
|
|
+ params.sysUserInternal.phonehouse = this.dataForm.phonehouse;
|
|
|
+ params.sysUserInternal.collegetm = this.dataForm.collegetm;
|
|
|
+ params.sysUserInternal.speciality = this.dataForm.speciality;
|
|
|
+ params.sysUserInternal.nativeplace = this.dataForm.nativeplace;
|
|
|
+ params.sysUserInternal.worktype = this.dataForm.worktype;
|
|
|
+ params.sysUserInternal.blood = this.dataForm.blood;
|
|
|
+ params.sysUserInternal.saleno = this.dataForm.saleno;
|
|
|
+ params.sysUserInternal.orglast = this.dataForm.orglast;
|
|
|
+ params.sysUserInternal.joblast = this.dataForm.joblast;
|
|
|
+ params.sysUserInternal.hobby = this.dataForm.hobby;
|
|
|
+ params.sysUserInternal.namespecial = this.dataForm.namespecial;
|
|
|
+ params.sysUserInternal.phonespecial = this.dataForm.phonespecial;
|
|
|
+ params.sysUserInternal.intimes = this.dataForm.intimes;
|
|
|
+ params.sysUserInternal.intime = this.dataForm.intime;
|
|
|
+ params.sysUserInternal.contracttime = this.dataForm.contracttime;
|
|
|
+ params.sysUserInternal.isteamleader = "0";
|
|
|
+ params.sysUserInternal.documentno = this.dataForm.documentno;
|
|
|
+ params.sysUserInternal.hrcode = this.dataForm.hrcode;
|
|
|
+ params.sysUserInternal.regulartm = this.dataForm.regulartm;
|
|
|
+ params.sysUserInternal.status = 0;
|
|
|
+ params.sysUserInternal.remark = this.dataForm.remark;
|
|
|
+ params.sysUserInternal.whichteam = this.dataForm.whichteam;
|
|
|
+
|
|
|
+ params.esmUserAgent.id = this.dataForm.id;
|
|
|
+ params.esmUserAgent.checkid = this.dataForm.checkid;
|
|
|
+ params.esmUserAgent.recommenderid = this.dataForm.recommenderid;
|
|
|
+ params.esmUserAgent.recommendername =
|
|
|
+ this.dataForm.recommendername;
|
|
|
+ params.esmUserAgent.leaderupid = this.dataForm.leaderupid;
|
|
|
+ params.esmUserAgent.leaderupname = this.dataForm.leaderupname;
|
|
|
+ params.esmUserAgent.grouppersonid = this.dataForm.grouppersonid;
|
|
|
+ params.esmUserAgent.grouppersonname =
|
|
|
+ this.dataForm.grouppersonname;
|
|
|
+ params.esmUserAgent.deppersonid = this.dataForm.deppersonid;
|
|
|
+ params.esmUserAgent.deppersonname = this.dataForm.deppersonname;
|
|
|
+ params.esmUserAgent.isshowteam = this.dataForm.isshowteam;
|
|
|
+ params.esmUserAgent.isshowsalesroom =
|
|
|
+ this.dataForm.isshowsalesroom;
|
|
|
+ console.log(params);
|
|
|
+ this.$api.user.saveUser(params).then((res) => {
|
|
|
+ if (res.code == 200) {
|
|
|
+ let taskid = res.data;
|
|
|
+ // this.$api.user.savePersonImage({
|
|
|
+ // taskid: taskid,
|
|
|
+ // imgtype: "T1",
|
|
|
+ // imgList: [this.dataForm.photo1],
|
|
|
+ // });
|
|
|
+ // this.$api.user.savePersonImage({
|
|
|
+ // taskid: taskid,
|
|
|
+ // imgtype: "T2",
|
|
|
+ // imgList: [this.dataForm.photo2],
|
|
|
+ // });
|
|
|
+ // this.$api.user.savePersonImage({
|
|
|
+ // taskid: taskid,
|
|
|
+ // imgtype: "T3",
|
|
|
+ // imgList: [this.dataForm.photo3],
|
|
|
+ // });
|
|
|
+ // this.$api.user.savePersonImage({
|
|
|
+ // taskid: taskid,
|
|
|
+ // imgtype: "T4",
|
|
|
+ // imgList: [this.dataForm.photo4],
|
|
|
+ // });
|
|
|
+ // this.$api.user.savePersonImage({
|
|
|
+ // taskid: taskid,
|
|
|
+ // imgtype: "T5",
|
|
|
+ // imgList: [this.dataForm.photo5],
|
|
|
+ // });
|
|
|
+ // this.$api.user.savePersonImage({
|
|
|
+ // taskid: taskid,
|
|
|
+ // imgtype: "T6",
|
|
|
+ // imgList: [this.dataForm.photo6],
|
|
|
+ // });
|
|
|
+
|
|
|
+ this.$message({
|
|
|
+ message: "操作成功",
|
|
|
+ type: "success",
|
|
|
+ });
|
|
|
+ this.dialogVisible = false;
|
|
|
+ this.$refs["dataForm"].resetFields();
|
|
|
+ } else {
|
|
|
+ this.$message({
|
|
|
+ message: `操作失败,请重新添加,(${res.msg})`,
|
|
|
+ type: "error",
|
|
|
+ });
|
|
|
+ }
|
|
|
+ this.findPage();
|
|
|
+ });
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ this.$message({
|
|
|
+ type: "info",
|
|
|
+ message: "已取消提交",
|
|
|
+ });
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ this.activeTabs = "second";
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ // 新增或修改的弹出框End
|
|
|
+
|
|
|
+ // 上传图片的方法Start
|
|
|
+ beforeAvatarUpload(file) {
|
|
|
+ const isJPG = file.type === "image/jpeg" || file.type === "image/png";
|
|
|
+ const isLt2M = file.size / 1024 / 1024 < 0.2;
|
|
|
+ if (!isJPG) {
|
|
|
+ this.$message.error("上传图片只能是 JPG 或者 PNG 格式!");
|
|
|
+ }
|
|
|
+ if (!isLt2M) {
|
|
|
+ this.$message.error("上传图片大小不能超过 200KB!");
|
|
|
+ }
|
|
|
+ return isJPG && isLt2M;
|
|
|
+ },
|
|
|
+ httpRequest(options) {
|
|
|
+ let file = options.file;
|
|
|
+ let filename = options.filename;
|
|
|
+ let reader = new FileReader();
|
|
|
+ if (file) {
|
|
|
+ reader.readAsDataURL(file);
|
|
|
+ }
|
|
|
+ reader.onload = () => {
|
|
|
+ let base64Str = reader.result;
|
|
|
+ this.dataForm[options.filename] = base64Str;
|
|
|
+ };
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+</script>
|
|
|
+
|
|
|
+<style scoped>
|
|
|
+.el-divider--horizontal {
|
|
|
+ margin: 4px 0;
|
|
|
+}
|
|
|
+
|
|
|
+/* 顶部查询条件样式Start */
|
|
|
+.queryFrom .el-row {
|
|
|
+ margin: 10px 0px;
|
|
|
+}
|
|
|
+
|
|
|
+.queryFrom .el-form-item {
|
|
|
+ margin-bottom: 0px;
|
|
|
+}
|
|
|
+
|
|
|
+.queryFrom .queryButton .el-form-item__content {
|
|
|
+ margin-left: 0px !important;
|
|
|
+}
|
|
|
+
|
|
|
+/* 顶部查询条件样式End */
|
|
|
+
|
|
|
+/* 上传图片样式Start */
|
|
|
+.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: 100px;
|
|
|
+ height: 100px;
|
|
|
+ line-height: 100px;
|
|
|
+ text-align: center;
|
|
|
+ border: 1px dashed #d9d9d9;
|
|
|
+}
|
|
|
+.avatar {
|
|
|
+ border: 1px dashed #d9d9d9;
|
|
|
+ padding: 5px;
|
|
|
+ border-radius: 6px;
|
|
|
+ width: 100px;
|
|
|
+ height: 100px;
|
|
|
+ display: block;
|
|
|
+}
|
|
|
+/* 上传图片样式End */
|
|
|
+
|
|
|
+.imageLibraryItem {
|
|
|
+ margin-bottom: 10px;
|
|
|
+}
|
|
|
+.imageLibraryItem .imageLibraryItemTitle {
|
|
|
+ display: block;
|
|
|
+ height: 40px;
|
|
|
+ line-height: 40px;
|
|
|
+ width: 100%;
|
|
|
+ background: #f3f3f3;
|
|
|
+ border: 1px solid #dddddd;
|
|
|
+}
|
|
|
+.imageLibraryItem .imageLibraryItemTitle label {
|
|
|
+ margin: 0px 15px;
|
|
|
+ font-weight: bold;
|
|
|
+}
|
|
|
+.imageLibraryItem .imageLibraryItemBody {
|
|
|
+ width: 100%;
|
|
|
+ border: 1px solid #ddd;
|
|
|
+ padding: 15px;
|
|
|
+ border-top: none;
|
|
|
+}
|
|
|
+.el-tree-node__expand-icon {
|
|
|
+ cursor: pointer;
|
|
|
+ color: #aeafb1 !important;
|
|
|
+ font-size: 17px !important;
|
|
|
+}
|
|
|
+</style>
|