dedsudiyu 2 vuotta sitten
vanhempi
commit
94920a43ff
41 muutettua tiedostoa jossa 163 lisäystä ja 12254 poistoa
  1. 8 7
      src/api/system/user.js
  2. BIN
      src/assets/ZDimages/home/1.png
  3. BIN
      src/assets/ZDimages/home/10.png
  4. BIN
      src/assets/ZDimages/home/2.png
  5. BIN
      src/assets/ZDimages/home/3.png
  6. BIN
      src/assets/ZDimages/home/4.png
  7. BIN
      src/assets/ZDimages/home/5.png
  8. BIN
      src/assets/ZDimages/home/6.png
  9. BIN
      src/assets/ZDimages/home/7.png
  10. BIN
      src/assets/ZDimages/home/8.png
  11. BIN
      src/assets/ZDimages/home/9.png
  12. 1 1
      src/utils/request.js
  13. 0 205
      src/views/comprehensive/laboratoryManagement/accessAuthorization/applicationKDNH.vue
  14. 0 380
      src/views/comprehensive/laboratoryManagement/accessAuthorization/authorizaErrorDetail.vue
  15. 0 218
      src/views/comprehensive/laboratoryManagement/accessAuthorization/authorizaErrorKDNH.vue
  16. 0 222
      src/views/comprehensive/laboratoryManagement/accessAuthorization/authorizeKDNH.vue
  17. 0 52
      src/views/comprehensive/laboratoryManagement/accessAuthorization/indexKDNH.vue
  18. 2 2
      src/views/comprehensive/laboratoryManagement/accessAuthorization/lookImpower.vue
  19. 1 1
      src/views/comprehensive/laboratoryManagement/subject/deviceList.vue
  20. 0 997
      src/views/comprehensive/laboratoryManagement/subject/deviceListKDNH.vue
  21. 0 1479
      src/views/comprehensive/laboratoryManagement/subject/indexKDNH.vue
  22. 1 1
      src/views/comprehensive/laboratoryManagement/subject/infoPage.vue
  23. 1 1
      src/views/comprehensive/laboratoryManagement/subject/infoPageOne.vue
  24. 2 2
      src/views/comprehensive/personnel/student/addPage.vue
  25. 0 1257
      src/views/comprehensive/personnel/student/addPageKDNH.vue
  26. 0 999
      src/views/comprehensive/personnel/student/indexKDNH.vue
  27. 2 2
      src/views/comprehensive/personnel/teacher/addPage.vue
  28. 0 1817
      src/views/comprehensive/personnel/teacher/addPageKDNH.vue
  29. 0 1517
      src/views/comprehensive/personnel/teacher/indexKDNH.vue
  30. 139 83
      src/views/home.vue
  31. 1 1
      src/views/medicUniversity-3_1/chemicalManagement/deviceManagement/SmartAccessControl/index.vue
  32. 0 540
      src/views/medicUniversity-3_1/chemicalManagement/deviceManagement/SmartAccessControl/indexKDNH.vue
  33. 0 935
      src/views/mine/indexKDNH.vue
  34. 1 1
      src/views/newEvacuationBigData.vue
  35. 1 1
      src/views/newEvacuationBigDataHome.vue
  36. 0 116
      src/views/secureAccess/approval/indexKDNH.vue
  37. 1 1
      src/views/secureAccess/approval/infoPage.vue
  38. 0 528
      src/views/secureAccess/approval/infoPageKDNH.vue
  39. 2 2
      src/views/secureAccess/whitelist/addPage.vue
  40. 0 710
      src/views/secureAccess/whitelist/addPageKDNH.vue
  41. 0 176
      src/views/secureAccess/whitelist/indexKDNH.vue

+ 8 - 7
src/api/system/user.js

@@ -18,6 +18,13 @@ export function selectListUser(query) {
     params: query
   })
 }
+//指纹-查询用户指纹录取数量
+export const fingerprintQuantity  = (data) => {
+  return request({
+    url: `/laboratory/haikang/userFinger/queryCount/`+data,
+    method: 'GET',
+  })
+};
 // 查询教职工列表-下拉列表
 export function selectTeacherList(query) {
   return request({
@@ -226,13 +233,7 @@ export function getSendCode(data) {
     params: data
   })
 }
-//指纹-查询用户指纹录取数量
-export const fingerprintQuantity  = (data) => {
-  return request({
-    url: `/laboratory/haikang/userFinger/queryCount/`+data,
-    method: 'GET',
-  })
-};
+
 //验证码校验
 export function phoneCheckCode(query) {
   return request({

BIN
src/assets/ZDimages/home/1.png


BIN
src/assets/ZDimages/home/10.png


BIN
src/assets/ZDimages/home/2.png


BIN
src/assets/ZDimages/home/3.png


BIN
src/assets/ZDimages/home/4.png


BIN
src/assets/ZDimages/home/5.png


BIN
src/assets/ZDimages/home/6.png


BIN
src/assets/ZDimages/home/7.png


BIN
src/assets/ZDimages/home/8.png


BIN
src/assets/ZDimages/home/9.png


+ 1 - 1
src/utils/request.js

@@ -127,7 +127,7 @@ service.interceptors.response.use(res => {
         },1000);
       }
       return Promise.reject(new Error(msg))
-    } else if (code == 303 || code == 530 || code == 503 || code == 504 || code == 205) {
+    } else if (code == 303 || code == 530 || code == 503 || code == 504|| code == 205) {
       // 303-考试从定向   530-账号不存在   503-验证码错误  504特殊报错code 205智能门禁状态 用于报错后需要返回code进行后续操作
       return res.data
     } else if (code != 200) {

+ 0 - 205
src/views/comprehensive/laboratoryManagement/accessAuthorization/applicationKDNH.vue

@@ -1,205 +0,0 @@
-<!--授权日志-->
-<template>
-  <div class="application">
-    <div class="application-page" v-if="pageType == 1">
-      <div class="title-box">
-        <div @click="titleClick(1)">
-          <p>门禁授权</p>
-          <p></p>
-        </div>
-        <div @click="titleClick(2)">
-          <p>授权日志</p>
-          <p class="bottom-p-color"></p>
-        </div>
-      </div>
-      <div class="application-min">
-        <el-form :model="queryParamsData" ref="queryForm" :inline="true">
-          <el-form-item label="关键字" prop="searchValue" label-width="68px">
-            <el-input
-              maxlength="20"
-              v-model="queryParamsData.searchValue"
-              placeholder="姓名/实验室"
-              clearable
-              size="small"/>
-          </el-form-item>
-<!--          <el-form-item label="状态" prop="status" label-width="50px">-->
-<!--            <el-select v-model="queryParamsData.operate" clearable placeholder="请选择状态">-->
-<!--              <el-option-->
-<!--                v-for="item in optionsListTwo"-->
-<!--                :key="item.code"-->
-<!--                :label="item.name"-->
-<!--                :value="item.code">-->
-<!--              </el-option>-->
-<!--            </el-select>-->
-<!--          </el-form-item>-->
-          <el-form-item>
-            <p class="inquire-button-one" @click="handleQuery" style="margin-right:10px;">查询</p>
-            <p class="reset-button-one" @click="resetQuery">重置</p>
-          </el-form-item>
-        </el-form>
-        <el-table v-loading="loading" border :data="tableList">
-          <el-table-column label="名称" align="center" prop="nickName" show-overflow-tooltip/>
-          <el-table-column label="类别" align="center" prop="userType" show-overflow-tooltip/>
-          <el-table-column label="门禁" align="center" prop="hardName" show-overflow-tooltip/>
-          <el-table-column label="实验室" align="center" prop="subName" show-overflow-tooltip/>
-          <el-table-column label="实验室所属学院" align="center" prop="deptName" show-overflow-tooltip/>
-          <el-table-column label="实验室位置" align="center" prop="posi"  width="160px" show-overflow-tooltip/>
-          <el-table-column label="操作内容" align="center" prop="remark"  width="160px" show-overflow-tooltip/>
-          <el-table-column label="操作时间" align="center" prop="createTime"  width="160px" show-overflow-tooltip/>
-          <el-table-column label="操作人" align="center" prop="createBy"  width="160px" show-overflow-tooltip/>
-        </el-table>
-        <pagination :page-sizes="[20, 30, 40, 50]"
-                    v-show="total>0"
-                    :total="total"
-                    :page.sync="queryParamsData.pageNum"
-                    :limit.sync="queryParamsData.pageSize"
-                    @pagination="getList"/>
-      </div>
-    </div>
-    <addPage v-if="pageType == 2"></addPage>
-  </div>
-</template>
-
-<script>
-import { applyList, entranceUserLogList } from '@/api/laboratory/subject'
-  import addPage from "./addPage.vue";
-  export default {
-    name: "application",
-    components: {
-      addPage
-    },
-    data(){
-      return{
-        pageType:1,
-        // table操作按钮校验
-        tableButtonType:this.hasPermiDom(['system:user_student:query','system:user_student:query']),
-        loading:false,
-        // 搜索数据
-        queryParamsData:{
-          pageNum:1,
-          pageSize:20,
-          searchValue:'',
-          operate:'',
-        },
-        // 搜索实际发送数据
-        queryParams:{
-          pageNum:1,
-          pageSize:20,
-        },
-        dateRange:[],
-        //数据数量
-        total:10,
-        tableList:[],
-        //审批状态
-        optionsListTwo:[{code:null,name:'全部'},{code:0,name:'离线'},{code:2,name:'在线'}],
-      }
-    },
-    created() {
-
-    },
-    mounted(){
-      this.getList();
-    },
-    methods:{
-      titleClick(type){
-        this.$parent.titleClick(type);
-      },
-      //页面状态切换
-      goPageButton(type){
-        if(type == 1){
-          this.pageType = 1;
-        }else if(type == 2){
-          this.pageType = 2;
-        }else if(type == 3){
-          this.resetQuery();
-          this.pageType = 1;
-        }
-      },
-      /** 搜索按钮操作 */
-      handleQuery() {
-        this.queryParamsData.pageNum = 1;
-        this.queryParamsData.pageSize = 20;
-        this.getList();
-      },
-      /** 重置按钮操作 */
-      resetQuery() {
-        this.$set(this,'queryParamsData',{});
-        this.$set(this,'dateRange',[]);
-        this.handleQuery();
-      },
-      //获取数据列表
-      getList(){
-        if(this.dateRange&&this.dateRange.length>0) {
-          this.queryParamsData.startTime = this.dateRange[0];
-          this.queryParamsData.endTime = this.dateRange[1];
-        } else {
-          this.queryParamsData.startTime = null;
-          this.queryParamsData.endTime = null;
-        }
-        entranceUserLogList(this.queryParamsData).then(response => {
-          this.tableList = response.rows;
-          this.total = response.total
-        });
-      },
-    }
-  }
-</script>
-
-<style scoped lang="scss">
-  .application{
-    flex:1;
-    display: flex;
-    flex-direction: column;
-    .application-page{
-      flex:1;
-      display: flex;
-      flex-direction: column;
-      overflow: hidden;
-      .title-box{
-        display: flex;
-        border-bottom:1px solid #E0E0E0;
-        margin-bottom:20px;
-        div{
-          height:80px;
-          margin-right:20px;
-          cursor: pointer;
-          p:nth-child(1){
-            font-size:18px;
-            text-align: center;
-            padding:0 20px;
-            margin-top:26px;
-          }
-          p:nth-child(2){
-            width:40px;
-            height:4px;
-            border-radius:40px;
-            margin:12px auto;
-          }
-          .top-p-color{
-            color: #0045AF;
-          }
-          .bottom-p-color{
-            background: #0045AF;
-          }
-        }
-        .buttonTitleColorA{
-          color:#0045AF;
-        }
-        .buttonTitleColorB{
-          color:#999999;
-        }
-      }
-      .application-min{
-        flex:1;
-        display: flex;
-        flex-direction: column;
-        overflow: hidden;
-        margin:0 20px!important;
-        .button-box{
-          display: flex;
-        }
-      }
-    }
-  }
-
-</style>

+ 0 - 380
src/views/comprehensive/laboratoryManagement/accessAuthorization/authorizaErrorDetail.vue

@@ -1,380 +0,0 @@
-<!--供应商管理-->
-<template>
-  <div class="supplier">
-    <div class="supplier-title">
-      <P>实验室名称-授权失败详情 </P>
-      <p class="button-p reset-button-one" @click="backPage">返回</p>
-    </div>
-    <div class="supplier-page">
-      <el-form :model="queryParams" ref="queryForm" style="margin-top:20px;" :inline="true" label-width="120">
-        <el-form-item label="关键字" prop="name">
-          <el-input
-            v-model="queryParams.searchValue"
-            placeholder="请输入姓名/工号/学号"
-            clearable
-            maxLength="30"
-            size="small"
-          />
-        </el-form-item>
-        <el-form-item label="类别" prop="zgType" label-width="80px">
-          <el-select v-model="queryParams.userType" placeholder="请选择" clearable size="small">
-            <el-option label="学生" value="22" />
-            <el-option label="教师" value="11" />
-          </el-select>
-        </el-form-item>
-        <el-form-item>
-          <p class="inquire-button-one" @click="handleQuery">查询</p>
-          <p class="reset-button-one" @click="resetQuery">重置</p>
-        </el-form-item>
-        <el-form-item label="" prop="title" style="float: right">
-          <p class="inquire-button-one"
-             style="width: 120px;margin-left: 10px;"
-             v-if="!admittance"
-             @click="handleClick('','','addStudent')"
-          >批量重试</p>
-        </el-form-item>
-      </el-form>
-      <el-table border v-loading="loading" :data="tableData" :row-key="getRowKeys"  highlight-current-row @selection-change="handleSelectionChange" >
-        <el-table-column type="selection"  width="55" :reserve-selection="true" align="center"></el-table-column>
-        <el-table-column label="所属单位" align="left" prop="deptName"/>
-        <el-table-column label="姓名" align="left" prop="nickName"></el-table-column>
-        <el-table-column label="验证方式" align="left" prop="verifyMode"></el-table-column>
-        <el-table-column label="类别" align="left" prop="userType"></el-table-column>
-        <el-table-column label="授权时间" align="left" prop="verifyTime"></el-table-column>
-        <el-table-column label="授权人" align="left" prop="verifyUser"></el-table-column>
-        <el-table-column label="状态" align="left" prop="verifyUser"></el-table-column>
-        <el-table-column label="失效时间" align="left" prop="invalidTime" width="250">
-          <template slot-scope="scope">
-            <el-date-picker
-              :disabled="(scope.row.userType=='学生' && admittance) || (scope.row.userType=='教师' && whiteList)"
-              :picker-options="pickerOptions0"
-              v-model="scope.row.invalidTime"
-              value-format="yyyy-MM-dd"
-              type="date"
-              placeholder="请选择失效时间">
-            </el-date-picker>
-          </template>
-        </el-table-column>
-        <el-table-column label="操作" align="left" class-name="small-padding fixed-width" width="120">
-          <template slot-scope="scope">
-            <div class="button-box">
-              <p class="table-min-button"
-                 v-if="(scope.row.userType=='学生' && !admittance) || (scope.row.userType=='教师' && !whiteList)"
-                 @click="handleClick('',scope.row,'delete')"
-              >删除</p>
-              <p class="table-min-button"  style="color: #333;cursor: text" @click="handleClick('',scope.row,'again')">手动<i style="color: #0045AF;cursor: pointer;font-style: normal;text-decoration:underline">重试</i></p>
-              <p class="table-min-button"  style="color: #333;cursor: text" @click="handleClick('',scope.row,'again')"  v-if="scope.row.userType=='学生' && admittance">安全准入<i style="color: #0045AF;cursor: pointer;font-style: normal;text-decoration:underline">重试</i></p>
-              <p class="table-min-button"  style="color: #333;cursor: text" @click="handleClick('',scope.row,'again')" v-if="scope.row.userType=='教师' && whiteList">白名单<i style="color: #0045AF;cursor: pointer;font-style: normal;text-decoration:underline">重试</i></p>
-            </div>
-          </template>
-        </el-table-column>
-      </el-table>
-      <div style="display: flex;height:32px;margin-top:15px;">
-        <div style="flex:5;">
-          <pagination :page-sizes="[20, 30, 40, 50]"
-                      v-show="total>0"
-                      :total="total"
-                      style="margin:0;"
-                      :page.sync="queryParams.pageNum"
-                      :limit.sync="queryParams.pageSize"
-                      @pagination="getList"
-          />
-        </div>
-      </div>
-      <div style="text-align: center;">
-        <el-button class="color_ff back_one" style="width: 300px;" @click="loseTimeSubmitForm()">确定</el-button>
-      </div>
-
-    </div>
-  </div>
-</template>
-
-<script>
-import {
-  AddImpowerHaikang,
-  delUserHaikang,
-  editImpowerHaikang,
-  getHaikangUserList
-} from '@/api/laboratory/subject'
-
-export default {
-  name: "Approval",
-  components: {
-
-  },
-  props:{
-    pageData:{},
-  },
-  data() {
-    return {
-      loading:false,
-      // 查询参数
-      queryParams: {
-        pageNum: 1,
-        pageSize:20,
-        searchValue:'',
-        userType:'',
-        hardId:'',
-      },
-      total:0,
-      tableData:[{}],
-      dateRange:[],
-      labWhiteJoinSubList:[],
-      userType:1,//判断是学生 1 教职工2
-      //提交
-      form:{},
-      // 设置只能选择当前日期及之后的日期
-      pickerOptions0: {
-        disabledDate(time) {
-          return time.getTime() < Date.now();//如果没有后面的-8.64e7就是不可以选择今天的
-        }
-      },
-      admittance:false,//智能门禁有没有勾选安全准入
-      whiteList:false,//智能门禁有没有勾选白名单
-    };
-
-
-  },
-  methods: {
-      getRowKeys(row) {
-        return row.userId;   //指定row-key的一个标识
-      },
-      //监听关联记录弹窗关闭
-      handleClose(){
-        console.log('弹窗关闭');
-        this.$refs.multipleTable.clearSelection();
-      },
-      //取消选中
-      toggleSelection(rows) {
-        let _this=this;
-        if (rows) {
-          rows.forEach(row => {
-            this.$refs.multipleTable.toggleRowSelection(row,true);
-          });
-
-        } else {
-          this.$refs.multipleTable.clearSelection();
-        }
-      },
-      //选中实验室
-      handleSelectionChange(val){
-        let _this=this;
-        this.labWhiteJoinSubList=[];
-        this.labWhiteJoinSubList=val;
-
-      },
-
-      handleClick(index,row,doType){
-        let _this=this;
-        if(doType=='delete'){//新增学生授权
-          this.$confirm('是否确认删除['+row.nickName+']门禁授权?', "警告", {
-            confirmButtonText: "确定",
-            cancelButtonText: "取消",
-            type: "warning"
-          }).then(function() {
-            delUserHaikang(row.id).then( response => {
-              _this.msgSuccess("删除成功");
-              _this.getList();
-            });
-          }).then(() => {
-            _this.getList();
-
-          }).catch(() => {});
-        }else if(doType=='again'){
-
-        }
-      },
-      /** 弹框搜索按钮操作 */
-      handleQuery() {
-        this.queryParams.pageNum = 1;
-        this.getList();
-      },
-      /** 弹框重置按钮操作 */
-      resetQuery() {
-        this.queryParams.searchValue = "";
-        this.queryParams.userType = "";
-        this.handleQuery();
-      },
-      //返回
-      backPage(){
-        this.$parent.handleClick('','','back');
-        this.$parent.getList();
-      },
-      getList(){
-        let _this=this;
-        getHaikangUserList(_this.queryParams).then( response => {
-          let res=response.rows;
-         // _this.tableData=res;
-          _this.total=response.total;
-        });
-      },
-    //失效时间修改后提交
-      loseTimeSubmitForm(){
-        let _this=this;
-        let arr=[];
-        _this.tableData.forEach(function(item2) {
-          arr.push({'invalidTime':item2.invalidTime,'userId':item2.userId,'verifyMode':item2.verifyMode,id:item2.id})
-        })
-        _this.form.detailList=arr;
-        setTimeout(function () {
-          editImpowerHaikang(_this.form).then(response => {
-            if(response.code==200){
-              _this.msgSuccess("修改成功");
-              _this.getList();
-            }
-          });
-        },100)
-      },
-      /* 新增授权*/
-      submitForm(){
-        let _this=this;
-        let arr=[];
-        if(this.labWhiteJoinSubList.length>0){
-          this.labWhiteJoinSubList.forEach(function(item){
-            arr.push({'invalidTime':item.invalidTime,'userId':item.userId,'verifyMode':item.verifyMode})
-          })
-          _this.form.detailList=arr;
-          setTimeout(function () {
-            AddImpowerHaikang(_this.form).then(response => {
-              if(response.code==200){
-                setTimeout(function () {
-                  _this.msgSuccess("新增成功");
-                  _this.dialogVisible=false;
-                  _this.getList();
-                },1000)
-              }
-            });
-          },100)
-        }else{
-          this.msgError("请先选择人员!");
-        }
-
-
-
-      },
-  },
-  mounted() {
-    this.queryParams.hardId=this.pageData.hardId;
-    this.form.hardId=this.pageData.hardId;
-    this.admittance=this.pageData.controlScope.search("1") != -1
-    this.whiteList=this.pageData.controlScope.search("2") != -1
-    console.log('安全准入'+this.admittance)
-    console.log('白名单'+this.whiteList)
-    this.getList()
-  }
-};
-</script>
-
-<style lang="scss">
-.supplier{
-  flex:1;
-  display: flex;
-  flex-direction: column;
-  /*顶部*/
-  .supplier-title{
-    display: flex;
-    justify-content: space-between;
-    align-items: center;
-    border-bottom: 1px solid #E0E0E0;
-    height: 90px;
-    p:nth-child(1){
-      line-height:60px;
-      color: #0045AF;
-      font-size:14px;
-      margin:0 12px 0 20px;
-    }
-    p:nth-child(2){
-      margin-right:20px;
-    }
-  }
-  .supplier-page{
-    flex:1;
-    display: flex!important;
-    flex-direction: column;
-   // box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.1);
-    padding:20px 20px 20px!important;
-    border-radius:10px;
-  }
-  /*弹框*/
-  .btn_list{
-    width: 100%;
-    height: 40px;
-    background: rgba(1,131,250,0.1);
-    border-radius: 6px;
-    display: flex;
-    justify-content: flex-start;
-    align-items: center;
-    margin-bottom: 32px;
-    >i{
-      font-style: normal;
-      display: inline-block;
-      cursor: pointer;
-    }
-    >i:nth-of-type(1){
-      font-size: 20px;
-      color: #0045AF;
-      margin: 0 16px 0 14px;
-    }
-    >i:nth-of-type(2){
-      font-size: 16px;
-      font-family: Source Han Sans CN;
-      font-weight: bold;
-      color: #999999;
-      line-height: 16px;
-    }
-    >i:nth-of-type(3){
-      font-size: 16px;
-      font-family: Source Han Sans CN;
-      font-weight: bold;
-      color: #0045AF;
-      line-height: 16px;
-      margin: 0 28px 0 46px;
-    }
-    >i:nth-of-type(4){
-      font-size: 16px;
-      font-family: Source Han Sans CN;
-      font-weight: bold;
-      color: #0045AF;
-      line-height: 16px;
-    }
-    >i:nth-of-type(5){
-      font-size: 16px;
-      font-family: Source Han Sans CN;
-      font-weight: bold;
-      color: #FFA312;
-      line-height: 16px;
-      margin: 0 40px 0 28px;
-    }
-    .bottom-button-box{
-      display: flex;
-      width:220px;
-      margin: 0;
-      p{
-        font-size:14px;
-        height:30px;
-        width:100px;
-        line-height:30px;
-        text-align: center;
-        border-radius:4px;
-      }
-      p:nth-child(1){
-        border:1px solid #E0E0E0;
-        margin-right:20px;
-      }
-      p:nth-child(2){
-        border:1px solid #0045AF;
-      }
-    }
-  }
-  .configuration{
-    height: 70px;
-    display: flex;
-    justify-content: flex-end;
-    align-items: center;
-    border-top: 1px solid #D8D8D8;
-    .el-form-item{
-      margin-bottom: 0!important;
-    }
-  }
-}
-</style>

+ 0 - 218
src/views/comprehensive/laboratoryManagement/accessAuthorization/authorizaErrorKDNH.vue

@@ -1,218 +0,0 @@
-<!--授权失败-->
-<template>
-  <div class="authorize">
-    <div class="authorize-page" v-if="pageType == 1">
-      <div class="title-box">
-        <div @click="titleClick(1)">
-          <p>门禁授权</p>
-          <p></p>
-        </div>
-        <div @click="titleClick(2)">
-          <p>授权失败</p>
-          <p class="bottom-p-color"></p>
-        </div>
-        <div @click="titleClick(3)">
-          <p>授权日志</p>
-          <p></p>
-        </div>
-      </div>
-      <div class="authorize-min">
-        <el-form :model="queryParamsData" ref="queryForm" :inline="true">
-          <el-form-item label="关键字" prop="searchValue" label-width="68px">
-            <el-input
-              maxlength="20"
-              v-model="queryParamsData.searchValue"
-              placeholder="姓名/实验室"
-              clearable
-              size="small"/>
-          </el-form-item>
-          <el-form-item label="状态" prop="status" label-width="50px">
-            <el-select v-model="queryParamsData.operate" clearable placeholder="请选择状态">
-              <el-option
-                v-for="item in optionsListTwo"
-                :key="item.code"
-                :label="item.name"
-                :value="item.code">
-              </el-option>
-            </el-select>
-          </el-form-item>
-          <el-form-item>
-            <p class="inquire-button-one" @click="handleQuery" style="margin-right:10px;">查询</p>
-            <p class="reset-button-one" @click="resetQuery">重置</p>
-          </el-form-item>
-        </el-form>
-        <el-table v-loading="loading" border :data="tableList">
-          <el-table-column label="所属学院" align="left" prop="deptName" />
-          <el-table-column label="实验室" align="left" prop="subName" />
-          <el-table-column label="位置" align="left" prop="posi"  />
-          <el-table-column label="实验室负责人" align="left" prop="adminName" />
-          <el-table-column label="门禁" align="left" prop="hardName" />
-          <el-table-column label="授权人数" align="left" prop="available"  />
-          <el-table-column label="状态" align="left" prop="operate" >
-            <template slot-scope="scope" v-if="scope.row.operate">
-              <span>{{scope.row.operate.name}}</span>
-            </template>
-          </el-table-column>
-          <el-table-column label="操作" align="left" class-name="small-padding fixed-width" width="120">
-            <template slot-scope="scope">
-              <div class="button-box">
-                <p class="table-min-button"
-                   v-hasPermi="['haikang:user:list']"
-                   @click="handleClick('',scope.row,'detail')"
-                >查看</p>
-              </div>
-            </template>
-          </el-table-column>
-        </el-table>
-        <pagination :page-sizes="[20, 30, 40, 50]"
-                    v-show="total>0"
-                    :total="total"
-                    :page.sync="queryParams.pageNum"
-                    :limit.sync="queryParams.pageSize"
-                    @pagination="getList"/>
-      </div>
-    </div>
-    <detailPage v-if="pageType == 2" :pageData="pageData"></detailPage>
-  </div>
-</template>
-
-<script>
-import { getHaikangList } from '@/api/laboratory/subject'
-  import detailPage from "./authorizaErrorDetail";
-  export default {
-    name: "authorize",
-    components: {
-      detailPage
-    },
-    data(){
-      return{
-        pageType:1,
-        loading:false,
-        // 搜索数据
-        queryParamsData:{
-          pageNum:1,
-          pageSize:20,
-          searchValue:'',
-          operate:'',
-        },
-        // 搜索实际发送数据
-        queryParams:{
-          pageNum:1,
-          pageSize:20,
-        },
-        //数据数量
-        total:10,
-        tableList:[{}],
-        //审批状态
-        optionsListTwo:[{code:null,name:'全部'},{code:0,name:'离线'},{code:2,name:'在线'}],
-        //详情
-        pageData:{},
-      }
-    },
-    created() {
-
-    },
-    mounted(){
-      this.getList();
-    },
-    methods:{
-      handleClick(index,row,doType){
-        if(doType=='detail'){
-          this.pageType=2
-
-          this.pageData=row
-          console.log(this.pageData)
-        }else if(doType=='back'){
-          this.pageType=1
-        }
-
-      },
-      //操作接口
-      goPageButton(){
-        this.pageType = 1;
-      },
-      titleClick(type){
-        this.$parent.titleClick(type);
-      },
-      /** 搜索按钮操作 */
-      handleQuery() {
-        this.queryParamsData.pageNum = 1;
-        this.queryParamsData.pageSize = 20;
-        this.queryParams = JSON.parse(JSON.stringify(this.queryParamsData));
-        this.getList();
-      },
-      /** 重置按钮操作 */
-      resetQuery() {
-        this.$set(this,'queryParamsData',{});
-        this.$set(this,'queryParams',{});
-        this.handleQuery();
-      },
-      //获取数据列表
-      getList(){
-        this.queryParamsData = JSON.parse(JSON.stringify(this.queryParams));
-        getHaikangList(this.queryParamsData).then(response => {
-          this.tableList = response.rows;
-          this.total = response.total
-        });
-      },
-    }
-  }
-</script>
-
-<style scoped lang="scss">
-  .authorize{
-    flex:1;
-    display: flex;
-    flex-direction: column;
-    .authorize-page{
-      flex:1;
-      display: flex;
-      flex-direction: column;
-      overflow: hidden;
-      .title-box{
-        display: flex;
-        border-bottom:1px solid #E0E0E0;
-        margin-bottom:20px;
-        div{
-          height:80px;
-          margin-right:20px;
-          cursor: pointer;
-          p:nth-child(1){
-            font-size:18px;
-            text-align: center;
-            padding:0 20px;
-            margin-top:26px;
-          }
-          p:nth-child(2){
-            width:40px;
-            height:4px;
-            border-radius:40px;
-            margin:12px auto;
-          }
-          .top-p-color{
-            color: #0045AF;
-          }
-          .bottom-p-color{
-            background: #0045AF;
-          }
-        }
-        .buttonTitleColorA{
-          color:#0045AF;
-        }
-        .buttonTitleColorB{
-          color:#999999;
-        }
-      }
-      .authorize-min{
-        flex:1;
-        display: flex;
-        flex-direction: column;
-        overflow: hidden;
-        margin:0 20px!important;
-        .button-box{
-          display: flex;
-        }
-      }
-    }
-  }
-</style>

+ 0 - 222
src/views/comprehensive/laboratoryManagement/accessAuthorization/authorizeKDNH.vue

@@ -1,222 +0,0 @@
-<!--门禁授权-->
-<template>
-  <div class="authorize">
-    <div class="authorize-page" v-if="pageType == 1">
-      <div class="title-box">
-        <div>
-          <p class="top-p-color">门禁授权</p>
-          <p class="bottom-p-color"></p>
-        </div>
-        <div @click="titleClick(2)">
-          <p>授权日志</p>
-          <p></p>
-        </div>
-      </div>
-      <div class="authorize-min">
-        <el-form :model="queryParamsData" ref="queryForm" :inline="true">
-          <el-form-item label="关键字" prop="searchValue" label-width="68px">
-            <el-input
-              maxlength="20"
-              v-model="queryParamsData.searchValue"
-              placeholder="姓名/实验室"
-              clearable
-              size="small"/>
-          </el-form-item>
-          <el-form-item label="状态" prop="status" label-width="50px">
-            <el-select v-model="queryParamsData.operate" clearable placeholder="请选择状态">
-              <el-option
-                v-for="item in optionsListTwo"
-                :key="item.code"
-                :label="item.name"
-                :value="item.code">
-              </el-option>
-            </el-select>
-          </el-form-item>
-          <el-form-item label="分类" prop="zgType" label-width="80px">
-            <el-select v-model="queryParamsData.leadAuditStaus" placeholder="请选择" clearable size="small">
-              <el-option label="全部" value="" />
-              <el-option label="授权验证成功" value="0" />
-              <el-option label="授权验证失败" value="1" />
-            </el-select>
-          </el-form-item>
-          <el-form-item>
-            <p class="inquire-button-one" @click="handleQuery" style="margin-right:10px;">查询</p>
-            <p class="reset-button-one" @click="resetQuery">重置</p>
-          </el-form-item>
-        </el-form>
-        <el-table v-loading="loading" border :data="tableList">
-          <el-table-column label="所属学院" align="left" prop="deptName" />
-          <el-table-column label="实验室" align="left" prop="subName" />
-          <el-table-column label="位置" align="left" prop="posi"  />
-          <el-table-column label="实验室负责人" align="left" prop="adminName" />
-          <el-table-column label="门禁" align="left" prop="hardName" />
-          <el-table-column label="授权人数" align="left" prop="available"  />
-          <el-table-column label="验证方式失败数" align="left" prop="failNum"  />
-          <el-table-column label="状态" align="left" prop="operate" >
-            <template slot-scope="scope" v-if="scope.row.operate">
-              <span>{{scope.row.operate.name}}</span>
-            </template>
-          </el-table-column>
-          <el-table-column label="操作" align="left" class-name="small-padding fixed-width"  width="120">
-            <template slot-scope="scope">
-              <div class="button-box">
-                <p class="table-min-button"
-                   v-hasPermi="['haikang:user:list']"
-                   @click="handleClick('',scope.row,'detail')"
-                >查看授权</p>
-              </div>
-            </template>
-          </el-table-column>
-        </el-table>
-        <pagination :page-sizes="[20, 30, 40, 50]"
-                    v-show="total>0"
-                    :total="total"
-                    :page.sync="queryParams.pageNum"
-                    :limit.sync="queryParams.pageSize"
-                    @pagination="getList"/>
-      </div>
-    </div>
-    <lookImpower v-if="pageType == 2" :pageData="pageData"></lookImpower>
-  </div>
-</template>
-
-<script>
-import { getHaikangList } from '@/api/laboratory/subject'
-  import lookImpower from "./lookImpower.vue";
-  export default {
-    name: "authorize",
-    components: {
-      lookImpower
-    },
-    data(){
-      return{
-        pageType:1,
-        loading:false,
-        // 搜索数据
-        queryParamsData:{
-          pageNum:1,
-          pageSize:20,
-          searchValue:'',
-          operate:'',
-        },
-        // 搜索实际发送数据
-        queryParams:{
-          pageNum:1,
-          pageSize:20,
-        },
-        //数据数量
-        total:10,
-        tableList:[{}],
-        //审批状态
-        optionsListTwo:[{code:null,name:'全部'},{code:0,name:'离线'},{code:2,name:'在线'}],
-        //详情
-        pageData:{},
-      }
-    },
-    created() {
-
-    },
-    mounted(){
-      this.getList();
-    },
-    methods:{
-      handleClick(index,row,doType){
-        if(doType=='detail'){
-          this.pageType=2
-
-          this.pageData=row
-          console.log(this.pageData)
-        }else if(doType=='back'){
-          this.pageType=1
-        }
-
-      },
-      //操作接口
-      goPageButton(){
-        this.pageType = 1;
-      },
-      titleClick(type){
-        this.$parent.titleClick(type);
-      },
-      /** 搜索按钮操作 */
-      handleQuery() {
-        this.queryParamsData.pageNum = 1;
-        this.queryParamsData.pageSize = 20;
-        this.queryParams = JSON.parse(JSON.stringify(this.queryParamsData));
-        this.getList();
-      },
-      /** 重置按钮操作 */
-      resetQuery() {
-        this.$set(this,'queryParamsData',{});
-        this.$set(this,'queryParams',{});
-        this.handleQuery();
-      },
-      //获取数据列表
-      getList(){
-        this.queryParamsData = JSON.parse(JSON.stringify(this.queryParams));
-        getHaikangList(this.queryParamsData).then(response => {
-          this.tableList = response.rows;
-          this.total = response.total
-        });
-      },
-    }
-  }
-</script>
-
-<style scoped lang="scss">
-  .authorize{
-    flex:1;
-    display: flex;
-    flex-direction: column;
-    .authorize-page{
-      flex:1;
-      display: flex;
-      flex-direction: column;
-      overflow: hidden;
-      .title-box{
-        display: flex;
-        border-bottom:1px solid #E0E0E0;
-        margin-bottom:20px;
-        div{
-          height:80px;
-          margin-right:20px;
-          cursor: pointer;
-          p:nth-child(1){
-            font-size:18px;
-            text-align: center;
-            padding:0 20px;
-            margin-top:26px;
-          }
-          p:nth-child(2){
-            width:40px;
-            height:4px;
-            border-radius:40px;
-            margin:12px auto;
-          }
-          .top-p-color{
-            color: #0045AF;
-          }
-          .bottom-p-color{
-            background: #0045AF;
-          }
-        }
-        .buttonTitleColorA{
-          color:#0045AF;
-        }
-        .buttonTitleColorB{
-          color:#999999;
-        }
-      }
-      .authorize-min{
-        flex:1;
-        display: flex;
-        flex-direction: column;
-        overflow: hidden;
-        margin:0 20px!important;
-        .button-box{
-          display: flex;
-        }
-      }
-    }
-  }
-</style>

+ 0 - 52
src/views/comprehensive/laboratoryManagement/accessAuthorization/indexKDNH.vue

@@ -1,52 +0,0 @@
-<template>
-    <div class="app-container accessAuthorization">
-      <!--门禁授权-->
-      <authorize v-if="pageType == 1"></authorize>
-      <!--授权日志-->
-      <application v-if="pageType == 2"></application>
-    </div>
-</template>
-
-<script>
-  import authorize from "./authorizeKDNH.vue";
-  import application from "./applicationKDNH.vue";
-  export default {
-    name: "index",
-    components: {
-      authorize,
-      application,
-    },
-    data(){
-      return{
-        pageType:1,
-      }
-    },
-    created() {
-
-    },
-    mounted(){
-
-    },
-    methods:{
-      //选项卡切换
-      titleClick(type){
-        if(this.pageType != type){
-          this.pageType = type
-        }
-      }
-    }
-  }
-</script>
-
-<style scoped lang="scss">
-  .accessAuthorization{
-    flex:1;
-    display: flex!important;
-    flex-direction: column;
-    overflow: hidden;
-    *{
-      margin:0;
-      font-weight:500;
-    }
-  }
-</style>

+ 2 - 2
src/views/comprehensive/laboratoryManagement/accessAuthorization/lookImpower.vue

@@ -27,8 +27,8 @@
         </el-table-column>
         <el-table-column label="授权状态" align="left" prop="isretry">
           <template slot-scope="scope">
-            <span v-if="scope.row.state">成功</span>
-            <span v-if="!scope.row.state">失败</span>
+            <span v-if="scope.row.impowerStatus">成功</span>
+            <span v-if="!scope.row.impowerStatus">失败</span>
           </template>
         </el-table-column>
         <el-table-column label="类别" align="left" prop="userType"></el-table-column>

+ 1 - 1
src/views/comprehensive/laboratoryManagement/subject/deviceList.vue

@@ -643,7 +643,7 @@ export default {
             type: "warning"
           }).then(() => {
             //  确定
-            this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization-KDNH' });
+            this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization' });
           }).catch(function() {
             //  取消
           });

+ 0 - 997
src/views/comprehensive/laboratoryManagement/subject/deviceListKDNH.vue

@@ -1,997 +0,0 @@
-<!--物联设备配置-->
-<template>
-  <div class="deviceList scrollbar-box">
-    <div class="title-box">
-      <p class="left-title">传感器</p>
-      <p class="right-button reset-button-one" @click="backPage">返回</p>
-    </div>
-    <div class="for-max-box">
-      <div class="for-big-box" v-for="(item,index) in listCgq" :key="index">
-        <p class="for-title-p">{{subjectData.room}}-{{item.type.name}}传感器{{index+1}}</p>
-        <div class="for-text-box">
-          <p>网关编号:</p>
-          <el-tooltip class="item" effect="dark" :content="item.gatewayId" placement="top">
-            <p>{{item.gatewayId}}</p>
-          </el-tooltip>
-        </div>
-        <div class="for-button-box">
-          <p @click="editData(5,item)"><i class="el-icon-edit-outline"></i>编辑</p>
-          <p></p>
-          <p @click="delSensor(item)"><i class="el-icon-delete"></i>删除</p>
-        </div>
-      </div>
-      <p class="add-for-p" @click="addData(1)"><i class="el-icon-plus"></i>添加传感器</p>
-    </div>
-    <div class="title-box">
-      <p class="left-title">智能门禁</p>
-    </div>
-    <div class="for-max-box">
-      <div class="for-big-box" v-for="(item,index) in listHK" :key="index" style="width: 350px">
-        <p class="for-title-p">{{item.type.name}}-{{item.name}}</p>
-        <div class="for-text-box">
-          <p>门禁编号:</p>
-          <el-tooltip class="item" effect="dark" :content="item.hardwareNum" placement="top">
-            <p>{{item.hardwareNum}}</p>
-          </el-tooltip>
-        </div>
-        <div class="for-text-box">
-          <p>门禁授权:</p>
-          <el-checkbox-group v-model="item.controlScope==null?[]:item.controlScope.split(',')" style="margin-top: 6px" disabled>
-            <el-checkbox label="1" style="margin-right: 8px">关联安全准入</el-checkbox>
-            <el-checkbox label="2">关联白名单</el-checkbox>
-          </el-checkbox-group>
-        </div>
-        <div class="for-button-box">
-          <p @click="editData('editEntrance',item)"><i class="el-icon-edit-outline"></i>编辑</p>
-          <p></p>
-          <p @click="delEntrance(item)"><i class="el-icon-delete"></i>删除</p>
-        </div>
-      </div>
-      <p class="add-for-p" @click="addData('addEntrance')" style="width: 350px;height: 158px;" v-if="listHK.length<3"><i class="el-icon-plus"></i>添加智能门禁</p>
-    </div>
-    <div class="title-box">
-      <p class="left-title">一体机</p>
-    </div>
-    <div class="for-max-box">
-      <div class="for-big-box" v-for="(item,index) in listYtj" :key="index">
-        <p class="for-title-p">{{subjectData.room}}-{{item.type.name}}{{index+1}}</p>
-        <div class="for-text-box">
-          <p>一体机编号:</p>
-          <el-tooltip class="item" effect="dark" :content="item.hardwareNum" placement="top">
-            <p>{{item.hardwareNum}}</p>
-          </el-tooltip>
-        </div>
-        <div class="for-button-box">
-          <p @click="editData(6,item)"><i class="el-icon-edit-outline"></i>编辑</p>
-          <p></p>
-          <p @click="delHardware(item)"><i class="el-icon-delete"></i>删除</p>
-        </div>
-      </div>
-      <p class="add-for-p" @click="addData(2)"><i class="el-icon-plus"></i>添加一体机</p>
-    </div>
-    <div class="title-box">
-      <p class="left-title">控制设备</p>
-    </div>
-    <div class="for-max-box">
-      <div class="for-big-box-two" v-for="(item,index) in listkzsb" :key="index">
-        <p class="for-title-p">{{subjectData.room}}-{{item.type.name}}传感器{{index+1}}</p>
-        <div class="for-text-box">
-          <p>设备编号:</p>
-          <el-tooltip class="item" effect="dark" :content="item.relayCode" placement="top">
-            <p>{{item.relayCode}}</p>
-          </el-tooltip>
-        </div>
-        <div class="for-text-box">
-          <p>设备路由:</p>
-          <p>{{item.bit}}</p>
-        </div>
-        <div class="for-button-box">
-          <p @click="editData(7,item)"><i class="el-icon-edit-outline"></i>编辑</p>
-          <p></p>
-          <p @click="delHardwareTwo(item)"><i class="el-icon-delete"></i>删除</p>
-        </div>
-      </div>
-      <p class="add-for-p-two" @click="addData(3)"><i class="el-icon-plus"></i>添加控制设备</p>
-    </div>
-    <div class="title-box">
-      <p class="left-title">摄像头</p>
-    </div>
-    <div class="for-max-box">
-      <div class="for-big-box" v-for="(item,index) in listSpjk" :key="index">
-        <p class="for-title-p">{{subjectData.room}}-{{item.type.name}}{{index+1}}</p>
-        <div class="for-text-box">
-          <p>摄像头编号:</p>
-          <p></p>
-        </div>
-        <div class="for-text-box">
-          <p></p>
-          <el-tooltip class="item" effect="dark" :content="item.hardwareNum" placement="top">
-            <p>{{item.hardwareNum}}</p>
-          </el-tooltip>
-        </div>
-        <div class="for-button-box">
-          <p @click="editData(8,item)"><i class="el-icon-edit-outline"></i>编辑</p>
-          <p></p>
-          <p @click="delHardwareThree(item)"><i class="el-icon-delete"></i>删除</p>
-        </div>
-      </div>
-      <p class="add-for-p-two" @click="addData(4)"><i class="el-icon-plus"></i>添加摄像头</p>
-    </div>
-    <el-dialog :title="title" :visible.sync="addType" v-if="addType" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="110px">
-        <div v-if="upType == 1 || upType == 5">
-          <el-form-item label="传感器类型" prop="type">
-            <el-select v-model="form.type" placeholder="请选择传感器类型" style="width:320px;">
-              <el-option
-                v-for="item in sensorAddOptions"
-                :key="item.enumName"
-                :label="item.name"
-                :value="item.enumName">
-              </el-option>
-            </el-select>
-          </el-form-item>
-          <el-form-item label="网关编号" prop="gatewayId">
-            <el-input v-model="form.gatewayId" placeholder="请输入网关编号"
-                      maxlength="30" style="width:320px;"/>
-          </el-form-item>
-          <el-form-item label="路由" prop="routeNum">
-            <el-input v-model="form.routeNum" oninput="value=value.replace(/[^0-9.]/g,'')" maxlength="2" placeholder="请输入路由" style="width:320px;"></el-input>
-          </el-form-item>
-          <el-form-item label="传感器参数" prop="configName">
-            <el-input v-model="form.configName"  placeholder="请输入传感器参数"
-                      maxlength="30" style="width:320px;"></el-input>
-          </el-form-item>
-          <el-form-item label="状态参数" prop="configStatus">
-            <el-input v-model="form.configStatus"  placeholder="请输入状态参数"
-                      maxlength="30" style="width:320px;"></el-input>
-          </el-form-item>
-        </div>
-        <div v-if="upType == 2 || upType == 6">
-          <el-form-item label="一体机名称" prop="name">
-            <el-input
-              style="width:320px;"
-              v-model="form.name"
-              placeholder="请输入一体机名称"
-              maxlength="8"
-              size="small"
-            />
-          </el-form-item>
-          <el-form-item label="一体机类型" prop="pcType">
-            <el-select v-model="form.pcType" placeholder="请选择一体机类型" style="width:320px;">
-              <el-option label="管控一体机" value="0" />
-              <el-option label="学习一体机" value="1" />
-            </el-select>
-          </el-form-item>
-          <el-form-item label="一体机编号" prop="hardwareNum">
-            <el-input
-              style="width:320px;"
-              v-model="form.hardwareNum"
-              placeholder="请输入一体机编号"
-              maxlength="30"
-              size="small"
-            />
-          </el-form-item>
-        </div>
-        <div v-if="upType == 3 || upType == 7">
-          <el-form-item label="设备类型" prop="type">
-            <el-select v-model="form.type" placeholder="请选择设备类型" style="width:320px;" :disabled="disabledType">
-              <el-option key="1" label="电源开关" value="1"></el-option>
-              <el-option key="2" label="智能通风" value="2"></el-option>
-            </el-select>
-          </el-form-item>
-          <el-form-item label="设备版本" prop="hardwareType">
-            <el-radio-group v-model="form.hardwareType">
-              <el-radio :label="1">老继电器</el-radio>
-              <el-radio :label="2">新继电器</el-radio>
-            </el-radio-group>
-          </el-form-item>
-          <el-form-item label="设备编号" prop="relayCode">
-            <el-input v-model="form.relayCode" placeholder="请输入设备编号"
-                      maxlength="30" style="width:320px;"/>
-          </el-form-item>
-          <el-form-item label="设备路由" prop="bit">
-            <el-input v-model="form.bit" oninput="value=value.replace(/[^0-9.]/g,'')" maxlength="2" placeholder="请输入路由" style="width:320px;"></el-input>
-          </el-form-item>
-          <el-form-item label="设备参数" prop="configName" v-if="form.hardwareType == 2">
-            <el-input v-model="form.configName" maxlength="30" placeholder="请输入设备参数" style="width:320px;"></el-input>
-          </el-form-item>
-          <el-form-item label="参数状态" prop="configStatus" v-if="form.hardwareType == 2">
-            <el-input v-model="form.configStatus" maxlength="30" placeholder="请输入参数状态" style="width:320px;"></el-input>
-          </el-form-item>
-        </div>
-        <div v-if="upType == 4 || upType == 8">
-          <el-form-item label="摄像头编号" prop="hardwareNum">
-            <el-input v-model="form.hardwareNum" placeholder="摄像头编号"
-                      maxlength="30" style="width:320px;"/>
-          </el-form-item>
-        </div>
-        <div v-if="upType == 'addEntrance'||  upType=='editEntrance'">
-          <el-form-item label="门禁编号" prop="hardwareNum">
-            <el-input
-              style="width:320px;"
-              v-model="form.hardwareNum"
-              placeholder="请输入门禁编号"
-              maxlength="20"
-              size="small"
-            />
-          </el-form-item>
-          <el-form-item label="门禁名称" prop="name" >
-            <el-input
-              style="width:320px;"
-              v-model="form.name"
-              placeholder="请输入门禁名称"
-              maxlength="8"
-              size="small"
-            />
-          </el-form-item>
-          <el-form-item label="IP" prop="ipAddress" >
-            <el-input
-              style="width:320px;"
-              v-model="form.ipAddress"
-              placeholder="请输入IP"
-              maxlength="15"
-              size="small"
-            />
-          </el-form-item>
-          <el-form-item label="端口" prop="port" >
-            <el-input
-              style="width:320px;"
-              v-model="form.port"
-              placeholder="请输入端口"
-              maxlength="6"
-              size="small"
-            />
-          </el-form-item>
-          <el-form-item label="设备管理证号" prop="harUser" >
-            <el-input
-              style="width:320px;"
-              v-model="form.harUser"
-              placeholder="请输入设备管理证号"
-              maxlength="30"
-              size="small"
-            />
-          </el-form-item>
-          <el-form-item label="设备管理密码" prop="harPsw" >
-            <el-input
-              style="width:320px;"
-              v-model="form.harPsw"
-              placeholder="请输入设备管理密码"
-              maxlength="30"
-              size="small"
-            />
-          </el-form-item>
-          <el-form-item label="门禁权限" style="margin-bottom: 0">
-            <el-checkbox-group v-model="form.controlScope">
-              <el-checkbox label="1" >关联安全准入</el-checkbox>
-              <el-checkbox label="2">关联白名单</el-checkbox>
-            </el-checkbox-group>
-          </el-form-item>
-          <p style="margin:0 20px 0 104px;color: #FD2A2A;">关联之后申请安全准入或者白名单后自动授权门禁,不关联则需要单独授权门禁</p>
-        </div>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button @click="cancel">取 消</el-button>
-        <el-button type="primary" @click="submitForm">确 定</el-button>
-      </div>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-import { listBySubjectId,addSensor,putSensor,delSensor,addHardware,putHardware,delHardware } from "@/api/laboratory/subject";
-import { getSensorList } from "@/api/laboratory/sensor";
-export default {
-  name: "deviceList",
-  props:{
-    subjectData:{},
-  },
-  data() {
-    return {
-      title:"",
-      addType:false,
-      listCgq:[],  //传感器
-      listYtj:[],  //一体机
-      listkzsb:[],
-      listSpjk:[],   //摄像头
-      listHK:[],//智能门禁
-      form:{
-      },
-      // 表单校验
-      rules: {
-        name:[
-          {required: true, message: '请输入名称', trigger: 'blur'},
-          { required: true, message: "请输入名称", validator: this.spaceJudgment, trigger: "blur" }
-        ],
-        type:[
-          {required: true, message: '类型不能为空', trigger: 'blur'}
-        ],
-        gatewayId:[
-          {required: true, message: '网关不能为空', trigger: 'blur'},
-          { required: true, message: "网关不能为空", validator: this.spaceJudgment, trigger: "blur" }
-        ],
-        hardwareNum:[
-          { required: true, message: "请输入编号", trigger: "blur" },
-          { required: true, message: "请输入编号", validator: this.spaceJudgment, trigger: "blur" }
-        ],
-        pcType: [
-          { required: true, message: "请选择类型", trigger: "blur" },
-        ],
-        hardwareType: [
-          { required: true, message: "请选择设备版本", trigger: "blur" },
-        ],
-        relayCode: [
-          { required: true, message: "请输入设备编号", trigger: "blur" },
-          { required: true, message: "请输入设备编号", validator: this.spaceJudgment, trigger: "blur" }
-        ],
-        bit: [
-          { required: true, message: "请输入路由", trigger: "blur" },
-          { required: true, message: "请输入路由", validator: this.spaceJudgment, trigger: "blur" }
-        ],
-        ipAddress: [
-          { required: true, message: "请输入IP", trigger: "blur" },
-          { required: true, message: "请输入IP", validator: this.spaceJudgment, trigger: "blur" }
-        ],
-        port: [
-          { required: true, message: "请输入端口", trigger: "blur" },
-          { required: true, message: "请输入端口", validator: this.spaceJudgment, trigger: "blur" }
-        ],
-
-        harUser: [
-          { required: true, message: "请输入设备管理证号", trigger: "blur" },
-          { required: true, message: "请输入设备管理证号", validator: this.spaceJudgment, trigger: "blur" }
-        ],
-        harPsw: [
-          { required: true, message: "请输入设备管理密码", trigger: "blur" },
-          { required: true, message: "请输入设备管理密码", validator: this.spaceJudgment, trigger: "blur" }
-        ],
-
-      },
-      //提交类型
-      upType:"",
-      //传感器类型
-      sensorAddOptions: [],
-    }
-  },
-  created() {
-    this.listBySubjectId();
-    this.getSensorList();
-  },
-  mounted(){
-
-  },
-  methods:{
-    // 取消按钮
-    cancel() {
-      this.addType = false;
-    },
-    // 提交
-    submitForm() {
-      this.$refs["form"].validate(valid => {
-        if (valid) {
-          if(this.upType == 1){
-            //新增传感器
-            this.addSensor();
-          }else if(this.upType == 5){
-            //编辑传感器
-            this.putSensor();
-          }else if(this.upType == 2){
-            //新增一体机
-            this.addHardware();
-          }else if(this.upType == 6){
-            //编辑一体机
-            this.putHardware();
-          }else if(this.upType == 3){
-            //新增控制设备
-            this.addHardwareTwo();
-          }else if(this.upType == 7){
-            //编辑控制设备
-            this.putHardwareTwo();
-          }else if(this.upType == 4){
-            //新增控制设备
-            this.addHardwareThree();
-          }else if(this.upType == 8){
-            //编辑控制设备
-            this.putHardwareThree();
-          }else if(this.upType == 'addEntrance'){
-            //新增智能门禁
-            this.addEntrance();
-          }else if(this.upType == 'editEntrance'){
-            //编辑智能门禁
-            this.editEntrance();
-          }
-        }
-      });
-    },
-    //删除智能门禁
-    delEntrance(item){
-      this.$confirm('确认要删除该智能门禁?', "警告", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning"
-      }).then(() => {
-        //  确定
-        delHardware(item.id).then((response) => {
-          this.msgSuccess(response.msg)
-          this.addType = false;
-          this.listBySubjectId();
-        });
-      }).catch(function() {
-        //  取消
-      });
-    },
-    //新增摄像头
-    addHardwareThree(){
-      let obj = {
-        type:4,
-        hardwareNum:this.form.hardwareNum,
-        subjectId:this.subjectData.id,
-        deptId:this.subjectData.deptId,
-        deptName:this.subjectData.deptName,
-      }
-      addHardware(obj).then(response => {
-        this.msgSuccess(response.msg)
-        this.addType = false;
-        this.listBySubjectId();
-      });
-    },
-    //编辑摄像头
-    putHardwareThree(){
-      let obj = {
-        id:this.form.id,
-        hardwareNum:this.form.hardwareNum,
-        subjectId:this.form.subjectId,
-        deptId:this.form.deptId,
-        deptName:this.form.deptName,
-      }
-      putHardware(obj).then(response => {
-        this.msgSuccess(response.msg)
-        this.addType = false;
-        this.listBySubjectId();
-      });
-    },
-    //删除摄像头
-    delHardwareThree(item){
-      this.$confirm('确认要删除该摄像头?', "警告", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning"
-      }).then(() => {
-        //  确定
-        delHardware(item.id).then((response) => {
-          this.msgSuccess(response.msg)
-          this.addType = false;
-          this.listBySubjectId();
-        });
-      }).catch(function() {
-        //  取消
-      });
-    },
-    //新增控制设备
-    addHardwareTwo(){
-      let obj = {
-        type:this.form.type,
-        hardwareType:this.form.hardwareType,
-        relayCode:this.form.relayCode,
-        bit:this.form.bit,
-        configName:this.form.configName,
-        configStatus:this.form.configStatus,
-        subjectId:this.subjectData.id,
-        deptId:this.subjectData.deptId,
-        deptName:this.subjectData.deptName,
-      }
-      addHardware(obj).then(response => {
-        this.msgSuccess(response.msg)
-        this.addType = false;
-        this.listBySubjectId();
-      });
-    },
-    //编辑控制设备
-    putHardwareTwo(){
-      let obj = {
-        id:this.form.id,
-        hardwareType:this.form.hardwareType,
-        relayCode:this.form.relayCode,
-        bit:this.form.bit,
-        configName:this.form.configName,
-        configStatus:this.form.configStatus,
-        subjectId:this.form.subjectId,
-        deptId:this.form.deptId,
-        deptName:this.form.deptName,
-      }
-      putHardware(obj).then(response => {
-        this.msgSuccess(response.msg)
-        this.addType = false;
-        this.listBySubjectId();
-      });
-    },
-    //删除控制设备
-    delHardwareTwo(item){
-      this.$confirm('确认要删除该一体机?', "警告", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning"
-      }).then(() => {
-        //  确定
-        delHardware(item.id).then((response) => {
-          this.msgSuccess(response.msg)
-          this.addType = false;
-          this.listBySubjectId();
-        });
-      }).catch(function() {
-        //  取消
-      });
-    },
-    //添加一体机
-    addHardware(){
-      let obj = {
-        type:0,
-        name:this.form.name,
-        pcType:this.form.pcType,
-        hardwareNum:this.form.hardwareNum,
-        subjectId:this.subjectData.id,
-        deptId:this.subjectData.deptId,
-        deptName:this.subjectData.deptName,
-      }
-      addHardware(obj).then(response => {
-        this.msgSuccess(response.msg)
-        this.addType = false;
-        this.listBySubjectId();
-      });
-    },
-    //编辑一体机
-    putHardware(){
-      let obj = {
-        id:this.form.id,
-        name:this.form.name,
-        pcType:this.form.pcType,
-        hardwareNum:this.form.hardwareNum,
-      }
-      putHardware(obj).then(response => {
-        this.msgSuccess(response.msg)
-        this.addType = false;
-        this.listBySubjectId();
-      });
-    },
-    //删除一体机
-    delHardware(item){
-      this.$confirm('确认要删除该一体机?', "警告", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning"
-      }).then(() => {
-        //  确定
-        delHardware(item.id).then((response) => {
-          this.msgSuccess(response.msg)
-          this.addType = false;
-          this.listBySubjectId();
-        });
-      }).catch(function() {
-        //  取消
-      });
-    },
-    //添加传感器
-    addSensor(){
-      let obj = {
-        type:this.form.type,
-        gatewayId:this.form.gatewayId,
-        routeNum:this.form.routeNum,
-        configName:this.form.configName,
-        configStatus:this.form.configStatus,
-        subjectId:this.subjectData.id
-      }
-      addSensor(obj).then(response => {
-        this.msgSuccess(response.msg)
-        this.addType = false;
-        this.listBySubjectId();
-      });
-    },
-    //编辑传感器
-    putSensor(){
-      let obj = {
-        type:this.form.type,
-        id:this.form.id,
-        gatewayId:this.form.gatewayId,
-        routeNum:this.form.routeNum,
-        configName:this.form.configName,
-        configStatus:this.form.configStatus,
-      }
-      putSensor(obj).then(response => {
-        this.msgSuccess(response.msg)
-        this.addType = false;
-        this.listBySubjectId();
-      });
-    },
-    //删除传感器
-    delSensor(item){
-      this.$confirm('确认要删除该传感器?', "警告", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning"
-      }).then(() => {
-        //  确定
-        delSensor(item.id).then((response) => {
-          this.msgSuccess(response.msg)
-          this.addType = false;
-          this.listBySubjectId();
-        });
-      }).catch(function() {
-        //  取消
-      });
-    },
-    //新增智能门禁
-    addEntrance(){
-      let obj = {
-        type:11,
-        subjectId:this.subjectData.id,
-        hardwareNum:this.form.hardwareNum,
-        name:this.form.name,
-        ipAddress:this.form.ipAddress,
-        port:this.form.port,
-        harUser:this.form.harUser,
-        harPsw:this.form.harPsw,
-        controlScope:this.form.controlScope.join(','),
-      }
-      addHardware(obj).then(response => {
-        if(response.code==200){
-          this.msgSuccess(response.msg)
-          this.addType = false;
-          this.listBySubjectId();
-        }else if(response.code==205){
-          this.$confirm(response.msg, "警告", {
-            confirmButtonText: "确定",
-            cancelButtonText: "取消",
-            type: "warning"
-          }).then(() => {
-            //  确定
-            this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization-KDNH' });
-          }).catch(function() {
-            //  取消
-          });
-        }
-      });
-    },
-    //编辑智能门禁
-    editEntrance(){
-      let obj = {
-        id:this.form.id,
-        hardwareNum:this.form.hardwareNum,
-        name:this.form.name,
-        ipAddress:this.form.ipAddress,
-        port:this.form.port,
-        harUser:this.form.harUser,
-        harPsw:this.form.harPsw,
-        controlScope:this.form.controlScope.join(','),
-        subjectId:this.subjectData.id
-      }
-      putHardware(obj).then(response => {
-        this.msgSuccess(response.msg)
-        this.addType = false;
-        this.listBySubjectId();
-      });
-    },
-    //添加
-    addData(type){
-      // this.resetForm("form");
-      if(type == 1){
-        this.title = '新增传感器';
-        this.$set(this,'form',{
-          type:"",
-          gatewayId:"",
-          routeNum:"",
-          configName:"",
-          configStatus:"",
-        });
-      }else if(type == 2){
-        this.title = '新增一体机';
-        this.$set(this,'form',{
-          name:"",
-          pcType:"",
-          hardwareNum:"",
-        });
-      }else if(type == 3){
-        this.title = '新增控制设备';
-        this.form.hardwareType = 1;
-        this.disabledType = false;
-        this.$set(this,'form',{
-          type:"",
-          hardwareType:"",
-          relayCode:"",
-          bit:"",
-          configName:"",
-          configStatus:"",
-        });
-      }else if(type == 4){
-        this.title = '新增摄像头';
-        this.$set(this,'form',{
-          hardwareNum:"",
-        });
-      }else if(type == 'addEntrance'){
-        this.title = '新增智能门禁';
-        this.$set(this,'form',{
-          hardwareNum:"",
-          name:"",
-          ipAddress:"",
-          port:"",
-          harUser:"",
-          harPsw:"",
-          controlScope:[],
-        });
-      }
-      this.addType = true;
-      this.upType = type;
-    },
-    //编辑
-    editData(type,row){
-      if(type == 5){
-        this.title = '编辑传感器';
-        this.$set(this,'form',JSON.parse(JSON.stringify(row)));
-        this.$set(this.form,'type',JSON.parse(JSON.stringify(row.type.enumName)));
-      }else if(type == 6){
-        this.title = '编辑一体机';
-        this.$set(this,'form',JSON.parse(JSON.stringify(row)));
-        this.$set(this.form,'pcType',JSON.parse(JSON.stringify(row.pcType+'')));
-      }else if(type == 7){
-        this.title = '编辑控制设备';
-        this.disabledType = true;
-        this.$set(this,'form',JSON.parse(JSON.stringify(row)));
-        this.$set(this.form,'type',JSON.parse(JSON.stringify(row.type.code+'')));
-      }else if(type == 8){
-        this.title = '编辑摄像头';
-        this.$set(this,'form',JSON.parse(JSON.stringify(row)));
-      }else if(type == 'editEntrance'){
-        this.title = '编辑智能门禁';
-        this.$set(this,'form',JSON.parse(JSON.stringify(row)));
-        if(row.controlScope){
-          this.form.controlScope=row.controlScope.split(',')
-        }else{
-          this.form.controlScope=[]
-        }
-
-      }
-      this.addType = true;
-      this.upType = type;
-    },
-    //获取列表
-    listBySubjectId(){
-      let obj = {
-        subjectId:this.subjectData.id
-      };
-      console.log("obj",obj)
-      listBySubjectId(obj).then(response => {
-        this.$set(this,'listCgq',response.data.listCgq);
-        this.$set(this,'listYtj',response.data.listYtj);
-        this.$set(this,'listkzsb',response.data.listkzsb);
-        this.$set(this,'listSpjk',response.data.listSpjk);
-        this.$set(this,'listHK',response.data.listHK);
-      });
-    },
-    //返回上一页
-    backPage(){
-      this.$parent.clickPage(1);
-    },
-    //传感器类型
-    getSensorList(){
-      getSensorList().then(response => {
-        this.sensorAddOptions = response.data;
-      });
-    },
-  }
-}
-</script>
-
-<style scoped lang="scss">
-.deviceList{
-  flex:1;
-  display: flex;
-  flex-direction: column;
-  padding-bottom:20px;
-  border-radius:10px!important;
-  margin:5px 20px 20px 10px!important;
-  box-shadow: 0 0 8px 1px rgba(0, 0, 0, 0.1) !important;
-  *{
-    margin:0;
-  }
-  .title-box{
-    display: flex;
-    margin:0 20px;
-    .left-title{
-      flex:1;
-      height:80px;
-      line-height:80px;
-      color:#0045AF;
-      font-size:18px;
-    }
-    .right-button{
-      margin:20px 0;
-    }
-  }
-  .for-max-box{
-    margin:0 40px;
-    font-weight:500;
-    .for-big-box{
-      border: 1px solid #E0E0E0;
-      display: inline-block;
-      overflow: hidden;
-      width:280px;
-      min-height:130px;
-      padding-bottom:10px;
-      border-radius: 6px;
-      margin:0 20px 20px 0;
-      .for-title-p{
-        background: rgba(182,214,254,1);
-        color:#0183FA;
-        font-size:16px;
-        line-height:40px;
-        display:block;
-        overflow:hidden;
-        text-overflow:ellipsis;
-        white-space:nowrap;
-        padding:0 16px;
-        margin-bottom:10px;
-        font-weight:700;
-      }
-      .for-text-box{
-        display: flex;
-        padding:0 23px;
-        p{
-          font-size:14px;
-          line-height:30px;
-          flex:1;
-        }
-        p:nth-child(1){
-          color:#333;
-          text-align: left;
-        }
-        p:nth-child(2){
-          color:#999;
-          text-align: right;
-          overflow:hidden;
-          text-overflow:ellipsis;
-          white-space:nowrap;
-        }
-      }
-      .for-button-box{
-        display: flex;
-        line-height:26px;
-        margin-top:10px;
-        p{
-          text-align: center;
-          font-size:14px;
-          color:#666666;
-        }
-        p:nth-child(1){
-          flex:1;
-          cursor: pointer;
-          i{
-            color:#1151b4;
-            margin-right:10px;
-          }
-        }
-        p:nth-child(2){
-          width:2px;
-          height:14px;
-          margin:6px 0;
-          background: #CCCCCC;
-        }
-        p:nth-child(3){
-          flex:1;
-          cursor: pointer;
-          i{
-            color:#ff6868;
-            margin-right:10px;
-          }
-        }
-      }
-    }
-    .for-big-box-two{
-      border: 1px solid #E0E0E0;
-      display: inline-block;
-      overflow: hidden;
-      width:280px;
-      min-height:158px;
-      padding-bottom:10px;
-      border-radius: 6px;
-      margin:0 20px 20px 0;
-      .for-title-p{
-        background: rgba(182,214,254,1);
-        color:#0183FA;
-        font-size:16px;
-        line-height:40px;
-        display:block;
-        overflow:hidden;
-        text-overflow:ellipsis;
-        white-space:nowrap;
-        padding:0 16px;
-        margin-bottom:10px;
-        font-weight:700;
-      }
-      .for-text-box{
-        display: flex;
-        padding:0 23px;
-        p{
-          font-size:14px;
-          line-height:30px;
-          flex:1;
-        }
-        p:nth-child(1){
-          text-align: left;
-          color:#333;
-        }
-        p:nth-child(2){
-          color:#999;
-          text-align: right;
-          overflow:hidden;
-          text-overflow:ellipsis;
-          white-space:nowrap;
-        }
-      }
-      .for-button-box{
-        display: flex;
-        line-height:26px;
-        margin-top:10px;
-        p{
-          text-align: center;
-          font-size:14px;
-          color:#666666;
-        }
-        p:nth-child(1){
-          flex:1;
-          cursor: pointer;
-          i{
-            color:#1151b4;
-            margin-right:10px;
-          }
-        }
-        p:nth-child(2){
-          width:2px;
-          height:14px;
-          margin:6px 0;
-          background: #CCCCCC;
-        }
-        p:nth-child(3){
-          flex:1;
-          cursor: pointer;
-          i{
-            color:#ff6868;
-            margin-right:10px;
-          }
-        }
-      }
-    }
-    .add-for-p{
-      font-size:14px;
-      border: 1px solid #E0E0E0;
-      display: inline-block;
-      overflow: hidden;
-      width:280px;
-      height:130px;
-      line-height:130px;
-      text-align: center;
-      border-radius: 6px;
-      color:#999999;
-      cursor: pointer;
-      margin:0 20px 20px 0;
-      i{
-        margin-right:10px;
-      }
-    }
-    .add-for-p-two{
-      font-size:14px;
-      border: 1px solid #E0E0E0;
-      display: inline-block;
-      overflow: hidden;
-      width:280px;
-      height:158px;
-      line-height:158px;
-      text-align: center;
-      border-radius: 6px;
-      color:#999999;
-      cursor: pointer;
-      margin:0 20px 20px 0;
-      i{
-        margin-right:10px;
-      }
-    }
-  }
-}
-</style>

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 1479
src/views/comprehensive/laboratoryManagement/subject/indexKDNH.vue


+ 1 - 1
src/views/comprehensive/laboratoryManagement/subject/infoPage.vue

@@ -196,7 +196,7 @@
       </div>
       <!--展示实验室二维码-->
       <el-dialog title="实验室二维码" :visible.sync="codeType" width="500px" append-to-body>
-        <vue-qr style="display: block;height:460px;width:460px;cursor:pointer;margin:0 auto;" :text="newData.qrCodeUrl" :size="200"></vue-qr>
+        <vue-qr style="display: block;height:460px;width:460px;cursor:pointer;margin:0 auto;" :text="newData.qrCode" :size="200"></vue-qr>
       </el-dialog>
       <!--播放文字窗口-->
       <el-dialog title="广播系统" :visible.sync="open" width="500px" append-to-body>

+ 1 - 1
src/views/comprehensive/laboratoryManagement/subject/infoPageOne.vue

@@ -197,7 +197,7 @@
       </div>
       <!--展示实验室二维码-->
       <el-dialog title="实验室二维码" :visible.sync="codeType" width="500px" append-to-body>
-        <vue-qr style="display: block;height:460px;width:460px;cursor:pointer;margin:0 auto;" :text="newData.qrCodeUrl" :size="200"></vue-qr>
+        <vue-qr style="display: block;height:460px;width:460px;cursor:pointer;margin:0 auto;" :text="newData.qrCode" :size="200"></vue-qr>
       </el-dialog>
       <!--播放文字窗口-->
       <el-dialog title="广播系统" :visible.sync="open" width="500px" append-to-body>

+ 2 - 2
src/views/comprehensive/personnel/student/addPage.vue

@@ -460,7 +460,7 @@ export default {
                   type: "warning"
                 }).then(() => {
                   //  确定
-                  this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization-KDNH' });
+                  this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization' });
                 }).catch(function() {
                   //  取消
                   this.outPageButton();
@@ -481,7 +481,7 @@ export default {
                   type: "warning"
                 }).then(() => {
                   //  确定
-                  this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization-KDNH' });
+                  this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization' });
                 }).catch(function() {
                   //  取消
                   this.outPageButton();

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 1257
src/views/comprehensive/personnel/student/addPageKDNH.vue


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 999
src/views/comprehensive/personnel/student/indexKDNH.vue


+ 2 - 2
src/views/comprehensive/personnel/teacher/addPage.vue

@@ -729,7 +729,7 @@ export default {
             type: "warning"
           }).then(() => {
             //  确定
-            this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization-KDNH' });
+            this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization' });
           }).catch(function() {
             //  取消
             this.outPageButton();
@@ -749,7 +749,7 @@ export default {
             type: "warning"
           }).then(() => {
             //  确定
-            this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization-KDNH' });
+            this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization' });
           }).catch(function() {
             //  取消
             this.outPageButton();

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 1817
src/views/comprehensive/personnel/teacher/addPageKDNH.vue


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 1517
src/views/comprehensive/personnel/teacher/indexKDNH.vue


+ 139 - 83
src/views/home.vue

@@ -1,113 +1,169 @@
 <template>
   <div class="home" :class="userType != 22&&initPage == 'true' ? 'home-class' : ''" >
-    <home-navbar />
-    <div class="max-big-home-box" v-if="userType != 22&&initPage == 'true'">
-      <div class="max-home-button-box">
-        <div class="max-home-box">
-          <div class="max-bottom-box">
-            <div class="top-button-box">
-              <!--左侧-->
-              <div class="left-box">
-                <!--<div class="position-button top-margin" @click="goPage('EmergencyManagement','应急管理')">-->
-                <div class="position-button top-margin" @click="goPage('SafetyEducationExam','安全教育与考试')">
-                  <div>
-                    <img src="@/assets/ZDimages/home/1.png">
-                    <p>安全教育与考试</p>
+    <!--<div class="button-max-box" v-if="userType != '22'">-->
+    <!--<dv-full-screen-container v-if="userType != '22'&&initPage == 'true'" style="display: flex;flex-direction: column;flex:1;">-->
+      <home-navbar />
+      <div class="max-big-home-box" v-if="userType != 22&&initPage == 'true'">
+        <div class="max-home-button-box">
+          <div class="max-home-box">
+            <div class="max-bottom-box">
+              <div class="top-button-box">
+                <div class="left-box">
+                  <div class="position-button top-margin" @click="goPage('EmergencyManagement','应急预警')">
+                    <div>
+                      <img src="@/assets/ZDimages/home/icon_sy_yjyj.png">
+                      <p>应急预警</p>
+                    </div>
+                  </div>
+                  <div class="position-button" @click="goPage('GasManage','气瓶监测')">
+                    <div>
+                      <img src="@/assets/ZDimages/home/icon_sy_qpjc.png">
+                      <p>气瓶监测</p>
+                    </div>
+                  </div>
+                  <div class="position-button" @click="goPage('ChemicalLibrary','化学品管理')">
+                    <div>
+                      <img src="@/assets/ZDimages/home/icon_sy_hxpgl.png">
+                      <p>化学品管控</p>
+                    </div>
                   </div>
+                  <!--<div class="position-button top-margin" @click="goPage('SafetyEducationExam','安全教育与考试')">-->
+                    <!--<div>-->
+                      <!--<img src="@/assets/ZDimages/home/icon_sy_aqjyyks.png">-->
+                      <!--<p>安全教育与考试</p>-->
+                    <!--</div>-->
+                  <!--</div>-->
+                  <!--<div class="position-button" @click="goPage('null','责任体系')">-->
+                    <!--<div>-->
+                      <!--<img src="@/assets/ZDimages/home/icon_sy_zrtx.png">-->
+                      <!--<p>责任体系</p>-->
+                    <!--</div>-->
+                  <!--</div>-->
+                  <!--<div class="position-button" @click="goPage('SecureAccess','安全准入')">-->
+                    <!--<div>-->
+                      <!--<img src="@/assets/ZDimages/home/icon_sy_aqjyyks.png">-->
+                      <!--<p>安全准入</p>-->
+                    <!--</div>-->
+                  <!--</div>-->
                 </div>
-                <div class="position-button" @click="goPage('null','责任体系')">
-                  <div>
-                    <img src="@/assets/ZDimages/home/2.png">
-                    <p>责任体系</p>
+                <div class="center-box">
+                  <div class="position-button" @click="goPage('Https://www.sxitdlc.com','数据大屏')">
+                    <div>
+                      <img src="@/assets/ZDimages/home/icon_sydlpt_sjksh.png">
+                      <p>数据可视化</p>
+                    </div>
                   </div>
                 </div>
-                <!--<div class="position-button" @click="goPage('ChemicalLibrary','化学品管理')">-->
-                <div class="position-button" @click="goPage('SecureAccess','安全准入')">
-                  <div>
-                    <img src="@/assets/ZDimages/home/3.png">
-                    <p>安全准入</p>
+                <div class="right-box">
+                  <div class="position-button top-margin" @click="goPage('SecureAccess','安全准入')">
+                    <div>
+                      <img src="@/assets/ZDimages/home/icon_sy_aqzr.png">
+                      <p>安全准入</p>
+                    </div>
+                  </div>
+                  <div class="position-button" @click="goPage('HazardManagement','危险源管理')">
+                    <div>
+                      <img src="@/assets/ZDimages/home/icon_tydlptsy_wxygl.png">
+                      <p>危险源管理</p>
+                    </div>
                   </div>
+                  <div class="position-button" @click="goPage('SecurityCheck','安全检查')">
+                    <div>
+                      <img src="@/assets/ZDimages/home/icon_sy_aqjc.png">
+                      <p>安全检查</p>
+                    </div>
+                  </div>
+                  <!--<div class="position-button top-margin" @click="goPage('HierarchicalControl','分级管控')">-->
+                    <!--<div>-->
+                      <!--<img src="@/assets/ZDimages/home/icon_sy_fjgk.png">-->
+                      <!--<p>分级管控</p>-->
+                    <!--</div>-->
+                  <!--</div>-->
+                  <!--<div class="position-button" @click="goPage('SecurityCheck','安全检查')">-->
+                    <!--<div>-->
+                      <!--<img src="@/assets/ZDimages/home/icon_sy_aqjc.png">-->
+                      <!--<p>安全检查</p>-->
+                    <!--</div>-->
+                  <!--</div>-->
+                  <!--<div class="position-button" @click="goPage('HazardManagement','危险源管理')">-->
+                    <!--<div>-->
+                      <!--<img src="@/assets/ZDimages/home/icon_tydlptsy_wxygl.png">-->
+                      <!--<p>危险源管理</p>-->
+                    <!--</div>-->
+                  <!--</div>-->
                 </div>
               </div>
-              <!--中间-->
-              <div class="center-box">
-                <div class="position-button" @click="goPage('Https://www.sxitdlc.com','数据大屏')">
+              <div class="center-button-box display-none-one"></div>
+              <div class="bottom-button-box">
+                <div class="null-button"></div>
+                <div class="position-button" @click="goPage('SafetyEducationExam','安全教育与考试')">
                   <div>
-                    <img src="@/assets/ZDimages/home/icon_sydlpt_sjksh.png">
-                    <p>数据可视化</p>
+                    <img src="@/assets/ZDimages/home/icon_sy_aqyuyks.png">
+                    <p>安全教育与考试</p>
+                  </div>
+                </div>
+                <div class="position-button" @click="goPage('CreditViolation','信用管理')">
+                  <div>
+                    <img src="@/assets/ZDimages/home/icon_sy_xygl.png">
+                    <p>信用管理</p>
                   </div>
                 </div>
-              </div>
-              <!--右侧-->
-              <div class="right-box">
                 <div class="position-button" @click="goPage('HierarchicalControl','分级管控')">
-                <!--<div class="position-button top-margin" @click="goPage('SecureAccess','安全准入')">-->
                   <div>
-                    <img src="@/assets/ZDimages/home/4.png">
+                    <img src="@/assets/ZDimages/home/icon_sy_fjgk.png">
                     <p>分级管控</p>
                   </div>
                 </div>
-                <div class="position-button" @click="goPage('SecurityCheck','安全检查')">
+                <div class="position-button" @click="goPage('null','安全档案')">
                   <div>
-                    <img src="@/assets/ZDimages/home/5.png">
-                    <p>安全检查</p>
+                    <img src="@/assets/ZDimages/home/icon_sy_aqda.png">
+                    <p>安全档案</p>
                   </div>
                 </div>
-                <div class="position-button" @click="goPage('HazardManagement','危险源管理')">
+                <div class="position-button" @click="goPage('Comprehensive','综合管理')">
                   <div>
-                    <img src="@/assets/ZDimages/home/6.png">
-                    <p>危险源管理</p>
+                    <img src="@/assets/ZDimages/home/icon_sy_zhgl.png">
+                    <p>综合管理</p>
                   </div>
                 </div>
-              </div>
-            </div>
-            <div class="center-button-box display-none-one"></div>
-            <!--底部-->
-            <div class="bottom-button-box">
-              <div class="null-button"></div>
-              <div class="position-button" @click="goPage('EmergencyManagement','应急管理')">
-              <!--<div class="position-button" @click="goPage('SafetyEducationExam','安全教育与考试')">-->
-                <div>
-                  <img src="@/assets/ZDimages/home/7.png">
-                  <p>应急管理</p>
-                </div>
-              </div>
-              <div class="position-button" @click="goPage('CreditViolation','信用管理')">
-                <div>
-                  <img src="@/assets/ZDimages/home/8.png">
-                  <p>信用管理</p>
-                </div>
-              </div>
-              <!--<div class="position-button" @click="goPage('HierarchicalControl','分级管控')">-->
-                <!--<div>-->
-                  <!--<img src="@/assets/ZDimages/home/icon_sy_fjgk.png">-->
-                  <!--<p>分级管控</p>-->
+                <!--<div class="position-button" @click="goPage('EmergencyManagement','应急管理')">-->
+                  <!--<div>-->
+                    <!--<img src="@/assets/ZDimages/home/icon_sy_yjgl.png">-->
+                    <!--<p>应急管理</p>-->
+                  <!--</div>-->
                 <!--</div>-->
-              <!--</div>-->
-              <div class="position-button" @click="goPage('null','安全档案')">
-                <div>
-                  <img src="@/assets/ZDimages/home/9.png">
-                  <p>安全档案</p>
-                </div>
-              </div>
-              <div class="position-button" @click="goPage('Comprehensive','综合管理')">
-                <div>
-                  <img src="@/assets/ZDimages/home/10.png">
-                  <p>综合管理</p>
-                </div>
+                <!--<div class="position-button" @click="goPage('CreditViolation','信用管理')">-->
+                  <!--<div>-->
+                    <!--<img src="@/assets/ZDimages/home/icon_sy_xywg.png">-->
+                    <!--<p>信用管理</p>-->
+                  <!--</div>-->
+                <!--</div>-->
+                <!--<div class="position-button" @click="goPage('null','安全档案')">-->
+                  <!--<div>-->
+                    <!--<img src="@/assets/ZDimages/home/icon_sy_aqda.png">-->
+                    <!--<p>安全档案</p>-->
+                  <!--</div>-->
+                <!--</div>-->
+                <!--<div class="position-button" @click="goPage('Comprehensive','综合管理')">-->
+                  <!--<div>-->
+                    <!--<img src="@/assets/ZDimages/home/icon_sy_zhgl.png">-->
+                    <!--<p>综合管理</p>-->
+                  <!--</div>-->
+                <!--</div>-->
+                <div class="null-button"></div>
               </div>
-              <div class="null-button"></div>
             </div>
+            <img class="img-1" src="@/assets/ZDimages/home/img_sy_lf.png">
+            <img class="img-2" src="@/assets/ZDimages/home/img_yh_db.png">
+            <img class="img-3" src="@/assets/ZDimages/home/img_yh_zj.png">
+            <img class="img-4" src="@/assets/ZDimages/home/img_yh_dd.png">
+            <img class="img-5" src="@/assets/ZDimages/home/img_yh_zj.png">
+            <img class="img-6" src="@/assets/ZDimages/home/img_yh_db.png">
           </div>
-          <img class="img-1" src="@/assets/ZDimages/home/img_sy_lf.png">
-          <img class="img-2" src="@/assets/ZDimages/home/img_yh_db.png">
-          <img class="img-3" src="@/assets/ZDimages/home/img_yh_zj.png">
-          <img class="img-4" src="@/assets/ZDimages/home/img_yh_dd.png">
-          <img class="img-5" src="@/assets/ZDimages/home/img_yh_zj.png">
-          <img class="img-6" src="@/assets/ZDimages/home/img_yh_db.png">
         </div>
       </div>
-    </div>
+      <!--<div class="bottom-null-box"></div>-->
+    <!--</dv-full-screen-container>-->
     <backAnimation v-if="userType != '22'&&initPage == 'true'"></backAnimation>
   </div>
 </template>
@@ -630,10 +686,10 @@
                   color: transparent;
                 }
               }
-              .position-button:nth-child(1),
               .position-button:nth-child(2),
               .position-button:nth-child(3),
-              .position-button:nth-child(4){
+              .position-button:nth-child(4),
+              .position-button:nth-child(5){
                 margin-right:95px;
               }
             }

+ 1 - 1
src/views/medicUniversity-3_1/chemicalManagement/deviceManagement/SmartAccessControl/index.vue

@@ -381,7 +381,7 @@ export default {
                   type: "warning"
                 }).then(() => {
                   //  确定
-                  this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization-KDNH' });
+                  this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization' });
                 }).catch(function() {
                   //  取消
                 });

+ 0 - 540
src/views/medicUniversity-3_1/chemicalManagement/deviceManagement/SmartAccessControl/indexKDNH.vue

@@ -1,540 +0,0 @@
-<!--智能门禁-->
-<template>
-  <div class="app-container SmartAccessControl">
-    <el-form :model="queryParamsData" class="form-box" ref="queryForm" :inline="true">
-      <el-form-item label="关键字" prop="searchValue">
-        <el-input
-          maxLength="30"
-          v-model="queryParamsData.searchValue"
-          placeholder="门禁锁编号/实验室"
-          clearable
-          size="small"
-          style="width: 240px"
-        />
-      </el-form-item>
-      <el-form-item label="学院" prop="deptId">
-        <el-select v-model="queryParamsData.deptId" clearable placeholder="请选择学院">
-          <el-option
-            v-for="item in optionsListOne"
-            :key="item.deptId"
-            :label="item.deptName"
-            :value="item.deptId">
-          </el-option>
-        </el-select>
-      </el-form-item>
-      <el-form-item label="状态" prop="useStatus">
-        <el-select v-model="queryParamsData.operate" clearable placeholder="请选择状态">
-          <el-option
-            v-for="item in optionsListTwo"
-            :key="item.id"
-            :label="item.name"
-            :value="item.id">
-          </el-option>
-        </el-select>
-      </el-form-item>
-      <el-form-item>
-        <p class="inquire-button-one" @click="handleQuery" style="margin-right:10px;">查询</p>
-        <p class="reset-button-one" @click="resetQuery">重置</p>
-      </el-form-item>
-      <el-form-item style="float: right;">
-        <el-col :span="1.5" v-hasPermi="['laboratory:hardware6:add']">
-          <p class="add-button-one-90"
-             @click="pageToggle(1)"
-          ><i class="el-icon-plus"></i>新增</p>
-        </el-col>
-      </el-form-item>
-    </el-form>
-    <el-table  border :data="tableList" ref="multipleTable">
-      <el-table-column label="门禁锁编号" align="center" prop="hardwareNum"/>
-      <el-table-column label="学院" align="center" prop="deptName" width="250"/>
-      <el-table-column label="实验室" align="center" prop="posi" width="250" show-overflow-tooltip/>
-      <el-table-column label="设备状态" align="center" prop="status" width="100">
-        <template slot-scope="scope">{{scope.row.operate.name}}</template>
-      </el-table-column>
-      <el-table-column label="创建人" align="center" prop="createBy" width="150"/>
-      <el-table-column label="创建时间" align="center" prop="createTime" width="250"/>
-      <el-table-column label="操作" align="center" width="140" class-name="small-padding fixed-width" v-if="tableButtonType">
-        <template slot-scope="scope">
-          <div class="button-box">
-            <p class="table-min-button" style="margin-right:10px;" v-hasPermi="['laboratory:hardware6:edit']" @click="pageToggle(2,scope.row)">编辑</p>
-            <p class="table-min-button" v-hasPermi="['laboratory:hardware6:remove']" @click="pageToggle(3,scope.row)">删除</p>
-          </div>
-        </template>
-      </el-table-column>
-    </el-table>
-    <pagination :page-sizes="[20, 30, 40, 50]"
-      v-show="total>0"
-      :total="total"
-      :page.sync="queryParamsData.pageNum"
-      :limit.sync="queryParamsData.pageSize"
-      @pagination="getList"
-    />
-
-    <!--新增/编辑-->
-    <el-dialog :title="dialogTitle" :visible.sync="addDialogType" v-if="addDialogType" width="520px" append-to-body class="add-dialog-box">
-      <el-form ref="form" :model="form" :rules="rules" label-width="110px">
-        <el-form-item label="实验室:" prop="subjectId">
-          <el-select
-            style="width:360px;"
-            v-model="form.subjectId"
-            filterable
-            remote
-            clearable
-            @focus="selectFocus"
-            reserve-keyword
-            @clear="clearClick"
-            placeholder="搜索选择实验室"
-            :remote-method="getSelectList"
-            :loading="loading">
-            <el-option
-              v-for="item in selectList"
-              :key="item.id"
-              :label="item.name"
-              :value="item.id">
-            </el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="门禁编号" prop="hardwareNum">
-          <el-input
-            style="width:320px;"
-            v-model="form.hardwareNum"
-            placeholder="请输入门禁编号"
-            maxlength="20"
-            size="small"
-          />
-        </el-form-item>
-        <el-form-item label="门禁名称" prop="name" >
-          <el-input
-            style="width:320px;"
-            v-model="form.name"
-            placeholder="请输入门禁名称"
-            maxlength="8"
-            size="small"
-          />
-        </el-form-item>
-        <el-form-item label="IP" prop="ipAddress" >
-          <el-input
-            style="width:320px;"
-            v-model="form.ipAddress"
-            placeholder="请输入IP"
-            maxlength="15"
-            size="small"
-          />
-        </el-form-item>
-        <el-form-item label="端口" prop="port" >
-          <el-input
-            style="width:320px;"
-            v-model="form.port"
-            placeholder="请输入端口"
-            maxlength="6"
-            size="small"
-          />
-        </el-form-item>
-        <el-form-item label="设备管理证号" prop="harUser" >
-          <el-input
-            style="width:320px;"
-            v-model="form.harUser"
-            placeholder="请输入设备管理证号"
-            maxlength="30"
-            size="small"
-          />
-        </el-form-item>
-        <el-form-item label="设备管理密码" prop="harPsw" >
-          <el-input
-            style="width:320px;"
-            v-model="form.harPsw"
-            placeholder="请输入设备管理密码"
-            maxlength="30"
-            size="small"
-          />
-        </el-form-item>
-        <el-form-item label="门禁权限" style="margin-bottom: 0">
-          <el-checkbox-group v-model="form.controlScope">
-            <el-checkbox label="1" >关联安全准入</el-checkbox>
-            <el-checkbox label="2">关联白名单</el-checkbox>
-          </el-checkbox-group>
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">确 定</el-button>
-        <el-button @click="cancel">取 消</el-button>
-      </div>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-  import { hxpSmartTerminal,filterDept,getSubList,addHxpSmartTerminal,putHxpSmartTerminal,getHxpSmartTerminal,delHxpSmartTerminal } from "@/api/medicUniversity-3_1/index";
-  import { listHardware, delHardware, addHardware, updateHardware } from "@/api/medicUniversity-3_1/index";
-  import { listDepartments } from "@/api/system/dept";
-  import { getToken } from "@/utils/auth";
-  export default {
-    name: "SmartAccessControl-jinan",
-    data() {
-      return {
-        // table操作按钮校验
-        tableButtonType:this.hasPermiDom(['laboratory:hardware6:edit','laboratory:hardware6:remove']),
-        //上传相关配置
-        uploadImgUrl: window.location.href.split('://')[0]+'://' + process.env.VUE_APP_BASE_API + "/laboratory/hardware/importData", // 上传地址
-        headers: {
-          Authorization: "Bearer " + getToken(),
-        },
-        // 遮罩层
-        loading:false,
-        //页面状态
-        pageType:1,
-        // 搜索数据
-        queryParamsData:{
-          pageNum:1,
-          pageSize:20,
-        },
-        //数据数量
-        total:0,
-        //数据数组
-        tableList:[],
-        //学院列表
-        optionsListOne:[],
-        //状态列表
-        optionsListTwo:[{id:"ONLINE",name:"在线"},{id:"OFFLINE",name:"离线"}],
-        //编辑新增相关
-        dialogTitle:"",
-        addDialogType:false,
-        form:{},
-        selectList:[],
-        selectListData:[],
-        rules:{
-          name: [
-            { required: true, trigger: "blur", message: "请输入门禁名称" },
-          ],
-          hardwareNum: [
-            { required: true, trigger: "blur", message: "最大20个字符,包含大小写字母、数字" },
-            { required: true, message: "最大20个字符,包含大小写字母、数字", validator: this.spaceJudgment, trigger: "blur" }
-          ],
-          subjectId: [
-            { required: true, trigger: "blur", message: "搜索选择实验室" },
-          ],
-          relayCode: [
-            { required: true, message: "请输入设备编号", trigger: "blur" },
-            { required: true, message: "请输入设备编号", validator: this.spaceJudgment, trigger: "blur" }
-          ],
-          bit: [
-            { required: true, message: "请输入路由", trigger: "blur" },
-            { required: true, message: "请输入路由", validator: this.spaceJudgment, trigger: "blur" }
-          ],
-          ipAddress: [
-            { required: true, message: "请输入IP", trigger: "blur" },
-            { required: true, message: "请输入IP", validator: this.spaceJudgment, trigger: "blur" }
-          ],
-          port: [
-            { required: true, message: "请输入端口", trigger: "blur" },
-            { required: true, message: "请输入端口", validator: this.spaceJudgment, trigger: "blur" }
-          ],
-
-          harUser: [
-            { required: true, message: "请输入设备管理证号", trigger: "blur" },
-            { required: true, message: "请输入设备管理证号", validator: this.spaceJudgment, trigger: "blur" }
-          ],
-          harPsw: [
-            { required: true, message: "请输入设备管理密码", trigger: "blur" },
-            { required: true, message: "请输入设备管理密码", validator: this.spaceJudgment, trigger: "blur" }
-          ],
-
-        },
-      };
-    },
-    created() {
-
-    },
-    mounted(){
-      this.filterDept();
-      this.listDepartments();
-      this.getList();
-    },
-    methods: {
-      selectFocus(){
-        if(!this.selectList[0]){
-          this.filterDept();
-        }
-      },
-      //获取学院列表
-      listDepartments(){
-        listDepartments().then(response => {
-          this.optionsListOne = response.data;
-        });
-      },
-      pageToggle(type,row){
-        let self = this;
-        if(type == 1){
-          //新增
-          this.dialogTitle = '新增';
-          this.$set(this,'form',{
-            subjectId:"",
-            hardwareNum:"",
-            name:"",
-            ipAddress:"",
-            port:"",
-            harUser:"",
-            harPsw:"",
-            controlScope:[],
-          });
-          this.clearClick();
-          this.addDialogType = true;
-        }else if(type == 2){
-          // 编辑
-          this.dialogTitle = '编辑';
-          this.$set(this,'form',JSON.parse(JSON.stringify(row)));
-          if(row.controlScope){
-            this.form.controlScope=row.controlScope.split(',')
-          }else{
-            this.form.controlScope=[]
-          }
-          this.clearClick();
-          this.addDialogType = true;
-        }else if(type == 3){
-          // 删除
-          this.$confirm('确认要删除吗?', "警告", {
-            confirmButtonText: "确定",
-            cancelButtonText: "取消",
-            type: "warning"
-          }).then(function() {
-            delHardware(row.id).then(response => {
-              if (response.code == 200){
-                self.msgSuccess(response.msg);
-                self.getList();
-              }
-            });
-          }).then(() => {
-          }).catch(() => {});
-        }
-      },
-      //查询当前院系
-      filterDept(){
-        filterDept().then(response => {
-          let idText = "";
-          for(let i=0;i<response.data.length;i++){
-            if(i==0){
-              idText = idText + response.data[i].deptId;
-            }else{
-              idText = idText +','+ response.data[i].deptId;
-            }
-          }
-          //查询院系下实验室
-          getSubList(idText).then(response => {
-            //当前列表
-            this.selectList = JSON.parse(JSON.stringify(response.data));
-            //原始列表数据
-            this.selectListData = JSON.parse(JSON.stringify(response.data));
-          });
-        });
-      },
-      /** 实验室-本地懒加载 */
-      getSelectList(val) {
-        let self = this;
-        let list = [];
-        for(let i=0;i<self.selectListData.length;i++){
-          if(self.selectListData[i].name.indexOf(val) != -1){
-            list.push(self.selectListData[i]);
-          }
-        }
-        this.selectList = JSON.parse(JSON.stringify(list))
-      },
-      //实验室选中清除
-      clearClick(){
-        this.selectList = JSON.parse(JSON.stringify(this.selectListData))
-      },
-      submitForm(){
-        this.$refs["form"].validate((valid) => {
-          if (valid) {
-            if(this.form.id){
-              //编辑
-              this.form.type = 11;
-              this.form.controlScope=this.form.controlScope.join(','),
-              updateHardware(this.form).then(response => {
-                if (response.code == 200){
-                  this.addDialogType = false;
-                  this.msgSuccess(response.msg);
-                  this.getList();
-                }
-              });
-            }else{
-              //新增
-              let obj = {
-                type:11,
-                subjectId:this.form.subjectId,
-                hardwareNum:this.form.hardwareNum,
-                name:this.form.name,
-                ipAddress:this.form.ipAddress,
-                port:this.form.port,
-                harUser:this.form.harUser,
-                harPsw:this.form.harPsw,
-                controlScope:this.form.controlScope.join(','),
-              }
-              addHardware(obj).then(response => {
-                if (response.code == 200){
-                  this.addDialogType = false;
-                  this.msgSuccess(response.msg);
-                  this.resetQuery();
-                }else if(response.code == 205){
-                  this.$confirm(response.msg, "警告", {
-                    confirmButtonText: "确定",
-                    cancelButtonText: "取消",
-                    type: "warning"
-                  }).then(() => {
-                    //  确定
-                    this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization-KDNH' });
-                  }).catch(function() {
-                    //  取消
-                  });
-                }
-              });
-            }
-          }
-        })
-      },
-      cancel(){
-        this.addDialogType = false;
-      },
-      //获取数据列表
-      getList(){
-        this.queryParamsData.type = 'HK_DOOR';
-        listHardware(this.queryParamsData).then(response => {
-          this.total = response.total;
-          this.tableList = response.rows;
-        });
-      },
-      /** 搜索按钮操作 */
-      handleQuery() {
-        this.queryParamsData.pageNum = 1;
-        this.queryParamsData.pageSize = 20;
-        this.getList();
-      },
-      /** 重置按钮操作 */
-      resetQuery() {
-        this.$set(this,'queryParamsData',{});
-        this.handleQuery();
-      },
-
-    },
-  }
-</script>
-
-<style scoped lang="scss">
-  .SmartAccessControl{
-    flex:1;
-    display: flex;
-    flex-direction: column;
-    overflow: hidden!important;
-    padding:20px !important;
-    p{
-      margin:0;
-      padding:0;
-    }
-    .form-box{
-      .form-dropdown-box{
-        display: flex;
-        margin:0;
-        padding:0 10px;
-        cursor: pointer;
-        height:40px;
-        img:nth-child(1){
-          width:16px;
-          height:16px;
-          margin-top:12px;
-        }
-        p{
-          width:47px;
-          text-align: center;
-          font-size:14px;
-          margin:0;
-          line-height:40px;
-        }
-        img:nth-child(3){
-          width:10px;
-          height:6px;
-          margin-top:17px;
-        }
-      }
-    }
-    .button-box{
-      display: flex;
-    }
-  }
-</style>
-<style lang="scss">
-  .import-dialog-box{
-    .import-dialog-upLoad-box{
-      .el-upload{
-        width:450px;
-        margin:0 55px;
-        .el-upload-dragger{
-          width:450px;
-          .el-icon-upload{
-            font-size:100px;
-            color:#CBE6FE;
-          }
-          .el-upload__text{
-            margin-top:20px;
-          }
-        }
-      }
-      .el-upload__tip{
-        margin-left:60px;
-        font-size:14px;
-        margin-top:10px;
-      }
-      .el-upload-text-box{
-        background: #F5F5F5;
-        border-radius: 10px;
-        margin:15px 30px 0;
-        padding:0 20px 15px;
-        overflow: hidden;
-        *{
-          margin:0;
-        }
-        .img-text-box{
-          display: flex;
-          margin-top:15px;
-          img{
-            width:16px;
-            height:16px;
-            margin-right:13px;
-          }
-          p{
-            height:16px;
-            line-height:16px;
-            font-size:12px;
-          }
-        }
-        .text-p{
-          margin-top:15px;
-          margin-left:29px;
-          height:16px;
-          line-height:16px;
-          font-size:12px;
-        }
-      }
-    }
-    .teacher-import-dialog-button-box{
-      display: flex;
-      width:190px;
-      margin:0 auto;
-      p{
-        width:70px;
-        height:30px;
-        line-height:30px;
-        font-size:14px;
-        margin:0 auto;
-      }
-    }
-    .teacher-import-dialog-position-box{
-      width:100%;
-      height:100%;
-      position: absolute;
-      top:0;
-      left:0;
-      z-index: 999;
-      background: rgba(255,255,255,0.4);
-      border-radius:20px;
-    }
-  }
-</style>

+ 0 - 935
src/views/mine/indexKDNH.vue

@@ -1,935 +0,0 @@
-<template>
-    <div class="mine">
-      <!--<navbar />-->
-      <div class="mine-page">
-        <div class="left-max-box scrollbar-box">
-          <p class="left-title">个人中心</p>
-          <div class="left-user-img">
-            <userAvatar :user="user" />
-          </div>
-          <p class="left-name">{{user.nickName}}</p>
-          <p class="left-num">{{user.userType=='11'?'工号:':(user.userType=='22'?'学号:':'其他:')}}{{user.userName}}</p>
-          <div class="left-text-max-box">
-            <div class="left-text-big-box">
-              <div class="left-text-big-box-left">
-                <img v-if="user.userType == '22'" src="@/assets/ZDimages/mine/icon_grzx_xl.png">
-                <img v-else src="@/assets/ZDimages/mine/icon_grzx_zc.png">
-                <p>{{user.education?user.education:'未设置'}}</p>
-              </div>
-              <div class="left-text-big-box-right">
-                <img class="img-two" v-if="user.userType == '22'" src="@/assets/ZDimages/mine/icon_grzx_zy.png">
-                <img class="img-one" v-else src="@/assets/ZDimages/mine/icon_grzx_zw.png">
-                <p>{{user.major?user.major:'未设置'}}</p>
-              </div>
-            </div>
-            <div class="left-text-min-box">
-              <img src="@/assets/ZDimages/mine/icon_grzx_sjh.png">
-              <p>{{user.phonenumber?user.phonenumber:'未设置'}}</p>
-            </div>
-            <div class="left-text-min-box">
-              <img src="@/assets/ZDimages/mine/icon_grzx_yx.png">
-              <p>{{user.email?user.email:'未设置'}}</p>
-            </div>
-            <div class="left-text-min-box">
-              <img src="@/assets/ZDimages/mine/icon_grzx_bgl.png">
-              <p>{{user.deptName?user.deptName:'未设置'}}</p>
-            </div>
-          </div>
-          <div class="left-type-text-max-box">
-            <div>
-              <p>联系方式</p>
-              <p :class="user.phonenumber?'p-color-a':'p-color-b'">{{user.phonenumber?'已设置':'未设置'}}</p>
-            </div>
-            <div>
-              <p>系统头像</p>
-              <p :class="user.avatar?'p-color-a':'p-color-b'">{{user.avatar?'已设置':'未设置'}}</p>
-            </div>
-            <div>
-              <p>人脸照片</p>
-              <p :class="user.faceImg?'p-color-a':'p-color-b'">{{user.faceImg?'已设置':'未设置'}}</p>
-            </div>
-            <div>
-              <p>电子签名</p>
-              <p :class="user.signature?'p-color-a':'p-color-b'">{{user.signature?'已设置':'未设置'}}</p>
-            </div>
-          </div>
-        </div>
-        <div class="right-max-box scrollbar-box">
-          <div class="right-title-box">
-            <div class="title-button-min-box" @click="buttonTypeClick(1)">
-              <p :class="buttonType == '1'?'bottomColor':''">基本资料</p>
-              <p :class="buttonType == '1'?'bottomBack':''"></p>
-            </div>
-            <div class="title-button-min-box" @click="buttonTypeClick(2)">
-              <p :class="buttonType == '2'?'bottomColor':''">安全设置</p>
-              <p :class="buttonType == '2'?'bottomBack':''"></p>
-            </div>
-            <p class="right-null-p"></p>
-            <!--<p class="reset-button-one right-out-button" @click="outButton">返回</p>-->
-          </div>
-          <div v-if="buttonType == 1">
-            <el-form :model="userform" ref="userform" :rules="rules" :inline="true" >
-              <div>
-                <el-form-item class="form-item-min input-number-none-box" label="联系方式:" prop="phonenumber" label-width="120px">
-                  <el-input-number
-                    :max="19999999999"
-                    v-model="userform.phonenumber"
-                    placeholder="请输入联系方式"
-                    clearable/>
-                </el-form-item>
-                <el-form-item class="form-item-min" label="邮箱:" prop="email" label-width="120px">
-                  <el-input
-                    maxlength="40"
-                    v-model="userform.email"
-                    placeholder="请输入邮箱"
-                    clearable
-                    style="width:200px;"
-                    size="small"
-                  />
-                </el-form-item>
-                <el-form-item class="form-item-min" label="出生年月:" prop="dateBirth" label-width="120px">
-                  <el-date-picker
-                    v-model="userform.dateBirth"
-                    value-format="yyyy-MM-dd"
-                    type="date"
-                    style="width:200px;"
-                    placeholder="请选择出生日期">
-                  </el-date-picker>
-                </el-form-item>
-              </div>
-              <div>
-                <el-form-item class="form-item-min" label="人脸照片:" prop="searchValue" label-width="120px">
-                  <div class="up-data-box" style="width:200px;">
-                    <div class="up-data-min-box" style="display: flex;">
-                      <div class="up-data-button" v-if="!user.faceImg" @click="upFaceOpenClick(2)">
-                        <p>+</p>
-                        <p>上传</p>
-                      </div>
-                      <img class="img-one" :src="user.faceImg" v-if="user.faceImg" @click="upFaceOpenClick(2)">
-                    </div>
-                  </div>
-                </el-form-item>
-                <el-form-item class="form-item-min" label="电子签名:" prop="searchValue" label-width="120px">
-                  <div class="up-data-box">
-                    <div class="up-data-min-box" style="display: flex;">
-                      <el-upload
-                        class="position-button"
-                        :action="uploadImgUrlTwo"
-                        :show-file-list="false"
-                        :auto-upload="false"
-                        :on-change="signatureChange"
-                        accept="image/jpeg,image/gif,image/png"
-                        :headers="headers"
-                        :before-upload="beforeAvatarUpload">
-                        <div class="up-data-button" v-if="!user.signature">
-                          <p>+</p>
-                          <p>上传</p>
-                        </div>
-                        <img class="img-two" :src="user.signature" v-if="user.signature">
-                      </el-upload>
-                    </div>
-                  </div>
-                </el-form-item>
-                <el-form-item class="form-item-min" label="指纹:" prop="searchValue" label-width="120px">
-                    <div class="fingerprint_no" v-if="Quantity==0">
-                      <p>暂未录入指纹</p>
-                      <p>(请在小程序端操作)</p>
-                    </div>
-                  <div class="fingerprint_yes" v-if="Quantity!=0">
-                    <div class="fingerprint_yes_img">
-                      <img src="@/assets/ZDimages/icon_zw_bk.png">
-                      <img src="@/assets/ZDimages/icon_wd_zw.png">
-                    </div>
-                    <p>已录入{{Quantity}}个指纹</p>
-                  </div>
-                </el-form-item>
-              </div>
-            </el-form>
-            <p class="type-one-max-box add-button-one-120" @click="upDataProfile">保存</p>
-          </div>
-          <div v-if="buttonType == 2">
-            <el-form :model="form" ref="form" :inline="true" :rules="rules">
-              <div>
-                <el-form-item class="form-item-min" label="原始密码:" prop="oldPassword" label-width="120px">
-                  <el-input
-                    maxlength="16"
-                    type="password"
-                    v-model.trim="form.oldPassword"
-                    placeholder="请输入原始密码"
-                    clearable
-                    size="small"
-                  />
-                </el-form-item>
-                <el-form-item class="form-item-min" label="新密码:" prop="newPassword" label-width="120px">
-                  <el-input
-                    maxlength="16"
-                    type="password"
-                    v-model.trim="form.newPassword"
-                    placeholder="请输入新密码"
-                    clearable
-                    size="small"
-                  />
-                </el-form-item>
-                <el-form-item class="form-item-min" label="确认密码:" prop="confirmPassword" label-width="120px">
-                  <el-input
-                    maxlength="16"
-                    type="password"
-                    v-model.trim="form.confirmPassword"
-                    placeholder="请确认密码"
-                    clearable
-                    size="small"
-                  />
-                </el-form-item>
-                <span class="type-one-max-box add-button-one-120" style="margin-left:20px;display: inline-block;" @click="submit">保存</span>
-              </div>
-            </el-form>
-          </div>
-        </div>
-      </div>
-      <!--电子签名-->
-      <el-dialog class="up-img-box" title="上传电子签名" :visible.sync="upImgOpen" width="600px" append-to-body>
-        <p>示例</p>
-        <img class="img-one" src="@/assets/ZDimages/icon_scdzqm_sl.png">
-        <p>正楷签名</p>
-        <div class="cropper-box">
-          <vueCropper
-            ref="cropper"
-            :img="option.img"
-            :outputSize="option.outputSize"
-            :outputType="option.outputType"
-            :info="option.info"
-            :canScale="option.canScale"
-            :autoCrop="option.autoCrop"
-            :autoCropWidth="option.autoCropWidth"
-            :autoCropHeight="option.autoCropHeight"
-            :fixed="option.fixed"
-            :fixedNumber="option.fixedNumber"
-            :full="option.full"
-            :fixedBox="option.fixedBox"
-            :canMove="option.canMove"
-            :canMoveBox="option.canMoveBox"
-            :original="option.original"
-            :centerBox="option.centerBox"
-            :height="option.height"
-            :infoTrue="option.infoTrue"
-            :maxImgSize="option.maxImgSize"
-            :enlarge="option.enlarge"
-            :mode="option.mode"
-            @realTime="realTime"
-            @imgLoad="imgLoad"
-          ></vueCropper>
-          <p class="cropper-button" @click="upImgButton">保存查看</p>
-          <el-upload
-            class="position-button"
-            :action="uploadImgUrl"
-            :show-file-list="false"
-            :auto-upload="false"
-            :on-change="signatureChange"
-            accept="image/jpeg,image/gif,image/png"
-            :headers="headers"
-            :before-upload="beforeAvatarUpload">
-            <p style="position: absolute;right:100px;top:10px;z-index:1;color:#fff;background:#14AE10;cursor: pointer;padding:5px 10px;margin:0;border-radius:6px;">选择签名</p>
-          </el-upload>
-        </div>
-        <p style="color:#999;">请将签名置于选择框内以便提高识别度</p>
-        <img class="cropper-img" v-if="signatureData" :src="signatureData">
-        <div slot="footer" class="dialog-footer">
-          <el-button @click="upImgOpenClick(1)">取 消</el-button>
-          <el-button type="primary" @click="upSignatureData">确 定</el-button>
-        </div>
-      </el-dialog>
-      <!--上传照片-->
-      <el-dialog class="up-img-box" title="上传照片" :visible.sync="upFaceOpen" width="600px" append-to-body>
-        <el-upload
-          ref="faceUpLoad"
-          class="position-button"
-          :action="uploadImgUrl"
-          :show-file-list="false"
-          :auto-upload="false"
-          :on-change="faceChange"
-          accept="image/jpeg,image/gif,image/png"
-          :on-success="(res)=>handleAvatarSuccess(res)"
-          :headers="headers"
-          :before-upload="beforeAvatarUpload">
-          <div v-if="!upFaceUrl" style="width:300px;height:300px;border: 1px dashed #E0E0E0;cursor: pointer;margin:20px 130px 0;">
-            <p style="text-align: center;color:#999;font-weight:500;font-size: 20px;line-height:300px;margin:0;">+</p>
-          </div>
-          <div v-if="upFaceUrl" class="scrollbar-box" style="width:560px;margin:0 auto;max-height:700px;overflow-y: scroll">
-            <img :src="upFaceUrl" style="max-width:560px;border: 1px dashed #E0E0E0;cursor: pointer;margin:0 auto;">
-          </div>
-        </el-upload>
-        <div slot="footer" class="dialog-footer">
-          <el-button @click="faceButton(1)">取 消</el-button>
-          <el-button type="primary" @click="faceButton(2)">确 定</el-button>
-        </div>
-      </el-dialog>
-    </div>
-</template>
-
-<script>
-  import { Navbar } from '@/layout/components'
-  import userAvatar from "./userAvatar";
-  import { getUserProfile,updateUserPwd,changePhone,genSign,updateSignature,upDataProfile,fingerprintQuantity} from "@/api/system/user";
-  import { getToken } from "@/utils/auth";
-  export default {
-    name: "mine",
-    components: {
-      Navbar,
-      userAvatar
-    },
-    data(){
-      const equalToPassword = (rule, value, callback) => {
-        if (this.form.confirmPassword !== value) {
-          callback(new Error("两次输入的密码不一致"));
-        } else {
-          callback();
-        }
-      };
-      const equalToPasswordTwo = (rule, value, callback) => {
-        if (this.form.newPassword !== value) {
-          callback(new Error("两次输入的密码不一致"));
-        } else {
-          callback();
-        }
-      };
-      const validatePass = (rule, value, callback) => {
-        let reg = /^(?![A-z0-9]+$)(?=.[^%&',;=?$\x22])(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9]).{8,16}$/
-        console.log("reg.test(value)",reg.test(value))
-        if(reg.test(value)){
-          callback()
-        }else{
-          return callback(new Error('密码应在8-16位包括数字和字母与特殊字符'));
-        }
-      };
-      return{
-        buttonType:'1',
-        uploadImgUrl: window.location.href.split('://')[0]+'://' + process.env.VUE_APP_BASE_API + "/laboratory/studentinfo/commit/face", // 上传的图片服务器地址
-        uploadImgUrlTwo: window.location.href.split('://')[0]+'://' + process.env.VUE_APP_BASE_API + "/file/upload", // 上传的图片服务器地址
-        headers: {
-          Authorization: "Bearer " + getToken(),
-        },
-        pageType:false,
-        user: {},
-        roleGroup: {},
-        postGroup: {},
-        activeTab: "resetPwd",
-        form:{
-          oldPassword:"",
-          newPassword:"",
-          confirmPassword:""
-        },
-        userform:{},
-        userformData:{},
-        open:false,
-        phoneForm:{
-          phone:"",
-        },
-        // 表单校验
-        rules: {
-          oldPassword: [
-            { required: true, message: "旧密码不能为空", trigger: "blur" },
-          ],
-          newPassword: [
-            { required: true, message: "新密码不能为空", trigger: "blur" },
-            { min: 8, max: 16, message: "长度在 8 到 16 个字符", trigger: "blur" },
-            { required: true, validator: equalToPassword, trigger: "blur" },
-            { required: true, message: "请输入8-16位密码,不能输入连续性和重复性的密码,密码中需要包含:大写字母、小写字符、数字和字符", validator: validatePass, trigger: "blur" }
-          ],
-          confirmPassword: [
-            { required: true, message: "确认密码不能为空", trigger: "blur" },
-            { min: 8, max: 16, message: "长度在 8 到 16 个字符", trigger: "blur" },
-            { required: true, validator: equalToPasswordTwo, trigger: "blur" },
-            { required: true, message: "请输入8-16位密码,不能输入连续性和重复性的密码,密码中需要包含:大写字母、小写字符、数字和字符", validator: validatePass, trigger: "blur" }
-          ],
-          // phone: [
-          //   { required: true, message: "请输入11位手机号码", trigger: "blur" },
-          //   { validator: this.checkPhone, trigger: 'blur' },
-          //   { min: 11, max: 11, message: "请输入11位手机号码", trigger: "blur" },
-          //   { required: true, message: "请输入11位手机号码", validator: this.spaceJudgment, trigger: "blur" }
-          // ],
-          // phonenumber: [
-          //   { required: true, message: "请输入手机号码", trigger: "blur" },
-          //   { required: true, message: "请输入手机号码", validator: this.spaceJudgment, trigger: "blur" }
-          // ],
-          // email: [
-          //   { required: true, message: "请输入邮箱地址", trigger: "blur" },
-          //   { required: true, message: "请输入正确的邮箱地址", type: 'email'},
-          //   { required: true, message: "请输入邮箱地址", validator: this.spaceJudgment, trigger: "blur" }
-          // ],
-          // dateBirth: [
-          //   { required: true, message: "请选择出生日期", trigger: "blur" }
-          // ],
-        },
-        //上传签名开关
-        upImgOpen:false,
-        option:{
-          img: '', // 裁剪图片的地址
-          outputSize: 1,       //裁剪生成图片的质量(可选0.1 - 1)
-          outputType: 'png',  //裁剪生成图片的格式(jpeg || png || webp)
-          info: true,          //图片大小信息
-          canScale: true,      //图片是否允许滚轮缩放
-          autoCrop: true,      //是否默认生成截图框
-          autoCropWidth: 240,  //默认生成截图框宽度
-          autoCropHeight: 80, //默认生成截图框高度
-          fixed: true,         //是否开启截图框宽高固定比例
-          fixedNumber: [3, 1], //截图框的宽高比例
-          full: false,         //false按原比例裁切图片,不失真
-          fixedBox: true,      //固定截图框大小,不允许改变
-          canMove: false,      //上传图片是否可以移动
-          canMoveBox: true,    //截图框能否拖动
-          original: false,     //上传图片按照原始比例渲染
-          centerBox: false,    //截图框是否被限制在图片里面
-          height: true,        //是否按照设备的dpr 输出等比例图片
-          infoTrue: false,     //true为展示真实输出图片宽高,false展示看到的截图框宽高
-          maxImgSize: 3000,    //限制图片最大宽度和高度
-          enlarge: 1,          //图片根据截图框输出比例倍数
-          mode: '560px 400px'  //图片默认渲染方式
-        },
-        previews:{},
-        //上传人脸
-        upFaceOpen:false,
-        upFaceUrl:"",
-        //临时签名数据
-        signatureData:"",
-        Quantity:0,//指纹录取数量
-      }
-    },
-    created() {
-      this.getUser();
-      this.fingerprintQuantityFun();
-    },
-    methods: {
-      //修改用户信息
-      upDataProfile(){
-        this.$refs["userform"].validate(valid => {
-          if (valid) {
-            if(!this.userform.phonenumber&&!this.userform.email&&!this.userform.dateBirth){
-              this.msgError('联系方式/邮箱/出生年月,请至少填写一项进行修改')
-              return
-            }
-            if((this.userform.phonenumber == this.userformData.phonenumber)&&
-              (this.userform.email == this.userformData.email)&&
-              (this.userform.dateBirth == this.userformData.dateBirth)){
-              this.msgError('联系方式/邮箱/出生年月,请至少修改一项再进行保存操作')
-              return
-            }
-            // let obj = JSON.parse(JSON.stringify(this.userform));
-            let obj = {};
-            if(this.userform.phonenumber){
-              let regex = /^1[23456789]\d{9}$/;
-              if(!regex.test(this.userform.phonenumber)){
-                this.msgError('请输入正确的联系方式')
-                return
-              }else{
-                obj.phonenumber = this.userform.phonenumber;
-              }
-            }else {
-              obj.phonenumber = '';
-            }
-            if(this.userform.email){
-              let regex = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
-              if(!regex.test(this.userform.email)){
-                this.msgError('请输入正确的邮箱地址')
-                return
-              }else{
-                obj.email = this.userform.email;
-              }
-            }else {
-              obj.email = '';
-            }
-            if(this.userform.dateBirth){
-              obj.dateBirth = this.userform.dateBirth;
-            }else{
-              obj.dateBirth = '';
-            }
-            obj.userId = this.user.userId;
-            upDataProfile(obj).then(response => {
-              this.msgSuccess('操作成功');
-              this.getUser();
-            });
-          }
-        })
-      },
-      //修改按钮密码
-      submit() {
-        let self = this;
-        self.$refs["form"].validate(valid => {
-          if (valid) {
-            this.$confirm('确定要修改吗', "警告", {
-              confirmButtonText: "确定",
-              cancelButtonText: "取消",
-              type: "warning"
-            }).then(function() {
-              self.updateUserPwd();
-            }).then(() => {
-            }).catch(() => {});
-          }
-        });
-      },
-      //指纹-查询用户指纹录取数量
-      fingerprintQuantityFun(){
-        let _this=this;
-        fingerprintQuantity(localStorage.getItem('userId')).then(response => {
-            if(response.code == 200){
-              _this.Quantity=response.data;
-            }
-          }
-        );
-      },
-      //修改密码接口
-      updateUserPwd(){
-        updateUserPwd(this.form.oldPassword, this.form.newPassword).then(
-          response => {
-            this.form.oldPassword = "";
-            this.form.newPassword = "";
-            this.form.confirmPassword = "";
-            this.msgSuccess("修改成功");
-          }
-        );
-      },
-      //返回按钮
-      outButton(){
-        this.$router.go(-1)
-      },
-      //页面按钮点击
-      buttonTypeClick(type){
-        if(this.buttonType != type){
-          this.buttonType = type;
-        }
-      },
-      //获取信息
-      getUser() {
-        getUserProfile().then(response => {
-          this.user = response.data;
-          this.roleGroup = response.roleGroup;
-          this.postGroup = response.postGroup;
-          let obj = {
-            phonenumber:response.data.phonenumber,
-            email:response.data.email,
-            dateBirth:response.data.dateBirth,
-          }
-          this.$set(this,'userform',JSON.parse(JSON.stringify(obj)));
-          this.$set(this,'userformData',JSON.parse(JSON.stringify(obj)));
-          this.pageType = true;
-        });
-      },
-      //上传签名
-      upSignatureData(){
-        if(!this.signatureData){
-          this.msgError('请先选择签名上传并保存查看')
-        }
-        var blob = this.dataURLtoBlob(this.signatureData);
-        var file = this.blobToFile(blob, 'dx.jpg');
-        let formData = new FormData();
-        formData.append('file',file,"DX.jpg")
-        console.log("formData",formData);
-        updateSignature(formData).then(response => {
-          if(response.code == 200){
-            this.msgSuccess("操作成功");
-            this.upImgOpen = false;
-            this.getUser();
-          }
-        });
-      },
-      //照片页面开关
-      upFaceOpenClick(type){
-        if(type == 1){
-          this.upFaceOpen = false;
-        }else if (type == 2){
-          this.upFaceUrl = this.user.faceImg;
-          this.upFaceOpen = true;
-        }
-      },
-      //签名页面开关
-      upImgOpenClick(type){
-        if(type == 1){
-          this.upImgOpen = false;
-        }else if (type == 2){
-          this.option.img = this.user.signature;
-          this.signatureData = this.user.signature;
-          this.upImgOpen = true;
-        }
-      },
-      //确定签名
-      upImgButton(){
-        let self = this;
-        this.$refs.cropper.getCropBlob(async (data) => {
-          let formData = new FormData();
-          formData.append('file',data,"DX.jpg")
-          genSign(formData).then(response => {
-            if(response.code == 200){
-              this.signatureData = 'data:image/png;base64,'+response.data;
-            } else {
-              this.msgError(response.msg)
-            }
-          });
-        })
-      },
-      //照片选择
-      faceChange(val){
-        const windowURL = window.URL || window.webkitURL;
-        this.upFaceUrl = windowURL.createObjectURL(val.raw)
-      },
-      //签名选择
-      signatureChange(val){
-        const windowURL = window.URL || window.webkitURL;
-        this.option.img = windowURL.createObjectURL(val.raw)
-        this.signatureData = "";
-        this.upImgOpen = true;
-      },
-      // 照片上传按钮
-      faceButton(type){
-        if(type==1){
-          this.upFaceOpen = false;
-        }else if(type == 2){
-          this.$refs.faceUpLoad.submit();
-        }
-      },
-      //上传
-      handleAvatarSuccess(res, type) {
-        if(res.code == 200){
-          this.user.faceImg = res.data.cardUrl;
-          this.upFaceOpen = false;
-          this.getUser();
-          this.msgSuccess(res.msg)
-          this.$forceUpdate()
-        }else{
-          this.msgError(res.msg)
-        }
-      },
-      beforeAvatarUpload(file) {
-        let type = false;
-        if (file.type == 'image/png' || file.type == 'image/jpeg' || file.type == 'image/gif') {
-          type = true;
-        }else{
-          this.$message.error('只能上传png/jpeg/gif格式图片');
-          type = false;
-        }
-        return type;
-      },
-      // 实时预览函数
-      realTime(data) {
-        console.log("实时预览函数",data)
-        this.previews = data;
-      },
-      //图片加载的回调 imgLoad 返回结果success, error
-      imgLoad (msg) {
-        console.log("图片加载的回调",msg)
-        // console.log('imgLoad')
-        // console.log(msg)
-      },
-      //将base64转换为blob
-      dataURLtoBlob: function(dataurl) {
-        var  arr = dataurl.split(',')
-        var  mime = arr[0].match(/:(.*?);/)[1]
-        var  bstr = atob(arr[1])
-        var  n = bstr.length
-        var  u8arr = new Uint8Array(n)
-        while (n--) {
-          u8arr[n] = bstr.charCodeAt(n);
-        }
-        return new Blob([u8arr], { type: mime });
-      },
-      //将blob转换为file
-      blobToFile: function(theBlob, fileName){
-        theBlob.lastModifiedDate = new Date();
-        theBlob.name = fileName;
-        return theBlob;
-      },
-    }
-  }
-</script>
-
-<style scoped lang="scss">
-  .mine{
-    height:100%;
-    width:100%;
-    display: flex;
-    flex-direction: column;
-    overflow: hidden;
-    *{
-      margin:0;
-    }
-    .mine-page{
-      flex:1;
-      display: flex;
-      overflow: hidden;
-      .left-max-box{
-        width:300px;
-        /*margin:20px;*/
-        margin:5px 20px 20px 10px;
-        box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.1);
-        border-radius:10px;
-        .left-title{
-          font-size:18px;
-          text-align: center;
-          line-height: 30px;
-          margin-top:30px;
-          color:#0045af;
-        }
-        .left-user-img{
-          width:130px;
-          height:130px;
-          overflow: hidden;
-          border-radius:50%;
-          margin:30px auto 20px;
-        }
-        .left-name{
-          font-size:20px;
-          line-height:43px;
-          text-align: center;
-        }
-        .left-num{
-          font-size:16px;
-          line-height:38px;
-          text-align: center;
-        }
-        .left-text-max-box{
-          border-top:1px dashed #dedede;
-          border-bottom:1px dashed #dedede;
-          margin:24px 10px 0;
-          padding:20px 0;
-          .left-text-big-box{
-            display: flex;
-            .left-text-big-box-left{
-              width:100px;
-              height:38px;
-              display: flex;
-              margin-right:10px;
-              img{
-                width:16px;
-                height:16px;
-                margin:11px 10px 0;
-              }
-              p{
-                flex:1;
-                font-size:14px;
-                line-height:38px;
-              }
-            }
-            .left-text-big-box-right{
-              height:38px;
-              flex:1;
-              display: flex;
-              .img-one{
-                width:16px;
-                height:14px;
-                margin:12px 10px 0;
-              }
-              .img-two{
-                width:16px;
-                height:16px;
-                margin:11px 10px 0;
-              }
-              p{
-                flex:1;
-                font-size:14px;
-                line-height:38px;
-              }
-            }
-          }
-          .left-text-min-box{
-            display: flex;
-            height:38px;
-            img{
-              width:16px;
-              height:16px;
-              margin:11px 10px 0;
-            }
-            p{
-              flex:1;
-              font-size:14px;
-              line-height:38px;
-            }
-          }
-        }
-        .left-type-text-max-box{
-          padding:20px 0;
-          div{
-            display: flex;
-            p{
-              flex:1;
-              font-size:14px;
-              color:#333;
-              line-height:40px;
-            }
-            p:nth-child(1){
-              text-align: left;
-              margin-left:32px;
-            }
-            p:nth-child(2){
-              text-align: right;
-              margin-right:48px;
-            }
-            .p-color-a{
-              color:#06B924;
-            }
-            .p-color-b{
-              color:#FF9735;
-            }
-          }
-        }
-      }
-      .right-max-box{
-        flex:1;
-        /*margin:20px 20px 20px 0;*/
-        margin:5px 20px 20px 0;
-        box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.1);
-        border-radius:10px;
-        display: flex;
-        flex-direction: column;
-        .right-title-box{
-          display: flex;
-          border-bottom:1px solid #dedede;
-          .title-button-min-box{
-            height:90px;
-            margin:0 20px;
-            cursor: pointer;
-            p:nth-child(1){
-              margin-top:6px;
-              line-height:78px;
-              font-size:16px;
-            }
-            p:nth-child(2){
-              height:6px;
-              border-radius:4px;
-            }
-            .bottomColor{
-              color:#0045AF;
-            }
-            .bottomBack{
-              background:#0045AF ;
-            }
-          }
-          .right-null-p{
-            flex:1;
-          }
-          .right-out-button{
-            margin:20px;
-          }
-        }
-        .type-one-max-box{
-          width:100px;
-          margin:40px auto;
-        }
-        .up-data-box{
-          display: inline-block;
-          width:280px;
-          line-height:20px;
-          margin-bottom:30px;
-          .up-data-min-box{
-            .up-data-title{
-              font-size:15px;
-              color:#333;
-            }
-            .up-data-button{
-              width:120px;
-              height:120px;
-              border: 1px dashed #E0E0E0;
-              cursor: pointer;
-              p{
-                text-align: center;
-                color:#999;
-                font-weight:500;
-              }
-              p:nth-child(1){
-                font-size: 20px;
-                line-height:40px;
-                margin-top:20px;
-              }
-              p:nth-child(2){
-                font-size: 16px;
-
-              }
-            }
-            .img-one{
-              width:120px;
-              height:120px;
-            }
-            .img-two{
-              width: 240px;
-              height:80px;
-            }
-          }
-        }
-        .fingerprint_no{
-          >p:nth-of-type(1){
-            color: #666666;
-          }
-          >p:nth-of-type(2){
-            color: #F56C6C;
-          }
-        }
-        .fingerprint_yes{
-          .fingerprint_yes_img{
-            width: 122px;
-            height: 142px;
-            position: relative;
-            >img:nth-of-type(1){
-              width: 122px;
-              height: 142px;
-              position: absolute;
-            }
-            >img:nth-of-type(2){
-              width: 65px;
-              height: 88px;
-              position: absolute;
-              left: 29px;
-              top: 29px;
-            }
-          }
-          >p{
-            color: #666;
-            text-align: center;
-          }
-        }
-        .form-item-min{
-          margin-top:40px;
-        }
-      }
-    }
-  }
-</style>
-<style lang="scss">
-  .up-img-box{
-    .el-dialog__body{
-      padding-top:0;
-    }
-    .img-one{
-      width:560px;
-      height:150px;
-    }
-    .cropper-img{
-      display: block;
-      border:1px solid #e0e0e0;
-      width:360px;
-      height:120px;
-      margin:0 auto;
-    }
-    .cropper-box{
-      width:560px;
-      height:270px;
-      position: relative;
-      .cropper-button{
-        position: absolute;
-        right:10px;top:10px;
-        z-index:1;
-        background: #0183FA;
-        color:#fff;
-        cursor: pointer;
-        padding:5px 10px;
-        margin:0;
-        border-radius:6px;
-      }
-    }
-  }
-  .mine{
-    .mine-page{
-      .input-number-none-box{
-        input{
-          text-align: left;
-        }
-      }
-    }
-  }
-</style>

+ 1 - 1
src/views/newEvacuationBigData.vue

@@ -1,6 +1,6 @@
 <template>
     <div class="newEvacuationBigData">
-      <div class="evacuation-title-position-box">应急处置</div>
+      <div class="evacuation-title-position-box">风险应急处置指挥平台</div>
       <div class="evacuation-out-button-position-box">
         <i class="el-icon-switch-button"></i>
         <p @click="goRoute">{{routeType?'退出全屏':'全屏'}}</p>

+ 1 - 1
src/views/newEvacuationBigDataHome.vue

@@ -1,6 +1,6 @@
 <template>
     <div class="newEvacuationBigDataHome" ref="maxBox">
-      <div class="evacuation-title-position-box">应急处置</div>
+      <div class="evacuation-title-position-box">风险应急处置指挥平台</div>
       <div class="evacuation-out-button-position-box">
         <i class="el-icon-switch-button"></i>
         <p @click="goRoute">{{routeType?'退出全屏':'全屏'}}</p>

+ 0 - 116
src/views/secureAccess/approval/indexKDNH.vue

@@ -1,116 +0,0 @@
-<!--准入资格审核-->
-<template>
-  <div class="app-container approval">
-    <div class="top-big-box" v-if="pageType==1||pageType==2||pageType==3">
-      <div>
-        <p :class="pageType==1?'color_one':'color_99'" @click="tableClick(1)">待审核</p>
-        <p :class="{'back_one':pageType==1}"></p>
-      </div>
-      <div>
-        <p :class="pageType==2?'color_one':'color_99'" @click="tableClick(2)">已通过</p>
-        <p :class="{'back_one':pageType==2}"></p>
-      </div>
-      <div>
-        <p :class="pageType==3?'color_one':'color_99'" @click="tableClick(3)">未通过</p>
-        <p :class="{'back_one':pageType==3}"></p>
-      </div>
-      <p class="null-p"></p>
-      <!--<p class="add-button-one-120" @click="tableClick(4)"-->
-      <!--&gt;<i class="el-icon-plus"></i>准入资格配置</p>-->
-    </div>
-    <pending v-if="pageType==1"></pending>
-    <passed v-if="pageType==2"></passed>
-    <failed v-if="pageType==3"></failed>
-    <!--<configuration v-if="pageType==4"></configuration>-->
-    <info-page v-if="pageType==5" :infoData="infoData"></info-page>
-  </div>
-</template>
-<script>
-  import pending from "./pending.vue";
-  import passed from "./passed.vue";
-  import failed from "./failed.vue";
-  // import configuration from "./configuration.vue";
-  import infoPage from "./infoPageKDNH.vue";
-
-export default {
-  components: {
-    pending,
-    passed,
-    failed,
-    // configuration,
-    infoPage
-  },
-  name: "Approval",
-  data() {
-    return {
-      pageType:1,
-      pageTypeTwo:1,
-      infoData:{
-        type:null,
-        list:0,//type=0,审核,1查看
-      }
-    };
-  },
-  created() {
-
-  },
-  methods: {
-    pageClick(type,row){
-      this.infoData.type = type;
-      this.infoData.list = row;
-      this.pageType = 5;
-    },
-    pageOff(){
-      // this.pageType = JSON.parse(JSON.stringify(this.pageTypeTwo));
-      this.pageType = this.pageTypeTwo;
-    },
-    //选项卡切换
-    tableClick(type){
-      if(this.pageType!=type){
-        if(type == 4){
-          // this.pageTypeTwo = JSON.parse(JSON.stringify(this.pageType));
-          this.pageTypeTwo = this.pageType;
-        }
-        this.pageType = type;
-      }
-    },
-  }
-};
-</script>
-<style scoped lang="scss">
-  .approval {
-    display: flex!important;
-    flex-direction: column;
-    box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.1);
-    padding:20px!important;
-    .top-big-box{
-      display: flex;
-      border-bottom:2px solid #E0E0E0;
-      margin-top:-9px;
-      margin-bottom:32px;
-      div{
-        cursor:pointer;
-        width:128px;
-        p:nth-child(1){
-          line-height:58px;
-          font-size:18px;
-          text-align: center;
-          margin:0;
-        }
-        p:nth-child(2){
-          width:80px;
-          height:4px;
-          margin:0 auto;
-          border-radius:1px;
-        }
-      }
-      .null-p{
-        flex:1;
-      }
-      .add-button-one-120{
-        margin-top:9px;
-        margin-right:20px;
-      }
-    }
-  }
-</style>

+ 1 - 1
src/views/secureAccess/approval/infoPage.vue

@@ -269,7 +269,7 @@ export default {
             type: "warning"
           }).then(() => {
             //  确定
-            this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization-KDNH' });
+            this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization' });
           }).catch(function() {
             //  取消
             this.$parent.tableClick(1);

+ 0 - 528
src/views/secureAccess/approval/infoPageKDNH.vue

@@ -1,528 +0,0 @@
-<!--准入审核详情-->
-<template>
-  <div class="info-page" v-if="pageType">
-    <div class="top-title-box">
-      <p>准入信息</p>
-      <p class="button-p reset-button-one" @click="backPage">返回</p>
-    </div>
-    <!--<div class="item-max-box" style="margin-top:30px;">-->
-      <!--<div class="item-title-box">{{subjectData.labSecurityApply.userType == '11'?'教师信息(关联教师信息材料):':(subjectData.labSecurityApply.userType == '22'?'学生信息(关联学生信息材料):':'')}}</div>-->
-      <!--<div class="item-user-box">-->
-        <!--<div>姓名:{{subjectData.labSecurityApply.userName}}</div>-->
-        <!--<div>{{subjectData.labSecurityApply.userType == '11'?'工号:':(subjectData.labSecurityApply.userType == '22'?'学号:':'')}}{{subjectData.labSecurityApply.userNumber}}</div>-->
-        <!--<div>学院:{{subjectData.labSecurityApply.deptName}}</div>-->
-        <!--<div v-if="subjectData.labSecurityApply.userType == '22'">专业:{{subjectData.labSecurityApply.major}}</div>-->
-      <!--</div>-->
-    <!--</div>-->
-    <div class="admittance_info">
-      <li>申请实验室:<i>{{subjectData.labSecurityApply.laboratoryDeptName}}-{{subjectData.labSecurityApply.subjectName}}</i></li>
-      <li>实验室负责人:<i>{{subjectData.fzrsysUser[0].nick_name}}</i></li>
-      <li>申请时间:<i>{{subjectData.labSecurityApply.creatTime}} {{subjectData.labSecurityApply.hi}}</i></li>
-      <li>有效期:<i>{{subjectData.labSecurityApply.validBeginTime}} 至 {{subjectData.labSecurityApply.validEndTime}}</i></li>
-      <li>申请状态:<i>{{subjectData.labSecurityApply.auditStatus == 0?'待审核':(subjectData.labSecurityApply.auditStatus == 1?'已驳回':(subjectData.labSecurityApply.auditStatus == 2?'已通过':''))}}</i></li>
-      <li v-if="isLook">审核时间:<i>{{subjectData.labSecurityApply.auditTime}}</i></li>
-      <li v-if="isLook">审核人:<i>{{subjectData.labSecurityApply.auditName}}</i></li>
-      <li v-if="isLook">审核备注:<i>{{subjectData.labSecurityApply.rejectCause}}</i></li>
-    </div>
-    <div class="admittance_materials">
-      <p class="admittance_materials_title">准入材料</p>
-      <div v-for="(item,index) in subjectData.listTemp" :key="index">
-        <div class="item-title-box" v-if="item.materialType==2&&item.relationType==1"><i style="color: #F56C6C;">*</i>身份信息:(关联学生信息材料)</div>
-        <div class="identity" v-if="item.materialType==2&&item.relationType==1">
-          <li>姓名:<i>{{subjectData.sysUser.nickName}}</i></li>
-          <li>学号:<i>{{subjectData.sysUser.userName}}</i></li>
-          <li>卡号:<i>{{subjectData.sysUser.cardNum}}</i></li>
-          <li>联系方式:<i>{{subjectData.sysUser.phonenumber}}</i></li>
-          <li>导师:<i>{{subjectData.sysUser.tutorUserName}}</i></li>
-          <li>班级:<i>{{subjectData.sysUser.grade}}</i></li>
-          <li>学院:<i>{{subjectData.labSecurityApply.deptName}}</i></li>
-          <li>专业:<i>{{subjectData.sysUser.major}}</i></li>
-          <li>申请备注:<i>{{subjectData.labSecurityApply.applyCause}}</i></li>
-        </div>
-        <div class="item-title-box" v-if="item.materialType==1"><i style="color: #F56C6C;">*</i>{{item.materialName}}</div>
-        <div class="file_list"  v-for="(minItem,minIndex) in item.upList">
-          <el-checkbox  @change="checkedImg(minItem)" v-if="isLook" >{{minItem.name}}</el-checkbox>
-          <i v-if="!isLook" >{{minItem.name}}</i>
-          <i class="file_list_look" @click="lookFile(minItem)">查看</i>
-<!--          <a class="file_list_look" :href="item2.dataUrl.split(';')[1].replace(/,/g,'')" target="_blank">查看</a>-->
-          <i v-if="isLook" class="file_list_look" @click="handleExport(1,minItem)">下载</i>
-        </div>
-      </div>
-      <div class="item-title-box" v-if="subjectData.labSecurityApply.auditStatus!=2">审核备注:</div>
-      <el-input type="textarea" style="margin-top: 20px" v-model="rejectCause" placeholder="请输入审核备注" maxlength="50" v-if="subjectData.labSecurityApply.auditStatus!=2"/>
-     <div class="btn_list">
-       <p v-if="isLook" class="button-p reset-button-one" style="width:100px;" @click="handleExport(2,'')">打包下载</p>
-       <p v-if="isLook&&subjectData.labSecurityApply.auditStatus!=2" class="inquire-button-one" style="width:100px;" @click="backPage()">确定</p>
-       <p v-if="!isLook" class="button-p reset-button-one" style="width:100px;" @click="auditClick(1)">驳回</p>
-       <p v-if="!isLook" class="inquire-button-one" style="width:100px;" @click="auditClick(2)">通过</p>
-     </div>
-    </div>
-    <div v-for="(item,index) in subjectData.listTemp" :key="index">
-<!--      <div class="item-max-box" style="margin-top:30px;" v-if="item.materialType==2&&item.relationType==1">
-        <div class="item-title-box">{{subjectData.labSecurityApply.userType == '11'?'教师信息(关联教师信息材料):':(subjectData.labSecurityApply.userType == '22'?'学生信息(关联学生信息材料):':'')}}</div>
-        <div class="item-user-box">
-          <div>
-            <p>姓名:</p>
-            <p>{{subjectData.labSecurityApply.userName}}</p>
-          </div>
-          <div>
-            <p>{{subjectData.labSecurityApply.userType == '11'?'工号:':(subjectData.labSecurityApply.userType == '22'?'学号:':'')}}</p>
-            <p>{{subjectData.labSecurityApply.userNumber}}</p>
-          </div>
-          <div>
-            <p>学院:</p>
-            <p>{{subjectData.labSecurityApply.deptName}}</p>
-          </div>
-          <div v-if="subjectData.labSecurityApply.userType == '22'">
-            <p>专业:</p>
-            <p>{{subjectData.labSecurityApply.userMajor}}</p>
-          </div>
-        </div>
-      </div>-->
-<!--      <div class="item-max-box" v-if="item.materialType==2&&item.relationType==2&&subjectData.labSecurityApply.userType == '22'">
-        <div class="item-title-box">安全考试证书:</div>
-        <img v-if="subjectData.listcert[0]" class="item-img-box" :src="subjectData.listcert[0].cert_url">
-        <p v-if="!subjectData.listcert[0]" style="margin-left:40px;color:#999;font-size:14px;">暂无证书</p>
-      </div>
-      <div class="item-max-box" v-if="item.materialType==1">
-        <div class="item-title-box">{{item.materialName}}:</div>
-        <div class="item-for-text-box">
-          <p :class="iframeSrc[index].forIndex == minIndex ?'color-p':''" v-for="(minItem,minIndex) in item.upList" @click="forClick(minItem,minIndex,index)">{{minItem.name}}</p>
-        </div>
-        <iframe
-          class="item-html-box"
-          :src="iframeSrc[index].url" scrolling="auto" frameborder="0">
-        </iframe>
-      </div>-->
-    </div>
-
-    <!-- 添加或修改安全准入申请材料配置对话框 -->
-    <el-dialog title="准入资格审核-未通过" :visible.sync="open" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
-        <el-form-item label="未通过材料" prop="materialName">
-          <el-checkbox-group v-model="checkList">
-            <el-checkbox :label="item.id" style="display: block" v-for="(item,index) in subjectData.listTemp" :key="index">{{item.materialName}}</el-checkbox>
-          </el-checkbox-group>
-        </el-form-item>
-        <el-form-item label="未通过原因" prop="rejectCause">
-          <el-input type="textarea" v-model="form.rejectCause" placeholder="请输入未通过原因" maxlength="100"/>
-        </el-form-item>
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="laboratoryApply(1)">确 定</el-button>
-        <!--<el-button @click="cancel">取 消</el-button>-->
-      </div>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-let Base64 = require('js-base64').Base64;
-import {downloadwBatch, getDetails, laboratoryApply} from "@/api/laboratory/approval";
-import {optionHazard} from "@/api/laboratory/hazard";
-  export default {
-    name: "info-page",
-    props:{
-      infoData: {},
-    },
-    data() {
-      return {
-        pageType:false,
-        forIndex:0,
-        subjectData:{},
-        iframeSrc:[],
-        open:false,
-        form:{},
-        checkList:[],
-        rejectCause:'',//审核备注
-        isLook:false,//判断是查看还是审核
-        //打包下载查询参数
-        packDown:{
-          userName:'',
-          userNumber:'',
-          subjectName:'',
-          fileList:'',
-
-        },
-        mrList:[],
-        // 表单校验
-        rules: {
-          name: [
-            { required: true, message: "请输入检查项名称", trigger: "blur" },
-            { required: true, message: "请输入检查项名称", validator: this.spaceJudgment, trigger: "blur" }
-          ],
-          code: [
-            { required: true, message: "请输入条款号", trigger: "blur" },
-            { required: true, message: "请输入条款号", validator: this.spaceJudgment, trigger: "blur" }
-          ],
-        },
-      };
-    },
-    created() {
-
-      if(this.infoData.type==0){
-        this.isLook=false;
-
-      }else if(this.infoData.type==1){
-        this.isLook=true;
-      }
-      this.getDetails();
-
-
-    },
-    methods: {
-      lookFile(item){
-        let visitUrl=window.location.href.split('://')[0]+'://'+process.env.VUE_APP_BASE_API+'/admin/'+item.url;
-        console.log(visitUrl)
-        window.open(localStorage.getItem('filePreviewUrl') + '/onlinePreview?url='+encodeURIComponent(Base64.encode(visitUrl)));
-
-      },
-      /** 导出按钮操作 */
-      handleExport(type,item) {
-        console.log(item)
-        if(type==1){//单个
-          this.packDown.userName=this.subjectData.sysUser.nickName
-          this.packDown.userNumber=this.subjectData.sysUser.userName
-          this.packDown.subjectName=this.subjectData.labSecurityApply.subjectName
-          let visitUrl=item.name+';'+item.url+',';
-
-          this.packDown.fileList=visitUrl
-
-          this.download('/laboratory/apply/downloadwBatch', {
-            ...this.packDown
-          }, this.packDown.userName+'_'+this.packDown.userNumber+'_'+this.packDown.subjectName+`.zip`)
-
-
-
-
-
-        }else if(type==2){// 打包下载
-          console.log(this.mrList)
-          if(this.mrList.length<=0){
-            this.msgInfo("请先勾选需要打包下载的文件!");
-          }else{
-            let list=[];
-            this.mrList.forEach(function (item){
-                list.push(item+',')
-            })
-            console.log(list)
-            this.packDown.userName=this.subjectData.sysUser.nickName
-            this.packDown.userNumber=this.subjectData.sysUser.userName
-            this.packDown.subjectName=this.subjectData.labSecurityApply.subjectName
-            this.packDown.fileList= list.join('@@')
-
-
-
-            this.download('/laboratory/apply/downloadwBatch', {
-              ...this.packDown
-            }, this.packDown.userName+'_'+this.packDown.userNumber+'_'+this.packDown.subjectName+`.zip`)
-          }
-
-        }
-
-
-      },
-      checkedImg(item){
-        console.log(item)
-        if(event.target.checked==false){
-          this.mrList.splice(this.mrList.indexOf(item.url),1);
-        }else{
-          this.mrList.push(item.name+';'+item.url)
-        }
-        console.log(this.mrList)
-
-
-      },
-      //审核按钮
-      auditClick(type){
-        let self = this;
-        if(type == 1){
-          this.open = true;
-        }else if(type == 2){
-          this.$confirm('是否确认审核?', "", {
-            confirmButtonText: "确定",
-            cancelButtonText: "取消",
-            type: "warning"
-          }).then(function() {
-            self.laboratoryApply(type);
-          }).then(() => {}).catch(() => {});
-        }
-      },
-      laboratoryApply(type){
-        let obj = {
-          id:this.infoData.list.id,
-          auditStatus:type,
-          rejectCause:this.rejectCause
-        };
-        if(type == 1){
-          obj.rejectCause = this.form.rejectCause;
-          obj.rejectMaterial = this.checkList + '';
-        }
-        laboratoryApply(obj).then(response => {
-          if(response.code==200){
-            this.msgSuccess("操作成功");
-            this.$parent.tableClick(1);
-          }else if(response.code==205){
-            this.$confirm(response.msg, "警告", {
-              confirmButtonText: "确定",
-              cancelButtonText: "取消",
-              type: "warning"
-            }).then(() => {
-              //  确定
-              this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization-KDNH' });
-            }).catch(function() {
-              //  取消
-              this.$parent.tableClick(1);
-            });
-          }
-        })
-      },
-      //点击切换文件
-      forClick(item,index,bigIndex){
-        this.iframeSrc[bigIndex].forIndex = index;
-        this.iframeSrc[bigIndex].url = this.urlJudge(item.url)
-      },
-      //获取数据
-      getDetails(){
-        let self = this;
-        getDetails({id:this.infoData.list.id}).then(response => {
-          let dataList = [];
-          for(let i=0;i<response.data.listTemp.length;i++){
-            if(response.data.listTemp[i].materialType == 2 && response.data.listTemp[i].materialType == 2){
-              dataList.unshift(response.data.listTemp[i]);
-            }
-          }
-          for(let i=0;i<response.data.listTemp.length;i++){
-            if(response.data.listTemp[i].materialType == 1){
-              dataList.push(response.data.listTemp[i]);
-            }
-          }
-          for(let i=0;i<response.data.listTemp.length;i++){
-            if(response.data.listTemp[i].materialType == 2 && response.data.listTemp[i].materialType == 1){
-              dataList.unshift(response.data.listTemp[i]);
-            }
-          }
-          this.$set(response.data,'listTemp',dataList);
-          let newList = [];
-          for(let i=0;i<response.data.listTemp.length;i++){
-            if(response.data.listTemp[i].materialType == 1){
-              let maxList = [];
-              for(let o=0;o<response.data.listTemp[i].listMr.length;o++){
-                let bigList = response.data.listTemp[i].listMr[o].dataUrl.split(',');
-                for(let x=0;x<bigList.length;x++){
-                  if(bigList[x]){
-                    let minList = bigList[x].split(';');
-                    let obj = {
-                      name:minList[0],
-                      url:minList[1],
-                    };
-                    maxList.push(obj);
-                  }
-                }
-              }
-              response.data.listTemp[i].upList = maxList;
-              let obj ={};
-              if(maxList.length>0){
-                 obj = {
-                  forIndex:0,
-                  url:this.urlJudge(maxList[0].url)
-                }
-              }
-              newList.push(obj);
-            }else{
-              let obj = {
-                forIndex:"",
-                url:""
-              }
-              newList.push(obj);
-            }
-          }
-          this.$set(this,"iframeSrc",newList);
-          this.$set(this,"subjectData",response.data);
-          //审核备注
-          if(this.isLook){
-
-            this.rejectCause=response.data.labSecurityApply.rejectCause
-          }
-          this.$forceUpdate()
-          this.pageType = true;
-        })
-      },
-      //返回
-      backPage(){
-        if(this.isLook){
-          this.$parent.tableClick(2);
-        }else{
-          this.$parent.tableClick(1);
-        }
-
-      },
-    }
-  };
-</script>
-
-<style scoped lang="scss">
-  .info-page {
-    flex:1;
-    display: flex!important;
-    flex-direction: column;
-    /*box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.1);*/
-    /*border-radius:10px;*/
-    .top-title-box{
-      display: flex;
-      border-bottom: 1px solid #E0E0E0;
-      /*padding-top:20px;*/
-      p:nth-child(1){
-        flex: 1;
-        line-height:60px;
-        color: #0045AF;
-        font-size:18px;
-        margin:0 0 0 40px;
-      }
-      p:nth-child(2){
-        margin-right:20px;
-      }
-      p:nth-child(3){
-        margin-right:20px;
-      }
-      p:nth-child(4){
-        margin-right:20px;
-      }
-    }
-    /*准入信息*/
-    .admittance_info{
-      display: flex;
-      justify-content: flex-start;
-      flex-wrap: wrap;
-      padding-left: 80px;
-      box-sizing: border-box;
-      >li{
-        list-style-type:none;
-        font-size: 16px;
-        font-family: Microsoft YaHei;
-        font-weight: 500;
-        color: #999999;
-        line-height: 70px;
-        margin-right: 20px;
-        >i{
-          margin-left: 10px;
-          display: inline-block;
-          font-style:normal;
-          font-size: 16px;
-          font-family: Microsoft YaHei;
-          font-weight: 500;
-          color: #333333;
-          line-height: 70px;
-        }
-      }
-    }
-    /*准入材料*/
-    .admittance_materials{
-      padding-left: 40px;
-      box-sizing: border-box;
-      .admittance_materials_title{
-        flex: 1;
-        line-height:60px;
-        color: #0045AF;
-        font-size:18px;
-
-        border-bottom: 1px solid #E0E0E0;
-        margin-top: 0;
-      }
-      .identity{
-        display: flex;
-        justify-content: flex-start;
-        flex-wrap: wrap;
-        padding-left: 40px;
-        box-sizing: border-box;
-        >li{
-          list-style-type:none;
-          font-size: 16px;
-          font-family: Microsoft YaHei;
-          font-weight: 500;
-          color: #999999;
-          line-height: 70px;
-          margin-right: 20px;
-          >i{
-            margin-left: 10px;
-            display: inline-block;
-            font-style:normal;
-            font-size: 16px;
-            font-family: Microsoft YaHei;
-            font-weight: 500;
-            color: #333333;
-            line-height: 70px;
-          }
-        }
-      }
-      .file_list{
-        padding-left: 80px;
-        box-sizing: border-box;
-        >i{
-          font-style: normal;
-          font-size: 14px;
-          font-family: Microsoft YaHei;
-          font-weight: bold;
-          color: #0183FA;
-          line-height: 70px;
-        }
-        .file_list_look{
-          padding-left: 40px;
-          cursor: pointer;
-          font-style: normal;
-          font-size: 14px;
-          font-family: Microsoft YaHei;
-          font-weight: bold;
-          color: #0183FA;
-          line-height: 70px;
-        }
-
-      }
-      .btn_list{
-        text-align: center;
-        margin-top: 40px;
-        >p{
-          margin-right: 20px;
-        }
-      }
-    }
-    .item-max-box{
-      .item-title-box{
-        margin-left:50px;
-        font-size:16px;
-        line-height:80px;
-      }
-      .item-user-box{
-        display: flex;
-        margin-left:65px;
-        div{
-          display: flex;
-          margin-right:60px;
-          font-size:14px;
-        }
-      }
-      .item-img-box{
-        width:240px;
-        margin-left:50px;
-      }
-      .item-for-text-box{
-        margin-left:77px;
-        p{
-          display: inline-block;
-          font-size:14px;
-          line-height:40px;
-          margin:0 57px 0 0;
-        }
-        .color-p{
-          color:#0045AF;
-        }
-      }
-      .item-html-box{
-        margin:20px 0 40px 58px;
-        width:900px;
-        height:900px;
-        background: #F5F5F5;
-      }
-    }
-  }
-</style>

+ 2 - 2
src/views/secureAccess/whitelist/addPage.vue

@@ -437,6 +437,7 @@ export default {
     },
     //新增提交
     whitelistAddList(){
+
       let labWhiteJoinSubList=[];
       this.subjectList.forEach(function (item,index){
         labWhiteJoinSubList.push({'subjectId':item.subjectId})
@@ -446,7 +447,6 @@ export default {
         labWhiteJoinSubList:labWhiteJoinSubList
       }
       whitelistAddList(obj).then(response => {
-
         if(response.code==200){
           this.msgSuccess("操作成功")
           this.backPage();
@@ -457,7 +457,7 @@ export default {
             type: "warning"
           }).then(() => {
             //  确定
-            this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization-KDNH' });
+            this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization' });
           }).catch(function() {
             //  取消
             this.backPage();

+ 0 - 710
src/views/secureAccess/whitelist/addPageKDNH.vue

@@ -1,710 +0,0 @@
-<!--白名单新增-->
-<template>
-  <div class="add-whitelist">
-    <div class="top-max-button-title-box">
-      <p>新增准入白名单</p>
-      <p class="button-p reset-button-one" @click="backPage">返回</p>
-    </div>
-    <div class="form-max-box">
-      <div class="left">
-        <el-form :model="form" ref="drawerForm" :rules="rules" >
-          <el-form-item label="姓名" prop="userIds" style="margin-top:40px;">
-            <el-select
-              :disabled="isEdit"
-              v-model="form.userIds"
-              filterable
-              remote
-              reserve-keyword
-              placeholder="请输入姓名"
-              :remote-method="userSelectList"
-              @change="selectChange"
-              :loading="loading">
-              <el-option
-                v-for="item in optionsUser"
-                :key="item.userId"
-                :label="item.nickName"
-                :value="item.userId">
-              </el-option>
-            </el-select>
-          </el-form-item>
-          <div class="for-max-box">
-            <div class="for-box" v-for="(item,index) in userList" :key="index">
-              <div class="for-min-box">
-                <p>{{item.deptName ? item.deptName+'-'+item.userName:item.userName}}</p>
-                <img src="@/assets/newImages/off.png" @click="delItem(index)" v-if="!isEdit">
-              </div>
-            </div>
-          </div>
-          <p class="inquire-button-one" style="margin:100px 50px;" @click="upButton">提交</p>
-        </el-form>
-      </div>
-      <div class="right">
-        <div style="text-align: right;margin: 20px;" class="right_t"> <p class="inquire-button-one"  style="width: 150px" @click="newAdmittance">新增准入实验室</p></div>
-        <el-table class="right_b" border v-loading="loading" :data="subjectList">
-          <el-table-column label="申请实验室" align="left" prop="name" />
-          <el-table-column label="楼栋" align="left" prop="building" />
-          <el-table-column label="楼层" align="left" prop="buildName" />
-          <el-table-column label="学院" align="left" prop="deptName" />
-          <el-table-column label="实验室负责人" align="left" prop="adminName" />
-          <el-table-column label="安全分级" align="left" prop="levelName" />
-          <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
-            <template slot-scope="scope">
-              <div class="button-box">
-                <p class="table-min-button"  @click="handleClick(scope.$index, scope.row,'delete')" ><i class="el-icon-delete"></i>删除</p>
-              </div>
-            </template>
-          </el-table-column>
-        </el-table>
-      </div>
-    </div>
-    <!--关联实验室弹框-->
-    <el-dialog title='新增准入实验室' @close="handleClose" :visible.sync="dialogVisible" width="80%">
-      <el-form :model="dialogForm" ref="dialogForm" :inline="true" label-width="140px">
-        <el-form-item label="实验室名称" prop="name" >
-          <el-input
-            v-model="dialogForm.name"
-            placeholder="请输入实验室名称"
-            clearable
-            size="small"
-          />
-        </el-form-item>
-        <el-form-item label="楼栋" prop="buildId">
-          <el-select v-model="dialogForm.buildId" placeholder="请选择楼栋" clearable  @change="buildChange">
-            <el-option v-for="(item,index) in buildsDataList" :key="index" :label="item.deptName" :value="item.deptId" />
-          </el-select>
-        </el-form-item>
-        <el-form-item label="楼层" prop="floorId">
-          <el-select v-model="dialogForm.floorId" placeholder="请选择楼层" >
-            <el-option
-              v-for="dict in floorList"
-              :key="dict.id"
-              :label="dict.name"
-              :value="dict.id"
-            ></el-option>
-          </el-select>
-        </el-form-item>
-
-        <el-form-item>
-          <p class="inquire-button-one" style="margin-left:20px;" @click="onSearch">查询</p>
-          <p class="reset-button-one" style="margin-left:20px;" @click="resetForm">重置</p>
-        </el-form-item>
-      </el-form>
-      <div class="btn_list">
-        <i class="el-icon-warning"></i>
-        <i>已选择 {{labWhiteJoinSubList.length}} 项</i>
-        <i @click="toggleSelection(dialogTable)">全选本页</i>
-        <!--        <i>选择全部</i>-->
-        <i></i>
-        <i @click="toggleSelection()">清除选项</i>
-        <div class="bottom-button-box">
-          <el-button class="color_99" @click="closeDialog(1)">关闭</el-button>
-          <el-button class="color_ff back_one" @click="closeDialog(2)">确定</el-button>
-        </div>
-      </div>
-      <el-table ref="multipleTable" border tooltip-effect="dark" :row-key="getRowKeys" :data="dialogTable"
-                highlight-current-row @selection-change="handleSelectionChange" style="cursor: pointer;height:500px;">
-        <el-table-column type="selection"  width="55" :reserve-selection="true" align="center"></el-table-column>
-        <el-table-column label="申请实验室名称" show-overflow-tooltip align="left" prop="name"/>
-        <el-table-column label="楼栋" align="left" prop="building" />
-        <el-table-column label="楼层" align="left" prop="buildName" />
-        <el-table-column label="学院" align="left" prop="deptName" />
-        <el-table-column label="实验室负责人" align="left" prop="adminName" />
-        <el-table-column label="安全分级" align="left" prop="levelName" >
-          <template slot-scope="scope">
-            <span :style="'color:'+scope.row.fiedColor+';'">{{scope.row.levelName}}</span>
-          </template>
-        </el-table-column>
-
-      </el-table>
-      <pagination :page-sizes="[20, 30, 40, 50]"
-        v-show="total>0"
-        :total="total"
-        :page.sync="dialogForm.pageNum"
-        :limit.sync="dialogForm.pageSize"
-        @pagination="getUserRoleBySub"
-      />
-<!--      <div class="bottom-button-box" style="padding-top: 20px;text-align: right;">
-        <el-button class="color_99" @click="closeDialog()">取消</el-button>
-        <el-button class="color_ff back_one" @click="confirmDialog()">确定</el-button>
-      </div>-->
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-import {
-  getAllSubjectByParame,
-  selectUserListByName,
-  whitelistAddList,
-  whitelistEdit, whitelistEditList,
-  whitelistList,
-  whitelistSubListEdit
-} from "@/api/laboratory/whitelist";
-  import {listInfo} from "@/api/laboratory/gradeManage";
-  import {delPlan, getUserRoleBySub} from "@/api/laboratory/plan";
-  import {buildsList} from "@/api/laboratory/sparseHardware";
-  import {listFloorByBuildId} from "@/api/laboratory/building";
-  export default {
-    name: "add-whitelist",
-    props:{
-      pageData:{},
-    },
-    data() {
-      return {
-        isEdit:false,
-        form:{},
-        loading:false,
-        // 表单校验
-        rules: {
-          userIds: [
-            { required: true, message: "请输入标题", trigger: "blur" },
-            { required: true, message: "请输入标题", validator: this.spaceJudgment, trigger: "blur" }
-          ],
-        },
-        //展示数组
-        userList:[],
-        //搜索角色数组
-        optionsUser:[],
-        queryParams:{
-          pageNum:1,
-          pageSize:20,
-        },
-        total:0,
-        subjectList:[],
-        dialogVisible:false,
-        dialogForm:{
-          pageNum: 1,
-          pageSize:20,
-          name: null,
-          floorId: null,
-          whiteUserId:null,
-          deptId:JSON.parse(localStorage.getItem('user')).deptId,
-
-        },
-        dialogTable:[],
-        buildsDataList:[],
-        floorList:[],
-        labWhiteJoinSubList:[],
-        arr:[],
-
-      };
-    },
-    created() {
-      if(this.pageData.id){
-        console.log('编辑')
-        this.isEdit=true;
-        this.whitelistEdit();
-        this.whitelistSubListEdit();
-        this.dialogForm.whiteUserId=this.pageData.userId;
-        this.getUserRoleBySub();
-      }else{
-        this.isEdit=false;
-        this.getUserRoleBySub();
-      }
-      this.buildsList();
-    },
-    methods: {
-
-      getRowKeys(row) {
-        return row.subjectId;   //指定row-key的一个标识
-      },
-      //关闭实验室弹窗
-      closeDialog(type){
-        if(type == 1){
-          this.dialogVisible=false;
-        }else if(type == 2){
-          this.subjectList = JSON.parse(JSON.stringify(this.labWhiteJoinSubList));
-          this.dialogVisible=false;
-        }
-      },
-      //监听关联记录弹窗关闭
-      handleClose(){
-        console.log('弹窗关闭');
-        /*if(this.arr){
-          console.log('实验室信息回显')
-          this.$nextTick(() => {
-            this.arr.forEach(row => {
-              this.$refs.multipleTable.toggleRowSelection(row,true);
-            });
-          })
-        }*/
-      },
-      //取消选中
-      toggleSelection(rows) {
-        let _this=this;
-        if (rows) {
-         // this.$refs.multipleTable.clearSelection();
-          rows.forEach(row => {
-            this.$refs.multipleTable.toggleRowSelection(row,true);
-            //_this.arr.push(row)
-            //_this.subjectList.push(row)
-          });
-
-        } else {
-          this.$refs.multipleTable.clearSelection();
-        }
-      },
-      //选中实验室
-      handleSelectionChange(val){
-        console.log(val)
-        console.log(this.labWhiteJoinSubList)
-        let _this=this;
-        this.labWhiteJoinSubList=[];
-        this.labWhiteJoinSubList=val;
-
-        // _this.subjectList=this.labWhiteJoinSubList
-        _this.arr=this.labWhiteJoinSubList
-
-      },
-      //查询楼栋
-      buildsList(){
-        buildsList().then( response => {
-          this.buildsDataList = response.data;
-        });
-      },
-      //选择楼栋
-      buildChange(e){
-        console.log("选择楼栋",e)
-        //根据学院获取楼栋
-        listFloorByBuildId(this.dialogForm.buildId).then(response => {
-          this.$set(this,'floorList', response.data)
-          this.$set(this.form,'floorId', "")
-        });
-      },
-      //查询
-      onSearch() {
-        this.dialogForm.pageNo = 1;
-        this.getUserRoleBySub();
-      },
-      //重置
-      resetForm() {
-        this.dialogForm.name = '';
-        this.dialogForm.floorId = '';
-        this.dialogForm.buildId = '';
-        this.floorList=[];
-        this.onSearch();
-      },
-      //新增准入实验室
-      newAdmittance(){
-        let _this=this;
-        this.dialogVisible=true;
-        if(_this.subjectList[0]){
-          setTimeout(function(){
-            _this.$refs.multipleTable.clearSelection();
-            console.log("============>1")
-            _this.subjectList.forEach(row => {
-              console.log("============>2")
-              _this.$refs.multipleTable.toggleRowSelection(row,true);
-            });
-            _this.getUserRoleBySub();
-          },100);
-        }else{
-          if(_this.$refs.multipleTable){
-            _this.$refs.multipleTable.clearSelection();
-          }
-        }
-        // if(this.arr){
-        //   console.log('实验室信息回显')
-        //   console.log(this.arr)
-        //   if(_this.arr.length==0){
-        //     if(_this.$refs.multipleTable){
-        //       _this.$refs.multipleTable.clearSelection();
-        //     }
-        //   }else{
-        //     _this.$nextTick(() => {
-        //       setTimeout(function(){
-        //         console.log("============>1")
-        //         _this.subjectList.forEach(row => {
-        //           console.log("============>2")
-        //           _this.$refs.multipleTable.toggleRowSelection(row,true);
-        //         });
-        //       },300);
-        //     })
-        //   }
-        // }
-      },
-      //确认按钮
-      confirmDialog(){
-          let _this=this;
-         /*if(_this.labWhiteJoinSubList){
-           _this.subjectList= _this.labWhiteJoinSubList
-           _this.arr= _this.labWhiteJoinSubList
-           _this.dialogVisible=false;
-         }*/
-      },
-      //编辑查询人员信息
-      whitelistEdit(){
-        whitelistEdit(this.pageData.id).then(response => {
-          let data=response.data;
-          console.log(data)
-          if(data.userId){
-            this.$set(this.form,'userIds',data.userName)
-            this.userSelectList(data.userName);
-            //this.userList=data
-            let obj = {
-              deptId:data.deptId,
-              deptName:data.deptName,
-              userId:data.userId,
-              userName:data.userName,
-              userNumber:data.userName,
-              userTelephone:data.phonenumber,
-              userType:data.userType,
-            }
-            this.userList.push(obj);
-          }
-        });
-      },
-      //编辑-查询实验室信息
-      whitelistSubListEdit(){
-        whitelistSubListEdit(this.pageData.userId).then(response => {
-          if(response.code==200){
-            let data=response.rows;
-            this.subjectList=data
-          }
-
-        });
-      },
-      /** 查询实验室列表 */
-      getUserRoleBySub() {
-        this.loading = true;
-        let _this=this;
-        getAllSubjectByParame(this.dialogForm).then(response => {
-          if(response.code==200){
-            this.dialogTable = response.rows;
-            this.total = response.total;
-            this.loading = false;
-            console.log(_this.subjectList)
-            console.log(_this.arr)
-            if(_this.arr.length==0){
-              _this.dialogTable.forEach(function (item,index){
-                _this.subjectList.forEach(function (item2,index2){
-                  if(item.subjectId==item2.subjectId){
-                    _this.arr.push(item)
-                    console.log(_this.arr)
-                    if(_this.$refs.multipleTable){
-                      _this.$nextTick(() => {
-                        _this.$refs.multipleTable.toggleRowSelection(item,true);
-                      })
-                    }
-
-                  }
-                })
-              })
-            }else{
-
-              _this.dialogTable.forEach(function (item,index){
-                _this.arr.forEach(function (item2,index2){
-                  if(item.subjectId==item2.subjectId){
-                    if(_this.$refs.multipleTable){
-                      _this.$nextTick(() => {
-                        _this.$refs.multipleTable.toggleRowSelection(item,true);
-                      })
-                    }
-
-                  }
-                })
-              })
-            }
-
-          }
-        });
-
-      },
-
-      // 上传按钮
-      upButton(){
-        let self = this;
-        if(!this.userList[0]){
-          this.msgError("请先添加人员")
-          return
-        }
-        this.$confirm('是否确认提交?', "", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        }).then(function() {
-            console.log(444444)
-            console.log(self.pageData.id)
-
-          if(self.pageData.id){
-            console.log('编辑提交')
-            self.whitelistEditList();
-          }else{
-            console.log('新增提交')
-            self.whitelistAddList();
-          }
-        }).then(() => {}).catch(() => {});
-      },
-      //新增提交
-      whitelistAddList(){
-        let labWhiteJoinSubList=[];
-        this.subjectList.forEach(function (item,index){
-          labWhiteJoinSubList.push({'subjectId':item.subjectId})
-        })
-        let obj = {
-          labWhitelist:this.userList,
-          labWhiteJoinSubList:labWhiteJoinSubList
-        }
-        whitelistAddList(obj).then(response => {
-
-          if(response.code==200){
-            this.msgSuccess("操作成功")
-            this.backPage();
-          }else if(response.code==205){
-            this.$confirm(response.msg, "警告", {
-              confirmButtonText: "确定",
-              cancelButtonText: "取消",
-              type: "warning"
-            }).then(() => {
-              //  确定
-              this.$router.push({ path: '/comprehensive/laboratoryManagement/accessAuthorization-KDNH' });
-            }).catch(function() {
-              //  取消
-              this.backPage();
-            });
-          }
-        });
-      },
-      //编辑提交
-      whitelistEditList(){
-        console.log(this.subjectList)
-        let labWhiteJoinSubList=[];
-        //循环取出实验室id
-        this.subjectList.forEach(function (item,index){
-          labWhiteJoinSubList.push({'subjectId':item.subjectId})
-        })
-        let obj = {
-          userId:this.userList[0].userId,
-          labWhiteJoinSubList:labWhiteJoinSubList
-        }
-        whitelistEditList(obj).then(response => {
-          this.msgSuccess("操作成功")
-          this.backPage();
-        });
-      },
-      handleClick(index, row, doType){
-        console.log(this.subjectList)
-        let _this=this;
-        if(doType == 'delete'){//定制预案
-          this.$confirm('是否确认删除?', "警告", {
-            confirmButtonText: "确定",
-            cancelButtonText: "取消",
-            type: "warning"
-          }).then(() => {
-            if(_this.$refs.multipleTable){
-              _this.$refs.multipleTable.toggleRowSelection(row,false);
-            }
-            //this.subjectList.splice(this.subjectList.indexOf(row),1);
-            let index = this.subjectList.indexOf(row);
-            if(index!=-1){
-              this.subjectList.splice(index,1);
-              return
-            }
-
-
-            _this.arr=[];
-            _this.subjectList.forEach(function (item,index){
-              _this.dialogTable.forEach(function (item2,index2){
-                if(item.subjectId==item2.subjectId){
-                  _this.arr.push(item2)
-                }else{
-                }
-              })
-            })
-
-
-            this.msgSuccess("删除成功");
-          }).catch(() => {
-            this.msgInfo("取消成功");
-          });
-        }
-      },
-      //删除
-      delItem(index){
-        this.userList.splice(index,1);
-      },
-      //新增
-      selectChange(id){
-        let self = this;
-        for(let o=0;o<self.optionsUser.length;o++){
-          if( id == self.optionsUser[o].userId){
-            let num = 0;
-            for(let s=0;s<self.userList.length;s++){
-              if(self.userList[s].userId == self.optionsUser[o].userId){
-                num++
-              }
-            }
-            if(num == 0){
-              let obj = {
-                deptId:self.optionsUser[o].deptId,
-                deptName:self.optionsUser[o].deptName,
-                userId:self.optionsUser[o].userId,
-                userName:self.optionsUser[o].nickName,
-                userNumber:self.optionsUser[o].userName,
-                userTelephone:self.optionsUser[o].phonenumber,
-                userType:self.optionsUser[o].userType,
-              }
-              self.userList.push(obj);
-            }else{
-              self.msgError(self.optionsUser[o].nickName+'已在列表中')
-            }
-          }
-        }
-      },
-      //返回
-      backPage(){
-        this.$parent.pageClick(1);
-      },
-      //数据懒加载
-      userSelectList(query) {
-        if (query !== '' && query.length>1) {
-          this.loading = true;
-          this.userSelectList.nickName=query;
-          selectUserListByName(query).then(response => {
-            this.optionsUser = response.data;
-            this.loading = false;
-          });
-        } else {
-          this.optionsUser = [];
-        }
-      },
-    }
-  };
-</script>
-
-<style scoped lang="scss">
-  .add-whitelist {
-    display: flex !important;
-    flex-direction: column;
-    height: 100%;
-    /*box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.1);*/
-    padding:20px 20px 20px!important;
-    .top-max-button-title-box{
-      display: flex;
-      border-bottom:1px solid #E0E0E0;
-      p:nth-child(1){
-        flex:1;
-        font-size:16px;
-        color:#0045AF;
-      }
-      p:nth-child(2){
-        margin-right:20px;
-      }
-    }
-    .form-max-box{
-      height: 100%;
-      display: flex;
-      .left{
-        width: 24%;
-        .for-max-box{
-          margin-left:40px;
-          .for-box{
-            display: inline-block;
-            border-radius:6px;
-            background: rgba(1,131,250,0.2);
-            margin:0 10px 10px;
-            .for-min-box{
-              display: flex;
-              p{
-                flex:1;
-                padding:0 20px;
-                margin:0;
-                line-height:40px;
-                color:#0183FA;
-              }
-              img{
-                width:16px;
-                height:16px;
-                margin:12px 12px;
-                cursor: pointer;
-              }
-            }
-          }
-        }
-      }
-      .right{
-        display: flex;
-        width: 76%;
-        position: relative;
-        .right_t{
-          position: absolute;
-          right: 20px;
-        }
-        .right_b{
-          margin-top: 80px;
-        }
-      }
-
-    }
-  }
-  .btn_list{
-    width: 100%;
-    height: 40px;
-    background: rgba(1,131,250,0.1);
-    border-radius: 6px;
-    display: flex;
-    justify-content: flex-start;
-    align-items: center;
-    margin-bottom: 32px;
-    >i{
-      font-style: normal;
-      display: inline-block;
-      cursor: pointer;
-    }
-    >i:nth-of-type(1){
-      font-size: 20px;
-      color: #0045AF;
-      margin: 0 16px 0 14px;
-    }
-    >i:nth-of-type(2){
-      font-size: 16px;
-      font-family: Source Han Sans CN;
-      font-weight: bold;
-      color: #999999;
-      line-height: 16px;
-    }
-    >i:nth-of-type(3){
-      font-size: 16px;
-      font-family: Source Han Sans CN;
-      font-weight: bold;
-      color: #0045AF;
-      line-height: 16px;
-      margin: 0 28px 0 46px;
-    }
-    >i:nth-of-type(4){
-      font-size: 16px;
-      font-family: Source Han Sans CN;
-      font-weight: bold;
-      color: #0045AF;
-      line-height: 16px;
-    }
-    >i:nth-of-type(5){
-      font-size: 16px;
-      font-family: Source Han Sans CN;
-      font-weight: bold;
-      color: #FFA312;
-      line-height: 16px;
-      margin: 0 40px 0 28px;
-    }
-    .bottom-button-box{
-      display: flex;
-      width:220px;
-      margin: 0;
-      p{
-        font-size:14px;
-        height:30px;
-        width:100px;
-        line-height:30px;
-        text-align: center;
-        border-radius:4px;
-      }
-      p:nth-child(1){
-        border:1px solid #E0E0E0;
-        margin-right:20px;
-      }
-      p:nth-child(2){
-        border:1px solid #0045AF;
-      }
-    }
-  }
-</style>

+ 0 - 176
src/views/secureAccess/whitelist/indexKDNH.vue

@@ -1,176 +0,0 @@
-<!--白名单列表-->
-<template>
-  <div class="app-container whitelist">
-    <div class="whitelist-page" v-if="pageType == 1">
-      <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="90px">
-        <el-form-item label="关键字" prop="userName">
-          <el-input
-            v-model="queryParams.searchValue"
-            placeholder="姓名/工号/联系方式"
-            clearable
-            maxLength="30"
-            size="small"
-          />
-        </el-form-item>
-
-        <el-form-item>
-          <p class="inquire-button-one" @click="handleQuery">查询</p>
-          <p class="reset-button-one" @click="resetQuery">重置</p>
-        </el-form-item>
-        <el-form-item style="float: right;">
-          <el-button
-            style="margin-left: 20px"
-            type="primary"
-            plain
-            icon="el-icon-plus"
-            size="mini"
-            @click="pageClick(2)"
-            v-hasPermi="['laboratory:whitelist:add']"
-          >新增</el-button>
-        </el-form-item>
-      </el-form>
-      <el-table v-loading="loading" border :data="safe_bookList" >
-        <el-table-column label="姓名" align="left" prop="userName"/>
-        <el-table-column label="工号" align="left" prop="userNumber"/>
-        <el-table-column label="联系方式" align="left" prop="userTelephone"/>
-        <el-table-column label="学院" align="left" prop="deptName"/>
-        <el-table-column label="操作" align="center" width="160" v-if="tableButtonType">
-          <template slot-scope="scope">
-            <div class="button-box">
-              <p class="table-min-button"
-                 style="margin-right: 10px"
-                 @click="pageEditClick(2,scope.row)"
-                 v-hasPermiAnd="['laboratory:whitelist:query','laboratory:whitelist:edit']"
-              >编辑</p>
-              <p class="table-min-button"
-                 @click="delButton(scope.row)"
-                 v-hasPermi="['laboratory:whitelist:remove']"
-              >移除</p>
-            </div>
-          </template>
-        </el-table-column>
-      </el-table>
-
-      <pagination :page-sizes="[20, 30, 40, 50]"
-        v-show="total>0"
-        :total="total"
-        :page.sync="queryParams.pageNum"
-        :limit.sync="queryParams.pageSize"
-        @pagination="getList"
-      />
-    </div>
-    <add-page v-if="pageType == 2" :pageData="pageData"></add-page>
-  </div>
-</template>
-
-<script>
-  import { whitelistList,whitelistDel } from "@/api/laboratory/whitelist";
-  import addPage from './addPageKDNH.vue'
-  export default {
-    components:{
-      addPage
-    },
-    name: "whitelist",
-    data() {
-      return {
-        tableButtonType:this.hasPermiDom(['laboratory:whitelist:query','laboratory:whitelist:edit','laboratory:whitelist:remove']),
-        pageType:1,
-        // 遮罩层
-        loading: false,
-        // 显示搜索条件
-        showSearch: true,
-        // 总条数
-        total: 0,
-        // 实验室安全制度表格数据
-        safe_bookList: [],
-        // 查询参数
-        queryParams: {
-          pageNum: 1,
-          pageSize:20,
-          searchValue: null,
-        },
-        pageData:{},
-      };
-    },
-    created() {
-      this.getList();
-    },
-    methods: {
-      delButton(item){
-        let self = this;
-        this.$confirm('确定移除当前准入信息,移除后将无法进入实验室?', "警告", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        }).then(function() {
-          self.whitelistDel(item);
-        }).then(() => {}).catch(() => {});
-      },
-      whitelistDel(item){
-        whitelistDel(item.id).then(response => {
-          this.msgSuccess("删除成功");
-          this.getList();
-        });
-      },
-      getList(){
-        this.loading = true;
-        whitelistList(this.queryParams).then(response => {
-          this.safe_bookList = response.rows;
-          this.loading = false;
-        });
-      },
-      //新增
-      pageClick(type){
-        if(this.pageType != type){
-          this.pageType = type;
-          this.pageData= {};
-          if(type == 1){
-            this.getList();
-          }
-        }
-      },
-      //编辑
-      pageEditClick(type,item){
-        if(this.pageType != type){
-          this.pageType = type;
-          this.pageData=item;
-          if(type == 1){
-            this.getList();
-          }
-        }
-      },
-      /** 搜索按钮操作 */
-      handleQuery() {
-        this.queryParams.pageNum = 1;
-        this.getList();
-      },
-      /** 重置按钮操作 */
-      resetQuery() {
-        this.queryParams.searchValue='';
-        this.handleQuery();
-      },
-      handleDelete(){
-
-      },
-    }
-  };
-</script>
-
-<style scoped lang="scss">
-  .whitelist {
-    display: flex !important;
-    flex-direction: column;
-    box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.1);
-    .whitelist-page{
-      flex:1;
-      display: flex;
-      flex-direction: column;
-      padding:11px 20px 20px!important;
-      .button-box{
-        margin:0 auto;
-        width:190px;
-        display: flex;
-      }
-    }
-  }
-</style>