dedsudiyu 2 jaren geleden
bovenliggende
commit
d8cdc46667

+ 19 - 2
src/components/lookDocumentDialog/lookDocumentListDialog.vue

@@ -32,6 +32,7 @@
         <div class="left-title-box">
           <img src="@/assets/ZDimages/safetyCheck/icon_dr_wj.png">
           <p>材料附件</p>
+          <p class="button-p">全部下载</p>
         </div>
         <div class="left-for-box scrollbar-box">
           <p class="left-for-p" v-for="(iframeItem,iframeIndex) in lookDocumentList" :key="iframeIndex"
@@ -127,12 +128,28 @@
             height:13px;
             margin:13px 15px 13px 0;
           }
-          p{
+          p:nth-child(2){
+            flex:1;
             line-height:40px;
-            width:230px;
             font-size:16px;
             color:#0183FA;
           }
+          .button-p{
+            padding:0 10px;
+            margin-top:5px;
+            height:30px;
+            line-height:30px;
+            font-size:14px;
+            color:#0183FA;
+            border:1px solid #0183FA;
+            border-radius:4px;
+            cursor: pointer;
+          }
+          .button-p:hover{
+            color:#fff;
+            border:1px solid #0183FA;
+            background-color: #0183FA;
+          }
         }
         .left-for-box{
           flex:1;

+ 132 - 0
src/views/safetyCheck/checkConfiguration/checkUserPage.vue

@@ -0,0 +1,132 @@
+<template>
+  <div class="checkUserPage">
+    <el-form :model="queryParams" class="form-box" ref="queryForm" :inline="true">
+      <el-form-item label="关键字" prop="searchValue" label-width="80px">
+        <el-input
+          maxLength="30"
+          v-model="queryParams.searchValue"
+          placeholder="实验室/房间号/姓名"
+          clearable
+          style="width: 200px"/>
+      </el-form-item>
+      <el-form-item label="学院" prop="data1" label-width="50px">
+        <el-select v-model="queryParams.data1" clearable placeholder="请选择学院">
+          <el-option
+            v-for="item in deptSelectList"
+            :key="item.key"
+            :label="item.label"
+            :value="item.key">
+          </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">
+          <p class="inquire-button-one"
+             style="width:100px;"
+             @click="configButton(1)"
+          >检查者配置</p>
+        </el-col>
+      </el-form-item>
+    </el-form>
+    <el-table  border :data="tableList" ref="multipleTable">
+      <el-table-column label="序号" align="center"  type="index" width="60" />
+      <el-table-column label="实验室" align="center" prop="deptName" show-overflow-tooltip/>
+      <el-table-column label="学院" align="center" prop="deptName" show-overflow-tooltip width="300"/>
+      <el-table-column label="检查者" align="center" prop="deptName" show-overflow-tooltip width="300"/>
+      <el-table-column label="操作人" align="center" prop="deptName" show-overflow-tooltip width="200"/>
+      <el-table-column label="操作时间" align="center" prop="deptName" show-overflow-tooltip width="300"/>
+    </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"
+    />
+    <configDialog v-if="configDialogType" :configDialogData="configDialogData"></configDialog>
+  </div>
+</template>
+
+<script>
+  import configDialog from './configDialog.vue'
+  export default {
+    name: 'checkUserPage',
+    components: {
+      configDialog
+    },
+    data(){
+      return{
+        // 组件数据
+        configDialogType:false,
+        configDialogData:{
+          configType:1,//1.检查人员配置 2.整改人员配置
+        },
+        //查询数据
+        deptSelectList:[],
+        queryParams:{
+          pageNum:1,
+          pageSize:20,
+          searchValue:"",
+          data1:""
+        },
+        tableList:[{}],
+        total:0,
+      }
+    },
+    created(){
+
+    },
+    mounted(){
+
+    },
+    methods:{
+      //配置按钮
+      configButton(type){
+        if(type == 1){
+          this.$set(this,'configDialogType',true);
+        }else if(type == 2){
+          this.$set(this,'configDialogType',false);
+        }
+      },
+      //获取数据列表
+      getList(){
+        // this.queryParamsData = JSON.parse(JSON.stringify(this.queryParams));
+        // this.queryParamsData.type = 'RFID_RECOGNIZER';
+        // listHardware(this.queryParamsData).then(response => {
+        //   this.total = response.total;
+        //   this.tableList = response.rows;
+        // });
+      },
+      /** 搜索按钮操作 */
+      handleQuery() {
+        this.$set(this.queryParams,'pageNum',1);
+        this.getList();
+      },
+      /** 重置按钮操作 */
+      resetQuery() {
+        this.$set(this,'dateRange',[]);
+        this.$set(this,'queryParams',{
+          pageNum:1,
+          pageSize:20,
+          searchValue:"",
+          data1:""
+        });
+        this.handleQuery();
+      },
+    }
+  }
+</script>
+
+<style scoped lang="scss">
+  .checkUserPage{
+    padding:20px;
+    flex:1;
+    display: flex;
+    flex-direction: column;
+    overflow: hidden;
+  }
+</style>

+ 176 - 0
src/views/safetyCheck/checkConfiguration/configDialog.vue

@@ -0,0 +1,176 @@
+<template>
+  <el-dialog class="configDialog"
+             :title="configDialogData.configType==1?'检查人员配置':'整改人员配置'" :visible.sync="configDialogType" v-if="configDialogType"
+             @close="addDialogAllOff" width="1303px" append-to-body>
+    <div class="configDialog-box" v-if="configPageType == 1">
+      <div class="configDialog-content-box">
+        <div class="configDialog-content-min-box">
+          <p class="configDialog-content-min-title">实验室检查人员配置:</p>
+          <div class="configDialog-content-min-checkbox">
+            <el-checkbox-group v-model="data1" @change="checkboxChange">
+              <el-checkbox style="width:170px;margin-right:70px;"
+                           v-for="item in checkList" :value="item.key" :label="item.key" :key="item.key">{{item.label}}</el-checkbox>
+            </el-checkbox-group>
+          </div>
+          <p v-if="checkType" class="configDialog-content-min-button">配置</p>
+          <div class="configDialog-content-min-text-box">
+            <p></p>
+            <p></p>
+            <p>实验室白名单内的老师</p>
+            <p v-if="checkType">拥有实验室安全准入资格的学生</p>
+          </div>
+        </div>
+      </div>
+      <div class="dialog-footer-box">
+        <p class="dialog-footer-button-null"></p>
+        <p class="dialog-footer-button-info">取消</p>
+        <p class="dialog-footer-button-primary">确定</p>
+        <p class="dialog-footer-button-null"></p>
+      </div>
+    </div>
+    <div class="configDialog-user-box" v-if="configPageType == 2">
+      <div class="configDialog-user-content-box">
+      </div>
+      <div class="dialog-footer-box">
+        <p class="dialog-footer-button-null"></p>
+        <p class="dialog-footer-button-info">取消</p>
+        <p class="dialog-footer-button-primary">确定</p>
+        <p class="dialog-footer-button-null"></p>
+      </div>
+    </div>
+  </el-dialog>
+</template>
+
+<script>
+  export default {
+    name: 'configDialog',
+    props:{
+      configDialogData:{},
+    },
+    data(){
+      return{
+        configDialogType:true,
+        configPageType:1,
+        data1:[],
+        checkList:[
+          {
+            key:"1",
+            label:"实验室安全责任人",
+          },
+          {
+            key:"2",
+            label:"实验室负责人",
+          },
+          {
+            key:"3",
+            label:"全部老师",
+          },
+          {
+            key:"4",
+            label:"全部学生",
+          },
+        ],
+        checkType:false,
+      }
+    },
+    created(){
+
+    },
+    mounted(){
+
+    },
+    methods:{
+      checkboxChange(val){
+        let self = this;
+        if(val[0]){
+          let num = 0;
+          for(let i=0;i<val.length;i++){
+            if(val[i] == '4'){
+              num++
+            }
+          }
+          console.log(num)
+          this.$set(this,'checkType',num != 0?true:false);
+        }else{
+          this.$set(this,'checkType',false);
+        }
+      },
+      //窗口关闭
+      addDialogAllOff(){
+        this.$parent.configButton(2)
+      },
+      addDialogOff(){
+        this.$parent.configButton(2)
+      }
+    }
+  }
+</script>
+
+<style scoped lang="scss">
+  .configDialog{
+    overflow: hidden;
+    .configDialog-box{
+      height:600px;
+      display: flex;
+      flex-direction: column;
+      overflow: hidden;
+      .configDialog-content-box{
+        flex:1;
+        padding:0 70px;
+        .configDialog-content-min-box{
+          height:160px;
+          border-radius:4px;
+          border: 1px solid #F5F5F5;
+          padding:0 30px;
+          position: relative;
+          .configDialog-content-min-title{
+            margin-top:19px;
+            margin-bottom:32px;
+            line-height:20px;
+            font-size:14px;
+            color:#333;
+          }
+          .configDialog-content-min-checkbox{
+
+          }
+          .configDialog-content-min-button{
+            position: absolute;
+            top:65px;
+            right:205px;
+            background-color: #0045AF;
+            width:70px;
+            height:30px;
+            line-height:30px;
+            text-align: center;
+            color:#fff;
+            border-radius:4px;
+            cursor: pointer;
+          }
+          .configDialog-content-min-text-box{
+            display: flex;
+            margin-top:15px;
+            p{
+              width:240px;
+              color:#999999;
+            }
+          }
+        }
+      }
+      .dialog-footer-box{
+        display: flex;
+      }
+    }
+    .configDialog-user-box{
+      height:600px;
+      display: flex;
+      flex-direction: column;
+      overflow: hidden;
+      .configDialog-user-content-box{
+        flex:1;
+      }
+      .dialog-footer-box{
+        display: flex;
+      }
+    }
+  }
+</style>

+ 92 - 0
src/views/safetyCheck/checkConfiguration/index.vue

@@ -0,0 +1,92 @@
+<template>
+  <div class="app-container checkConfiguration">
+    <div class="checkConfiguration-title-box">
+      <div :class="buttonType==1?'check-box':''" @click="buttonTitleClick(1)">
+        <p>检查人员</p>
+        <p></p>
+      </div>
+      <div :class="buttonType==2?'check-box':''" @click="buttonTitleClick(2)">
+        <p>整改人员</p>
+        <p></p>
+      </div>
+    </div>
+    <checkUserPage v-if="buttonType==1"></checkUserPage>
+    <rectificationUserPage v-if="buttonType==2"></rectificationUserPage>
+  </div>
+</template>
+
+<script>
+  import checkUserPage from './checkUserPage.vue'
+  import rectificationUserPage from './rectificationUserPage.vue'
+  export default {
+    name: 'index',
+    components: {
+      checkUserPage,
+      rectificationUserPage,
+    },
+    data(){
+      return{
+        buttonType:1,
+      }
+    },
+    created(){
+
+    },
+    mounted(){
+
+    },
+    methods:{
+      //页面切换
+      buttonTitleClick(type){
+        if(this.buttonType != type){
+          this.$set(this,'buttonType',type)
+        }
+      },
+    }
+  }
+</script>
+
+<style scoped lang="scss">
+  .checkConfiguration{
+    flex:1;
+    display: flex;
+    flex-direction: column;
+    overflow: hidden!important;
+    *{
+      font-weight:500;
+    }
+    .checkConfiguration-title-box{
+      padding:0 20px;
+      display: flex;
+      border-bottom:1px solid #E0E0E0;
+      div{
+        height:80px;
+        margin-right:40px;
+        cursor: pointer;
+        p:nth-child(1){
+          width:80px;
+          font-size:16px;
+          text-align: center;
+          color:#333;
+          line-height:40px;
+          height:40px;
+          margin-top:20px;
+        }
+        p:nth-child(2){
+          width:60px;
+          height: 4px;
+          border-radius:4px;
+          margin:0 10px;
+        }
+      }
+      .check-box{
+        p:nth-child(1){
+          color:#0045AF;
+        }
+        p:nth-child(2){
+          background-color: #0045AF;
+        }
+      }
+    }
+  }
+</style>

+ 131 - 0
src/views/safetyCheck/checkConfiguration/rectificationUserPage.vue

@@ -0,0 +1,131 @@
+<template>
+  <div class="rectificationUserPage">
+    <el-form :model="queryParams" class="form-box" ref="queryForm" :inline="true">
+      <el-form-item label="关键字" prop="searchValue" label-width="80px">
+        <el-input
+          maxLength="30"
+          v-model="queryParams.searchValue"
+          placeholder="实验室/房间号/姓名"
+          clearable
+          style="width: 200px"/>
+      </el-form-item>
+      <el-form-item label="学院" prop="data1" label-width="50px">
+        <el-select v-model="queryParams.data1" clearable placeholder="请选择学院">
+          <el-option
+            v-for="item in deptSelectList"
+            :key="item.key"
+            :label="item.label"
+            :value="item.key">
+          </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">
+          <p class="inquire-button-one"
+             style="width:100px;"
+             @click="configButton(1)"
+          >检查者配置</p>
+        </el-col>
+      </el-form-item>
+    </el-form>
+    <el-table  border :data="tableList" ref="multipleTable">
+      <el-table-column label="序号" align="center"  type="index" width="60" />
+      <el-table-column label="实验室" align="center" prop="deptName" show-overflow-tooltip/>
+      <el-table-column label="学院" align="center" prop="deptName" show-overflow-tooltip width="300"/>
+      <el-table-column label="检查者" align="center" prop="deptName" show-overflow-tooltip width="300"/>
+      <el-table-column label="整改人" align="center" prop="deptName" show-overflow-tooltip width="200"/>
+      <el-table-column label="操作时间" align="center" prop="deptName" show-overflow-tooltip width="300"/>
+    </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"
+    />
+    <configDialog v-if="configDialogType" :configDialogData="configDialogData"></configDialog>
+  </div>
+</template>
+
+<script>
+  import configDialog from './configDialog.vue'
+  export default {
+    name: 'rectificationUserPage',
+    components: {
+      configDialog
+    },
+    data(){
+      return{
+        // 组件数据
+        configDialogType:false,
+        configDialogData:{
+          configType:2,//1.检查人员配置 2.整改人员配置
+        },
+        //查询数据
+        deptSelectList:[],
+        queryParams:{
+          pageNum:1,
+          pageSize:20,
+          searchValue:"",
+          data1:""
+        },
+        tableList:[{}],
+        total:0,
+      }
+    },
+    created(){
+
+    },
+    mounted(){
+
+    },
+    methods:{
+      //配置按钮
+      configButton(type){
+        if(type == 1){
+          this.$set(this,'configDialogType',true);
+        }else if(type == 2){
+          this.$set(this,'configDialogType',false);
+        }
+      },
+      //获取数据列表
+      getList(){
+        // this.queryParamsData = JSON.parse(JSON.stringify(this.queryParams));
+        // this.queryParamsData.type = 'RFID_RECOGNIZER';
+        // listHardware(this.queryParamsData).then(response => {
+        //   this.total = response.total;
+        //   this.tableList = response.rows;
+        // });
+      },
+      /** 搜索按钮操作 */
+      handleQuery() {
+        this.$set(this.queryParams,'pageNum',1);
+        this.getList();
+      },
+      /** 重置按钮操作 */
+      resetQuery() {
+        this.$set(this,'queryParams',{
+          pageNum:1,
+          pageSize:20,
+          searchValue:"",
+          data1:""
+        });
+        this.handleQuery();
+      },
+    }
+  }
+</script>
+
+<style scoped lang="scss">
+  .rectificationUserPage{
+    padding:20px;
+    flex:1;
+    display: flex;
+    flex-direction: column;
+    overflow: hidden;
+  }
+</style>

+ 0 - 2
src/views/safetyCheck/components/infoPage/infoPage.vue

@@ -44,7 +44,6 @@
               <el-form-item label="材料附件" prop="data6" style="width: 300px">
                 <div class="data-button-box">
                   <p class="look-button" @click="lookDocumentListButton(1)">查看</p>
-                  <p class="download-button">下载</p>
                 </div>
               </el-form-item>
             </div>
@@ -65,7 +64,6 @@
             <el-form-item label="材料附件" prop="data6" style="width: 450px">
               <div class="data-button-box">
                 <p class="look-button" @click="lookDocumentListButton(1)">查看</p>
-                <p class="download-button">下载</p>
               </div>
             </el-form-item>
           </div>