heyang преди 2 години
родител
ревизия
e616133849

+ 3 - 2
src/api/laboratory/admissionConfiguration.js

@@ -1,10 +1,11 @@
 import request from '@/utils/request'
 
 //获取准入模板
-export function subjectmaterial() {
+export function subjectmaterial(query) {
   return request({
     url: '/laboratory/subjectmaterial/listData',
-    method: 'get'
+    method: 'get',
+    params: query
   })
 }
 

+ 11 - 47
src/views/comprehensive/laboratoryManagement/subject/addSubject.vue

@@ -78,13 +78,20 @@
       <el-form-item label="房间号" prop="room" class="form-item">
         <el-input
           style="width:320px;"
-          maxlength="30"
+          maxlength="10"
           v-model="form.room"
           placeholder="请输房间号"
           clearable
           size="small"
         />
       </el-form-item>
+      <el-form-item label="准入设备"  class="form-item">
+        <el-select v-model="form.hardwareType" placeholder="请选择整改类型" style="width:230px;">
+          <el-option label="无"  :value=null />
+          <el-option label="海康智能门禁" :value="1" />
+          <el-option label="电子信息牌" :value="2" />
+        </el-select>
+      </el-form-item>
       <!--<el-form-item label="详细位置" prop="layoutId" class="form-item">-->
         <!--<el-select v-model="form.layoutId"  placeholder="请选择详细位置" style="width:320px;">-->
           <!--<el-option-->
@@ -153,52 +160,6 @@
             </el-select>
           </el-form-item>
         </div>
-<!--        <div class="left-form-box">-->
-
-<!--          <el-form-item label="安全警示标识" prop="safeSigns" class="form-item">-->
-<!--            <el-select v-model="form.safeSigns" multiple  placeholder="请选择安全警示标识" style="width:500px;">-->
-<!--              <el-option-->
-<!--                v-for="dict in safetyWarning"-->
-<!--                :key="dict.dictValue"-->
-<!--                :label="dict.dictLabel"-->
-<!--                :value="dict.dictValue"-->
-<!--              ></el-option>-->
-<!--            </el-select>-->
-<!--          </el-form-item>-->
-<!--          <el-form-item label="风控防控措施" prop="riskMeasure" class="form-item">-->
-<!--            <el-select v-model="form.riskMeasure" multiple  placeholder="请选择风险防控措施" style="width:500px;">-->
-<!--              <el-option-->
-<!--                v-for="dict in riskMeasure"-->
-<!--                :key="dict.dictValue"-->
-<!--                :label="dict.dictLabel"-->
-<!--                :value="dict.dictValue"-->
-<!--              ></el-option>-->
-<!--            </el-select>-->
-<!--          </el-form-item>-->
-<!--        </div>-->
-<!--        <div class="right-form-box">-->
-
-<!--          <el-form-item label="主要危险类别" prop="hazardCategory" class="form-item">-->
-<!--            <el-select v-model="form.hazardCategory" multiple  placeholder="请选择主要危险类别" style="width:500px;">-->
-<!--              <el-option-->
-<!--                v-for="dict in hazardCategory"-->
-<!--                :key="dict.dictValue"-->
-<!--                :label="dict.dictLabel"-->
-<!--                :value="dict.dictValue"-->
-<!--              ></el-option>-->
-<!--            </el-select>-->
-<!--          </el-form-item>-->
-<!--          <el-form-item label="灭火要点" prop="outfire" class="form-item">-->
-<!--            <el-select v-model="form.outfire" multiple  placeholder="请选择灭火要点" style="width:500px;">-->
-<!--              <el-option-->
-<!--                v-for="dict in extinguishingKeyPoints"-->
-<!--                :key="dict.dictValue"-->
-<!--                :label="dict.dictLabel"-->
-<!--                :value="dict.dictValue"-->
-<!--              ></el-option>-->
-<!--            </el-select>-->
-<!--          </el-form-item>-->
-<!--        </div>-->
       </div>
       <div class="title-box">
         <p class="left-title">实验室简介</p>
@@ -252,6 +213,7 @@
           safetyInfoList:[],
           form:{
             details:"",
+            hardwareType:null,
           },
           // 表单校验
           rules: {
@@ -325,6 +287,7 @@
           this.$set(this.form,'buildId',this.subjectData.buildId)
           this.$set(this.form,'floorId',this.subjectData.floorId)
           this.$set(this.form,'room',this.subjectData.room)
+          this.$set(this.form,'hardwareType',this.subjectData.hardwareType)
           this.$set(this.form,'details',this.subjectData.details)
           this.$refs.UEditor.text=unescape(this.subjectData.details)
           // this.$set(this.form,'layoutId',this.subjectData.layoutId)
@@ -376,6 +339,7 @@
                   list[i].privateList=list2
                 }
               }
+              console.log('list',list)
               this.safetyInfoList=list
             }
             this.optionsUserOne = list;

+ 16 - 9
src/views/comprehensive/laboratoryManagement/subject/admissionConfiguration.vue

@@ -19,7 +19,7 @@
             disabled
           />
         </el-form-item>
-        <el-form-item label="考勤方式"  prop="authType" class="form-item">
+        <el-form-item label="考勤方式"  prop="authType" class="form-item" v-if="subjectData.xxpCardInfoId">
           <el-select v-model="form.authType" clearable >
             <el-option
               v-for="item in verifyWayList"
@@ -29,10 +29,10 @@
             </el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="考勤密码:" prop="password"   class="form-item">
+        <el-form-item label="考勤密码:" prop="authPwd"   class="form-item" v-if="subjectData.xxpCardInfoId">
           <el-input
             maxlength="16"
-            v-model="form.password"
+            v-model="form.authPwd"
             placeholder=""
             clearable
             size="small"
@@ -71,14 +71,17 @@ export default {
       //老师模板
       listTeacher:[],
       newUpDataType:false,
-      form:{},
+      form:{
+        authType:'',
+        authPwd:'',
+      },
       verifyWayList:[],
       // 表单校验
       rules: {
         authType: [
           { required: true, message: "请选择考勤方式", trigger: "blur" },
         ],
-        password: [
+        authPwd: [
           { required: true, message: "考勤密码最少8位 最多16位,必须同时包含字母和数字", trigger: "blur" },
           { pattern:/^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,16}$/, message: "考勤密码最少8位 最多16位,必须同时包含字母和数字", trigger: "blur" }
         ],
@@ -86,11 +89,12 @@ export default {
     }
   },
   created() {
-    this.subjectmaterial();
-    this.getSignTypeList();
+
 
   },
   mounted(){
+    this.subjectmaterial();
+    this.getSignTypeList();
   },
   methods:{
     /** 查询门禁授权类型 */
@@ -98,7 +102,6 @@ export default {
       getSignTypeList().then(response => {
         if(response.code==200){
           this.verifyWayList=response.rows
-          console.log(this.verifyWayList)
         }
       });
     },
@@ -140,6 +143,8 @@ export default {
             teacherList:[],
           };
           newData.labSubjectList.push({id:this.subjectData.id});
+          newData.authType=this.form.authType
+          newData.authPwd=this.form.authPwd
           for(let i=0;i<self.listStudent.length;i++){
             if(self.listStudent[i].checkType){
               let obj = {
@@ -181,7 +186,7 @@ export default {
     //获取准入模板
     subjectmaterial(){
       this.loading = true;
-      subjectmaterial().then( response => {
+      subjectmaterial({subjectId:this.subjectData.id}).then( response => {
         for(let i=0;i<response.data.listStudent.length;i++){
           response.data.listStudent[i].checkType = false;
         }
@@ -190,6 +195,8 @@ export default {
         }
         this.$set(this,'listStudent',response.data.listStudent);
         this.$set(this,'listTeacher',response.data.listTeacher);
+        this.form.authType=response.data.cardInfo.authType+'';
+        this.form.authPwd=response.data.cardInfo.authPwd;
         this.subjectId();
       });
     },

+ 1 - 0
src/views/comprehensive/laboratoryManagement/subject/associationConfiguration.vue

@@ -405,6 +405,7 @@
         let obj = {
           id:self.form.id,
           skipped:self.form.skipped,
+          inspectSkipped:self.form.inspectSkipped,
         }
         if(self.form.skipped == 1 && self.form.checkIn[0]){
           obj.checkCount = self.form.checkCount

+ 12 - 4
src/views/comprehensive/laboratoryManagement/subject/deviceList.vue

@@ -22,10 +22,10 @@
       </div>
       <p class="add-for-p" @click="addData(1)"><i class="el-icon-plus"></i>添加传感器</p>
     </div>
-    <div class="title-box">
+    <div class="title-box" v-if="subjectData.hardwareType==1">
       <p class="left-title">智能门禁</p>
     </div>
-    <div class="for-max-box">
+    <div class="for-max-box" v-if="subjectData.hardwareType==1">
       <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">
@@ -117,10 +117,10 @@
       </div>
       <p class="add-for-p-two" @click="addData(4)"><i class="el-icon-plus"></i>添加摄像头</p>
     </div>
-    <div class="title-box">
+    <div class="title-box" v-if="subjectData.hardwareType==2">
       <p class="left-title">电子信息牌</p>
     </div>
-    <div class="for-max-box">
+    <div class="for-max-box" v-if="subjectData.hardwareType==2">
       <div class="for-big-box" v-for="(item,index) in listXxp" :key="index">
         <p class="for-title-p">{{subjectData.room}}-{{item.cardName}}{{index+1}}</p>
         <div class="for-text-box">
@@ -820,6 +820,8 @@ export default {
         cardNum:this.form.cardNum,
         location:this.form.location,
         isStart:this.form.isStart,
+        deptId:this.subjectData.deptId,
+        deptName:this.subjectData.deptName,
       }
       subjectSignAdd(obj).then(response => {
         if(response.code==200){
@@ -838,6 +840,8 @@ export default {
         isStart:this.form.isStart,
         subjectId:this.subjectData.id,
         subjectName:this.subjectData.name,
+        deptId:this.subjectData.deptId,
+        deptName:this.subjectData.deptName,
       }
       subjectSignEdit(obj).then(response => {
         this.msgSuccess(response.msg)
@@ -900,6 +904,8 @@ export default {
           subjectId:"",
           location:"",
           isStart:"",
+          deptId:"",
+          deptName:"",
         });
       }
       this.addType = true;
@@ -939,8 +945,10 @@ export default {
       this.addType = true;
       this.upType = type;
     },
+
     //获取列表
     listBySubjectId(){
+      console.log(this.subjectData)
       let obj = {
         subjectId:this.subjectData.id
       };

+ 2 - 1
src/views/safetyInfo/safetyInfoCategory/safetyInfoCategory.vue

@@ -229,7 +229,8 @@ export default {
       },
       /** 取消按钮 */
       cancel() {
-        this.open = false;
+        this.$refs['form'].clearValidate()
+        this.open=false
       },
       /** 提交按钮 */
       submitForm() {

+ 4 - 3
src/views/safetyInfo/safetyInfoConfig/safetyInfoConfig.vue

@@ -97,7 +97,7 @@
             </div>
           </el-upload>
         </el-form-item>
-        <P v-if="form.infoType==2" style="margin-left: 80px">图片最大上传78*630,建议尺寸78*58</P>
+        <P v-if="form.infoType==2" style="margin-left: 80px">图片最大上传630*78,建议尺寸58*78</P>
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button type="primary" @click="submitForm">确 定</el-button>
@@ -253,6 +253,7 @@ export default {
       },
       /** 取消按钮 */
       cancel() {
+        this.$refs['form'].clearValidate()
         this.open = false;
       },
       /** 提交按钮 */
@@ -292,10 +293,10 @@ export default {
               image.onload = _=>{
                 console.log(image.width)
                 console.log(image.height)
-                if(image.width <= 78 && image.height <= 630){
+                if(image.width <= 630 && image.height <= 78){
                   resolve()
                 }else{
-                  this.$message.error('尺寸限制为最大78*630px,支持PNG格式')
+                  this.$message.error('尺寸限制为最大630*78px,支持PNG格式')
                   reject();
                 }
               }