dedsudiyu 8 months ago
parent
commit
6e163454f1

BIN
src/assets/ZDimages/basicsModules/icon_fcrzy_wxz@1x.png


BIN
src/assets/ZDimages/basicsModules/icon_fcrzy_xz@1x.png


+ 134 - 18
src/views/safetyCheck/collegeInspect/hiddenDangersReview/index.vue

@@ -154,6 +154,36 @@
         />
       </div>
     </div>
+    <el-dialog class="hiddenDangersReview-dialog" title='复查人转移' width="745px" append-to-body
+               :visible.sync="dialogType" v-if="dialogType" @close="dialogOff()"
+               :close-on-click-modal="false" :close-on-press-escape="false">
+      <div class="hiddenDangersReview-dialog-max-box">
+        <p class="hiddenDangersReview-dialog-name">督导组名称</p>
+        <div class="hiddenDangersReview-dialog-box">
+          <img src="@/assets/ZDimages/safetyCheck/icon_xyxc_cy.png">
+          <p>成员列表</p>
+        </div>
+        <el-table class="table-box table-null-img-20" border :data="dialogData.dialogList1">
+          <el-table-column label="" align="center" width="150">
+            <template scope="scope">
+              <div class="check-img-box" @click="tableColumnCheck(scope.row.dialogDataId)">
+                <img src="@/assets/ZDimages/basicsModules/icon_fcrzy_wxz@1x.png" v-if="scope.row.dialogDataId != tableColumnType">
+                <img src="@/assets/ZDimages/basicsModules/icon_fcrzy_xz@1x.png" v-if="scope.row.dialogDataId == tableColumnType">
+              </div>
+            </template>
+          </el-table-column>
+          <el-table-column label="姓名" prop="name" show-overflow-tooltip/>
+          <el-table-column label="工号" prop="name" width="130" show-overflow-tooltip/>
+          <el-table-column label="所在部门" prop="content" width="188" show-overflow-tooltip/>
+        </el-table>
+      </div>
+      <div slot="footer" class="dialog-footer dialog-footer-box">
+        <p class="dialog-footer-button-null"></p>
+        <p class="dialog-footer-button-info" @click="dialogOff()">取消</p>
+        <p class="dialog-footer-button-primary" @click="dialogSubmit">确认</p>
+        <p class="dialog-footer-button-null"></p>
+      </div>
+    </el-dialog>
     <!--<add-page :propsData="propsData" v-if="pageType === 2"></add-page>-->
   </div>
 </template>
@@ -191,11 +221,33 @@
         //搜索模式切换
         advancedType:false,
         //列表数据
-        dataList:[],
+        dataList:[{}],
         //数据数量
         total:0,
         //组件传参
         propsData:{},
+        //复查转移
+        dialogData:{
+          dialogData1:'督导组名称',
+          dialogList1:[
+            {
+              dialogDataId:1,
+              dialogDataType:false,
+              dialogDataName:'名称',
+              dialogDataNum:'工号',
+              dialogDataDept:'部门',
+            },
+            {
+              dialogDataId:2,
+              dialogDataType:false,
+              dialogDataName:'名称',
+              dialogDataNum:'工号',
+              dialogDataDept:'部门',
+            },
+          ],
+        },
+        dialogType:false,
+        tableColumnType:null
       }
     },
     created () {
@@ -249,11 +301,11 @@
           obj.startTime = "";
           obj.endTime = "";
         }
-        getListFunction(obj).then(response => {
-          this.$set(this,'loading',false);
-          this.$set(this,'dataList',response.data.records);
-          this.$set(this,'total',response.data.total);
-        });
+        // getListFunction(obj).then(response => {
+        //   this.$set(this,'loading',false);
+        //   this.$set(this,'dataList',response.data.records);
+        //   this.$set(this,'total',response.data.total);
+        // });
       },
       //操作按钮
       tableButton(type,row){
@@ -275,18 +327,8 @@
           obj.showType = false;
           this.$set(this,'propsData',obj);
         }else if(type == 4){
-          //删除
-          this.$confirm('是否确认删除?', "警告", {
-            confirmButtonText: "确定",
-            cancelButtonText: "取消",
-            type: "warning"
-          }).then(function() {
-          }).then(() => {
-            deleteFunction({id:row.id}).then(response => {
-              self.msgSuccess(response.message)
-              self.getList();
-            });
-          }).catch(() => {});
+          //转移
+          this.dialogOpen();
         }else if(type == 5){
           //启用&停用
           let text = row.state  ? "停用" : "启用";
@@ -307,6 +349,29 @@
           this.getList();
         }
       },
+      /******** 转移弹窗 ********/
+      //弹层关闭
+      dialogOff(){
+        this.$set(this,'dialogType',false);
+      },
+      //弹层开启
+      dialogOpen(){
+        this.$set(this,'tableColumnType',null);
+        this.$set(this,'dialogType',true);
+      },
+      //弹层确定
+      dialogSubmit(){
+        if(!this.tableColumnType){
+          this.msgError('请选择复查转移人')
+          return
+        }
+        this.$set(this,'dialogType',false);
+      },
+      tableColumnCheck(row) {
+        if(this.tableColumnType != row){
+          this.$set(this,'tableColumnType',row);
+        }
+      },
     },
   }
 </script>
@@ -385,3 +450,54 @@
     }
   }
 </style>
+<style lang="scss">
+  .hiddenDangersReview-dialog{
+    .el-dialog__body{
+      padding-top: 0;
+    }
+    .hiddenDangersReview-dialog-max-box{
+      height:500px;
+      display: flex;
+      flex-direction: column;
+      overflow: hidden;
+      flex:1;
+      .hiddenDangersReview-dialog-name{
+        line-height:70px;
+        height:70px;
+        font-size:16px;
+      }
+      .hiddenDangersReview-dialog-box{
+        display: flex;
+        border:1px solid #dedede;
+        border-bottom:none;
+        height:40px;
+        img{
+          width:14px;
+          height:14px;
+          display: inline-block;
+          margin:13px 15px;
+        }
+        p:nth-child(2){
+          flex:1;
+          font-size:14px;
+          line-height:40px;
+          color:#333;
+        }
+      }
+      .check-img-box{
+        cursor: pointer;
+        height:27px;
+        width:130px;
+        margin:0 auto;
+        overflow: hidden;
+        img{
+          overflow: hidden;
+          height:20px;
+          width:20px;
+          display: inline-block;
+          margin:3px 55px;
+        }
+      }
+    }
+  }
+</style>

+ 159 - 4
src/views/safetyCheck/inspectSupervisorGroup/addPage.vue

@@ -7,11 +7,71 @@
     </div>
     <div class="content-box scrollbar-box">
       <el-form class="add-form-box" :model="newData" ref="form" :rules="rules" label-width="120px">
-        <el-form-item label="名称" prop="name">
-          <el-input v-model="newData.name" placeholder="请输入名称" maxLength="20" style="width:500px;"></el-input>
+        <el-form-item label="是否启用" prop="data1" class="page-switch">
+          <el-switch
+            :disabled="propsData.showType"
+            class="switch captcha-img"
+            :active-value="true"
+            :inactive-value="false"
+            active-color="#0183FA"
+            inactive-color="#999"
+            v-model="newData.data1"
+            active-text="启用"
+            inactive-text="停用"
+          ></el-switch>
+        </el-form-item>
+        <el-form-item label="督导组名称" prop="data2">
+          <el-input :disabled="propsData.showType" v-model="newData.data2" placeholder="请输入督导组名称" maxLength="20" style="width:693px;"></el-input>
+        </el-form-item>
+        <el-form-item label="上级部门" prop="data3">
+          <el-select :disabled="propsData.showType" v-model="newData.data3" placeholder="请选择上级部门" style="width: 300px">
+            <el-option
+              v-for="dict in optionDept"
+              :key="dict.value"
+              :label="dict.label"
+              :value="dict.value"
+            />
+          </el-select>
+        </el-form-item>
+        <el-form-item label="督导组成员" prop="data4">
+          <div class="user-list-max-box">
+            <div class="user-list-top-button-box">
+              <img src="@/assets/ZDimages/safetyCheck/icon_xyxc_cy.png">
+              <p>成员列表</p>
+              <p @click="tableButton(1)" v-if="!propsData.showType">+ 添加</p>
+            </div>
+            <el-table class="table-box table-null-img-20" border :data="newData.data4">
+              <el-table-column label="序号" type="index" width="60"/>
+              <el-table-column label="姓名" prop="name" show-overflow-tooltip/>
+              <el-table-column label="工号" prop="name" width="130" show-overflow-tooltip/>
+              <el-table-column label="所在部门" prop="content" width="188" show-overflow-tooltip/>
+              <el-table-column :label="propsData.showType?'状态':'操作'" width="228" show-overflow-tooltip>
+                <template slot-scope="scope">
+                  <div class="table-button-box" v-if="!propsData.showType">
+                    <p class="table-button-null"></p>
+                    <p class="table-button-p"
+                       @click="tableButton(2,scope.row)"
+                    >{{scope.row.type1?'启用':'停用'}}</p>
+                    <p class="table-button-p"
+                       @click="tableButton(3,scope.row)"
+                    >删除</p>
+                    <p class="table-button-null"></p>
+                  </div>
+                  <div class="table-button-box" v-if="propsData.showType">
+                    <p class="table-button-null"></p>
+                    <p class="table-button-p"
+                    >{{scope.row.type1?'启用':'停用'}}</p>
+                    <p class="table-button-null"></p>
+                  </div>
+                </template>
+              </el-table-column>
+            </el-table>
+          </div>
         </el-form-item>
       </el-form>
     </div>
+    <userCheckComponent ref="userCheckComponent" v-if="userCheckComponentType"
+                        :userCheckComponentData="userCheckComponentData"></userCheckComponent>
   </div>
 </template>
 
@@ -19,14 +79,41 @@
   //import { getDicts } from "@/api/commonality/noPermission";
   //import { systemUserSelect } from "@/api/commonality/permission";
   //import { getInfo } from "@/api/basicsModules/index";
+  import userCheckComponent from "./userCheckComponent.vue";
   export default {
     name: 'addPage',
+    components: {
+      userCheckComponent
+    },
     props:{
       propsData:{},
     },
     data(){
       return{
-        newData:{},
+        optionDept:[],
+        newData:{
+          data1:true,
+          data2:'',
+          data3:null,
+          data4:[],
+        },
+        rules:{
+          data1:[
+            {required: true, message: '请选择是否启用', trigger: 'blur'},
+          ],
+          data2:[
+            {required: true, message: '请输入督导组名称', trigger: 'blur'},
+            { required: true, message: '请输入督导组名称', validator: this.spaceJudgment, trigger: "blur" }
+          ],
+          data3:[
+            {required: true, message: '请选择上级部门', trigger: 'blur'},
+          ],
+          data4:[
+            {required: true, message: '请选择督导组成员', trigger: 'blur'},
+          ],
+        },
+        userCheckComponentType:false,
+        userCheckComponentData:{},
       }
     },
     created(){
@@ -37,7 +124,28 @@
     },
     methods:{
       initialize(){
-        this.$set(this,'newData',this.propsData)
+        this.$set(this,'newData',{
+          data1:true,
+          data2:'',
+          data3:null,
+          data4:[],
+        });
+      },
+      tableButton(type,row){
+        if(type == 1){
+          //编辑
+          this.$set(this,'userCheckComponentType',true);
+        }else if(type == 2){
+          //启用停用
+        }else if(type == 3){
+          //删除
+        }else if(type == 4){
+          //人员选择关闭
+          this.$set(this,'userCheckComponentType',false);
+        }else if(type == 5){
+          //人员选择确定
+          this.$set(this,'userCheckComponentType',false);
+        }
       },
       // 返回按钮
       backPage(){
@@ -61,6 +169,53 @@
       flex:1;
       display: flex;
       padding:20px;
+      .user-list-max-box{
+        width:753px;
+        height:400px;
+        display: flex;
+        flex-direction: column;
+        overflow: hidden;
+        .user-list-top-button-box{
+          display: flex;
+          border:1px solid #dedede;
+          border-bottom:none;
+          height:50px;
+          img{
+            width:14px;
+            height:14px;
+            display: inline-block;
+            margin:18px 15px 20px;
+          }
+          p:nth-child(2){
+            flex:1;
+            font-size:16px;
+            line-height:50px;
+            color:#333;
+          }
+          p:nth-child(3){
+            margin:10px 20px 10px 0;
+            cursor: pointer;
+            width: 70px;
+            height: 30px;
+            line-height:30px;
+            text-align: center;
+            background: #0045AF;
+            color:#fff;
+            border-radius: 6px 6px 6px 6px;
+          }
+          p:nth-child(3):hover{
+            background: #0183FA;
+          }
+        }
+      }
+    }
+    ::v-deep .el-input.is-disabled .el-input__inner{
+      background-color: #fff;
+      color: #666;
+      cursor: auto;
+    }
+    ::v-deep .el-input.is-disabled .el-input__suffix{
+      display: none;
     }
   }
 </style>

+ 7 - 1
src/views/safetyCheck/inspectSupervisorGroup/index.vue

@@ -201,7 +201,13 @@
           this.$set(this,'pageType',2);
         }else if(type == 2){
           //详情
-          let obj = JSON.parse(JSON.stringify(row))
+          // let obj = JSON.parse(JSON.stringify(row))
+          let obj = {
+            data1:true,
+            data2:'222',
+            data3:null,
+            data4:[{}]
+          }
           obj.showType = true;
           this.$set(this,'propsData',obj);
           this.$set(this,'pageType',2);

+ 471 - 0
src/views/safetyCheck/inspectSupervisorGroup/userCheckComponent.vue

@@ -0,0 +1,471 @@
+<template>
+  <el-dialog class="userCheckComponent"
+             :close-on-click-modal="false"
+             title="添加成员" :visible.sync="userCheckComponentType" v-if="userCheckComponentType"
+             @close="addDialogAllOff" width="1383px" append-to-body>
+    <div class="userCheckComponent-user-box">
+      <div class="userCheckComponent-user-content-box">
+        <div class="left-max-box">
+          <div class="dept-table-title-box">
+            <p>待选人员</p>
+            <p>{{userNumLeft}}/{{userTotalLeft}}</p>
+          </div>
+          <div class="dept-table-max-box">
+            <el-form :model="userQueryParamsLeft" class="form-box" ref="queryForm" :inline="true" label-width="50px">
+              <el-form-item label="" prop="deptId">
+                <el-select v-model="userQueryParamsLeft.deptId" clearable @change="userHandleQueryLeft" placeholder="选择部门" style="width: 214px">
+                  <el-option
+                    v-for="item in deptSelectList"
+                    :key="item.deptId"
+                    :label="item.deptName"
+                    :value="item.deptId">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item label="" prop="searchValue" class="form-index" style="margin-right:0;">
+                <el-input
+                  maxLength="30"
+                  v-model="userQueryParamsLeft.searchValue"
+                  placeholder="搜索姓名/工号"
+                  style="width: 300px">
+                  <p class="el-icon-search" slot="append" @click="userHandleQueryLeft"></p>
+                </el-input>
+              </el-form-item>
+              <el-form-item style="margin-right:0;margin-left: 10px;">
+                <p class="page-submit-common-style-button" @click="userResetQueryLeft" style="width:60px;margin-right:0;">重置</p>
+              </el-form-item>
+            </el-form>
+            <el-table class="table-box" ref="leftUserTable" border :data="userTableListLeft" @selection-change="userChangeLeft" :row-key="getRowKeys">
+              <el-table-column v-if="editType" type="selection" width="50" :reserve-selection="true" align="center"/>
+              <el-table-column label="姓名" align="center" prop="userName" show-overflow-tooltip/>
+              <el-table-column label="工号" align="center" prop="userNumber" show-overflow-tooltip width="150"/>
+              <el-table-column label="所在部门" align="center" prop="phonenumber" show-overflow-tooltip width="270"/>
+            </el-table>
+            <pagination :page-sizes="[20, 30, 40, 50]"
+                        v-show="userTotalLeft>0"
+                        :total="userTotalLeft"
+                        :page.sync="userQueryParamsLeft.page"
+                        :limit.sync="userQueryParamsLeft.pageSize"
+                        @pagination="userGetListLeft"/>
+          </div>
+        </div>
+        <div class="center-box">
+          <p v-if="editType" @click="userArrowButton(1)">&lt; 到左边</p>
+          <p v-if="editType" @click="userArrowButton(2)">到右边 &gt;</p>
+        </div>
+        <div class="right-max-box">
+          <div class="dept-table-title-box">
+            <p>已选成员</p>
+            <p>{{userNumRight}}/{{userTotalRight}}</p>
+          </div>
+          <div class="dept-table-max-box">
+            <el-form :model="userQueryParamsRight" class="form-box" ref="queryForm" :inline="true" label-width="50px">
+              <el-form-item label="" prop="deptId">
+                <el-select v-model="userQueryParamsRight.deptId" clearable @change="userHandleQueryRight" placeholder="选择部门" style="width: 214px">
+                  <el-option
+                    v-for="item in deptSelectList"
+                    :key="item.deptId"
+                    :label="item.deptName"
+                    :value="item.deptId">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item label="" prop="searchValue" class="form-index" style="margin-right:0;">
+                <el-input
+                  maxLength="30"
+                  v-model="userQueryParamsRight.searchValue"
+                  placeholder="搜索姓名/工号"
+                  style="width: 300px">
+                  <p class="el-icon-search" slot="append" @click="userHandleQueryRight"></p>
+                </el-input>
+              </el-form-item>
+              <el-form-item style="margin-right:0;margin-left: 10px;">
+                <p class="page-submit-common-style-button" @click="userResetQueryRight" style="width:60px;margin-right:0;">重置</p>
+              </el-form-item>
+            </el-form>
+            <el-table class="table-box" ref="rightUserTable" border :data="userTableListRight" @selection-change="userChangeRight" :row-key="getRowKeys">
+              <el-table-column v-if="editType" type="selection" width="50" :reserve-selection="true" align="center"/>
+              <el-table-column label="姓名" align="center" prop="userName" show-overflow-tooltip/>
+              <el-table-column label="工号" align="center" prop="userNumber" show-overflow-tooltip width="150"/>
+              <el-table-column label="所在部门" align="center" prop="phonenumber" show-overflow-tooltip width="270"/>
+            </el-table>
+            <pagination :page-sizes="[20, 30, 40, 50]"
+                        v-show="userTotalRight>0"
+                        :total="userTotalRight"
+                        :page.sync="userQueryParamsRight.page"
+                        :limit.sync="userQueryParamsRight.pageSize"
+                        @pagination="userGetListRight"/>
+          </div>
+        </div>
+      </div>
+      <div class="dialog-footer-box" v-hasPermiRouter="['check:set:edit']">
+        <p class="dialog-footer-button-null"></p>
+        <p class="dialog-footer-button-info" @click="addDialogAllOff">取消</p>
+        <p class="dialog-footer-button-primary" @click="addUserButton">确定</p>
+        <p class="dialog-footer-button-null"></p>
+      </div>
+    </div>
+  </el-dialog>
+</template>
+
+<script>
+  import { checkSet,checkSetAdd,checkStaffUserList } from '@/api/safetyCheck/index'
+  import { getDeptDropList } from '@/api/commonality/permission'
+  export default {
+    name: 'userCheckComponent',
+    props:{
+      userCheckComponentData:{},
+    },
+    data(){
+      return{
+        editType:this.hasPermiDom(['check:set:edit']),
+        userCheckComponentType:true,
+        checkDataList:[],
+        checkList:[],
+        checkType:false,
+        /*===================================人员选择相关===================================*/
+        deptSelectList:[],
+        userQueryParamsLeft:{
+          page:1,
+          pageSize:20,
+          searchValue:"",
+          deptId:"",
+          filtType:1
+        },
+        userTableListLeft:[],
+        userTotalLeft:0,
+        userNumLeft:0,
+        userIdsLeft:[],
+        userQueryParamsRight:{
+          page:1,
+          pageSize:20,
+          deptId:"",
+          searchValue:"",
+          filtType:2
+        },
+        userTableListRight:[],
+        userTotalRight:0,
+        userNumRight:0,
+        userIdsRight:[],
+        //选中巡查人员列表
+        dialogTableList:[],
+        //选中页面人员列表数据
+        dialogTableDataList:[],
+      }
+    },
+    created(){
+      this.initialize();
+    },
+    mounted(){
+
+    },
+    methods:{
+      //初始化
+      initialize() {
+        this.listDepartments();
+      },
+      //选择器
+      checkboxChange(val){
+        if(val[0]){
+          let num = 0;
+          for(let i=0;i<val.length;i++){
+            if(val[i] == '4'){
+              num++
+            }
+          }
+          this.$set(this,'checkType',num != 0?true:false);
+        }else{
+          this.$set(this,'checkType',false);
+        }
+      },
+      //窗口关闭
+      addDialogAllOff(){
+        this.$parent.tableButton(4)
+      },
+      addUserButton(){
+        this.$parent.tableButton(5)
+      },
+      /*===================================人员选择相关===================================*/
+      //查询
+      userHandleQueryLeft(){
+        this.$set(this.userQueryParamsLeft,'page',1);
+        this.$set(this,'userNumLeft',0);
+        this.$set(this,'userIdsLeft',[]);
+        if (this.$refs.leftUserTable){
+          this.$refs.leftUserTable.clearSelection();
+        }
+        this.userGetListLeft();
+      },
+      //重置
+      userResetQueryLeft(){
+        this.$set(this,'userQueryParamsLeft',{
+          page:1,
+          pageSize:20,
+          searchValue:"",
+          deptId:"",
+          filtType:1
+        });
+        this.userHandleQueryLeft();
+      },
+      //查询接口
+      userGetListLeft(){
+        let self = this;
+        let leftObj = JSON.parse(JSON.stringify(this.userQueryParamsLeft));
+        leftObj.filtCheckUserIdList = [];
+        for(let i=0;i<self.dialogTableDataList.length;i++){
+          let obj = {
+            userId:self.dialogTableDataList[i].userId,
+            subId:self.dialogTableDataList[i].subId
+          }
+          leftObj.filtCheckUserIdList.push(obj)
+        }
+        checkStaffUserList(leftObj).then(response => {
+          this.userTotalLeft = response.data.total;
+          this.userTableListLeft = response.data.records;
+        });
+      },
+      //查询
+      userHandleQueryRight(){
+        this.$set(this.userQueryParamsRight,'page',1);
+        this.$set(this,'userNumRight',0);
+        this.$set(this,'userIdsRight',[]);
+        if(this.$refs.rightUserTable){
+          this.$refs.rightUserTable.clearSelection();
+        }
+        this.userGetListRight();
+      },
+      //重置
+      userResetQueryRight(){
+        this.$set(this,'userQueryParamsRight',{
+          page:1,
+          pageSize:20,
+          deptId:"",
+          searchValue:"",
+          filtType:2
+        });
+        this.userHandleQueryRight();
+      },
+      //查询接口
+      userGetListRight(){
+        let self = this;
+        let rightObj = JSON.parse(JSON.stringify(this.userQueryParamsRight));
+        rightObj.notFiltCheckUserIdList = [];
+        for(let i=0;i<self.dialogTableDataList.length;i++){
+          let obj = {
+            userId:self.dialogTableDataList[i].userId,
+            subId:self.dialogTableDataList[i].subId
+          }
+          rightObj.notFiltCheckUserIdList.push(obj)
+        }
+        checkStaffUserList(rightObj).then(response => {
+          this.userTotalRight = response.data.total;
+          this.userTableListRight = response.data.records;
+        });
+      },
+      //穿梭按钮
+      userArrowButton(type){
+        let self = this;
+        if(type == 1){
+          //右至左
+          if(this.$refs.rightUserTable.selection[0]){
+            let list = JSON.parse(JSON.stringify(this.dialogTableDataList));
+            let userIdsRight = JSON.parse(JSON.stringify(this.$refs.rightUserTable.selection))
+            for(let i=0;i<userIdsRight.length;i++){
+              for(let s=0;s<list.length;s++){
+                if(userIdsRight[i].userId == list[s].userId && userIdsRight[i].subId == list[s].subId){
+                  list.splice(s,1);
+                  s--
+                }
+              }
+            }
+            this.$set(this,'dialogTableDataList',list);
+            this.$refs.rightUserTable.clearSelection();
+            this.userHandleQueryLeft();
+            this.userHandleQueryRight();
+          }else{
+            this.msgError('请先勾选右侧列表')
+          }
+        }else if(type == 2){
+          //左至右
+          if(this.$refs.leftUserTable.selection[0]){
+            let list = JSON.parse(JSON.stringify(this.dialogTableDataList));
+            let userIdsLeft = JSON.parse(JSON.stringify(this.$refs.leftUserTable.selection))
+            console.log('userIdsLeft',userIdsLeft)
+            for(let i=0;i<userIdsLeft.length;i++){
+              let obj = {
+                subId:userIdsLeft[i].subId,
+                subName:userIdsLeft[i].subName,
+                subRom:userIdsLeft[i].roomNum,
+                deptId:userIdsLeft[i].deptId,
+                deptName:userIdsLeft[i].deptName,
+                userId:userIdsLeft[i].userId,
+                nickName:userIdsLeft[i].userName,
+                userNumber:userIdsLeft[i].userNumber,
+                phonenumber:userIdsLeft[i].phonenumber,
+                validBeginTime:userIdsLeft[i].validBeginTime,
+                validEndTime:userIdsLeft[i].validEndTime,
+              }
+              list.push(obj);
+            }
+            this.$set(this,'dialogTableDataList',list);
+            this.$refs.leftUserTable.clearSelection();
+            this.userHandleQueryLeft();
+            this.userHandleQueryRight();
+          }else{
+            this.msgError('请先勾选左侧列表')
+          }
+        }
+      },
+      /*===记录勾选数据===
+        需要再el-table 添加  :row-key="getRowKeys"
+        需要在selection 添加 :reserve-selection="true"
+      */
+      getRowKeys(row) {
+        return row.id
+      },
+      userChangeLeft(selection){
+        this.userNumLeft = selection.length;
+        this.userIdsLeft = selection.map(item => item.userId);
+      },
+      userChangeRight(selection){
+        this.userNumRight = selection.length;
+        this.userIdsRight = selection.map(item => item.userId);
+      },
+      //获取学院列表
+      listDepartments(){
+        getDeptDropList({deptName:"",level:2,deptType:1}).then(response => {
+          this.$set(this, 'deptSelectList', response.data)
+        });
+      },
+    }
+  }
+</script>
+
+<style scoped lang="scss">
+  .userCheckComponent{
+    overflow: hidden;
+    .userCheckComponent-user-box{
+      height:600px;
+      display: flex;
+      flex-direction: column;
+      overflow: hidden;
+      .userCheckComponent-user-content-box{
+        flex:1;
+        display: flex;
+        overflow: hidden;
+        .dept-table-title-box{
+          display: flex;
+          padding:0 20px;
+          background: rgba(1,131,250,0.1);
+          p{
+            flex:1;
+            color:#0183FA;
+            font-size:16px;
+            line-height:40px;
+          }
+          p:nth-child(1){
+            text-align: left;
+          }
+          p:nth-child(2){
+            text-align: right;
+          }
+        }
+        .dept-table-max-box{
+          border: 1px solid #e0e0e0;
+          flex:1;
+          display: flex;
+          flex-direction: column;
+          overflow: hidden;
+          padding:20px;
+          .form-index{
+            .el-input__inner{
+              border-right:none;
+              padding-right:0;
+            }
+            .el-input-group__append{
+              background: #fff;
+              cursor: pointer;
+              padding:0 10px;
+            }
+          }
+          input{
+            border: 1px solid #DCDFE6;
+          }
+        }
+        .left-max-box{
+          height:550px;
+          display: flex;
+          flex-direction: column;
+          overflow: hidden;
+          width:639px;
+        }
+        .right-max-box{
+          height:550px;
+          display: flex;
+          flex-direction: column;
+          overflow: hidden;
+          width:639px;
+        }
+        .center-box{
+          width:70px;
+          p{
+            display: block;
+            width:60px;
+            height:30px;
+            line-height:30px;
+            text-align: center;
+            background: #fff;
+            color:#0183FA;
+            border-radius:4px;
+            border:1px solid #0183FA;
+            cursor: pointer;
+            font-size:12px;
+          }
+          p:nth-child(1){
+            margin:270px 5px 0;
+          }
+          p:nth-child(2){
+            margin:14px 5px 0;
+          }
+          p:hover{
+            background: #0183FA;
+            color:#fff;
+            border:1px solid #0183FA;
+          }
+        }
+        ::v-deep .el-range-editor--small .el-range__icon{
+          display: none;
+        }
+        ::v-deep .el-range-editor--small .el-range__close-icon{
+          display: none;
+        }
+        ::v-deep .el-date-editor .el-range-input{
+          width:45%;
+        }
+        ::v-deep .el-range-editor--small .el-range-separator{
+          line-height:30px;
+        }
+        ::v-deep .el-input-group__append, .el-input-group__prepend{
+          background-color: #fff;
+        }
+        .form-index{
+          ::v-deep .el-input--medium .el-input__inner{
+            border:1px solid #DCDFE6;
+            border-right:none;
+            padding-right:0;
+          }
+          ::v-deep .el-input-group__append{
+            padding:0 10px;
+            cursor: pointer;
+          }
+        }
+      }
+      .dialog-footer-box{
+        display: flex;
+      }
+    }
+    ::v-deep .el-dialog__body{
+      padding: 30px 20px!important;
+    }
+  }
+</style>