heyang 4 months ago
parent
commit
ecc9393ea9

+ 2 - 2
api/commonality/permission.js

@@ -20,9 +20,9 @@ export const systemSubjectGetListByPower = (data) => {
 	})
 	})
 };
 };
 //根据权限查询实验室列表
 //根据权限查询实验室列表
-export const systemSubjectGetList = (data) => {
+export const laboratorySubRelInfoSelectByPage = (data) => {
 	return apiResquest({
 	return apiResquest({
-		url: `/system/subject/getList`,
+		url: `/laboratory/subRelInfo/selectByPage`,
 		method: 'POST',
 		method: 'POST',
 		data: { ...data }
 		data: { ...data }
 	})
 	})

+ 2 - 2
api/request/config.js

@@ -1,5 +1,5 @@
 const config = {
 const config = {
-	 base_url: 'http://192.168.1.43/api', //43服务器
+	// base_url: 'http://192.168.1.43/api', //43服务器
 	// base_url: 'http://192.168.1.8/api',//1.8服务器
 	// base_url: 'http://192.168.1.8/api',//1.8服务器
 	//base_url: 'http://192.168.1.9:8080',//柴
 	//base_url: 'http://192.168.1.9:8080',//柴
 	// base_url: 'http://192.168.1.24:8080',//林总
 	// base_url: 'http://192.168.1.24:8080',//林总
@@ -22,7 +22,7 @@ const config = {
 	// base_url: 'https://znyj.zjznai.suda.edu.cn/labSystem/', //苏大临时地址
 	// base_url: 'https://znyj.zjznai.suda.edu.cn/labSystem/', //苏大临时地址
 	// base_url: 'https://labcontrol.nwafu.edu.cn/api/', //西北农林
 	// base_url: 'https://labcontrol.nwafu.edu.cn/api/', //西北农林
 	// base_url: 'http://172.16.0.65/api/', //西北农林
 	// base_url: 'http://172.16.0.65/api/', //西北农林
-	//base_url: 'https://lab.zjznai.com/labapp/', //43测试
+	base_url: 'https://lab.zjznai.com/labapp/', //43测试
 }
 }
 export {
 export {
 	config
 	config

+ 145 - 45
pages_manage/views/laboratory/safetyCardScan.vue

@@ -24,9 +24,12 @@
 				<view class="lab-info-c">
 				<view class="lab-info-c">
 					<view class="lab-info-c-t">
 					<view class="lab-info-c-t">
 						<view class="lab-info-c-t-l">{{newData.subName}}</view>
 						<view class="lab-info-c-t-l">{{newData.subName}}</view>
-						<view class="lab-info-c-t-r">
-							<text>{{newData.levelName}}</text>
-							<text>{{newData.typeName}}</text>
+						<view class="lab-info-c-t-r"
+							:style="'border:1rpx solid '+newData.levelColor+';background:'+newData.levelColorTow+';'">
+							<text
+								:style="'border-right:1rpx solid '+newData.levelColor+';color:'+newData.levelColor+';'">{{newData.levelName?newData.levelName:''}}</text>
+							<text
+								:style="'color:'+newData.levelColor+';'">{{newData.typeName?newData.typeName:''}}</text>
 						</view>
 						</view>
 					</view>
 					</view>
 					<view class="lab-info-c-b">
 					<view class="lab-info-c-b">
@@ -97,13 +100,14 @@
 			<view class="null-box" @click="dialogClose()"></view>
 			<view class="null-box" @click="dialogClose()"></view>
 			<view class="shade_n">
 			<view class="shade_n">
 				<view class="title">
 				<view class="title">
-					<view>检查批次</view>
+					<view>{{dialogTtile}}</view>
 					<img src="@/pages_safetyCheck/images/icon_06.png">
 					<img src="@/pages_safetyCheck/images/icon_06.png">
 				</view>
 				</view>
 				<view class="batch">
 				<view class="batch">
-					<view class="batch-li" @click="batchClick(item)" v-for="(item,index) in shadeList">
+					<view class="batch-li" @click="batchClick(item)" v-for="(item,index) in batchList">
 						<view class="batch-li-l">
 						<view class="batch-li-l">
-							<text>{{item.planTitle}}</text>
+							<text v-if="dialogStatus==0">{{item.planTitle}}</text>
+							<text v-if="dialogStatus==1">{{item.checkName}}</text>
 						</view>
 						</view>
 						<view class="batch-li-r">
 						<view class="batch-li-r">
 							<img src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
 							<img src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
@@ -129,7 +133,9 @@
 		pageRestrictVerify
 		pageRestrictVerify
 	} from '@/utils/index'
 	} from '@/utils/index'
 	import {
 	import {
-		securityAppCheckPlanTitleList,
+		securityAppCheckPlanAppTitleList,
+		securityAppCheckManageList,
+		securityAppCheckSetOptionList,
 	} from '@/pages_safetyCheck/api/index.js'
 	} from '@/pages_safetyCheck/api/index.js'
 	import {
 	import {
 		iotControl
 		iotControl
@@ -190,13 +196,19 @@
 				// 空调弹窗
 				// 空调弹窗
 				airConditioningData: null,
 				airConditioningData: null,
 				saoCodeType: false,
 				saoCodeType: false,
-				dialogVisible: true,
-				shadeList: [],
+				dialogVisible: false,
+				dialogTtile: '',
+				dialogStatus: 0, //0计划 1批次 2实验室
+				batchData: {},
+				batchList: [],
 				queryParams: {
 				queryParams: {
 					page: 1,
 					page: 1,
 					pageSize: 100,
 					pageSize: 100,
 					checkCategory: '', //1校院巡查 2学院自查
 					checkCategory: '', //1校院巡查 2学院自查
+					subId:'',
 				},
 				},
+				checkPlanSetVoList:null,
+				form:{},
 
 
 			}
 			}
 		},
 		},
@@ -216,6 +228,9 @@
 					newData.labInfoBrandModels[i].showType = true;
 					newData.labInfoBrandModels[i].showType = true;
 				}
 				}
 			}
 			}
+			if(newData.levelColor){
+				newData.levelColorTow = this.hexToRgb(newData.levelColor, 0.2)
+			}
 			this.$nextTick(() => {
 			this.$nextTick(() => {
 				this.$set(this, 'newData', newData);
 				this.$set(this, 'newData', newData);
 				this.$set(this, 'subjectData', newData);
 				this.$set(this, 'subjectData', newData);
@@ -227,24 +242,91 @@
 
 
 		},
 		},
 		mounted() {
 		mounted() {
-			this.securityAppCheckPlanTitleList();
+			
 		},
 		},
 		methods: {
 		methods: {
+			dialogClose(){
+				this.dialogVisible=false;
+			},
+			//十六进制颜色值和RGB格式转换
+			hexToRgb(hex, opacity = 1) {
+				// 去除#号
+				var color = hex.replace("#", "");
+				// 分割成红、绿、蓝三部分的16进制字符串
+				var red = parseInt(color.substring(0, 2), 16);
+				var green = parseInt(color.substring(2, 4), 16);
+				var blue = parseInt(color.substring(4, 6), 16);
+				return `RGB(${red}, ${green}, ${blue},${opacity})`;
+			},
+			batchClick(row) {
+				let self=this;
+				if (this.dialogStatus == 0) { //计划点击
+					if (row.checkPlanSetVoList.length ==1) {
+						//如果只有1个检查批次不弹窗
+						this.$set(this, 'batchData', {
+							planId: row.planId,
+							planTitle: row.planTitle,
+							checkCategory: row.checkCategory,
+							checkTypeName: row.checkTypeName,
+							crossCheck: row.crossCheck,
+							checkPlanSetVoList: row.checkPlanSetVoList[0]
+						});
+						let planSetId = row.checkPlanSetVoList[0].planSetId
+						self.checkPlanSetVoList=row.checkPlanSetVoList[0];
+						self.securityAppCheckManageList(planSetId)
+					} else {
+						this.$set(this, 'batchData', {
+							planId: row.planId,
+							planTitle: row.planTitle,
+							checkCategory: row.checkCategory,
+							checkTypeName: row.checkTypeName,
+							crossCheck: row.crossCheck,
+						});
+						this.$set(this, 'batchList', row.checkPlanSetVoList);
+						this.dialogStatus = 1;
+						this.dialogTtile = '批次';
+						this.dialogVisible = true;
+						
+					}
+				} else if (this.dialogStatus == 1) { //批次点击
+					this.dialogStatus = 2;
+					this.dialogTtile = '实验室';
+					let planSetId = row.planSetId
+					console.log(row)
+					self.checkPlanSetVoList=row;
+					this.securityAppCheckManageList(planSetId)
+				}
+			},
 			//查询计划
 			//查询计划
-			async securityAppCheckPlanTitleList() {
+			async securityAppCheckPlanAppTitleList() {
+				console.log(this.newData.subId)
+				this.queryParams.subId=this.newData.subId;
+				this.queryParams.checkStatus=1;
 				let self = this;
 				let self = this;
 				const {
 				const {
 					data
 					data
-				} = await securityAppCheckPlanTitleList(this.queryParams);
-				if (data.code == 200) {
-					//this.shadeList = data.data.records;
-					if (data.data.record[0]) { //一个计划
-						let planSetId = data.data.record[0]
-						if (data.data.record[0].checkPlanSetVoList[0]) { //一个批次
-							let planSetId = data.data.record[0].checkPlanSetVoList[0].planSetId
+				} = await securityAppCheckPlanAppTitleList(this.queryParams);
+				if (data.code == 200 && data.data.records[0]) {
+					if (data.data.records.length == 1) { //一个计划
+						let planSetId = data.data.records[0]
+						if (data.data.records[0].checkPlanSetVoList[0]) { //一个批次
+							let planSetId = data.data.records[0].checkPlanSetVoList[0].planSetId
+							self.checkPlanSetVoList=data.data.records[0].checkPlanSetVoList[0];
 							self.securityAppCheckManageList(planSetId)
 							self.securityAppCheckManageList(planSetId)
 						}
 						}
+					} else { //多个计划
+						this.batchList = data.data.records;
+						this.dialogVisible = true;
+						this.dialogTtile = '计划标题';
 					}
 					}
+				}else{
+					uni.showToast({
+						title: '该实验室暂无检查计划!',
+						icon: "none",
+						mask: true,
+						duration: 2000
+					});
+					return
 				}
 				}
 			},
 			},
 			//检查任务-在此结果里对比实验室Id判断是否有实验室
 			//检查任务-在此结果里对比实验室Id判断是否有实验室
@@ -254,53 +336,56 @@
 					page: 1,
 					page: 1,
 					pageSize: 20,
 					pageSize: 20,
 					planSetId: planSetId,
 					planSetId: planSetId,
+					subId:self.newData.subId,
 				}
 				}
 				const {
 				const {
 					data
 					data
-				} = await securityAppCheckManageList(this.queryParams);
+				} = await securityAppCheckManageList(obj);
 				if (data.code == 200) {
 				if (data.code == 200) {
 					//this.shadeList = data.data.records;
 					//this.shadeList = data.data.records;
-					data.data.records.forEach(function(item, index) {
-						if (self.newData.subId == item.subId) {
-							let manageId = item.manageId
-							self.securityAppCheckSetOptionList(manageId)
-						} else {
-							uni.showToast({
-								title: '该实验室暂无检查计划!',
-								icon: "none",
-								mask: true,
-								duration: 2000
-							});
-							return
-						}
-					})
-
+					if(data.data.records[0]){
+						let manageId = data.data.records[0].manageId;
+						self.securityAppCheckSetOptionList(data.data.records[0]);
+					}else {
+						self.dialogVisible = false;
+						uni.showToast({
+							title: '该实验室暂无检查计划!',
+							icon: "none",
+							mask: true,
+							duration: 2000
+						});
+						return
+					}
 
 
 				}
 				}
 			},
 			},
 			//查询检查项
 			//查询检查项
-			async securityAppCheckSetOptionList(manageId) {
+			async securityAppCheckSetOptionList(item) {
 				let self = this;
 				let self = this;
+				let upData=item;
 				let obj = {
 				let obj = {
 					page: 1,
 					page: 1,
 					pageSize: 20,
 					pageSize: 20,
 					checkStatus: '0',
 					checkStatus: '0',
-					manageId: manageId,
+					manageId: upData.manageId,
 				}
 				}
 				const {
 				const {
 					data
 					data
-				} = await securityAppCheckManageList(this.queryParams);
+				} = await securityAppCheckSetOptionList(obj);
 				if (data.code == 200) {
 				if (data.code == 200) {
 					if (data.data.records[0]) {
 					if (data.data.records[0]) {
-						let infoData = row;
+						let infoData = {};
 						infoData.pageType = 0;
 						infoData.pageType = 0;
 						infoData.itemsStatus = 0;
 						infoData.itemsStatus = 0;
+						infoData.subName = upData.subName;
+						infoData.checkPlanSetVoList = self.checkPlanSetVoList;
+						infoData.roomNum = upData.roomNum;
 						infoData.subId = data.data.records[0].subId;
 						infoData.subId = data.data.records[0].subId;
 						infoData.manageId = data.data.records[0].manageId;
 						infoData.manageId = data.data.records[0].manageId;
 						infoData.setOptionId = data.data.records[0].setOptionId;
 						infoData.setOptionId = data.data.records[0].setOptionId;
 						infoData.hazardCheckPro = data.data.records[0].hazardCheckPro;
 						infoData.hazardCheckPro = data.data.records[0].hazardCheckPro;
 						uni.redirectTo({
 						uni.redirectTo({
-							url: '/pages_safetyCheck/views/inspectManage/inspectAdd?infoData=' +
+							url: '/pages_safetyCheck/views/inspectManage/conductInspections?infoData=' +
 								encodeURIComponent(
 								encodeURIComponent(
 									JSON
 									JSON
 									.stringify(infoData))
 									.stringify(infoData))
@@ -380,13 +465,28 @@
 				}
 				}
 				if (type == 'securityCheck') {
 				if (type == 'securityCheck') {
 					//安全检查
 					//安全检查
-					uni.navigateTo({
+					this.securityAppCheckPlanAppTitleList();
+					/* uni.navigateTo({
 						url: "/pages_safetyCheck/views/safetyCheck",
 						url: "/pages_safetyCheck/views/safetyCheck",
-					});
+					}); */
 				} else if (type == 'snapshot') {
 				} else if (type == 'snapshot') {
-					//随手拍
-					uni.navigateTo({
-						url: "/pages_safetyCheck/views/snapshotManage/snapshotList",
+					console.log(this.newData)
+					this.$set(this.form, "subId", this.newData.subId)
+					this.$set(this.form, "subName", this.newData.subName)
+					this.$set(this.form, "subRoom", this.newData.roomNum)
+					this.$set(this.form, "deptId", this.newData.deptId)
+					this.$set(this.form, "deptName", this.newData.deptName)
+					this.$set(this.form, "buildId", this.newData.buildId)
+					this.$set(this.form, "buildName", this.newData.buildName)
+					this.$set(this.form, "floorId", this.newData.floorId)
+					this.$set(this.form, "floorName", this.newData.floorName)
+					this.$set(this.form, "typeId", this.newData.typeId)
+					this.$set(this.form, "classTypeNames", this.newData.typeName)
+					this.$set(this.form, "levelId", this.newData.levelId)
+					this.$set(this.form, "classLevelName", this.newData.levelName)
+					uni.redirectTo({
+						url: '/pages_safetyCheck/views/snapshotManage/snapshotList?form=' +
+							encodeURIComponent(JSON.stringify(this.form))
 					});
 					});
 				}
 				}
 			},
 			},
@@ -515,8 +615,8 @@
 				}
 				}
 
 
 				.lab-info-c {
 				.lab-info-c {
+					width: 500rpx;
 					margin: 24rpx 30rpx 0 20rpx;
 					margin: 24rpx 30rpx 0 20rpx;
-					flex: 1;
 
 
 					.lab-info-c-t {
 					.lab-info-c-t {
 						display: flex;
 						display: flex;

+ 9 - 0
pages_safetyCheck/api/index.js

@@ -72,6 +72,15 @@ export const securityAppCheckPlanTitleList = (data) => {
        data: { ...data }
        data: { ...data }
     })
     })
 };
 };
+//安全检查-校级检查/学院自查列表
+export const securityAppCheckPlanAppTitleList = (data) => {
+    return apiResquest({
+        url: '/security/appCheckPlan/appTitleList',
+       method: 'POST',
+       data: { ...data }
+    })
+};
+
 //获取分级列表
 //获取分级列表
 export const laboratoryLevelConfigGetWebLevelTitleList = (data) => {
 export const laboratoryLevelConfigGetWebLevelTitleList = (data) => {
 	return apiResquest({
 	return apiResquest({

+ 91 - 62
pages_safetyCheck/component/checkItemModule.vue

@@ -93,7 +93,18 @@
 			</view>
 			</view>
 			<view class="input-for-max-box">
 			<view class="input-for-max-box">
 				<view class="for-box" @click="checkItemButton(item)" v-for="(item,index) in dataList" :key="index">
 				<view class="for-box" @click="checkItemButton(item)" v-for="(item,index) in dataList" :key="index">
-					{{item.hazardCheckCode}}{{item.hazardCheckName}}
+					<view class="for-box-n">
+						{{item.hazardCheckCode1}}{{item.hazardCheckName1}}
+					</view>
+					<view class="for-box-n">
+						{{item.hazardCheckCode2}}{{item.hazardCheckName2}}
+					</view>
+					<view class="for-box-n">
+						{{item.hazardCheckCode}}{{item.hazardCheckName}}
+					</view>
+					<view class="for-box-n">
+						{{item.hazardCheckPoint}}{{item.hazardCheckName}}
+					</view>
 				</view>
 				</view>
 			</view>
 			</view>
 		</view>
 		</view>
@@ -106,8 +117,14 @@
 			</view>
 			</view>
 			<view class="check-for-max-box">
 			<view class="check-for-max-box">
 				<view v-for="(item,index) in checkList" :key="index" @click="cascadeItemButton(item)">
 				<view v-for="(item,index) in checkList" :key="index" @click="cascadeItemButton(item)">
-				{{item.hazardCheckCode?item.hazardCheckCode:item.code}} {{item.hazardCheckName?item.hazardCheckName:item.name}}
+					<view>{{item.hazardCheckCode?item.hazardCheckCode:item.code}}
+						{{item.hazardCheckName?item.hazardCheckName:item.name}}
+					</view>
+					<view v-if="levelListThree">
+						{{item.hazardCheckPoint}}
+					</view>
 				</view>
 				</view>
+
 			</view>
 			</view>
 		</view>
 		</view>
 	</view>
 	</view>
@@ -136,11 +153,11 @@
 				//输入搜索返回列表
 				//输入搜索返回列表
 				dataList: [],
 				dataList: [],
 				//一级-级联数据
 				//一级-级联数据
-				levelListOne:null,
+				levelListOne: null,
 				//二级-级联数据
 				//二级-级联数据
-				levelListTwo:null,
+				levelListTwo: null,
 				//三级-级联数据
 				//三级-级联数据
-				levelListThree:null,
+				levelListThree: null,
 				//级联列表
 				//级联列表
 				checkList: [],
 				checkList: [],
 			}
 			}
@@ -150,14 +167,14 @@
 		},
 		},
 		mounted() {
 		mounted() {
 			this.$set(this, 'optionData', JSON.parse(JSON.stringify(this.propsData)));
 			this.$set(this, 'optionData', JSON.parse(JSON.stringify(this.propsData)));
-			console.log('optionData',this.optionData)
+			console.log('optionData', this.optionData)
 			this.$nextTick(() => {
 			this.$nextTick(() => {
 				this.securityCheckOptionSelAllList();
 				this.securityCheckOptionSelAllList();
 			})
 			})
 		},
 		},
 		methods: {
 		methods: {
 			//输入框查询
 			//输入框查询
-			getSearchValue(){
+			getSearchValue() {
 				if (this.optionData.infoType == 0) {
 				if (this.optionData.infoType == 0) {
 					//检查
 					//检查
 					this.securityAppCheckSetOptionList();
 					this.securityAppCheckSetOptionList();
@@ -188,31 +205,33 @@
 				}
 				}
 			},
 			},
 			//级联等级点击
 			//级联等级点击
-			cascadeButton(type){
-				if(type == 1){
-					this.$set(this,'levelListTwo',null);
-					this.$set(this,'levelListThree',null);
-					this.$set(this,'checkList',this.levelListOne.children);
-				}else if(type == 2){
-					this.$set(this,'levelListThree',null);
-					this.$set(this,'checkList',this.levelListTwo.children);
+			cascadeButton(type) {
+				if (type == 1) {
+					this.$set(this, 'levelListTwo', null);
+					this.$set(this, 'levelListThree', null);
+					this.$set(this, 'checkList', this.levelListOne.children);
+				} else if (type == 2) {
+					this.$set(this, 'levelListThree', null);
+					this.$set(this, 'checkList', this.levelListTwo.children);
 				}
 				}
 			},
 			},
 			//级联检查项选中
 			//级联检查项选中
-			cascadeItemButton(item){
-				if(item.level == 1){
-					this.$set(this,'levelListTwo',item);
-					this.$set(this,'checkList',item.children);
-				}else if(item.level == 2){
-					this.$set(this,'levelListThree',item);
-					this.$set(this,'checkList',item.children);
-				}else if(item.level == 3){
+			cascadeItemButton(item) {
+				if (item.level == 1) {
+					this.$set(this, 'levelListTwo', item);
+					this.$set(this, 'checkList', item.children);
+				} else if (item.level == 2) {
+					this.$set(this, 'levelListThree', item);
+					this.$set(this, 'checkList', item.children);
+					console.log(this.checkList)
+				} else if (item.level == 3) {
 					this.checkItemButton(item);
 					this.checkItemButton(item);
+
 				}
 				}
 			},
 			},
 			//选中检查项
 			//选中检查项
 			checkItemButton(item) {
 			checkItemButton(item) {
-				this.$parent.checkItemModuleButton('submit',item);
+				this.$parent.checkItemModuleButton('submit', item);
 			},
 			},
 			//基础检查项检查
 			//基础检查项检查
 			async securityCheckOptionSelAllList() {
 			async securityCheckOptionSelAllList() {
@@ -223,11 +242,11 @@
 				if (data.code == 200) {
 				if (data.code == 200) {
 					let maxList = this.getCascaderData(JSON.parse(JSON.stringify(data.data)), 2)
 					let maxList = this.getCascaderData(JSON.parse(JSON.stringify(data.data)), 2)
 					this.$nextTick(() => {
 					this.$nextTick(() => {
-						if(this.optionData.infoType == 0){
+						if (this.optionData.infoType == 0) {
 							this.securityAppCheckSetOptionList(maxList);
 							this.securityAppCheckSetOptionList(maxList);
-						}else if(this.optionData.infoType == 1){
+						} else if (this.optionData.infoType == 1) {
 							this.securityAppCheckSetOptionGetReviewList(maxList);
 							this.securityAppCheckSetOptionGetReviewList(maxList);
-						}else if(this.optionData.infoType == 2){
+						} else if (this.optionData.infoType == 2) {
 							this.securityAppCheckDangerGetCheckDangerSubId(maxList);
 							this.securityAppCheckDangerGetCheckDangerSubId(maxList);
 						}
 						}
 					})
 					})
@@ -241,16 +260,16 @@
 				} = await securityAppCheckSetOptionList({
 				} = await securityAppCheckSetOptionList({
 					manageId: this.optionData.manageId,
 					manageId: this.optionData.manageId,
 					checkStatus: this.optionData.checkType,
 					checkStatus: this.optionData.checkType,
-					searchValue: this.searchValue	
+					searchValue: this.searchValue
 				});
 				});
 				if (data.code == 200) {
 				if (data.code == 200) {
 					//级联数据
 					//级联数据
 					if (maxList) {
 					if (maxList) {
 						let minList = JSON.parse(JSON.stringify(data.data))
 						let minList = JSON.parse(JSON.stringify(data.data))
-						this.cascadeData(maxList,minList);
+						this.cascadeData(maxList, minList);
 					}
 					}
 					//查询数据
 					//查询数据
-					this.$set(this,'dataList',JSON.parse(JSON.stringify(data.data)));
+					this.$set(this, 'dataList', JSON.parse(JSON.stringify(data.data)));
 				}
 				}
 			},
 			},
 			/********************** 复查相关查询 **********************/
 			/********************** 复查相关查询 **********************/
@@ -269,10 +288,10 @@
 					//级联数据
 					//级联数据
 					if (maxList) {
 					if (maxList) {
 						let minList = JSON.parse(JSON.stringify(data.data.records))
 						let minList = JSON.parse(JSON.stringify(data.data.records))
-						this.cascadeData(maxList,minList);
+						this.cascadeData(maxList, minList);
 					}
 					}
 					//查询数据
 					//查询数据
-					this.$set(this,'dataList',JSON.parse(JSON.stringify(data.data.records)));
+					this.$set(this, 'dataList', JSON.parse(JSON.stringify(data.data.records)));
 				}
 				}
 			},
 			},
 			/********************** 整改相关查询 **********************/
 			/********************** 整改相关查询 **********************/
@@ -291,14 +310,14 @@
 					//级联数据
 					//级联数据
 					if (maxList) {
 					if (maxList) {
 						let minList = JSON.parse(JSON.stringify(data.data.records))
 						let minList = JSON.parse(JSON.stringify(data.data.records))
-						this.cascadeData(maxList,minList);
+						this.cascadeData(maxList, minList);
 					}
 					}
 					//查询数据
 					//查询数据
-					this.$set(this,'dataList',JSON.parse(JSON.stringify(data.data.records)));
+					this.$set(this, 'dataList', JSON.parse(JSON.stringify(data.data.records)));
 				}
 				}
 			},
 			},
 			/********************** 处理级联数据 **********************/
 			/********************** 处理级联数据 **********************/
-			cascadeData(maxList,minList) {
+			cascadeData(maxList, minList) {
 				for (let i = 0; i < maxList.length; i++) {
 				for (let i = 0; i < maxList.length; i++) {
 					for (let o = 0; o < maxList[i].children.length; o++) {
 					for (let o = 0; o < maxList[i].children.length; o++) {
 						for (let x = 0; x < minList.length; x++) {
 						for (let x = 0; x < minList.length; x++) {
@@ -313,10 +332,13 @@
 						}
 						}
 					}
 					}
 				}
 				}
-				let list = this.getCascaderData(JSON.parse(JSON.stringify(maxList)),3)
-				this.$nextTick(()=>{
-					this.$set(this,'levelListOne',JSON.parse(JSON.stringify({level:0,children:list})));
-					this.$set(this,'checkList',JSON.parse(JSON.stringify(list)));
+				let list = this.getCascaderData(JSON.parse(JSON.stringify(maxList)), 3)
+				this.$nextTick(() => {
+					this.$set(this, 'levelListOne', JSON.parse(JSON.stringify({
+						level: 0,
+						children: list
+					})));
+					this.$set(this, 'checkList', JSON.parse(JSON.stringify(list)));
 				})
 				})
 			},
 			},
 			/********************** 检查项格式处理 **********************/
 			/********************** 检查项格式处理 **********************/
@@ -377,8 +399,8 @@
 <style lang="stylus" scoped>
 <style lang="stylus" scoped>
 	.checkItemModule {
 	.checkItemModule {
 		position: fixed;
 		position: fixed;
-		top:0;
-		left:0;
+		top: 0;
+		left: 0;
 		height: 100%;
 		height: 100%;
 		width: 100%;
 		width: 100%;
 		flex: 1;
 		flex: 1;
@@ -391,7 +413,7 @@
 			display: flex;
 			display: flex;
 			height: 100rpx;
 			height: 100rpx;
 			background-color: #FFFFFF;
 			background-color: #FFFFFF;
-			border-bottom:1rpx solid #dedede;
+			border-bottom: 1rpx solid #dedede;
 
 
 			.checkItemModule-title-p {
 			.checkItemModule-title-p {
 				width: 140rpx;
 				width: 140rpx;
@@ -402,7 +424,7 @@
 					text-align: center;
 					text-align: center;
 					font-size: 29rpx;
 					font-size: 29rpx;
 					line-height: 30rpx;
 					line-height: 30rpx;
-					margin:35rpx 0 20rpx 0;
+					margin: 35rpx 0 20rpx 0;
 				}
 				}
 
 
 				>view:nth-child(2) {
 				>view:nth-child(2) {
@@ -477,12 +499,14 @@
 				background-color: #fff;
 				background-color: #fff;
 
 
 				.for-box {
 				.for-box {
-					margin: 0 21rpx;
-					font-size: 29rpx;
-					line-height: 40rpx;
-					padding: 20rpx 0;
-					background-color: #fff;
-					border-bottom: 1rpx solid #E0E0E0;
+					.for-box-n {
+						margin: 0 21rpx;
+						font-size: 29rpx;
+						line-height: 40rpx;
+						padding: 20rpx 0;
+						background-color: #fff;
+						border-bottom: 1rpx solid #E0E0E0;
+					}
 				}
 				}
 			}
 			}
 		}
 		}
@@ -498,15 +522,17 @@
 				display: flex;
 				display: flex;
 				background-color: #fff;
 				background-color: #fff;
 				border-bottom: 1rpx solid #E0E0E0;
 				border-bottom: 1rpx solid #E0E0E0;
-				>view{
-					width:200rpx;
-					line-height:70rpx;
+
+				>view {
+					width: 200rpx;
+					line-height: 70rpx;
 					text-align: center;
 					text-align: center;
-					color:#333;
-					font-size:29rpx;
+					color: #333;
+					font-size: 29rpx;
 				}
 				}
-				.checkView{
-					color:#0183FA;
+
+				.checkView {
+					color: #0183FA;
 				}
 				}
 			}
 			}
 
 
@@ -516,13 +542,16 @@
 				flex-direction: column;
 				flex-direction: column;
 				overflow-y: scroll;
 				overflow-y: scroll;
 				background-color: #fff;
 				background-color: #fff;
-				>view{
-					font-size:25rpx;
-					line-height:70rpx;
-					margin:0 21rpx;
-					border-bottom:1px solid #dedede;
+
+				>view {
+					>view{
+						font-size: 25rpx;
+						line-height: 70rpx;
+						margin: 0 21rpx;
+						border-bottom: 1px solid #dedede;
+					}
 				}
 				}
 			}
 			}
 		}
 		}
 	}
 	}
-</style>
+</style>

BIN
pages_safetyCheck/images/icon_aqjc_baocun.png


BIN
pages_safetyCheck/images/icon_aqjc_luyin.png


+ 26 - 30
pages_safetyCheck/views/inspectManage/conductInspections.vue

@@ -2,13 +2,13 @@
 <template>
 <template>
 	<view class="inspectAdd">
 	<view class="inspectAdd">
 		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
 		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-			<view class="tip">{{optionData.checkPlanSetVoList.checkName}}</view>
+			<!-- <view class="tip">{{optionData.checkPlanSetVoList.checkName}}</view> -->
 			<view class="items">
 			<view class="items">
 				<view class="items-t" @click="checkItemModuleButton('open')">
 				<view class="items-t" @click="checkItemModuleButton('open')">
 					<view class="items-t-r">{{newData.hazardCheckCode}} {{newData.hazardCheckName}}</view>
 					<view class="items-t-r">{{newData.hazardCheckCode}} {{newData.hazardCheckName}}</view>
 					<img class="items-t-img" src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
 					<img class="items-t-img" src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
 				</view>
 				</view>
-				<view class="items-b">< {{newData.hazardCheckCode2}} {{newData.hazardCheckName2}} <</view>
+				<view class="items-b">< {{newData.hazardCheckCode2}} {{newData.hazardCheckName2}} <{{newData.hazardCheckCode1}} {{newData.hazardCheckName1}}</view>
 			</view>
 			</view>
 			<view class="items-number">此检查项在当前实验室累计出现<text>{{hazardCheckNum}}</text>次隐患</view>
 			<view class="items-number">此检查项在当前实验室累计出现<text>{{hazardCheckNum}}</text>次隐患</view>
 			<view class="list">
 			<view class="list">
@@ -35,6 +35,9 @@
 				</view>
 				</view>
 				<textarea v-if="!form.checkFlag" class="describe" type="text" v-model="form.hazardDescribe"
 				<textarea v-if="!form.checkFlag" class="describe" type="text" v-model="form.hazardDescribe"
 					maxlength="200" placeholder="请填写隐患描述" placeholder-style="font-size:24rpx;color:#999;"></textarea>
 					maxlength="200" placeholder="请填写隐患描述" placeholder-style="font-size:24rpx;color:#999;"></textarea>
+				<view class="list-li" v-if="form.photoList[0]">
+					<view>现场照片</view>
+				</view>
 				<view v-if="!form.checkFlag" class="check-for-img-max-box">
 				<view v-if="!form.checkFlag" class="check-for-img-max-box">
 					<view class="left-title-p"></view>
 					<view class="left-title-p"></view>
 					<view class="right-img-box">
 					<view class="right-img-box">
@@ -43,8 +46,8 @@
 							<img class="position-img" src="@/pages_safetyCheck/images/icon_ssp_closure.png"
 							<img class="position-img" src="@/pages_safetyCheck/images/icon_ssp_closure.png"
 								@click="delImg(imgIndex)">
 								@click="delImg(imgIndex)">
 						</view>
 						</view>
-						<img class="add-button" src="@/pages_safetyCheck/images/img_ssp_pz@1x.png"
-							@click="selectImage()" v-if="form.photoList.length<6">
+						<!-- <img class="add-button" src="@/pages_safetyCheck/images/img_ssp_pz@1x.png"
+							@click="selectImage()" v-if="form.photoList.length<6"> -->
 					</view>
 					</view>
 				</view>
 				</view>
 			</view>
 			</view>
@@ -62,18 +65,25 @@
 					<img class="voice_b_r" src="@/pages_safetyCheck/images/icon_yybz_sc.png"
 					<img class="voice_b_r" src="@/pages_safetyCheck/images/icon_yybz_sc.png"
 						@tap="voiceDele('',voiceIndex)" />
 						@tap="voiceDele('',voiceIndex)" />
 				</view>
 				</view>
-				<view class="voice-btn">
+				<!-- <view class="voice-btn">
 					<img class="voice_t_r" src="@/pages_safetyCheck/images/icon_sskz_azsh.png"
 					<img class="voice_t_r" src="@/pages_safetyCheck/images/icon_sskz_azsh.png"
 						@longpress.stop="recordButton(item,$event)" @touchmove.stop="cancelButton"
 						@longpress.stop="recordButton(item,$event)" @touchmove.stop="cancelButton"
 						@touchend.stop="sendButton(item,$event)" />
 						@touchend.stop="sendButton(item,$event)" />
 					<text>按住说话</text>
 					<text>按住说话</text>
-				</view>
+				</view> -->
 			</view>
 			</view>
 		</scroll-view>
 		</scroll-view>
 		<checkItemModule :propsData="propsData" v-if="checkItemModuleType"></checkItemModule>
 		<checkItemModule :propsData="propsData" v-if="checkItemModuleType"></checkItemModule>
-		<view class="sub-btn">
+		<!-- <view class="sub-btn">
 			<view @click="submitForm(1)">保存草稿</view>
 			<view @click="submitForm(1)">保存草稿</view>
 			<view @click="submitForm(2)">提交</view>
 			<view @click="submitForm(2)">提交</view>
+		</view> -->
+		<view class="sub-btn">
+			<img @longpress.stop="recordButton(item,$event)" @touchmove.stop="cancelButton"
+				@touchend.stop="sendButton(item,$event)" src="@/pages_safetyCheck/images/icon_aqjc_luyin.png" />
+			<img @click="selectImage()" src="@/pages_safetyCheck/images/icon_aqjc_paizhao.png" />
+			<img @click="submitForm(1)" src="@/pages_safetyCheck/images/icon_aqjc_baocun.png" />
+			<img @click="submitForm(2)" src="@/pages_safetyCheck/images/icon_aqjc_tijiao.png" />
 		</view>
 		</view>
 	</view>
 	</view>
 
 
@@ -691,6 +701,7 @@
 			margin: 20rpx 30rpx 0;
 			margin: 20rpx 30rpx 0;
 			background: #FFFFFF;
 			background: #FFFFFF;
 			border-radius: 20rpx 20rpx 20rpx 20rpx;
 			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			overflow: hidden;
 
 
 			.list-li {
 			.list-li {
 				display: flex;
 				display: flex;
@@ -764,7 +775,7 @@
 				height: 120rpx;
 				height: 120rpx;
 				border-radius: 10rpx 10rpx 10rpx 10rpx;
 				border-radius: 10rpx 10rpx 10rpx 10rpx;
 				border: 1rpx solid #E0E0E0;
 				border: 1rpx solid #E0E0E0;
-				margin: 20rpx 0 0 28rpx;
+				margin: 20rpx 0 20rpx 28rpx;
 				padding: 12rpx 16rpx;
 				padding: 12rpx 16rpx;
 				box-sizing: border-box;
 				box-sizing: border-box;
 			}
 			}
@@ -958,31 +969,16 @@
 
 
 	.sub-btn {
 	.sub-btn {
 		display: flex;
 		display: flex;
-		justify-content: center;
+		justify-content: space-between;
 		position: fixed;
 		position: fixed;
-		left: 30rpx;
 		bottom: 30rpx;
 		bottom: 30rpx;
+		width: 750rpx;
+		padding: 0 46rpx;
+		box-sizing: border-box;
 
 
-		>view:nth-of-type(1) {
-			width: 345rpx;
-			height: 100rpx;
-			background: #FF8C00;
-			border-radius: 50rpx 0rpx 0rpx 50rpx;
-			font-size: 30rpx;
-			color: #FFFFFF;
-			line-height: 100rpx;
-			text-align: center;
-		}
-
-		>view:nth-of-type(2) {
-			width: 345rpx;
-			height: 100rpx;
-			background: #0183FA;
-			border-radius: 0rpx 50rpx 50rpx 0rpx;
-			font-size: 30rpx;
-			color: #FFFFFF;
-			line-height: 100rpx;
-			text-align: center;
+		>img {
+			width: 130rpx;
+			height: 130rpx;
 		}
 		}
 	}
 	}
 </style>
 </style>

+ 97 - 102
pages_safetyCheck/views/snapshotManage/laboratorySearch.vue

@@ -1,41 +1,38 @@
 <!-- 实验室搜索 -->
 <!-- 实验室搜索 -->
 <template>
 <template>
 	<view class="hiddenDangerItemsSearch">
 	<view class="hiddenDangerItemsSearch">
-		<view class="header">
-			<view class="search">
-				<view class="search-r">
-					<img src="@/pages_safetyCheck/images/icon_aqjc_ss.png" @click="searchBtn">
-					<input type="text" v-model="searchValue" placeholder="模糊搜索检查项" name="search" @confirm='searchBtn'
-						confirm-type='search' maxlength="50" placeholder-style="color: #333333;font-size:24rpx;">
+		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
+			<view class="header">
+				<view class="search">
+					<view class="search-r">
+						<img src="@/pages_safetyCheck/images/icon_aqjc_ss.png" @click="searchBtn">
+						<input type="text" v-model="queryParams.searchValue" placeholder="模糊搜索检查项" name="search"
+							@confirm='searchBtn' confirm-type='search' maxlength="50"
+							placeholder-style="color: #333333;font-size:24rpx;">
+					</view>
+					<view class="cancel" @click="cancelBtn">取消</view>
 				</view>
 				</view>
-				<view class="cancel" @click="cancelBtn">取消</view>
-			</view>
-		</view>
-		<!-- 
-		<view class="list">
-			<view class="list-li" v-for="(item,index) in dataList" @click="confirm(item)">
-				{{item.hazardCheckCode}}{{item.hazardCheckName}}
 			</view>
 			</view>
-		</view> -->
-		<view class="lab-info" @click="listClick(item)" v-for="(item,index) in dataList">
-			<img class="lab-info-l" src="@/pages_safetyCheck/images/icon_aqjc_shiyanshi.png">
-			<view class="lab-info-c">
-				<view class="lab-info-c-t">
-					<view class="lab-info-c-t-l">{{item.subName}}</view>
-					<view class="lab-info-c-t-r"
-						:style="'border:1rpx solid '+item.classLevelColor+';background:'+item.classLevelColorTow+';'">
-						<text
-							:style="'border-right:1rpx solid '+item.classLevelColor+';color:'+item.classLevelColor+';'">{{item.classLevelName?item.classLevelName:''}}</text>
-						<text
-							:style="'color:'+item.classLevelColor+';'">{{item.classTypeNames?item.classTypeNames:''}}</text>
+			<view class="lab-info" @click="listClick(item)" v-for="(item,index) in dataList">
+				<img class="lab-info-l" src="@/pages_safetyCheck/images/icon_aqjc_shiyanshi.png">
+				<view class="lab-info-c">
+					<view class="lab-info-c-t">
+						<view class="lab-info-c-t-l">{{item.subName}}</view>
+						<view class="lab-info-c-t-r"
+							:style="'border:1rpx solid '+item.levelColor+';background:'+item.levelColorTow+';'">
+							<text
+								:style="'border-right:1rpx solid '+item.levelColor+';color:'+item.levelColor+';'">{{item.levelName?item.levelName:''}}</text>
+							<text
+								:style="'color:'+item.levelColor+';'">{{item.typeName?item.typeName:''}}</text>
+						</view>
+					</view>
+					<view class="lab-info-c-b">
+						<text>{{item.roomNum}}房间&{{item.buildName}}</text>
+						<text>{{item.deptName}}</text>
 					</view>
 					</view>
-				</view>
-				<view class="lab-info-c-b">
-					<text>{{tabIndexTow==0?item.roomNum:item.subRoom}}房间&{{item.buildName}}</text>
-					<text>{{item.deptName}}</text>
 				</view>
 				</view>
 			</view>
 			</view>
-		</view>
+		</scroll-view>
 	</view>
 	</view>
 
 
 </template>
 </template>
@@ -44,9 +41,9 @@
 	import {
 	import {
 		config
 		config
 	} from '@/api/request/config.js'
 	} from '@/api/request/config.js'
-	
+
 	import {
 	import {
-		systemSubjectGetList,
+		laboratorySubRelInfoSelectByPage,
 	} from '@/api/commonality/permission.js'
 	} from '@/api/commonality/permission.js'
 	import {
 	import {
 		securityCheckOptionList,
 		securityCheckOptionList,
@@ -65,80 +62,103 @@
 				dataList: [],
 				dataList: [],
 				searchValue: '',
 				searchValue: '',
 				form: {}, //接收上个页面传过来的参数
 				form: {}, //接收上个页面传过来的参数
+				getDataType: false,
 				// 查询参数
 				// 查询参数
 				queryParams: {
 				queryParams: {
 					page: 1,
 					page: 1,
 					pageSize: 20,
 					pageSize: 20,
+					searchValue: '',
+					subId: '',
 				},
 				},
-				total:0,
+				total: 0,
 
 
 			}
 			}
 		},
 		},
 		onLoad(option) {
 		onLoad(option) {
 			if (option.form) {
 			if (option.form) {
 				this.form = JSON.parse(decodeURIComponent(option.form));
 				this.form = JSON.parse(decodeURIComponent(option.form));
-				this.pageType = this.form.pageType;
+				console.log(this.form)
+				if(this.form.subId){
+					this.queryParams.subId=this.form.subId
+				}
 			}
 			}
 		},
 		},
 		onShow() {
 		onShow() {
 
 
 		},
 		},
 		mounted() {
 		mounted() {
-			this.buildBySub();
-			//this.treeselect();
+			this.getList();
 		},
 		},
 		methods: {
 		methods: {
 			//滚动事件
 			//滚动事件
-			scrollGet() {},
+			scrollGet() {
+				console.log(1)
+				let self = this;
+				if (self.total / self.queryParams.pageSize <= self.queryParams.page) {
+					this.$set(this, 'getDataType', true);
+				} else {
+					this.queryParams.page += 1;
+					this.$nextTick(() => {
+						this.getList();
+					})
+				}
+			},
 			//实验室搜索
 			//实验室搜索
 			searchBtn() {
 			searchBtn() {
 				this.dataList = [];
 				this.dataList = [];
-				this.treeselect();
+				this.getList();
 			},
 			},
 			//取消
 			//取消
 			cancelBtn() {
 			cancelBtn() {
-				this.searchValue = '';
-				this.dataList = [];
+				this.queryParams.searchValue = '';
+				this.getList = [];
 				this.treeselect();
 				this.treeselect();
 			},
 			},
-			confirm(row) {
-				this.$set(this.form, "hazardCheckId1", row.hazardCheckId1)
-				this.$set(this.form, "hazardCheckName1", row.hazardCheckName1)
-				this.$set(this.form, "hazardCheckCode1", row.hazardCheckCode1)
-				this.$set(this.form, "hazardCheckId2", row.hazardCheckId2)
-				this.$set(this.form, "hazardCheckName2", row.hazardCheckName2)
-				this.$set(this.form, "hazardCheckCode2", row.hazardCheckCode2)
-				this.$set(this.form, "hazardCheckId", row.hazardCheckId)
-				this.$set(this.form, "hazardCheckName", row.hazardCheckName)
-				this.$set(this.form, "hazardCheckCode", row.hazardCheckCode)
-				this.$set(this.form, "hazardCheckPoint", row.hazardCheckPoint)
-				if (this.pageType == 1) {
-					//随手拍进入
-					uni.redirectTo({
-						url: '/pages_safetyCheck/views/snapshotManage/snapshotList?form=' + encodeURIComponent(JSON
-							.stringify(this.form))
-					});
-				} else if (this.pageType == 2) {
-					//隐患项列表进入
-					uni.redirectTo({
-						url: '/pages_safetyCheck/views/itemsManage/hiddenDangerItems?infoData=' +
-							encodeURIComponent(JSON.stringify(this.form))
-					});
-				}
+			//十六进制颜色值和RGB格式转换
+			hexToRgb(hex, opacity = 1) {
+				// 去除#号
+				var color = hex.replace("#", "");
+				// 分割成红、绿、蓝三部分的16进制字符串
+				var red = parseInt(color.substring(0, 2), 16);
+				var green = parseInt(color.substring(2, 4), 16);
+				var blue = parseInt(color.substring(4, 6), 16);
+				return `RGB(${red}, ${green}, ${blue},${opacity})`;
+			},
+			listClick(item) {
+				this.$set(this.form, "subId", item.subId)
+				this.$set(this.form, "subName", item.subName)
+				this.$set(this.form, "subRoom", item.roomNum)
+				this.$set(this.form, "deptId", item.deptId)
+				this.$set(this.form, "deptName", item.deptName)
+				this.$set(this.form, "buildId", item.buildId)
+				this.$set(this.form, "buildName", item.buildName)
+				this.$set(this.form, "floorId", item.floorId)
+				this.$set(this.form, "floorName", item.floorName)
+				this.$set(this.form, "typeId", item.typeId)
+				this.$set(this.form, "classTypeNames", item.classTypeNames)
+				this.$set(this.form, "levelId", item.levelId)
+				this.$set(this.form, "classLevelName", item.classLevelName)
+				uni.redirectTo({
+					url: '/pages_safetyCheck/views/snapshotManage/snapshotList?form=' +
+						encodeURIComponent(JSON.stringify(this.form))
+				});
 
 
 			},
 			},
-			
+
 			//搜索房间接口
 			//搜索房间接口
-			async buildBySub() {
+			async getList() {
 				let self = this;
 				let self = this;
 				const {
 				const {
 					data
 					data
-				} = await systemSubjectGetList({
-					'searchValue': this.form.searchValue,
-					'subId': this.form.subId,
-				});
+				} = await laboratorySubRelInfoSelectByPage(this.queryParams);
 				if (data.code == 200) {
 				if (data.code == 200) {
-					if (data.data[0]) {
+					if (data.data.records[0]) {
+						data.data.records.forEach(function(item) {
+							if(item.levelColor){
+								item.levelColorTow = self.hexToRgb(item.levelColor, 0.2)
+							}
+							
+						})
 						if (self.queryParams.page == 1) {
 						if (self.queryParams.page == 1) {
 							this.dataList = data.data.records;
 							this.dataList = data.data.records;
 							this.total = data.data.total;
 							this.total = data.data.total;
@@ -162,36 +182,7 @@
 					}
 					}
 				}
 				}
 			},
 			},
-			async treeselect() {
-				let self = this;
-				const {
-					data
-				} = await securityCheckOptionList({
-					searchValue: this.searchValue
-				});
-				if (data.code == 200) {
-					let list = [];
-					data.data.forEach(function(item) {
-						item.children.forEach(function(item2) {
-							item2.children.forEach(function(item3) {
-								list.push({
-									hazardCheckId1: item.id,
-									hazardCheckName1: item.name,
-									hazardCheckCode1: item.code,
-									hazardCheckId2: item2.id,
-									hazardCheckName2: item2.name,
-									hazardCheckCode2: item2.code,
-									hazardCheckId: item3.id,
-									hazardCheckName: item3.name,
-									hazardCheckCode: item3.code,
-									hazardCheckPoint: item3.mainPoint
-								})
-							})
-						})
-					})
-					this.dataList = list
-				}
-			},
+
 		}
 		}
 	}
 	}
 </script>
 </script>
@@ -200,7 +191,11 @@
 	.hiddenDangerItemsSearch {
 	.hiddenDangerItemsSearch {
 		height: 100%;
 		height: 100%;
 		display flex;
 		display flex;
-		box-sizing: border-box;
+		overflow: hidden;
+		.info-max-box {
+			padding-top: 120rpx;
+			box-sizing: border-box;
+		}
 
 
 		#totalColor-A {
 		#totalColor-A {
 			color: #0183FA;
 			color: #0183FA;

+ 51 - 38
pages_safetyCheck/views/snapshotManage/snapshotDetail.vue

@@ -11,21 +11,13 @@
 					<view>学院单位</view>
 					<view>学院单位</view>
 					<view>{{newData.deptName}}</view>
 					<view>{{newData.deptName}}</view>
 				</view>
 				</view>
-				<view class="items-t" v-if="newData.hazardCheckName!=''">
-					<view class="items-t-r">{{newData.hazardCheckCode}} {{newData.hazardCheckName}}</view>
+				<view class="items-li">
+					<view>安全类别</view>
+					<view>{{newData.hazardCheckName}}</view>
 				</view>
 				</view>
-				<view class="items-b" v-if="newData.hazardCheckName!=''">< {{newData.hazardCheckCode2}} {{newData.hazardCheckName2}} < {{newData.hazardCheckCode1}} {{newData.hazardCheckName1}}</view>
 			</view>
 			</view>
-			<view class="items-number" v-if="newData.hazardCheckName!=''">此检查项在当前实验室累计出现<text>{{newData.hazardCheckNum}}</text>次隐患</view>
+
 			<view class="list">
 			<view class="list">
-				<view class="list-li" v-if="newData.hazardCheckName!=''">
-					<view>检查要点</view>
-					<view>
-						<img src="@/pages_safetyCheck/images/icon_06.png">
-					</view>
-				</view>
-				<view v-if="newData.hazardCheckName!=''" class="hidden-content">{{newData.hazardCheckPoint}}
-				</view>
 				<view class="list-li" v-if="newData.hazardDescribe">
 				<view class="list-li" v-if="newData.hazardDescribe">
 					<view>检查隐患</view>
 					<view>检查隐患</view>
 				</view>
 				</view>
@@ -36,13 +28,16 @@
 				</view>
 				</view>
 				<view class="list-li" @click="rectifyCollapse()">
 				<view class="list-li" @click="rectifyCollapse()">
 					<view>隐患整改</view>
 					<view>隐患整改</view>
-					<view :id="newData.rectifyStatus==0?'fontColor-A':(newData.rectifyStatus==1?'fontColor-B':'fontColor-C')">
+					<view
+						:id="newData.rectifyStatus==0?'fontColor-A':(newData.rectifyStatus==1?'fontColor-B':'fontColor-C')">
 						{{newData.rectifyStatus==0?'待整改':(newData.rectifyStatus==1?'已整改':'暂无法整改')}}
 						{{newData.rectifyStatus==0?'待整改':(newData.rectifyStatus==1?'已整改':'暂无法整改')}}
 						<img src="@/pages_safetyCheck/images/icon_06.png">
 						<img src="@/pages_safetyCheck/images/icon_06.png">
 					</view>
 					</view>
 				</view>
 				</view>
 				<view v-if="newData.rectifyCollapse && newData.rectifyTime">
 				<view v-if="newData.rectifyCollapse && newData.rectifyTime">
-					<view class="hidden-content" v-if="(newData.rectifyStatus==1 || newData.rectifyStatus==2) && newData.rectifyDescribe">{{newData.rectifyDescribe}}
+					<view class="hidden-content"
+						v-if="(newData.rectifyStatus==1 || newData.rectifyStatus==2) && newData.rectifyDescribe">
+						{{newData.rectifyDescribe}}
 					</view>
 					</view>
 					<view class="photo" v-if="newData.rectifyStatus==1 || newData.rectifyStatus==2">
 					<view class="photo" v-if="newData.rectifyStatus==1 || newData.rectifyStatus==2">
 						<img v-for="(item,index) in newData.zgDtoList" :src="baseUrl+item.fileUrl">
 						<img v-for="(item,index) in newData.zgDtoList" :src="baseUrl+item.fileUrl">
@@ -66,7 +61,8 @@
 				</view> -->
 				</view> -->
 			</view>
 			</view>
 		</scroll-view>
 		</scroll-view>
-		<view v-if="newData.rectifyStatus==0 && newData.canRectify" class="sub-btn" @click="rectificationBtn">{{newData.rectifyStatus==0?'整改':'继续整改'}}</view>
+		<view v-if="newData.rectifyStatus==0 && newData.canRectify" class="sub-btn" @click="rectificationBtn">
+			{{newData.rectifyStatus==0?'整改':'继续整改'}}</view>
 	</view>
 	</view>
 
 
 </template>
 </template>
@@ -86,10 +82,10 @@
 		data() {
 		data() {
 			return {
 			return {
 				baseUrl: config.base_url,
 				baseUrl: config.base_url,
-				inspectionItems:0,//0有检查项 1无检查项
+				inspectionItems: 0, //0有检查项 1无检查项
 				newData: {},
 				newData: {},
-				photoId:'',
-				
+				photoId: '',
+
 			}
 			}
 		},
 		},
 		onLoad(option) {
 		onLoad(option) {
@@ -108,21 +104,24 @@
 				let self = this;
 				let self = this;
 				const {
 				const {
 					data
 					data
-				} = await securityAppCheckPhotoDetail({photoId:this.photoId});
+				} = await securityAppCheckPhotoDetail({
+					photoId: this.photoId
+				});
 				if (data.code == 200) {
 				if (data.code == 200) {
-					data.data.rectifyCollapse=true;
+					data.data.rectifyCollapse = true;
 					this.$set(this, 'newData', data.data);
 					this.$set(this, 'newData', data.data);
 				}
 				}
 			},
 			},
-			rectifyCollapse(){
-				this.newData.rectifyCollapse=!this.newData.rectifyCollapse
+			rectifyCollapse() {
+				this.newData.rectifyCollapse = !this.newData.rectifyCollapse
 			},
 			},
 			//整改页面
 			//整改页面
-			rectificationBtn(){
-				let self=this;
-				let infoData=self.newData;
+			rectificationBtn() {
+				let self = this;
+				let infoData = self.newData;
 				uni.redirectTo({
 				uni.redirectTo({
-					url: '/pages_safetyCheck/views/snapshotManage/snapshotRectification?infoData=' + encodeURIComponent(JSON.stringify(infoData))
+					url: '/pages_safetyCheck/views/snapshotManage/snapshotRectification?infoData=' +
+						encodeURIComponent(JSON.stringify(infoData))
 				});
 				});
 			},
 			},
 		}
 		}
@@ -136,6 +135,7 @@
 		box-sizing: border-box;
 		box-sizing: border-box;
 		padding-bottom: 160rpx;
 		padding-bottom: 160rpx;
 		box-sizing: border-box;
 		box-sizing: border-box;
+
 		#bgColor-A {
 		#bgColor-A {
 			color: #FFD400;
 			color: #FFD400;
 		}
 		}
@@ -147,39 +147,42 @@
 		#bgColor-C {
 		#bgColor-C {
 			color: #E11608;
 			color: #E11608;
 		}
 		}
+
 		#fontColor-A {
 		#fontColor-A {
 			color: #0183FA;
 			color: #0183FA;
 		}
 		}
-		
+
 		#fontColor-B {
 		#fontColor-B {
 			color: #16B531;
 			color: #16B531;
 		}
 		}
-		
+
 		#fontColor-C {
 		#fontColor-C {
-			
+
 			color: #FF8C00;
 			color: #FF8C00;
 		}
 		}
+
 		.items {
 		.items {
 			width: 690rpx;
 			width: 690rpx;
 			min-height: 165rpx;
 			min-height: 165rpx;
 			background: #FFFFFF;
 			background: #FFFFFF;
 			border-radius: 20rpx 20rpx 20rpx 20rpx;
 			border-radius: 20rpx 20rpx 20rpx 20rpx;
 			margin: 20rpx 0 0 30rpx;
 			margin: 20rpx 0 0 30rpx;
-			.items-li{
+
+			.items-li {
 				display: flex;
 				display: flex;
 				justify-content: space-between;
 				justify-content: space-between;
 				align-items: center;
 				align-items: center;
 				padding: 0 30rpx;
 				padding: 0 30rpx;
 				box-sizing: border-box;
 				box-sizing: border-box;
 				border-bottom: 1rpx solid #E0E0E0;
 				border-bottom: 1rpx solid #E0E0E0;
-				
+
 				>view:nth-of-type(1) {
 				>view:nth-of-type(1) {
 					font-size: 30rpx;
 					font-size: 30rpx;
 					color: #333333;
 					color: #333333;
 					line-height: 80rpx;
 					line-height: 80rpx;
 					text-align: left;
 					text-align: left;
 				}
 				}
-				
+
 				>view:nth-of-type(2) {
 				>view:nth-of-type(2) {
 					font-size: 28rpx;
 					font-size: 28rpx;
 					color: #666666;
 					color: #666666;
@@ -190,6 +193,7 @@
 					align-items: center;
 					align-items: center;
 				}
 				}
 			}
 			}
+
 			.items-t {
 			.items-t {
 				border-bottom: 1rpx solid #E0E0E0;
 				border-bottom: 1rpx solid #E0E0E0;
 				height: 80rpx;
 				height: 80rpx;
@@ -283,17 +287,20 @@
 				}
 				}
 
 
 			}
 			}
-			.file-li{
+
+			.file-li {
 				display: flex;
 				display: flex;
 				justify-content: space-between;
 				justify-content: space-between;
 				align-items: center;
 				align-items: center;
 				padding: 0 30rpx;
 				padding: 0 30rpx;
 				box-sizing: border-box;
 				box-sizing: border-box;
+
 				>img:nth-of-type(1) {
 				>img:nth-of-type(1) {
 					width: 30rpx;
 					width: 30rpx;
 					height: 30rpx;
 					height: 30rpx;
 				}
 				}
-				>view{
+
+				>view {
 					flex: 1;
 					flex: 1;
 					font-size: 28rpx;
 					font-size: 28rpx;
 					color: #333333;
 					color: #333333;
@@ -302,8 +309,9 @@
 					margin: 0 92rpx 0 16rpx;
 					margin: 0 92rpx 0 16rpx;
 					overflow: hidden;
 					overflow: hidden;
 					text-overflow: ellipsis;
 					text-overflow: ellipsis;
-					white-space: nowrap;   
+					white-space: nowrap;
 				}
 				}
+
 				>img:nth-of-type(2) {
 				>img:nth-of-type(2) {
 					width: 30rpx;
 					width: 30rpx;
 					height: 30rpx;
 					height: 30rpx;
@@ -338,14 +346,20 @@
 					border-radius: 10rpx 10rpx 10rpx 10rpx;
 					border-radius: 10rpx 10rpx 10rpx 10rpx;
 					margin: 0 10rpx 10rpx 0;
 					margin: 0 10rpx 10rpx 0;
 				}
 				}
+
+				>img:nth-of-type(4) {
+					margin-right: 0;
+				}
 			}
 			}
+
 			.list-li:last-of-type {
 			.list-li:last-of-type {
 				border: none;
 				border: none;
 			}
 			}
 		}
 		}
-		
+
 	}
 	}
-	.sub-btn{
+
+	.sub-btn {
 		width: 686rpx;
 		width: 686rpx;
 		height: 100rpx;
 		height: 100rpx;
 		background: #0183FA;
 		background: #0183FA;
@@ -359,5 +373,4 @@
 		line-height: 100rpx;
 		line-height: 100rpx;
 		text-align: center;
 		text-align: center;
 	}
 	}
-	
 </style>
 </style>

+ 13 - 11
pages_safetyCheck/views/snapshotManage/snapshotList.vue

@@ -19,8 +19,7 @@
 						<img class="srearch-r" src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
 						<img class="srearch-r" src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
 					</view>
 					</view>
 					<view class="list-li" style="margin-bottom: 20rpx;border:none;">
 					<view class="list-li" style="margin-bottom: 20rpx;border:none;">
-						<view>学院单位名称</view>
-						<view>{{form.deptName}}</view>
+						<view>{{form.subRoom?form.subRoom:''}}房间&{{form.buildName?form.buildName:'楼栋'}}&{{form.deptName?form.deptName:'学院单位'}}</view>
 					</view>
 					</view>
 					<view class="list-li"  v-if="form.imgDtoList[0]">
 					<view class="list-li"  v-if="form.imgDtoList[0]">
 						<view>现场照片</view>
 						<view>现场照片</view>
@@ -41,7 +40,7 @@
 					<picker @change="bindPickerChange" :value="pickerIndex" :range="pickerList" range-key="name">
 					<picker @change="bindPickerChange" :value="pickerIndex" :range="pickerList" range-key="name">
 						<view class="list-li">
 						<view class="list-li">
 							<view>安全类别</view>
 							<view>安全类别</view>
-							<view>
+							<view style="color: #0183FA;">
 								{{pickerList[pickerIndex].name}}
 								{{pickerList[pickerIndex].name}}
 								<img src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
 								<img src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
 							</view>
 							</view>
@@ -228,11 +227,11 @@
 				}
 				}
 			},
 			},
 			//实验室
 			//实验室
-			laboratoryClick(row){
-				let infoData = row;
+			laboratoryClick(){
+				this.form.subId='';
 				uni.navigateTo({
 				uni.navigateTo({
-					url: '/pages_safetyCheck/views/snapshotManage/laboratorySearch?infoData=' + encodeURIComponent(
-						JSON.stringify(infoData))
+					url: '/pages_safetyCheck/views/snapshotManage/laboratorySearch?form=' + encodeURIComponent(
+						JSON.stringify(this.form))
 				});
 				});
 			},
 			},
 			//上报记录跳转详情
 			//上报记录跳转详情
@@ -297,9 +296,9 @@
 			/******图片上传******/
 			/******图片上传******/
 			selectImage() {
 			selectImage() {
 				let self = this;
 				let self = this;
-				if (this.form.imgDtoList.length > 4) {
+				if (this.form.imgDtoList.length > 5) {
 					uni.showToast({
 					uni.showToast({
-						title: '最多上传5张图片',
+						title: '最多上传6张图片',
 						icon: "none",
 						icon: "none",
 						mask: true,
 						mask: true,
 						duration: 2000
 						duration: 2000
@@ -430,8 +429,10 @@
 						console.log('二维码', codeData)
 						console.log('二维码', codeData)
 						if (codeData.code) {
 						if (codeData.code) {
 							self.$set(self.form, "subId", codeData.subId)
 							self.$set(self.form, "subId", codeData.subId)
-							self.buildBySub();
-							self.popupType = true;
+							uni.navigateTo({
+								url: '/pages_safetyCheck/views/snapshotManage/laboratorySearch?form=' + encodeURIComponent(
+									JSON.stringify(self.form))
+							});
 						} else {
 						} else {
 							uni.showToast({
 							uni.showToast({
 								title: '请扫描正确的二维码',
 								title: '请扫描正确的二维码',
@@ -446,6 +447,7 @@
 
 
 			//上报
 			//上报
 			async submitForm() {
 			async submitForm() {
+				
 				let self = this;
 				let self = this;
 				if (!this.form.subId) {
 				if (!this.form.subId) {
 					uni.showToast({
 					uni.showToast({

+ 10 - 18
pages_safetyCheck/views/snapshotManage/snapshotRectification.vue

@@ -2,24 +2,13 @@
 <template>
 <template>
 	<view class="snapshotDetail">
 	<view class="snapshotDetail">
 		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
 		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-			<view class="tip">整改期限2024-10-06(逾期未完成整改关闭实验室)</view>
-			<view class="items" v-if="newData.hazardCheckName!=''">
-				<view class="items-t" >
-					<view class="items-t-r">{{newData.hazardCheckCode}} {{newData.hazardCheckName}}</view>
+			<view class="items">
+				<view class="items-li">
+					<view>安全类别</view>
+					<view>{{newData.hazardCheckName}}</view>
 				</view>
 				</view>
-				<view class="items-b" >< {{newData.hazardCheckCode2}}
-					{{newData.hazardCheckName2}} < {{newData.hazardCheckCode1}} {{newData.hazardCheckName1}}</view>
 			</view>
 			</view>
-			<view class="items-number" v-if="newData.hazardCheckName!=''">此检查项在当前实验室累计出现<text>{{newData.hazardCheckNum}}</text>次隐患</view>
 			<view class="list">
 			<view class="list">
-				<view class="list-li" v-if="newData.hazardCheckName!=''">
-					<view>检查要点</view>
-					<view>
-						<img src="@/pages_safetyCheck/images/icon_06.png">
-					</view>
-				</view>
-				<view v-if="newData.hazardCheckName!=''" class="hidden-content">{{newData.hazardCheckPoint}}
-				</view>
 				<view class="list-li">
 				<view class="list-li">
 					<view>检查隐患</view>
 					<view>检查隐患</view>
 					<view style="color: #FF8C00;">
 					<view style="color: #FF8C00;">
@@ -56,7 +45,7 @@
 								@click="delImg(imgIndex)">
 								@click="delImg(imgIndex)">
 						</view>
 						</view>
 						<img class="add-button" src="@/pages_safetyCheck/images/img_ssp_pz@1x.png"
 						<img class="add-button" src="@/pages_safetyCheck/images/img_ssp_pz@1x.png"
-							@click="selectImage()" v-if="form.imgDtoList.length<5">
+							@click="selectImage()" v-if="form.imgDtoList.length<6">
 					</view>
 					</view>
 				</view>
 				</view>
 				<!-- <view class="list-li-tow">
 				<!-- <view class="list-li-tow">
@@ -309,7 +298,7 @@
 
 
 		.items {
 		.items {
 			width: 690rpx;
 			width: 690rpx;
-			min-height: 165rpx;
+			min-height: 80rpx;
 			background: #FFFFFF;
 			background: #FFFFFF;
 			border-radius: 20rpx 20rpx 20rpx 20rpx;
 			border-radius: 20rpx 20rpx 20rpx 20rpx;
 			margin: 20rpx 0 0 30rpx;
 			margin: 20rpx 0 0 30rpx;
@@ -339,6 +328,9 @@
 					align-items: center;
 					align-items: center;
 				}
 				}
 			}
 			}
+			.items-li:last-of-type{
+				border-bottom: none;
+			}
 
 
 			.items-t {
 			.items-t {
 				border-bottom: 1rpx solid #E0E0E0;
 				border-bottom: 1rpx solid #E0E0E0;
@@ -575,7 +567,7 @@
 						}
 						}
 					}
 					}
 
 
-					.img-box:nth-of-type(3n+3) {
+					.img-box:nth-of-type(4n+4) {
 						margin-right: 0rpx;
 						margin-right: 0rpx;
 					}
 					}