Просмотр исходного кода

修改用户模块、修改机构管理-部门管理字段显示问题

lihongxiao 3 лет назад
Родитель
Сommit
2bb043734c

+ 2 - 2
config/dev.env.js

@@ -5,7 +5,7 @@ const prodEnv = require('./prod.env')
 module.exports = merge(prodEnv, {
   NODE_ENV: '"development"',
   ENV_CONFIG:'"dev"',
-  BASE_URL: '"http://39.98.239.48/web-api"',
-  // BASE_URL: '"http://192.168.0.111:9001/"' //测试服务器
+  // BASE_URL: '"http://39.98.239.48/web-api"',
+  BASE_URL: '"http://192.168.0.111:8080/"' //测试服务器
 
 })

+ 4 - 2
src/http/axios.js

@@ -2,6 +2,7 @@ import axios from 'axios';
 import config from './config';
 import Cookies from "js-cookie";
 import router from '@/router'
+import { Message } from 'element-ui'
 
 // 使用vuex做全局loading时使用
 // import store from '@/store'
@@ -78,13 +79,14 @@ export default function $axios(options) {
         } else {
           data = response.data
         }
-        if(response.status==401){
-          this.$message({
+        if(response.data.code==401){
+          Message({
             message: '登录信息已过期,请重新登录!!!',
             type: 'error',
             duration: 2000
           })
           Cookies.remove('token')
+          Cookies.remove('user')
           router.push('/login')
         }
         

+ 31 - 0
src/http/moudules/user.js

@@ -204,3 +204,34 @@ export const gainUserSynthesisInfo = (params) => {
         method: 'post'
     })
 }
+// 保存用户信息接口
+export const saveOrUpdate = (data) => {
+  return axios({
+      url: '/user/saveOrUpdate',
+      method: 'post',
+      data
+  })
+}
+// 后线人员回显接口
+export const getUserDatail = (params) => {
+  return axios({
+      url: '/user/'+params,
+      method: 'get',
+  })
+}
+// 删除后线人员接口
+export const getDeleteBatch = (data) => {
+  return axios({
+      url: '/user/logicDeleteBatch',
+      method: 'post',
+      data
+  })
+}
+
+// 获取登陆用户信息
+export const getLoginUser= () => {
+  return axios({
+      url: '/user/loginUser',
+      method: 'get',
+  })
+}

+ 2 - 9
src/store/modules/user.js

@@ -36,14 +36,7 @@ export default {
                 if (!data) {
                   reject('Verification failed, please Login again.')
                 }
-                const { roles, name, avatar, introduction } = data
-                if (!roles || roles.length <= 0) {
-                  reject('getInfo: roles must be a non-null array!')
-                }
-                commit('SET_ROLES', roles)
-                commit('SET_NAME', name)
-                commit('SET_AVATAR', avatar)
-                commit('SET_INTRODUCTION', introduction)
+                commit('SET_INFO', data)
                 resolve(data)
               }).catch(error => {
                 reject(error)
@@ -54,7 +47,7 @@ export default {
             return new Promise((resolve, reject) => {
               logout(state.token).then(() => {
                 commit('SET_TOKEN', '')
-                commit('SET_ROLES', [])
+                commit('SET_INFO', [])
                 removeToken()
                 resolve()
               }).catch(error => {

+ 1 - 4
src/views/Core/KtCommonTable.vue

@@ -2,7 +2,7 @@
   <div style="position: relative" ref="commonTable">
     <!--表格栏-->
     <el-table id="commonTable" :data="data.content" :highlight-current-row="highlightCurrentRow"
-      @selection-change="selectionChange" @row-click="rowClick" @current-change="handleCurrentChange" v-loading="loading"
+      @selection-change="selectionChange" @row-click="rowClick" @current-change="handleCurrentChange"
       :element-loading-text="$t('action.loading')" :border="border" :stripe="stripe"
       :show-overflow-tooltip="showOverflowTooltip" :height="tableHeight" :size="size" :align="align" :header-cell-style="{
         background: '#F2F7FC',
@@ -388,7 +388,6 @@ export default {
             obj[_keyName] = idArray[i];
             params.push(obj);
           }
-          this.loading = true;
           let callback = (res) => {
             if (res.code == 200) {
               this.$message({
@@ -408,10 +407,8 @@ export default {
             params: params,
             callback: callback,
           });
-          this.loading = false;
         })
         .catch(() => {
-          this.loading = false;
         });
     },
     //批量结算

+ 37 - 14
src/views/HeadBar/HeadBar.vue

@@ -175,20 +175,16 @@ export default {
     this.sysName = "Zgdd Platform";
     // var user = sessionStorage.getItem("user")
     var user = Cookies.get("user")
-    if (user) {
-      this.user.id = user;
-
-      this.$api.user.findById(user).then((personRes) => {
-        this.user.name = personRes.data.sysUser.name;
+    this.$api.user.getLoginUser().then((personRes) => {
+      if(personRes.code==200){
+        this.user.name = personRes.data.name;
+        Cookies.set("userData",personRes.data)
         this.user.avatar = require("@/assets/user.png")
-        Cookies.set('name', personRes.data.sysUser.name) // 放置token到Cookie
         if (user != 'admin') {
-
           this.user.registeInfo = "入司时间:" + this.transformTime(personRes.data.esmUserInternal.intime);
-
-          this.user.deptId = personRes.data.sysUser.deptId;
-          this.user.jobCode = personRes.data.sysUser.jobCode;
-          this.$api.dept.getDeptById(this.user.deptId).then(deptRes => {
+          this.user.deptId = personRes.data.deptId;
+          this.user.jobCode = personRes.data.jobCode;
+          this.$api.dept.getDeptById(personRes.data.deptId).then(deptRes => {
             this.user.deptName = deptRes.data.name;
           });
 
@@ -201,9 +197,36 @@ export default {
             }
           })
         }
-      })
-      // this.user.avatar = require("@/assets/user.png")
-    }
+      }
+      
+    })
+    // if (user) {
+    //   this.user.id = user;
+    //   this.$api.user.findById(user).then((personRes) => {
+    //     this.user.name = personRes.data.sysUser.name;
+    //     this.user.avatar = require("@/assets/user.png")
+    //     Cookies.set('name', personRes.data.sysUser.name) // 放置token到Cookie
+    //     if (user != 'admin') {
+
+    //       this.user.registeInfo = "入司时间:" + this.transformTime(personRes.data.esmUserInternal.intime);
+
+    //       this.user.deptId = personRes.data.sysUser.deptId;
+    //       this.user.jobCode = personRes.data.sysUser.jobCode;
+    //       this.$api.dept.getDeptById(this.user.deptId).then(deptRes => {
+    //         this.user.deptName = deptRes.data.name;
+    //       });
+
+    //       this.$api.dict.findByLableName("jobcode").then((response) => {
+    //         var jobList = response.data; // 把获取到的数据赋给this.data
+    //         for (let i = 0; i < jobList.length; i++) {
+    //           if (jobList[i].value == this.user.jobCode) {
+    //             this.user.jobName = jobList[i].label;
+    //           }
+    //         }
+    //       })
+    //     }
+    //   })
+    // }
   },
   methods: {
     openWindow(url) {

Разница между файлами не показана из-за своего большого размера
+ 100 - 811
src/views/PeopleManage/Staff/StaffManage.vue


+ 2224 - 0
src/views/PeopleManage/Staff/StaffManageOld.vue

@@ -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>

+ 5 - 15
src/views/Sys/Deptall.vue

@@ -19,7 +19,7 @@
             fontWeight: '900',
             color: '#606266',
           }" size="small" ref="expandTable" highlight-current-row @row-click="rowClick">
-          <el-table-column prop="name" label="部门管理" width="300" align="center">
+          <el-table-column prop="name" label="部门管理" width="300">
           </el-table-column>
           <el-table-column prop="id" label="ID" width="150" align="center"> </el-table-column>
           <el-table-column prop="comlevel" label="机构级别" :formatter="comlevelFormatter" align="center"
@@ -376,10 +376,7 @@ export default {
       // 部门DialogStart
       deptDialogVisible: false,
       deptDataForm: {
-        id: "",
-        name: "",
-        parentId: "",
-        deptType: "D",
+       deptType: "D",
         orderNum: 0,
       },
       deptDataRule: {
@@ -727,7 +724,6 @@ export default {
       let that = this;
       this.$refs["dataForm"].validate((valid) => {
         if (valid) {
-          this.editLoading = true;
           this.dataForm.orderNum = 1;
           let params = Object.assign({}, this.dataForm);
           if (that.operType === "ADD" || that.operType === "ADDC") {
@@ -747,7 +743,6 @@ export default {
               orderNum: params.orderNum,
             };
             this.$api.dept.add(paramData).then((res) => {
-              this.editLoading = false;
               if (res.code == 200) {
                 this.$message({
                   message: "操作成功",
@@ -765,7 +760,6 @@ export default {
             });
           } else if (that.operType === "EDIT") {
             this.$api.dept.edit(params).then((res) => {
-              this.editLoading = false;
               if (res.code == 200) {
                 this.$message({
                   message: "操作成功",
@@ -792,12 +786,9 @@ export default {
       let that = this;
       this.$refs["deptDataForm"].validate((valid) => {
         if (valid) {
-          this.editLoading = true;
           this.dataForm.orderNum = 0;
-          let params = Object.assign({}, this.deptDataForm);
           if (that.operType === "ADD") {
-            this.$api.dept.add(params).then((res) => {
-              this.editLoading = false;
+            this.$api.dept.add( that.deptDataForm).then((res) => {
               if (res.code == 200) {
                 this.$message({
                   message: "操作成功",
@@ -814,8 +805,7 @@ export default {
               this.findTreeData();
             });
           } else if (that.operType === "EDIT") {
-            this.$api.dept.edit(params).then((res) => {
-              this.editLoading = false;
+            this.$api.dept.edit(that.deptDataForm).then((res) => {
               if (res.code == 200) {
                 this.$message({
                   message: "操作成功",
@@ -892,7 +882,7 @@ export default {
   
     //关闭部门弹框
     closeDeptDialog() {
-      this.$refs.deptDataForm.resetFields();
+      // this.$refs.deptDataForm.resetFields();
       this.deptDialogVisible = false;
     },
   },

Некоторые файлы не были показаны из-за большого количества измененных файлов