heyang 10 maanden geleden
bovenliggende
commit
896c675e15
90 gewijzigde bestanden met toevoegingen van 5254 en 18589 verwijderingen
  1. 0 0
      api/index.js
  2. 2 2
      api/request/config.js
  3. 77 129
      pages.json
  4. 2 2
      pages/api/index.js
  5. 0 0
      pages/images/icon_xyxc_sm.png
  6. 1 1
      pages/views/pupilPage/pupilHome.vue
  7. 4 4
      pages/views/teacherPage/laboratoryList.vue
  8. 5 2
      pages/views/teacherPage/teacherHome.vue
  9. 5 5
      pages_manage/views/laboratory/meLaboratory.vue
  10. 371 0
      pages_safetyCheck/api/index.js
  11. 0 0
      pages_safetyCheck/images/icon_06.png
  12. 0 0
      pages_safetyCheck/images/icon_06_1.png
  13. BIN
      pages_safetyCheck/images/icon_aqjc_gb@1x.png
  14. BIN
      pages_safetyCheck/images/icon_aqjc_sc.png
  15. 0 0
      pages_safetyCheck/images/icon_aqjc_sm.png
  16. 0 0
      pages_safetyCheck/images/icon_aqjc_ss.png
  17. 0 0
      pages_safetyCheck/images/icon_djc_wj.png
  18. BIN
      pages_safetyCheck/images/icon_sskz_azsh.png
  19. 0 0
      pages_safetyCheck/images/icon_ssp_closure.png
  20. BIN
      pages_safetyCheck/images/icon_ssp_gd@1x.png
  21. BIN
      pages_safetyCheck/images/icon_sys_xz@1x.png
  22. BIN
      pages_safetyCheck/images/icon_wd_gd@1x.png
  23. BIN
      pages_safetyCheck/images/icon_wxz_fc@1x.png
  24. BIN
      pages_safetyCheck/images/icon_xz_fc@1x.png
  25. BIN
      pages_safetyCheck/images/icon_xz_zg@1x.png
  26. BIN
      pages_safetyCheck/images/icon_yybz_sc.png
  27. BIN
      pages_safetyCheck/images/icon_yybz_yy.png
  28. BIN
      pages_safetyCheck/images/icon_zg_zh@1x.png
  29. BIN
      pages_safetyCheck/images/img_aqjc_ssp@1x.png
  30. BIN
      pages_safetyCheck/images/img_aqjc_xjjc@1x.png
  31. BIN
      pages_safetyCheck/images/img_aqjc_xyzc@1x.png
  32. BIN
      pages_safetyCheck/images/img_ssp_pz@1x.png
  33. BIN
      pages_safetyCheck/images/img_xyzc_bg@1x.png
  34. 122 0
      pages_safetyCheck/views/inspectManage/hiddenDangerRecord.vue
  35. 786 0
      pages_safetyCheck/views/inspectManage/inspectAdd.vue
  36. 791 0
      pages_safetyCheck/views/inspectManage/inspectList.vue
  37. 305 0
      pages_safetyCheck/views/itemsManage/hiddenDangerItems.vue
  38. 179 0
      pages_safetyCheck/views/itemsManage/hiddenDangerItemsSearch.vue
  39. 530 0
      pages_safetyCheck/views/itemsManage/snapshotRectification.vue
  40. 103 0
      pages_safetyCheck/views/materialAttachments.vue
  41. 337 0
      pages_safetyCheck/views/planDetail.vue
  42. 410 0
      pages_safetyCheck/views/safetyCheck.vue
  43. 319 0
      pages_safetyCheck/views/snapshotManage/snapshotDetail.vue
  44. 905 0
      pages_safetyCheck/views/snapshotManage/snapshotList.vue
  45. BIN
      pages_safetyExamine/images/clear.png
  46. BIN
      pages_safetyExamine/images/icon_04.png
  47. BIN
      pages_safetyExamine/images/icon_07.png
  48. BIN
      pages_safetyExamine/images/icon_aqjc_ssp.png
  49. BIN
      pages_safetyExamine/images/icon_bfhx_sq.png
  50. BIN
      pages_safetyExamine/images/icon_bfhx_xq.png
  51. BIN
      pages_safetyExamine/images/icon_cg.png
  52. BIN
      pages_safetyExamine/images/icon_djcsys.png
  53. BIN
      pages_safetyExamine/images/icon_fjgk_sc.png
  54. BIN
      pages_safetyExamine/images/icon_jcjh_cy.png
  55. BIN
      pages_safetyExamine/images/icon_ksjc_yysr.png
  56. BIN
      pages_safetyExamine/images/icon_kzjc_bfh.png
  57. BIN
      pages_safetyExamine/images/icon_kzjc_fh.png
  58. BIN
      pages_safetyExamine/images/icon_rl.png
  59. BIN
      pages_safetyExamine/images/icon_ssp_ry.png
  60. BIN
      pages_safetyExamine/images/icon_xyxc_aqyh.png
  61. BIN
      pages_safetyExamine/images/icon_xyxc_qx.png
  62. BIN
      pages_safetyExamine/images/icon_xyxc_sys.png
  63. BIN
      pages_safetyExamine/images/icon_xyxc_syszc.png
  64. BIN
      pages_safetyExamine/images/icon_xyxc_xy.png
  65. BIN
      pages_safetyExamine/images/icon_xyxc_xyxc.png
  66. BIN
      pages_safetyExamine/images/icon_xyxcgl_jhwks.png
  67. BIN
      pages_safetyExamine/images/icon_xzwt_xz.png
  68. BIN
      pages_safetyExamine/images/icon_ywc.png
  69. BIN
      pages_safetyExamine/images/icon_yyt.png
  70. BIN
      pages_safetyExamine/images/null-data-1.png
  71. 0 1627
      pages_safetyExamine/views/dangerManage/dangerDetail.vue
  72. 0 616
      pages_safetyExamine/views/dangerManage/dangerList.vue
  73. 0 730
      pages_safetyExamine/views/dangerManage/dangerManage.vue
  74. 0 1697
      pages_safetyExamine/views/examineManage/examineAdd.vue
  75. 0 330
      pages_safetyExamine/views/examineManage/examineAddContent.vue
  76. 0 1629
      pages_safetyExamine/views/examineManage/examineAddTow.vue
  77. 0 1041
      pages_safetyExamine/views/examineManage/examineDetail.vue
  78. 0 979
      pages_safetyExamine/views/examineManage/examineList.vue
  79. 0 369
      pages_safetyExamine/views/inforSign.vue
  80. 0 1109
      pages_safetyExamine/views/patrolPlan/patrolPlanAdd.vue
  81. 0 394
      pages_safetyExamine/views/patrolPlan/patrolPlanAddContent.vue
  82. 0 377
      pages_safetyExamine/views/patrolPlan/patrolPlanAddLab.vue
  83. 0 308
      pages_safetyExamine/views/patrolPlan/patrolPlanAddMember.vue
  84. 0 877
      pages_safetyExamine/views/patrolPlan/patrolPlanDetail.vue
  85. 0 1820
      pages_safetyExamine/views/patrolPlan/patrolPlanEdit.vue
  86. 0 482
      pages_safetyExamine/views/patrolPlan/patrolPlanList.vue
  87. 0 2290
      pages_safetyExamine/views/safetyExamineWorkbench.vue
  88. 0 717
      pages_safetyExamine/views/snapshotManage/snapshotAdd.vue
  89. 0 602
      pages_safetyExamine/views/snapshotManage/snapshotDetail.vue
  90. 0 450
      pages_safetyExamine/views/snapshotManage/snapshotList.vue

pages_safetyExamine/api/index.js → api/index.js


+ 2 - 2
api/request/config.js

@@ -1,7 +1,7 @@
 const config = {
 	// 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.9:8080',//柴
+	// base_url: 'http://192.168.1.9:8080',//柴
 	// base_url: 'http://192.168.1.24:8080',//林总
 	// base_url: 'http://192.168.1.7:8080',//刘波
 	//base_url: 'http://192.168.1.17:8080',//小飞
@@ -11,7 +11,7 @@ const config = {
 	// base_url: 'http://192.168.1.29:8080',//何成
 	// base_url: 'https://demo.zjznai.com/xzgd/',
 	// base_url: 'https://lab.zjznai.com/labNhSystem/',//43服务器高升测试
-	//  base_url: 'https://lab.zjznai.com/labTest/',//1.8外网
+	  base_url: 'https://lab.zjznai.com/labTest/',//1.8外网
 	// base_url: 'https://lab.zjznai.com/labAppTest/',//43服务器线上
 	 //base_url: 'https://lab.zjznai.com/appTest/',//88服务器线上
 	// base_url: 'https://lab.zjznai.com/labSystem/', //矿大地址

+ 77 - 129
pages.json

@@ -1,21 +1,20 @@
 {
 	"pages": [
-
-
+		
 		{
-			"path": "pages/views/login/login",//登录
+			"path": "pages/views/login/login", //登录
 			"style": {
 				"navigationBarTitleText": "",
 				"navigationBarTextStyle": "white", //导航文字颜色
-				"navigationStyle":"custom"  //关闭原生导航
+				"navigationStyle": "custom" //关闭原生导航
 			}
 		},
 		{
-			"path": "pages/views/home/home",//首页
+			"path": "pages/views/home/home", //首页
 			"style": {
 				"navigationBarTitleText": "实验室安全智慧化管控系统",
 				"navigationBarTextStyle": "white", //导航文字颜色
-				"navigationBarBackgroundColor": "#0183FA" ,//导航背景色
+				"navigationBarBackgroundColor": "#0183FA", //导航背景色
 				"navigationStyle": "custom"
 			}
 		},
@@ -24,7 +23,7 @@
 			"style": {
 				"navigationBarTitleText": "",
 				"navigationBarTextStyle": "white", //导航文字颜色
-				"navigationStyle":"custom"  //关闭原生导航
+				"navigationStyle": "custom" //关闭原生导航
 			}
 		},
 		{
@@ -37,7 +36,7 @@
 		},
 
 		{
-			"path": "pages/views/teacherPage/laboratoryList",//实验室列表
+			"path": "pages/views/teacherPage/laboratoryList", //实验室列表
 			"style": {
 				"navigationBarTitleText": "实验室安全智慧化管控系统",
 				"navigationBarTextStyle": "white", //导航文字颜色
@@ -45,13 +44,13 @@
 			}
 		},
 		{
-			"path": "pages/views/information/information",//消息
+			"path": "pages/views/information/information", //消息
 			"style": {
 				"navigationBarTitleText": "消息"
 			}
 		},
 		{
-			"path": "pages/views/mine/mine",//我的
+			"path": "pages/views/mine/mine", //我的
 			"style": {
 				"navigationBarTitleText": "我的",
 				"navigationBarTextStyle": "white", //导航文字颜色
@@ -59,7 +58,7 @@
 			}
 		},
 		{
-			"path": "pages/views/information/informationInfo",//消息
+			"path": "pages/views/information/informationInfo", //消息
 			"style": {
 				"navigationBarTitleText": "消息详情"
 			}
@@ -124,7 +123,7 @@
 			}
 		},
 		{
-			"path": "pages/views/saoCode/saoCode",//扫码中转
+			"path": "pages/views/saoCode/saoCode", //扫码中转
 			"style": {
 				"navigationBarTitleText": "",
 				"navigationBarTextStyle": "white", //导航文字颜色
@@ -136,7 +135,7 @@
 
 		{
 			/* 基础分包 */
-			"root": "pages_basics",  //分包根路径
+			"root": "pages_basics", //分包根路径
 			"name": "basics", //分包名字可写可不写
 			"pages": [
 				/* 设备管理和笼位管理页面 */
@@ -161,7 +160,7 @@
 					}
 				},
 				{
-					"path": "views/faceImage",//身份验证
+					"path": "views/faceImage", //身份验证
 					"style": {
 						"navigationBarTitleText": "身份验证"
 					}
@@ -213,7 +212,7 @@
 		},
 		{
 			/* 供应商端分包 */
-			"root": "pages_supplier",  //分包根路径
+			"root": "pages_supplier", //分包根路径
 			"name": "supplier", //分包名字可写可不写
 			"pages": [
 				/* 待办事项 */
@@ -349,26 +348,26 @@
 				/* 注册 */
 
 				{
-					"path": "views/register/forgotPassword",//忘记密码
+					"path": "views/register/forgotPassword", //忘记密码
 					"style": {
 						"navigationBarTitleText": "密码重置申请"
 					}
 				},
 				{
-					"path": "views/register/registerSuccess",//注册
+					"path": "views/register/registerSuccess", //注册
 					"style": {
 						"navigationBarTitleText": "申请入驻"
 					}
 				},
 
 				{
-					"path": "views/register/register",//注册
+					"path": "views/register/register", //注册
 					"style": {
 						"navigationBarTitleText": "注册"
 					}
 				},
 				{
-					"path": "views/register/registerTow",//注册
+					"path": "views/register/registerTow", //注册
 					"style": {
 						"navigationBarTitleText": "注册"
 					}
@@ -377,10 +376,9 @@
 		},
 		{
 			/* 学生端分包 */
-			"root": "pages_student",  //分包根路径
+			"root": "pages_student", //分包根路径
 			"name": "student", //分包名字可写可不写
-			"pages": [
-				{
+			"pages": [{
 					"path": "views/meCertificate",
 					"style": {
 						"navigationBarTitleText": "我的证书"
@@ -388,64 +386,64 @@
 				},
 				/* 积分管理 */
 				{
-					"path": "views/integralManage/codeSuccess",//扫码成功
+					"path": "views/integralManage/codeSuccess", //扫码成功
 					"style": {
 						"navigationBarTitleText": "扫码成功"
 					}
 				},
 				{
-					"path": "views/integralManage/creditPoints",//信用分记录
+					"path": "views/integralManage/creditPoints", //信用分记录
 					"style": {
 						"navigationBarTitleText": "信用分记录",
 						"enablePullDownRefresh": true
 					}
 				},
 				{
-					"path": "views/integralManage/rewardPoints",//奖励分记录
+					"path": "views/integralManage/rewardPoints", //奖励分记录
 					"style": {
 						"navigationBarTitleText": "奖励分记录",
 						"enablePullDownRefresh": true
 					}
 				},
 				{
-					"path": "views/integralManage/pointsRecord",//积分记录
+					"path": "views/integralManage/pointsRecord", //积分记录
 					"style": {
 						"navigationBarTitleText": "积分记录"
 					}
 				},
 				/*准入申请*/
 				{
-					"path": "views/accessApplication/accessApplication",//准入申请
+					"path": "views/accessApplication/accessApplication", //准入申请
 					"style": {
 						"navigationBarTitleText": "安全准入"
 					}
 				},
 				{
-					"path": "views/accessApplication/applicationDetails",//申请详情
+					"path": "views/accessApplication/applicationDetails", //申请详情
 					"style": {
 						"navigationBarTitleText": ""
 					}
 				},
 				{
-					"path": "views/accessApplication/chooseALaboratory",//选择实验室
+					"path": "views/accessApplication/chooseALaboratory", //选择实验室
 					"style": {
 						"navigationBarTitleText": "安全准入"
 					}
 				},
 				{
-					"path": "views/accessApplication/newApplication",//选择实验室
+					"path": "views/accessApplication/newApplication", //选择实验室
 					"style": {
 						"navigationBarTitleText": "准入申请"
 					}
 				},
 				{
-					"path": "views/accessApplication/safeAccess",//安全准入
+					"path": "views/accessApplication/safeAccess", //安全准入
 					"style": {
 						"navigationBarTitleText": "我的准入"
 					}
 				},
 				{
-					"path": "views/meViolation/meViolation",//安全准入
+					"path": "views/meViolation/meViolation", //安全准入
 					"style": {
 						"navigationBarTitleText": "违规记录"
 					}
@@ -530,7 +528,7 @@
 					}
 				},
 				{
-					"path": "views/gasBottle/gasApply/gasApplyAdd",//添加
+					"path": "views/gasBottle/gasApply/gasApplyAdd", //添加
 					"style": {
 						"navigationBarTitleText": "申请气瓶"
 					}
@@ -542,19 +540,19 @@
 					}
 				},
 				{
-					"path": "views/gasBottle/examination/examinationSelect",//添加
+					"path": "views/gasBottle/examination/examinationSelect", //添加
 					"style": {
 						"navigationBarTitleText": "选择气瓶"
 					}
 				},
 				{
-					"path": "views/gasBottle/examination/examinationDetail",//详情
+					"path": "views/gasBottle/examination/examinationDetail", //详情
 					"style": {
 						"navigationBarTitleText": "资格申请"
 					}
 				},
 				{
-					"path": "views/gasBottle/examination/examinationAdd",//添加
+					"path": "views/gasBottle/examination/examinationAdd", //添加
 					"style": {
 						"navigationBarTitleText": "资格申请"
 					}
@@ -609,8 +607,9 @@
 				}
 			]
 		},
-		{/* 管理端分包 */
-			"root": "pages_manage",  //分包根路径
+		{
+			/* 管理端分包 */
+			"root": "pages_manage", //分包根路径
 			"name": "manage", //分包名字可写可不写
 			"pages": [
 				//门禁授权
@@ -628,13 +627,13 @@
 				},
 				//应急处置
 				{
-					"path": "views/emergencyEvacuationBig",//应急疏散
+					"path": "views/emergencyEvacuationBig", //应急疏散
 					"style": {
 						"navigationBarTitleText": "应急处置"
 					}
 				},
 				{
-					"path": "views/emergencyEvacuationBigFullScreen",//应急疏散
+					"path": "views/emergencyEvacuationBigFullScreen", //应急疏散
 					"style": {
 						"navigationBarTitleText": "应急处置",
 						"pageOrientation": "landscape"
@@ -648,13 +647,13 @@
 					}
 				},
 				{
-					"path": "views/accessQualification/accessQualificationInfo",//准入资格证书申请详情
+					"path": "views/accessQualification/accessQualificationInfo", //准入资格证书申请详情
 					"style": {
 						"navigationBarTitleText": ""
 					}
 				},
 				{
-					"path": "views/accessQualification/approve",//不通过原因
+					"path": "views/accessQualification/approve", //不通过原因
 					"style": {
 						"navigationBarTitleText": "审核未通过"
 					}
@@ -668,14 +667,14 @@
 				// },
 				/* 实验室详情 */
 				{
-					"path": "views/laboratory/infoPage",//详情
+					"path": "views/laboratory/infoPage", //详情
 					"style": {
 						"navigationBarTitleText": "实验室详情",
 						"enablePullDownRefresh": true
 					}
 				},
 				{
-					"path": "views/laboratory/videoPlayer",//视频监控
+					"path": "views/laboratory/videoPlayer", //视频监控
 					"style": {
 						"navigationBarTitleText": "视频监控",
 						"enablePullDownRefresh": true
@@ -690,45 +689,45 @@
 					}
 				},
 				{
-					"path": "views/laboratory/word",//播放文字
+					"path": "views/laboratory/word", //播放文字
 					"style": {
 						"navigationBarTitleText": "播放文字"
 					}
 				},
 				{
-					"path": "views/laboratory/monitor",//查看监控
+					"path": "views/laboratory/monitor", //查看监控
 					"style": {
 						"navigationBarTitleText": "查看监控"
 					}
 				},
 				{
-					"path": "views/laboratory/safetyCard",//安全信息牌
+					"path": "views/laboratory/safetyCard", //安全信息牌
 					"style": {
 						"navigationBarTitleText": "安全信息牌"
 					}
 				},
 				/* 预案执行记录 */
 				{
-					"path": "views/plan/planList",//预案执行记录
+					"path": "views/plan/planList", //预案执行记录
 					"style": {
 						"navigationBarTitleText": "预案执行记录"
 					}
 				},
 				{
-					"path": "views/plan/planInfo",//预案详情
+					"path": "views/plan/planInfo", //预案详情
 					"style": {
 						"navigationBarTitleText": "预案详情"
 					}
 				},
 				/* 分级管控 */
 				{
-					"path": "views/gradingControl/gradingControl",//分级管控
+					"path": "views/gradingControl/gradingControl", //分级管控
 					"style": {
 						"navigationBarTitleText": "分级管控"
 					}
 				},
 				{
-					"path": "views/gradingControl/infoPage",//分级管控
+					"path": "views/gradingControl/infoPage", //分级管控
 					"style": {
 						"navigationBarTitleText": "分级管控详情"
 					}
@@ -856,7 +855,7 @@
 					}
 				},
 				{
-					"path": "views/gasBottle/gasApply/gasApplyAdd",//添加
+					"path": "views/gasBottle/gasApply/gasApplyAdd", //添加
 					"style": {
 						"navigationBarTitleText": "申请气瓶"
 					}
@@ -870,13 +869,13 @@
 
 				/* 资格申请 */
 				{
-					"path": "views/gasBottle/examination/examinationSelect",//添加
+					"path": "views/gasBottle/examination/examinationSelect", //添加
 					"style": {
 						"navigationBarTitleText": "选择气瓶"
 					}
 				},
 				{
-					"path": "views/gasBottle/examination/examinationAdd",//添加
+					"path": "views/gasBottle/examination/examinationAdd", //添加
 					"style": {
 						"navigationBarTitleText": "资格申请"
 					}
@@ -903,127 +902,76 @@
 		},
 		{
 			/* 安全检查分包 */
-			"root": "pages_safetyExamine",  //分包根路径
-			"name": "safetyExamine", //分包名字可写可不写
+			"root": "pages_safetyCheck", //分包根路径
+			"name": "safetyCheck", //分包名字可写可不写
 			"pages": [
 				{
-					"path": "views/safetyExamineWorkbench",
+					"path": "views/safetyCheck",
 					"style": {
 						"navigationBarTitleText": "安全检查"
 					}
 				},
 				{
-					"path": "views/patrolPlan/patrolPlanAdd",
-					"style": {
-						"navigationBarTitleText": "发起巡查计划"
-					}
-				},
-				{
-					"path": "views/patrolPlan/patrolPlanAddLab",
-					"style": {
-						"navigationBarTitleText": "选择实验室"
-					}
-				},
-				{
-					"path": "views/patrolPlan/patrolPlanAddContent",
-					"style": {
-						"navigationBarTitleText": "选择检查内容"
-					}
-				},
-				{
-					"path": "views/patrolPlan/patrolPlanAddMember",
-					"style": {
-						"navigationBarTitleText": "选择巡查组"
-					}
-				},
-				{
-					"path": "views/patrolPlan/patrolPlanList",
-					"style": {
-						"navigationBarTitleText": "校院巡查计划"
-					}
-				},
-				{
-					"path": "views/patrolPlan/patrolPlanDetail",
-					"style": {
-						"navigationBarTitleText": "计划详情"
-					}
-				},
-				{
-					"path": "views/patrolPlan/patrolPlanEdit",
-					"style": {
-						"navigationBarTitleText": "计划编辑"
-					}
-				},
-				{
-					"path": "views/examineManage/examineAddTow",
-					"style": {
-						"navigationBarTitleText": "开始检查"
-					}
-				},
-				{
-					"path": "views/examineManage/examineAdd",
-					"style": {
-						"navigationBarTitleText": "开始检查"
-					}
-				},
-				{
-					"path": "views/examineManage/examineDetail",
+					"path": "views/itemsManage/snapshotRectification",
 					"style": {
-						"navigationBarTitleText": "检查详情"
+						"navigationBarTitleText": "整改"
 					}
 				},
 				{
-					"path": "views/examineManage/examineAddContent",
+					"path": "views/inspectManage/inspectAdd",
 					"style": {
 						"navigationBarTitleText": "开始检查"
 					}
 				},
 				{
-					"path": "views/examineManage/examineList",
+					"path": "views/inspectManage/hiddenDangerRecord",
 					"style": {
-						"navigationBarTitleText": "校院巡查管理"
+						"navigationBarTitleText": "隐患记录"
 					}
 				},
 				{
-					"path": "views/dangerManage/dangerManage",
+					"path": "views/inspectManage/inspectList",
 					"style": {
-						"navigationBarTitleText": "隐患整改"
+						"navigationBarTitleText": "检查"
 					}
 				},
+				
+				
 				{
-					"path": "views/dangerManage/dangerList",
+					"path": "views/itemsManage/hiddenDangerItemsSearch",
 					"style": {
-						"navigationBarTitleText": "安全隐患"
+						"navigationBarTitleText": "隐患项搜索"
 					}
 				},
 				{
-					"path": "views/dangerManage/dangerDetail",
+					"path": "views/itemsManage/hiddenDangerItems",
 					"style": {
-						"navigationBarTitleText": "安全隐患"
+						"navigationBarTitleText": "隐患项"
 					}
 				},
+				
 				{
 					"path": "views/snapshotManage/snapshotDetail",
 					"style": {
-						"navigationBarTitleText": "待整改"
+						"navigationBarTitleText": "随手拍详情"
 					}
 				},
 				{
-					"path": "views/snapshotManage/snapshotAdd",
+					"path": "views/snapshotManage/snapshotList",
 					"style": {
-						"navigationBarTitleText": "随手拍上报"
+						"navigationBarTitleText": "随手拍"
 					}
 				},
 				{
-					"path": "views/snapshotManage/snapshotList",
+					"path": "views/materialAttachments",
 					"style": {
-						"navigationBarTitleText": "随手拍上报记录"
+						"navigationBarTitleText": "材料附件"
 					}
 				},
 				{
-					"path": "views/inforSign",
+					"path": "views/planDetail",
 					"style": {
-						"navigationBarTitleText": "安全信息牌"
+						"navigationBarTitleText": "计划详情"
 					}
 				}
 			]

+ 2 - 2
pages/api/index.js

@@ -277,7 +277,7 @@ export const systemDeptDropList = (data) => {
 //实验室-列表-获取分类下拉列表
 export const laboratoryClassTypeGetList = (data) => {
 	return apiResquest({
-		url: `/laboratory/classType/getList`,
+		url: `/laboratory/typeConfig/getList`,
 		method: 'POST',
 		data: { ...data }
 	})
@@ -285,7 +285,7 @@ export const laboratoryClassTypeGetList = (data) => {
 //实验室-列表-获取分级
 export const laboratoryClassLevelGetList = (data) => {
 	return apiResquest({
-		url: `/laboratory/classLevel/getList`,
+		url: `/laboratory/levelConfig/getLevelTitleList`,
 		method: 'POST',
 		data: { ...data }
 	})

pages_safetyExamine/images/icon_xyxc_sm.png → pages/images/icon_xyxc_sm.png


+ 1 - 1
pages/views/pupilPage/pupilHome.vue

@@ -50,7 +50,7 @@
 				</view>
 			</view>
 		</view>
-		<img class="scan_btn" @click.stop="saoCode" src="@/pages_safetyExamine/images/icon_xyxc_sm.png" />
+		<img class="scan_btn" @click.stop="saoCode" src="@/pages/images/icon_xyxc_sm.png" />
 		<tab-bar></tab-bar>
 	</view>
 </template>

+ 4 - 4
pages/views/teacherPage/laboratoryList.vue

@@ -196,13 +196,13 @@
 				if (data.code == 200) {
 					let list = [];
 					for (let i = 0; i < data.data.length; i++) {
-						list.push(data.data[i].typeName)
+						list.push(data.data[i].subType)
 					}
 					this.subjectArray = list;
 					list.unshift('全部分类');
 					this.subjectList = data.data;
 					this.subjectList.unshift({
-						typeName: "全部分类",
+						subType: "全部分类",
 						typeId: ""
 					})
 				}
@@ -215,13 +215,13 @@
 				if (data.code == 200) {
 					let list = [];
 					for (let i = 0; i < data.data.length; i++) {
-						list.push(data.data[i].levelName)
+						list.push(data.data[i].titleName)
 					}
 					this.levelArray = list;
 					list.unshift('全部分类');
 					this.levelList = data.data;
 					this.levelList.unshift({
-						levelName: "全部分类",
+						titleName: "全部分类",
 						levelId: ""
 					})
 				}

+ 5 - 2
pages/views/teacherPage/teacherHome.vue

@@ -70,7 +70,7 @@
 					</view>
 				</view>
 			</view>
-			<img class="scan_btn" @click.stop="saoCode" src="@/pages_safetyExamine/images/icon_xyxc_sm.png" />
+			<img class="scan_btn" @click.stop="saoCode" src="@/pages/images/icon_xyxc_sm.png" />
 			<tab-bar></tab-bar>
 		</view>
 
@@ -155,7 +155,10 @@
 
 				} else if (type == 'securityCheck') {
 					//安全检查
-					this.getGentleIdentifier();
+					uni.navigateTo({
+						url: "/pages_safetyCheck/views/safetyCheck",
+					});
+					//this.getGentleIdentifier();
 				} else if (type == 'securityExamination') {
 					//安全考试
 

+ 5 - 5
pages_manage/views/laboratory/meLaboratory.vue

@@ -156,13 +156,13 @@
 				if (data.code == 200) {
 					let list = [];
 					for (let i = 0; i < data.data.length; i++) {
-						list.push(data.data[i].typeName)
+						list.push(data.data[i].subType)
 					}
 					this.subjectArray = list;
 					list.unshift('全部分类');
 					this.subjectList = data.data;
 					this.subjectList.unshift({
-						typeName: "全部分类",
+            subType: "全部分类",
 						typeId: ""
 					})
 				}
@@ -175,13 +175,13 @@
 				if (data.code == 200) {
 					let list = [];
 					for (let i = 0; i < data.data.length; i++) {
-						list.push(data.data[i].levelName)
+						list.push(data.data[i].titleName)
 					}
 					this.levelArray = list;
 					list.unshift('全部分类');
 					this.levelList = data.data;
 					this.levelList.unshift({
-						levelName: "全部分类",
+            titleName: "全部分类",
 						levelId: ""
 					})
 				}
@@ -457,4 +457,4 @@
 			}
 		}
 	}
-</style>
+</style>

+ 371 - 0
pages_safetyCheck/api/index.js

@@ -0,0 +1,371 @@
+import { apiResquest,apiResquestForm,apiResquestJsonList,apiResquestFormVideo,apiResquestTimer } from '@/api/request/request.js'
+
+//实验室-列表-获取学院列表下拉列表
+export const systemDeptDropList = (data) => {
+	return apiResquest({
+		url: `/system/dept/dropList`,
+		method: 'POST',
+		data: { ...data }
+	})
+};
+//查询楼栋楼层
+export const laboratoryBigViewGetBuildByBigView = (data) => {
+	return apiResquest({
+		url: `/laboratory/bigView/getBuildByBigView`,
+		method: 'GET',
+		data: data,
+	})
+};
+
+
+/*根据校区/楼栋/楼层查询实验室列表
+  deptId:'校区查询'
+  buildId:'楼栋查询'
+  floorId:'楼层查询'
+*/
+//实验室-列表
+export const laboratorySubRelInfoGetListByFloor = (data) => {
+	return apiResquest({
+		url: `/laboratory/subRelInfo/getListByFloor`,
+		method: 'POST',
+		data: { ...data }
+	})
+};
+
+//根据学院id查询实验室列表
+export const laboratorySubRelInfoGetRelList = (data) => {
+	return apiResquest({
+		url: `/laboratory/subRelInfo/getRelList`,
+		method: 'POST',
+		data: { ...data }
+	})
+};
+//根据学院id查询实验室列表-带权限
+export const laboratorySubRelInfoGetRelListByCondition = (data) => {
+	return apiResquest({
+		url: `/laboratory/subRelInfo/getRelListByCondition`,
+		method: 'POST',
+		data: { ...data }
+	})
+};
+//字典
+export const getDicts = (dictType) => {
+	return apiResquest({
+		url: '/system/dict/item/option?dictCode=' + dictType,
+		method: 'get',
+	})
+};
+
+
+/***开展检查***/
+//开展检查-获取巡查计划管理列表
+export const checkManageList  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkManage/appList`,
+        method: 'POST',
+        data: {...data}
+    })
+};
+//开展检查-根据实验室id查询该实验室有关计划
+export const getCheckPlanBySubId = (data) => {
+    return apiResquestForm({
+        url: '/zd-security/checkManage/getCheckPlanBySubId',
+        method: 'GET',
+        data: data
+    })
+};
+//开展检查--新增--有计划的时候
+export const checkManageUpdate  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkManage/appUpdate`,
+        method: 'PUT',
+        data: {...data}
+    })
+};
+//开展检查--新增-该实验室没有计划的时候
+export const checkManageAdd  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkManage/add`,
+        method: 'POST',
+        data: {...data}
+    })
+};
+//开展检查-通过id查询巡查管理
+export const findCheckManage = (data) => {
+    return apiResquestForm({
+        url: '/zd-security/checkManage/appFindCheckManage',
+        method: 'GET',
+        data: data
+    })
+};
+//开展检查-根据计划id查询附件列表
+export const findByPlanIdAttachment = (data) => {
+    return apiResquestForm({
+        url: '/zd-security/upload/findByCheckPlanId',
+        method: 'GET',
+        data: data
+    })
+};
+//开展检查-根据实验室id查询该实验室详情
+export const subjectFindSubjectInfo = (data) => {
+    return apiResquestForm({
+        url: '/zd-laboratory/subject/findSubjectInfo',
+        method: 'GET',
+        data: data
+    })
+};
+//项目检查库-树状列表
+export const checkOptionListNew = (data) => {
+    return apiResquestForm({
+        url: '/zd-security/checkOption/list',
+        method: 'GET',
+        data: data
+    })
+};
+
+//专项检查-根据选择的设备id生成检查项
+export const getHazardInfoByJoinIds  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkManage/getHazardInfoByJoinIds`,
+        method: 'GET',
+        data: data,
+    })
+};
+//专项检查-根据选择的检查项查询当前项出现的次数
+export const countHazardNum  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkHazard/countHazardNum`,
+        method: 'GET',
+        data: data,
+    })
+};
+
+//专项检查-根据实验室id查询设备
+export const getHazardInfoBySubId  = (data) => {
+    return apiResquest({
+        url: `/laboratory/hazard/getHazardInfoBySubId`,
+        method: 'GET',
+        data: data,
+    })
+};
+//巡查计划--检查计划各检查状态数据数量
+export const getCheckStatusCount  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkPlan/getCheckStatusCount`,
+        method: 'GET',
+        data: data,
+    })
+};
+//各检查状态数据数量
+export const getManageStatusCount  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkManage/getManageStatusCount`,
+        method: 'GET',
+        data: data,
+    })
+};
+//数据统计
+export const dataStatistics  = (data) => {
+    return apiResquest({
+        url: `/security/DataStatistics/countApp`,
+        method: 'GET',
+        data: data,
+    })
+};
+/* 巡查计划------------------------------ */
+//巡查计划--列表
+export const checkPlanList  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkPlan/appList`,
+        method: 'POST',
+        data: {...data}
+    })
+};
+//巡查计划--添加
+export const checkPlanAdd  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkPlan/appAdd`,
+        method: 'POST',
+        data: {...data}
+    })
+};
+//巡查计划--全校学院/实验室数量
+export const getAllSubNum  = (data) => {
+    return apiResquest({
+        url: `/laboratory/subject/getAllSubNum`,
+        method: 'GET',
+        data: data,
+    })
+};
+//巡查计划-查询是否院级用户
+export const isSCollege  = (data) => {
+    return apiResquest({
+        url: `/security/collegCheck/isSCollege`,
+        method: 'GET',
+        data: data,
+    })
+};
+//巡查计划-选择学院-带实验室数量
+export const laboratorySubRelInfoConditionCollegeInfo  = (data) => {
+    return apiResquest({
+        url: `/laboratory/subRelInfo/conditionCollegeInfo`,
+        method: 'GET',
+        data: data,
+    })
+};
+//巡查计划-选择全校-带学院和实验室数量
+export const laboratorySubRelInfoGetAllSubNum  = (data) => {
+    return apiResquest({
+        url: `/laboratory/subRelInfo/getAllSubNum`,
+        method: 'GET',
+        data: data,
+    })
+};
+
+//专项检查/巡查计划-检查类型
+export const dangerList  = (data) => {
+    return apiResquest({
+        url: `/system/dict/data/listNotPower?dictType=lab_hazard_type`,
+        method: 'GET',
+        data: data,
+    })
+};
+//专项检查/巡查计划-设备查询
+export const findDeviceList  = (data) => {
+    return apiResquest({
+        url: `/laboratory/hazard/queryHazardList`,
+        method: 'POST',
+        data: {...data}
+    })
+};
+//专项检查/巡查计划-设备确定提交
+export const haveHazardInSub  = (data) => {
+    return apiResquest({
+        url: `/laboratory/hazard/haveHazardInSub`,
+        method: 'POST',
+        data: {...data}
+    })
+};
+//巡查计划--获取巡查组列表
+export const checkGroupList  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkGroup/appFindGroupList`,
+        method: 'POST',
+        data: {...data}
+    })
+};
+//巡查计划--巡查组详情
+export const checkGroupDetail  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkGroup/appFind`,
+        method: 'GET',
+        data: data,
+    })
+};
+//巡查计划--详情
+export const checkPlanById  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkPlan/appFindCheckPlan`,
+        method: 'GET',
+        data: data,
+    })
+};
+//巡查计划--修改
+export const checkPlanEdit  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkPlan/appUpdate`,
+        method: 'PUT',
+        data: {...data}
+    })
+};
+//巡查计划--添加
+export const findByCheckPlanId  = (data) => {
+    return apiResquest({
+        url: `/zd-security/checkManage/appFindByCheckPlanId`,
+        method: 'POST',
+        data: {...data}
+    })
+};
+
+//开展检查-安全隐患列表
+export const checkHazardAppList = (data) => {
+    return apiResquestForm({
+        url: '/security/checkHazard/appCheckHazardList',
+        method: 'GET',
+        data: data
+    })
+};
+//开展检查-安全隐患详情
+export const getHazardById = (data) => {
+    return apiResquestForm({
+        url: '/security/checkHazard/getAppHazardById',
+        method: 'GET',
+        data: data
+    })
+};
+//开展检查-获取巡查计划管理列表
+export const checkHazardAdd  = (data) => {
+    return apiResquest({
+        url: `/security/checkRectify/addOrApprove`,
+        method: 'POST',
+        data: {...data}
+    })
+};
+//随手拍-----------------------------------------------------
+//随手拍--添加
+export const checkClapAdd  = (data) => {
+    return apiResquest({
+        url: `/security/checkClap/appAdd`,
+        method: 'POST',
+        data: {...data}
+    })
+};
+//随手拍--管理列表
+export const checkClapList  = (data) => {
+    return apiResquest({
+        url: `/security/checkClap/appList`,
+        method: 'GET',
+        data: data,
+    })
+};
+//随手拍--上报记录-列表
+export const checkClapMylist  = (data) => {
+    return apiResquest({
+        url: `/security/checkClap/mylist`,
+        method: 'GET',
+        data: data,
+    })
+};
+//随手拍--获取当前登录人身份信息
+export const getUserCollegCheck  = (data) => {
+    return apiResquest({
+        url: `/security/collegCheck/getloginUser`,
+        method: 'GET',
+        data: data,
+    })
+};
+
+//随手拍--详情
+export const checkClapById  = (data) => {
+    return apiResquest({
+        url: `/security/checkClap/appFindById`,
+        method: 'GET',
+        data: data,
+    })
+};
+//随手拍--整改
+export const checkClapRectify  = (data) => {
+    return apiResquest({
+        url: `/security/checkClap/clapApprove`,
+        method: 'POST',
+        data: {...data}
+    })
+};
+//根据名称查询实验室
+export const subjectList = (data) => {
+    return apiResquestForm({
+        url: '/laboratory/subject/list/listAdmin',
+        method: 'GET',
+        data: data
+    })
+};

pages_safetyExamine/images/icon_06.png → pages_safetyCheck/images/icon_06.png


pages_safetyExamine/images/icon_06_1.png → pages_safetyCheck/images/icon_06_1.png


BIN
pages_safetyCheck/images/icon_aqjc_gb@1x.png


BIN
pages_safetyCheck/images/icon_aqjc_sc.png


pages_safetyExamine/images/icon_aqjc_sm.png → pages_safetyCheck/images/icon_aqjc_sm.png


pages_safetyExamine/images/icon_aqjc_ss.png → pages_safetyCheck/images/icon_aqjc_ss.png


pages_safetyExamine/images/icon_djc_wj.png → pages_safetyCheck/images/icon_djc_wj.png


BIN
pages_safetyCheck/images/icon_sskz_azsh.png


pages_safetyExamine/images/icon_ssp_closure.png → pages_safetyCheck/images/icon_ssp_closure.png


BIN
pages_safetyCheck/images/icon_ssp_gd@1x.png


BIN
pages_safetyCheck/images/icon_sys_xz@1x.png


BIN
pages_safetyCheck/images/icon_wd_gd@1x.png


BIN
pages_safetyCheck/images/icon_wxz_fc@1x.png


BIN
pages_safetyCheck/images/icon_xz_fc@1x.png


BIN
pages_safetyCheck/images/icon_xz_zg@1x.png


BIN
pages_safetyCheck/images/icon_yybz_sc.png


BIN
pages_safetyCheck/images/icon_yybz_yy.png


BIN
pages_safetyCheck/images/icon_zg_zh@1x.png


BIN
pages_safetyCheck/images/img_aqjc_ssp@1x.png


BIN
pages_safetyCheck/images/img_aqjc_xjjc@1x.png


BIN
pages_safetyCheck/images/img_aqjc_xyzc@1x.png


BIN
pages_safetyCheck/images/img_ssp_pz@1x.png


BIN
pages_safetyCheck/images/img_xyzc_bg@1x.png


+ 122 - 0
pages_safetyCheck/views/inspectManage/hiddenDangerRecord.vue

@@ -0,0 +1,122 @@
+<!-- 隐患记录 -->
+<template>
+	<view class="hiddenDangerRecord">
+		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
+			<view class="tip">此检查项在当前实验室累计出现 3 次隐患</view>
+			<view class="list">
+				<view class="list-li" v-for="(item,index) in dataList">
+					<view>{{item.name}}</view>
+					<view>{{item.time}}
+						<img  src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
+					</view>
+				</view>
+			</view>
+		</scroll-view>
+	</view>
+</template>
+
+<script>
+	import {
+		config
+	} from '@/api/request/config.js'
+	import {} from '@/pages/api/index.js'
+	import {} from '@/pages_safetyCheck/api/index.js'
+	export default {
+		name: "hiddenDangerRecord",
+		components: {
+
+		},
+		data() {
+			return {
+				baseUrl: config.base_url,
+				pageType: 0,
+				dataList:[
+					{
+						name:'检查时间',
+						time:'2024-09-06',
+					},
+					{
+						name:'检查时间',
+						time:'2024-09-06',
+					},
+					{
+						name:'检查时间',
+						time:'2024-09-06',
+					},
+				]
+				
+			}
+		},
+		onLoad(option) {
+
+
+		},
+		onShow() {
+
+		},
+		mounted() {
+
+		},
+		methods: {
+			//滚动事件
+			scrollGet() {},
+			
+
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	.hiddenDangerRecord {
+		height: 100%;
+		display flex;
+		.tip{
+			width: 750rpx;
+			height: 80rpx;
+			background: rgba(255,140,0,0.2);
+			border-radius: 0rpx 0rpx 0rpx 0rpx;
+			font-size: 30rpx;
+			color: #FF8C00;
+			line-height: 80rpx;
+			text-align: center;
+		}
+		.list{
+			width: 690rpx;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			margin: 20rpx 30rpx 0;
+			.list-li{
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+				border-bottom: 1rpx solid #E0E0E0;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+				>view:nth-of-type(1){
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 100rpx;
+					text-align: left;
+				}
+				>view:nth-of-type(2){
+					font-size: 28rpx;
+					color: #666666;
+					line-height: 100rpx;
+					text-align: left;
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+					>img{
+						width: 24rpx;
+						height: 24rpx;
+						margin-left: 10rpx;
+					}
+				}
+			}
+			.list-li:last-of-type{
+				border: none;
+			}
+		}
+		
+	}
+</style>

+ 786 - 0
pages_safetyCheck/views/inspectManage/inspectAdd.vue

@@ -0,0 +1,786 @@
+<!-- 开始检查 -->
+<template>
+	<view class="inspectAdd">
+		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
+			<view class="tip">第一次检查</view>
+			<view class="title">
+				<view class="title-l">
+					<view class="title-l-t">{{newData.data10}}</view>
+					<view class="title-l-b">
+						<view v-for="(item,index) in newData.data11" :key="index">{{item}}</view>
+					</view>
+				</view>
+				<img class="title-r" src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
+			</view>
+			<view class="items">
+				<view class="items-t">
+					<view class="items-t-r">{{newData.data3}}</view>
+				</view>
+				<view class="items-b">< {{newData.data4}} <</view>
+			</view>
+			<view class="items-number">此检查项在当前实验室累计出现<text>{{newData.data5}}</text>次隐患</view>
+			<view class="list">
+				<view class="list-li">
+					<view>检查要点</view>
+					<view>
+						<img src="@/pages_safetyCheck/images/icon_06.png">
+					</view>
+				</view>
+				<view class="hidden-content">{{newData.data6}}
+				</view>
+				<view class="list-li">
+					<view>检查隐患</view>
+					<view>
+						<img src="@/pages_safetyCheck/images/icon_06.png">
+					</view>
+				</view>
+				<textarea class="describe" type="text" v-model="form.rectifyDescribe" maxlength="200"
+					placeholder="请填写隐患描述" placeholder-style="font-size:24rpx;color:#999;"></textarea>
+				<view class="check-for-img-max-box">
+					<view class="left-title-p"></view>
+					<view class="right-img-box">
+						<view class="img-box" v-for="(imgUrl,imgIndex) in form.imgDtoList" :key="imgIndex">
+							<img class="img-data" :src="baseUrl+imgUrl.fileUrl">
+							<img class="position-img" src="@/pages_safetyCheck/images/icon_ssp_closure.png"
+								@click="delImg(imgIndex)">
+						</view>
+						<img class="add-button" src="@/pages_safetyCheck/images/img_ssp_pz@1x.png"
+							@click="selectImage()" v-if="form.imgDtoList.length<5">
+					</view>
+				</view>
+			</view>
+			<view class="voice">
+				<view class="voice_t">
+					<view class="voice_t_l">语音备注:(选填)</view>
+					<!-- <img class="voice_t_r" src="@/pages_safetyExamine/images/icon_ksjc_yysr.png"
+						@longpress.stop="recordButton(item,$event)" @touchmove.stop="cancelButton"
+						@touchend.stop="sendButton(item,$event)"> -->
+				</view>
+				<view class="voice_b" v-for="(voiceItem,voiceIndex) in voiceList" :key="voiceIndex">
+					<view class="voice_b_l" @tap="voicePlay(voiceItem.url)">
+						<img class="add-button" src="@/pages_safetyCheck/images//icon_yybz_yy.png" />
+						{{voiceItem.times}}″
+					</view>
+					<img class="voice_b_r" src="@/pages_safetyCheck/images/icon_yybz_sc.png"
+						@tap="voiceDele('',voiceIndex)" />
+				</view>
+				<view class="voice-btn">
+					<img class="voice_t_r" src="@/pages_safetyCheck/images/icon_sskz_azsh.png"
+						@longpress.stop="recordButton(item,$event)" @touchmove.stop="cancelButton"
+						@touchend.stop="sendButton(item,$event)"/>
+					<text>按住说话</text>
+				</view>
+			</view>
+		</scroll-view>
+		<view class="sub-btn">
+			<view>保存草稿</view>
+			<view>符合</view>
+			<view>不符合</view>
+		</view>
+	</view>
+
+</template>
+
+<script>
+	import {
+		config
+	} from '@/api/request/config.js'
+	export default {
+		name: "inspectAdd",
+		components: {
+
+		},
+		data() {
+			return {
+				baseUrl: config.base_url,
+				form: {
+					imgDtoList: [],
+				},
+				newData: {
+					data1: '实验室名称(房间号)',
+					data2: '学院单位名称',
+					data3: '1.1.1 检查项检查项检查项检查',
+					data4: '1.1 检查项检查项检查项检查项检查项检查项',
+					data5: '19',
+					data6: '(1)有学校相关会议(校务会议、党委常委会会议等)纪要,内容包含实验室安全工作。',
+					data7: '内容内容内容内容内容内容内容内容内容内容内容内内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容',
+					data8: '李瑶瑶',
+					data9: '2024-01-01',
+					data10: '计划标题计划标题计划标题计划标题计划标题计标题计划标题计划标题',
+					data11: ['校级检查', '全面检查', '交叉检查'],
+					rectificationStatus: 0, //整改状态 0待整改 1暂无法整改 2已整改
+				},
+				voiceList: [
+					{
+					'times': '10',
+					'url': '2312312'
+					},
+				],
+			}
+		},
+		onLoad(option) {},
+		onShow() {
+
+		},
+		mounted() {
+
+		},
+		methods: {
+			//滚动事件
+			scrollGet() {},
+			/******图片上传******/
+			selectImage() {
+				let self = this;
+				if (this.form.imgDtoList.length > 4) {
+					uni.showToast({
+						title: '最多上传5张图片',
+						icon: "none",
+						mask: true,
+						duration: 2000
+					});
+					return
+				}
+				wx.chooseImage({
+					count: 1,
+					sizeType: ["original", "compressed"],
+					sourceType: ["album", "camera"],
+					success: function(res) {
+						let tempFilePaths = res.tempFilePaths[0];
+						self.uploadImg(tempFilePaths);
+					}
+				});
+			},
+			async uploadImg(tempFilePaths) {
+				var self = this;
+				uni.showLoading({
+					title: '上传中',
+					mask: true
+				});
+				uni.uploadFile({
+					url: config.base_url + '/system/file/upload', //仅为示例,非真实的接口地址
+					header: {
+						'Authorization': uni.getStorageSync('token')
+					},
+					filePath: tempFilePaths,
+					name: 'file',
+					formData: {
+						'user': 'test'
+					},
+					success: (uploadFileRes) => {
+						let res = JSON.parse(uploadFileRes.data);
+						if (res.code == 200) {
+							this.form.imgDtoList.push({
+								'fileUrl': res.data.url,
+								'fileName': res.data.name
+							});
+							console.log(res.data.url)
+						} else {
+							uni.showToast({
+								title: res.msg,
+								icon: "none",
+								mask: true,
+								duration: 2000
+							});
+						}
+					},
+					fail: err => {},
+					complete: () => {
+						uni.hideLoading()
+					}
+				});
+			},
+			//删除图片
+			delImg(minIndex) {
+				this.form.imgDtoList.splice(minIndex, 1);
+				this.$forceUpdate();
+			},
+			/******语音备注  *******/
+			//语音备忘播放
+			async voicePlay(item) {
+				myaudio.src = config.base_url + item;
+				myaudio.play();
+			},
+			//语音备忘删除
+			async voiceDele(item, voiceIndex) {
+				let self = this;
+				uni.showModal({
+					title: '',
+					cancelColor: '#999999',
+					confirmColor: '#FF6E6E',
+					content: '确定删除此语音吗?',
+					success(res) {
+						if (res.confirm) {
+							console.log('用户点击确定')
+							this.voiceList.splice(voiceIndex, 1);
+							self.$forceUpdate();
+						} else if (res.cancel) {
+							console.log('用户点击取消')
+
+						}
+					}
+				})
+
+			},
+			//录制
+			recordButton(item, e) {
+				console.log("按下")
+				let self = this;
+				if (this.voiceList.length >= 5) {
+					uni.showToast({
+						title: '语音备忘最多只能上传5条',
+						icon: "none",
+						mask: true,
+						duration: 2000
+					});
+					return
+				}
+				this.liveType = true;
+				console.log('录制', e)
+				this.startPoint = e.touches[0]; //记录长按时开始点信息,后面用于计算上划取消时手指滑动的距离。
+				const options = {
+					duration: 60000,
+					sampleRate: 16000,
+					numberOfChannels: 1,
+					encodeBitRate: 48000,
+					format: 'mp3',
+					frameSize: 50
+				}
+				this.recorderManager.start(options); //开始录音
+				this.recorderManager.onStart(() => {
+					console.log('recorder start')
+				})
+				this.recorderManager.onError((res) => {
+					console.log(res);
+				})
+				wx.showToast({
+					title: "正在录音,上划取消发送",
+					icon: "none",
+					duration: 60000 //先定义个60秒,后面可以手动调用wx.hideToast()隐藏
+				});
+				this.sendLock = false; //长按时是不上锁的。
+			},
+			//取消
+			cancelButton(e) {
+				console.log("移动")
+				let self = this;
+
+				this.liveType = false;
+				console.log('取消', e)
+				let moveLenght = e.touches[e.touches.length - 1].clientY - this.startPoint.clientY; //移动距离
+				if (Math.abs(moveLenght) > 50) {
+					wx.showToast({
+						title: "松开手指,取消发送",
+						icon: "none",
+						duration: 60000
+					});
+					this.sendLock = true; //触发了上滑取消发送,上锁
+				} else {
+					wx.showToast({
+						title: "正在录音,上划取消发送",
+						icon: "none",
+						duration: 60000
+					});
+					this.sendLock = false; //上划距离不足,依然可以发送,不上锁
+				}
+			},
+			//发送
+			sendButton(item, e) {
+				console.log("松开")
+				let self = this;
+
+				this.liveType = false;
+				console.log('发送', e)
+				wx.hideToast(); //结束录音、隐藏Toast提示框
+				this.recorderManager.stop(); //结束录音
+				this.recorderManager.onStop((res) => {
+
+					if (!this.sendLock) {
+
+						this.uploadVoice(item, res.duration, res.tempFilePath);
+					}
+					console.log('停止录音', res.tempFilePath)
+					console.log("sendLock", this.sendLock);
+				})
+			},
+			//上传MP3
+			async uploadVoice(item, times, tempFilePaths) {
+				console.log(item)
+				console.log(times)
+				console.log(tempFilePaths)
+
+				var self = this;
+				uni.uploadFile({
+					url: config.base_url + '/system/file/upload', //仅为示例,非真实的接口地址
+					header: {
+						'Authorization': uni.getStorageSync('token')
+					},
+					filePath: tempFilePaths,
+					name: 'file',
+					formData: {
+						'user': 'test'
+					},
+					success: (uploadFileRes) => {
+						let res = JSON.parse(uploadFileRes.data);
+						if (res.code == 200) {
+							console.log("上传成功", res)
+							console.log(item)
+							let seconds = Math.round((parseInt(times) % (1000 * 60)) / 1000);
+							this.voiceList.push({
+								'times': seconds,
+								'url': res.data.url
+							})
+							console.log(JSON.stringify(self.voice))
+							//self.textParseUrlIps(res.data.url);
+							// self.newData.imgList.push(res.data.url);
+						} else {
+							uni.showToast({
+								title: res.msg,
+								icon: "none",
+								mask: true,
+								duration: 2000
+							});
+						}
+					},
+					fail: err => {
+						uni.hideLoading()
+					},
+					complete: () => {}
+				});
+			},
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	.inspectAdd {
+		height: 100%;
+		display flex;
+		box-sizing: border-box;
+		padding-bottom: 160rpx;
+		box-sizing: border-box;
+
+		#bgColor-A {
+			color: #FFD400;
+		}
+
+		#bgColor-B {
+			color: #FF8C00;
+		}
+
+		#bgColor-C {
+			color: #E11608;
+		}
+
+		.tip {
+			width: 750rpx;
+			height: 80rpx;
+			background: rgba(1, 131, 250, 0.2);
+			font-weight: normal;
+			font-size: 28rpx;
+			color: #0183FA;
+			line-height: 80rpx;
+			text-align: center;
+		}
+
+		.title {
+			width: 690rpx;
+			height: 150rpx;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			margin: 20rpx 30rpx 0;
+			display: flex;
+			justify-content: space-between;
+			align-items: center;
+			padding: 0 30rpx;
+			box-sizing: border-box;
+
+			.title-l {
+				width: 594rpx;
+
+				.title-l-t {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 42rpx;
+					text-align: left;
+					overflow: hidden;
+					text-overflow: ellipsis;
+					white-space: nowrap;
+				}
+
+				.title-l-b {
+					display: flex;
+					justify-content: flex-start;
+					margin-top: 16rpx;
+
+					>view {
+						width: 130rpx;
+						height: 50rpx;
+						background: rgba(1, 131, 250, 0.2);
+						border-radius: 6rpx 6rpx 6rpx 6rpx;
+						font-size: 24rpx;
+						color: #0183FA;
+						line-height: 50rpx;
+						text-align: center;
+						margin-right: 14rpx;
+					}
+				}
+			}
+
+			.title-r {
+				width: 24rpx;
+				height: 24rpx;
+			}
+		}
+
+		.items {
+			width: 690rpx;
+			min-height: 165rpx;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			margin: 20rpx 0 0 30rpx;
+
+			.items-li {
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+				border-bottom: 1rpx solid #E0E0E0;
+
+				>view:nth-of-type(1) {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 80rpx;
+					text-align: left;
+				}
+
+				>view:nth-of-type(2) {
+					font-size: 28rpx;
+					color: #666666;
+					line-height: 80rpx;
+					text-align: left;
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+				}
+			}
+
+			.items-t {
+				border-bottom: 1rpx solid #E0E0E0;
+				height: 80rpx;
+				display: flex;
+				justify-content: flex-start;
+				align-items: center;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+
+				.items-t-l {
+					width: 175rpx;
+					height: 50rpx;
+					background: #E11608;
+					border-radius: 50rpx 50rpx 50rpx 50rpx;
+					font-size: 30rpx;
+					color: #FFFFFF;
+					line-height: 50rpx;
+					text-align: center;
+					margin-right: 14rpx;
+				}
+
+				.items-t-r {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 42rpx;
+					text-align: left;
+				}
+			}
+
+			.items-b {
+				padding: 0 30rpx;
+				box-sizing: border-box;
+				height: 80rpx;
+				font-size: 28rpx;
+				color: #666666;
+				line-height: 80rpx;
+				text-align: left;
+			}
+		}
+
+		.items-number {
+			font-size: 24rpx;
+			color: #3D3D3D;
+			line-height: 34rpx;
+			text-align: right;
+			margin: 20rpx 60rpx 0 0;
+
+			>text {
+				font-size: 24rpx;
+				color: #FF0000;
+				line-height: 34rpx;
+				text-align: right;
+			}
+		}
+
+		.list {
+			width: 690rpx;
+			margin: 20rpx 30rpx 0;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+
+			.list-li {
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+				border-bottom: 1rpx solid #E0E0E0;
+
+				>view:nth-of-type(1) {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 80rpx;
+					text-align: left;
+				}
+
+				>view:nth-of-type(2) {
+					font-size: 28rpx;
+					color: #666666;
+					line-height: 80rpx;
+					text-align: left;
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+
+					>img {
+						width: 24rpx;
+						height: 12rpx;
+						margin-left: 10rpx;
+					}
+				}
+
+			}
+
+			.hidden-content {
+				width: 630rpx;
+				min-height: 200rpx;
+				background: #F5F5F5;
+				border-radius: 20rpx 20rpx 20rpx 20rpx;
+				margin: 20rpx 30rpx 0;
+				padding: 20rpx;
+				box-sizing: border-box;
+				font-size: 28rpx;
+				color: #666666;
+				line-height: 39rpx;
+				text-align: left;
+			}
+
+			.photo {
+				display: flex;
+				justify-content: flex-start;
+				flex-wrap: wrap;
+				margin-top: 20rpx;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+
+				>img {
+					width: 150rpx;
+					height: 150rpx;
+					border-radius: 10rpx 10rpx 10rpx 10rpx;
+					margin: 0 10rpx 10rpx 0;
+				}
+			}
+
+			.describe {
+				width: 636rpx;
+				height: 120rpx;
+				border-radius: 10rpx 10rpx 10rpx 10rpx;
+				border: 1rpx solid #E0E0E0;
+				margin: 20rpx 0 0 28rpx;
+				padding: 12rpx 16rpx;
+				box-sizing: border-box;
+			}
+
+			.check-for-img-max-box {
+				margin: 20px 28rpx;
+
+				.left-title-p {
+					width: 100%;
+					text-align: left;
+					font-size: 30rpx;
+					font-family: PingFang SC-Medium, PingFang SC;
+					font-weight: 400;
+					color: #333333;
+					line-height: 80rpx;
+				}
+
+				.right-img-box {
+					.img-box {
+						display inline-block;
+						height: 150rpx;
+						width: 150rpx;
+						position relative;
+						margin: 0 14rpx 20rpx 0;
+						border-radius 10rpx;
+						overflow hidden;
+
+						.img-data {
+							height: 150rpx;
+							width: 150rpx;
+						}
+
+						.position-img {
+							position absolute;
+							right: 0;
+							top: 0;
+							width: 36rpx;
+							height: 36rpx;
+						}
+					}
+
+					.img-box:nth-of-type(3n+3) {
+						margin-right: 0rpx;
+					}
+
+					.add-button {
+						margin: 0 0rpx 20rpx 0;
+						border-radius 10rpx;
+						overflow hidden;
+						display inline-block;
+						height: 150rpx;
+						width: 150rpx;
+					}
+				}
+			}
+
+			.list-li:last-of-type {
+				border: none;
+			}
+		}
+
+		/* 语音备注 */
+		.voice {
+			width: 690rpx;
+			min-height: 440rpx;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			margin: 20rpx 30rpx;
+			padding: 30rpx;
+			box-sizing: border-box;
+
+			.voice_t {
+				height: 80rpx;
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+
+				.voice_t_l {
+					font-size: 30rpx;
+					font-family: PingFang SC-Medium, PingFang SC;
+					font-weight: 400;
+					color: #333333;
+					line-height: 80rpx;
+				}
+
+				.voice_t_r {
+					width: 170rpx;
+					height: 50rpx;
+				}
+			}
+
+			.voice_b {
+				display flex;
+				justify-content flex-start;
+				align-items center;
+				margin-bottom: 30rpx;
+
+				.voice_b_l {
+					width: 400rpx;
+					height: 40rpx;
+					background: #0183FA;
+					border-radius: 10rpx;
+					display flex;
+					justify-content flex-start;
+					align-items center;
+					font-size: 24rpx;
+					color: #FFFFFF;
+					line-height: 30rpx;
+					text-align: left;
+
+					>img {
+						width: 20rpx;
+						height: 20rpx;
+						margin-left: 16rpx;
+						margin-right: 20rpx;
+					}
+				}
+
+				.voice_b_r {
+					width: 28rpx;
+					height: 28rpx;
+					margin-left: 20rpx;
+				}
+			}
+			.voice-btn{
+				width: 150rpx;
+				height: 150rpx;
+				position: relative;
+				margin:62rpx 0 0 238rpx;
+				>img{
+					width: 150rpx;
+					height: 150rpx;
+					position: absolute;
+				}
+				>text{
+					font-size: 24rpx;
+					color: #999999;
+					line-height: 30rpx;
+					text-align: center;
+					position: absolute;
+					top: 84rpx;
+					left: 26rpx;
+				}
+			}
+		}
+
+	}
+
+	.sub-btn {
+		display: flex;
+		justify-content: center;
+		position: fixed;
+		left: 30rpx;
+		bottom: 30rpx;
+
+		>view:nth-of-type(1) {
+			width: 230rpx;
+			height: 100rpx;
+			background: #009519;
+			border-radius: 50rpx 0rpx 0rpx 50rpx;
+			font-size: 30rpx;
+			color: #FFFFFF;
+			line-height: 100rpx;
+			text-align: center;
+		}
+
+		>view:nth-of-type(2) {
+			width: 230rpx;
+			height: 100rpx;
+			background: #0183FA;
+			border-radius: 0rpx 0rpx 0rpx 0rpx;
+			font-size: 30rpx;
+			color: #FFFFFF;
+			line-height: 100rpx;
+			text-align: center;
+		}
+
+		>view:nth-of-type(3) {
+			width: 230rpx;
+			height: 100rpx;
+			background: #FF8C00;
+			border-radius: 0rpx 50rpx 50rpx 0rpx;
+			font-size: 30rpx;
+			color: #FFFFFF;
+			line-height: 100rpx;
+			text-align: center;
+		}
+	}
+</style>

+ 791 - 0
pages_safetyCheck/views/inspectManage/inspectList.vue

@@ -0,0 +1,791 @@
+<!-- 检查和自查列表 -->
+<template>
+	<view class="snapshotList">
+		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
+			<view class="title">
+				<view class="title-l" @click="planClick()">
+					<view class="title-l-t">{{newData.data10}}</view>
+					<view class="title-l-b">
+						<view v-for="(item,index) in newData.data11" :key="index">{{item}}</view>
+					</view>
+				</view>
+				<img class="title-r" src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
+			</view>
+			<view class="tabTitleTow">
+				<view :class="tabIndexTow==index?'tab-C':'tab-D'" v-for="(item,index) in tabListTow"
+					@click="tabClickTow(index)">{{item}}</view>
+			</view>
+			<view>
+				<view class="srearch">
+					<view class="college">学院
+						<img src="@/pages_safetyCheck/images/icon_06.png">
+					</view>
+					<view class="srearch-n">
+						<view class="srearch-l" @click="popupClick(1)">
+							<img src="@/pages_safetyCheck/images/icon_aqjc_ss.png">
+						</view>
+						<input class="srearch-c" type="text" v-model="form.searchValue" placeholder="实验室/房间号" />
+						<view class="srearch-r" @click="saoCode()">
+							<img src="@/pages_safetyCheck/images/icon_aqjc_sm.png">
+						</view>
+					</view>
+				</view>
+				<view class="level">
+					<view class="level-li" :id="levelIndex==index?'levelColor-A':'levelColor-B'"
+						@click="levelClick(index)" v-for="(item,index) in levelList">{{item}}</view>
+				</view>
+			</view>
+			<view class="hidden">
+				<view class="hidden-li" @click="listClick(item)" v-for="(item,index) in hiddenList">
+					<img class="hidden-li-l" src="@/pages_safetyCheck/images/icon_sys_xz@1x.png">
+					<view class="hidden-li-c">{{item.subName}}</view>
+					<view class="hidden-li-r">待检查{{item.num}}项
+						<img src="@/pages_safetyCheck/images/icon_ssp_gd@1x.png">
+					</view>
+				</view>
+			</view>
+
+		</scroll-view>
+		<view class="popup-max-box" v-if="popupType">
+			<view class="popup-null" @click="popupClick(2)"></view>
+			<view class="popup-big-box">
+				<view class="popup-input-box">
+					<input type="text" maxlength="10" v-model="room" placeholder="请输入关键字">
+					<view @click="buildBySub">搜索</view>
+				</view>
+				<view class="popup-for-max-box">
+					<view class="popup-for-null" v-if="!roomList[0]">暂无数据</view>
+					<view class="popup-for-box" v-for="(item,index) in roomList" :key="index">
+						<view class="name-p">{{item.subName}} ({{item.roomNum?item.roomNum:'-'}})</view>
+						<view class="button-p" @click="popupClickItem(item)">确定</view>
+					</view>
+				</view>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	import {
+		config
+	} from '@/api/request/config.js'
+	import {} from '@/pages/api/index.js'
+	import {
+		laboratorySubRelInfoGetRelList,
+		checkOptionListNew,
+	} from '@/pages_safetyCheck/api/index.js'
+	export default {
+		name: "snapshotList",
+		components: {
+
+		},
+		data() {
+			return {
+				baseUrl: config.base_url,
+				pageType: 0,
+				userType: 1,
+				tabListTow: ['自查任务', '复查验证', '隐患整改'],
+				tabIndexTow: 0,
+				newData: {
+					data10: '计划标题计划标题计划标题计划标题计划标题计标题计划标题计划标题',
+					data11: ['校级检查', '全面检查', '交叉检查'],
+				},
+				form: {
+					rectifyDescribe: '',
+					imgDtoList: [],
+					hazardCheckName: '',
+				},
+				popupType: false,
+				roomList: [],
+				checkOptionList: [],
+				hiddenList: [{
+						subName: '实验室名称实验室名称实验室名称实验室名称',
+						num: 3,
+					},
+					{
+						subName: '实验室名称实验室名称实验室名称实验室名称',
+						num: 3,
+					},
+					{
+						subName: '实验室名称实验室名称实验室名称实验室名称',
+						num: 3,
+					},
+				],
+				levelList: ['一级', '二级', '三级', '四级'],
+				levelIndex: 0,
+			}
+		},
+		onLoad(option) {
+			this.$set(this, 'newData', JSON.parse(decodeURIComponent(option.infoData)));
+			this.pageType = this.newData.pageType;
+			console.log( this.newData)
+			uni.setNavigationBarTitle({
+				title: '第1次检查'
+			})
+			if (this.pageType == 0) {
+				//检查
+				this.tabListTow = ['检查任务', '复查验证', '隐患整改'];
+			} else if (this.pageType == 1) {
+				//复查
+				this.tabListTow = ['自查任务', '复查验证', '隐患整改'];
+			}
+
+		},
+		onShow() {
+
+		},
+		mounted() {
+
+		},
+		methods: {
+			//滚动事件
+			scrollGet() {},
+			levelClick(index) {
+				this.levelIndex = index;
+			},
+			tabClickTow(index) {
+				this.tabIndexTow = index;
+				this.pageType = index;
+			},
+			planClick(){
+				let infoData='';
+				uni.navigateTo({
+					url: '/pages_safetyCheck/views/planDetail?infoData=' + encodeURIComponent(JSON.stringify(infoData))
+				});
+			},
+			listClick(row){
+				let infoData=row;
+				infoData.pageType=this.tabIndexTow;
+				uni.navigateTo({
+					url: '/pages_safetyCheck/views/itemsManage/hiddenDangerItems?infoData=' + encodeURIComponent(JSON.stringify(infoData))
+				});
+			},
+			/******搜索房间弹层开关******/
+			popupClick(type) {
+				if (type == 1) {
+					this.room = "";
+					this.roomList = [];
+					this.popupType = true;
+					this.buildBySub();
+				} else if (type == 2) {
+					this.popupType = false;
+				}
+			},
+			//搜索房间接口
+			async buildBySub() {
+				let self = this;
+				const {
+					data
+				} = await laboratorySubRelInfoGetRelList({
+					'searchValue': this.form.searchValue,
+				});
+				if (data.code == 200) {
+					if (data.data[0]) {
+						this.roomList = data.data;
+					} else {
+						uni.showToast({
+							title: '未找到相关实验室',
+							icon: "none",
+							mask: true,
+							duration: 2000
+						});
+					}
+				}
+			},
+			//确认搜索房间
+			popupClickItem(item) {
+				console.log(item)
+				this.$set(this.form, "subId", item.subId)
+				this.$set(this.form, "subName", item.subName)
+				this.$set(this.form, "deptId", item.deptId)
+				for (let i = 0; i < this.collegeList.length; i++) {
+					if (item.deptId == this.collegeList[i].deptId) {
+						this.$set(this.form, "deptName", this.collegeList[i].deptName)
+					}
+				}
+				this.popupType = false;
+			},
+			/******调用摄像头******/
+			saoCode() {
+				let self = this;
+				uni.scanCode({
+					onlyFromCamera: true,
+					success: function(res) {
+						let list = res.result.split("?")[1].split("&");
+						let codeData = {};
+						list.forEach((item) => {
+							codeData[item.split("=")[0]] = item.split("=")[1];
+						})
+						console.log('二维码', codeData)
+						if (codeData.code) {
+							self.laboratoryAppletGetSubDetailInfo(codeData.code);
+						} else {
+							uni.showToast({
+								title: '请扫描正确的二维码',
+								icon: "none",
+								mask: true,
+								duration: 2000
+							});
+						}
+					}
+				});
+			},
+
+
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	.snapshotList {
+		height: 100%;
+		display flex;
+
+		.title {
+			width: 750rpx;
+			height: 150rpx;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			display: flex;
+			justify-content: space-between;
+			align-items: center;
+			padding: 0 30rpx;
+			box-sizing: border-box;
+
+			.title-l {
+				width: 594rpx;
+
+				.title-l-t {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 42rpx;
+					text-align: left;
+					overflow: hidden;
+					text-overflow: ellipsis;
+					white-space: nowrap;
+				}
+
+				.title-l-b {
+					display: flex;
+					justify-content: flex-start;
+					margin-top: 16rpx;
+
+					>view {
+						width: 130rpx;
+						height: 50rpx;
+						background: rgba(1, 131, 250, 0.2);
+						border-radius: 6rpx 6rpx 6rpx 6rpx;
+						font-size: 24rpx;
+						color: #0183FA;
+						line-height: 50rpx;
+						text-align: center;
+						margin-right: 14rpx;
+					}
+				}
+			}
+
+			.title-r {
+				width: 24rpx;
+				height: 24rpx;
+			}
+		}
+
+		.tabTitleTow {
+			width: 690rpx;
+			height: 80rpx;
+			display: flex;
+			justify-content: center;
+			margin: 20rpx 0 0 30rpx;
+
+			>view:nth-of-type(1) {
+				width: 230rpx;
+				height: 80rpx;
+				border-radius: 50rpx 0rpx 0rpx 50rpx;
+			}
+
+			>view:nth-of-type(2) {
+				width: 230rpx;
+				height: 80rpx;
+				border-radius: 0rpx 0rpx 0rpx 0rpx;
+			}
+
+			>view:nth-of-type(3) {
+				width: 230rpx;
+				height: 80rpx;
+				border-radius: 0rpx 50rpx 50rpx 0rpx;
+			}
+
+			.tab-C {
+				font-size: 30rpx;
+				color: #FFFFFF;
+				line-height: 80rpx;
+				text-align: center;
+				background: #0183FA;
+			}
+
+			.tab-D {
+				font-size: 30rpx;
+				color: #333333;
+				line-height: 80rpx;
+				text-align: center;
+				background: #FFFFFF;
+			}
+		}
+
+		.srearch {
+			width: 750rpx;
+			height: 100rpx;
+			background: #FFFFFF;
+			border-radius: 0rpx 0rpx 0rpx 0rpx;
+			overflow: hidden;
+			margin-top: 20rpx;
+			display: flex;
+			display: flex;
+			justify-content: space-between;
+			align-items: center;
+			padding: 0 30rpx;
+			box-sizing: border-box;
+
+			.college {
+				width: 200rpx;
+				height: 60rpx;
+				border-radius: 50rpx 50rpx 50rpx 50rpx;
+				border: 1rpx solid #E0E0E0;
+				font-size: 24rpx;
+				color: #333333;
+				line-height: 60rpx;
+				text-align: left;
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+				padding: 0 26rpx;
+				box-sizing: border-box;
+
+				>img {
+					width: 24rpx;
+					height: 12rpx;
+				}
+			}
+
+			.srearch-n {
+				width: 480rpx;
+				height: 60rpx;
+				border-radius: 50rpx 50rpx 50rpx 50rpx;
+				border: 1rpx solid #E0E0E0;
+				display: flex;
+				justify-content: flex-start;
+				align-items: center;
+
+				.srearch-l {
+					width: 60rpx;
+					height: 60rpx;
+
+					>img {
+						width: 20rpx;
+						height: 20rpx;
+						margin: 20rpx 0 0 26rpx;
+					}
+				}
+
+				.srearch-c {
+					flex: 1;
+					height: 58rpx;
+					font-size: 24rpx;
+					color: #999999;
+					line-height: 30rpx;
+					text-align: left;
+				}
+
+				.srearch-r {
+					width: 60rpx;
+					height: 60rpx;
+
+					>img {
+						width: 30rpx;
+						height: 30rpx;
+						margin: 14rpx 22rpx 0 0;
+					}
+
+
+				}
+			}
+		}
+
+		.level {
+			width: 750rpx;
+			height: 80rpx;
+			background: #FFFFFF;
+			display: flex;
+			justify-content: flex-start;
+			padding: 0 30rpx;
+			box-sizing: border-box;
+
+			.level-li {
+				width: 100rpx;
+				height: 50rpx;
+				background: #F5F5F5;
+				border-radius: 50rpx 50rpx 50rpx 50rpx;
+				border: 1rpx solid #E0E0E0;
+				margin-right: 10rpx;
+				font-size: 24rpx;
+				color: #333333;
+				line-height: 50rpx;
+				text-align: center;
+			}
+
+			#levelColor-A {
+				background: rgba(255, 0, 0, 0.2);
+				color: #FF0000;
+				border: 1rpx solid #FF0000;
+			}
+
+			#levelColor-B {
+				background: #F5F5F5;
+				color: #333333;
+				border: 1rpx solid #E0E0E0;
+			}
+
+		}
+
+		.list {
+			width: 690rpx;
+			min-height: 765rpx;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			margin: 20rpx 0 0 30rpx;
+
+			.list-li {
+				display: flex;
+				justify-content: space-between;
+				border-bottom: 1rpx solid #E0E0E0;
+				padding: 0 22rpx 0 28rpx;
+				box-sizing: border-box;
+
+				>view:nth-of-type(1) {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 80rpx;
+					text-align: left;
+				}
+
+				>view:nth-of-type(2) {
+					font-size: 28rpx;
+					color: #666666;
+					line-height: 80rpx;
+					text-align: left;
+					display: flex;
+					justify-content: flex-start;
+					align-items: center;
+
+					>img {
+						width: 24rpx;
+						height: 24rpx;
+						margin-left: 8rpx;
+					}
+				}
+
+				.project_r {
+					width: 510rpx;
+					min-height: 80rpx;
+					display: flex;
+					justify-content: flex-end;
+					align-items: center;
+					padding-left: 20rpx;
+					box-sizing: border-box;
+					color: #666;
+				}
+
+			}
+
+			.describe {
+				width: 636rpx;
+				height: 120rpx;
+				border-radius: 10rpx 10rpx 10rpx 10rpx;
+				border: 1rpx solid #E0E0E0;
+				margin: 20rpx 0 0 28rpx;
+				padding: 12rpx 16rpx;
+				box-sizing: border-box;
+			}
+
+			.check-for-img-max-box {
+				margin: 20px 28rpx;
+
+				.left-title-p {
+					width: 100%;
+					text-align: left;
+					font-size: 30rpx;
+					font-family: PingFang SC-Medium, PingFang SC;
+					font-weight: 400;
+					color: #333333;
+					line-height: 80rpx;
+				}
+
+				.right-img-box {
+					.img-box {
+						display inline-block;
+						height: 150rpx;
+						width: 150rpx;
+						position relative;
+						margin: 0 14rpx 20rpx 0;
+						border-radius 10rpx;
+						overflow hidden;
+
+						.img-data {
+							height: 150rpx;
+							width: 150rpx;
+						}
+
+						.position-img {
+							position absolute;
+							right: 0;
+							top: 0;
+							width: 36rpx;
+							height: 36rpx;
+						}
+					}
+
+					.img-box:nth-of-type(3n+3) {
+						margin-right: 0rpx;
+					}
+
+					.add-button {
+						margin: 0 0rpx 20rpx 0;
+						border-radius 10rpx;
+						overflow hidden;
+						display inline-block;
+						height: 150rpx;
+						width: 150rpx;
+					}
+				}
+			}
+		}
+
+		/* 实验室弹框 */
+		.popup-max-box {
+			z-index: 10;
+			height: 100%;
+			width: 100%;
+			position fixed;
+			background rgba(0, 0, 0, 0.2);
+			display flex;
+
+			flex-direction column;
+
+			.popup-null {
+				flex: 1;
+			}
+
+			.popup-big-box {
+				border-top-left-radius: 20rpx;
+				border-top-right-radius: 20rpx;
+
+				background #fff;
+
+				.popup-input-box {
+					padding: 30rpx 20rpx;
+					display: flex;
+
+					input {
+						flex: 1;
+						height: 70rpx;
+						border: 1rpx solid #e0e0e0;
+						border-radius: 10rpx;
+						margin-right: 20rpx;
+						padding: 0 20rpx;
+					}
+
+					view {
+						background #0183FA;
+						color: #fff;
+						border-radius: 10rpx;
+						width: 140rpx;
+						line-height: 70rpx;
+						text-align center;
+						font-size: 28rpx;
+					}
+				}
+
+				.popup-for-max-box {
+					margin: 0 20rpx 30rpx;
+					height: 600rpx;
+					overflow-y scroll;
+
+					.popup-for-null {
+						line-height: 100rpx;
+						text-align center;
+						color: #999;
+					}
+
+					.popup-for-box {
+						display: flex;
+						padding: 10px 0;
+
+						.name-p {
+							flex: 1;
+							line-height: 60rpx;
+						}
+
+						.button-p {
+							background #0183FA;
+							color: #fff;
+							text-align center;
+							width: 100rpx;
+							line-height: 60rpx;
+							height: 60rpx;
+							border-radius: 10rpx;
+						}
+					}
+				}
+			}
+		}
+
+		.subBtn {
+			width: 690rpx;
+			height: 100rpx;
+			background: #0183FA;
+			border-radius: 50rpx 50rpx 50rpx 50rpx;
+			font-weight: 400;
+			font-size: 30rpx;
+			color: #FFFFFF;
+			line-height: 100rpx;
+			text-align: center;
+			position: fixed;
+			left: 30rpx;
+			bottom: 10rpx;
+		}
+
+		/* 上报记录 */
+		.escalation {
+
+			.escalation-li {
+				width: 690rpx;
+				height: 162rpx;
+				background: #FFFFFF;
+				border-radius: 20rpx 20rpx 20rpx 20rpx;
+				margin: 20rpx 30rpx;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+
+				.escalation-li-t {
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+					border-bottom: 1rpx solid #E0E0E0;
+
+					>view:nth-of-type(1) {
+						font-weight: 400;
+						font-size: 30rpx;
+						color: #333333;
+						line-height: 80rpx;
+						text-align: left;
+					}
+
+					>view:nth-of-type(2) {
+						font-weight: 400;
+						font-size: 28rpx;
+						color: #0183FA;
+						line-height: 80rpx;
+						text-align: left;
+						display: flex;
+						justify-content: flex-start;
+						align-items: center;
+
+						>img {
+							width: 24rpx;
+							height: 24rpx;
+						}
+					}
+				}
+
+				.escalation-li-b {
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+
+					>view:nth-of-type(1) {
+						font-weight: 400;
+						font-size: 30rpx;
+						color: #333333;
+						line-height: 80rpx;
+						text-align: left;
+					}
+
+					>view:nth-of-type(2) {
+						font-weight: 400;
+						font-size: 30rpx;
+						color: #666666;
+						line-height: 80rpx;
+						text-align: left;
+					}
+				}
+
+			}
+		}
+
+		/* 隐患整改 */
+		.hidden {
+			width: 690rpx;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			background: #FFFFFF;
+			padding: 0 30rpx;
+			box-sizing: border-box;
+			margin: 20rpx 30rpx;
+
+			.hidden-li {
+				height: 80rpx;
+				border-bottom: 1rpx solid #E0E0E0;
+				display: flex;
+				justify-content: flex-start;
+				align-items: center;
+
+				.hidden-li-l {
+					width: 34rpx;
+					height: 34rpx;
+				}
+
+				.hidden-li-c {
+					font-size: 28rpx;
+					color: #333333;
+					line-height: 30rpx;
+					text-align: left;
+					flex: 1;
+					overflow: hidden;
+					text-overflow: ellipsis;
+					white-space: nowrap;
+					margin: 0 84rpx 0 12rpx;
+				}
+
+				.hidden-li-r {
+					font-size: 28rpx;
+					color: #0183FA;
+					line-height: 80rpx;
+					text-align: left;
+					display: flex;
+					justify-content: flex-start;
+					align-items: center;
+
+					>img {
+						width: 24rpx;
+						height: 24rpx;
+					}
+				}
+			}
+
+			.hidden-li:last-of-type {
+				border: none;
+			}
+		}
+
+		#color-A {
+			color: #0183FA;
+		}
+
+		#color-B {
+			color: #FF8C00;
+		}
+
+		#color-C {
+			color: #16B531;
+		}
+	}
+</style>

+ 305 - 0
pages_safetyCheck/views/itemsManage/hiddenDangerItems.vue

@@ -0,0 +1,305 @@
+<!-- 隐患项 -->
+<template>
+	<view class="hiddenDangerItems">
+		<view class="header">
+			<view class="tabTitle_tow">
+				<view class="tabTitle_tow_li" @tap="tabClickTow(index)" :key="index" v-for="(item,index) in tabTextTow">
+					<view :class="{on:curTabTow==index}" class="tabTitle_tow_text">{{item}}</view>
+					<view :class="{on:curTabTow==index}" class="tabTitle_tow_across"></view>
+				</view>
+			</view>
+			<view class="line"></view>
+			<view class="search">
+				<view class="search-l" @click="dialogOpen()">检查指标
+					<img src="@/pages_safetyCheck/images/icon_06.png">
+				</view>
+				<view class="search-r">
+					<img src="@/pages_safetyCheck/images/icon_aqjc_ss.png">
+					模糊搜索检查项
+				</view>
+			</view>
+		</view>
+		<view class="list">
+			<view class="total">待整改共2项</view>
+			<view class="list-li" v-for="(item,index) in dataList">
+				<view class="list-li-t">
+					<img src="@/pages_safetyCheck/images/icon_xz_fc@1x.png">
+					<view>{{item.name}}</view>
+				</view>
+				<view class="list-li-b">此检查项在当前实验室累计出现<text>{{item.num}}</text>次隐患</view>
+			</view>
+		</view>
+	</view>
+
+</template>
+
+<script>
+	import {
+		config
+	} from '@/api/request/config.js'
+	export default {
+		name: "hiddenDangerItems",
+		components: {
+
+		},
+		data() {
+			return {
+				baseUrl: config.base_url,
+				pageType: 1,
+				tabTextTow: ['待整改', '已整改', '暂无法整改'],
+				curTabTow: 0,
+				form: {
+					imgDtoList: [],
+				},
+				newData: {
+
+				},
+				dialogVisible: false,
+				dataList: [{
+						name: '1.1.1三级检查项目条款全显示三级检查项目条款检查项目条款检查项目条款全显示三级检查项目检查项目条款 检查项目条款条款全显示三级检查项目条款',
+						num: '9'
+					},
+					{
+						name: '隐患内容隐患内容隐患内容隐患内容隐患内容隐患内容隐患内容隐患内容隐患内容隐患内容隐患内容隐 ',
+						num: '9'
+					},
+				],
+
+			}
+		},
+		onLoad(option) {
+			this.$set(this, 'newData', JSON.parse(decodeURIComponent(option.infoData)));
+			this.pageType = this.newData.pageType;
+			uni.setNavigationBarTitle({
+				title: '实验室名称(房间号)'
+			})
+			if (this.pageType == 0) {
+				//检查
+				this.tabTextTow = ['待检查', '检查中', '已检查']
+			} else if (this.pageType == 1) {
+				//复查
+				this.tabTextTow = ['待复查', '复查完毕', '退回整改']
+			} else if (this.pageType == 2) {
+				//整改
+				this.tabTextTow = ['待整改', '已整改', '暂无法整改']
+			}
+		},
+		onShow() {
+
+		},
+		mounted() {
+
+		},
+		methods: {
+			//滚动事件
+			scrollGet() {},
+			//顶部tab点击
+			tabClickTow(index) {
+				this.curTabTow = index;
+			},
+			dialogOpen() {
+				this.dialogVisible = true;
+			},
+			dialogClose() {
+				this.dialogVisible = false;
+			},
+			quotaClick(index) {
+				this.quotaIndex = index
+			},
+
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	.hiddenDangerItems {
+		height: 100%;
+		display flex;
+		box-sizing: border-box;
+
+		#totalColor-A {
+			color: #0183FA;
+			background: rgba(1, 131, 250, 0.2);
+		}
+
+		#totalColor-B {
+			color: #16B531;
+			background: rgba(22, 181, 49, 0.2);
+		}
+
+		#totalColor-C {
+			color: #FF8C00;
+			background: rgba(255, 140, 0, 0.2);
+		}
+
+		.header {
+			width: 100%;
+			position: fixed;
+			top: 0rpx;
+			z-index: 100;
+			background: #fff;
+
+			.tabTitle_tow {
+				width: 520rpx;
+				height: 80rpx;
+
+				display flex;
+				justify-content: flex-start;
+				align-items: center;
+
+				.tabTitle_tow_li {
+					flex: 1;
+					position: relative;
+					text-align center;
+
+					.tabTitle_tow_text {
+						display: inline-block;
+						font-size: 30rpx;
+						font-family: PingFang SC;
+						font-weight: 500;
+						color: #333333;
+						line-height: 46rpx;
+						position: relative;
+
+						&.on {
+							color: #0183FA;
+						}
+					}
+
+					.tabTitle_tow_across {
+						width: 50rpx;
+						height: 4rpx;
+						background: #0183FA;
+						border-radius: 2rpx;
+						margin-left: 38%;
+						display none;
+
+						&.on {
+							display block;
+						}
+					}
+
+				}
+			}
+
+			.line {
+				width: 100%;
+				height: 20rpx;
+				background: #F5F5F5;
+			}
+
+			.search {
+				width: 750rpx;
+				height: 80rpx;
+				background: #FFFFFF;
+				border-radius: 0rpx 0rpx 0rpx 0rpx;
+				display: flex;
+				justify-content: flex-start;
+				align-items: center;
+
+				.search-l {
+					width: 200rpx;
+					height: 60rpx;
+					border-radius: 50rpx 50rpx 50rpx 50rpx;
+					border: 1rpx solid #E0E0E0;
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+					padding: 0 20rpx;
+					box-sizing: border-box;
+					margin: 0 32rpx 0 30rpx;
+
+					>img {
+						width: 24rpx;
+						height: 12rpx;
+					}
+				}
+
+				.search-r {
+					width: 470rpx;
+					height: 60rpx;
+					background: #FFFFFF;
+					border-radius: 50rpx 50rpx 50rpx 50rpx;
+					border: 1rpx solid #E0E0E0;
+					font-size: 24rpx;
+					color: #999999;
+					line-height: 60rpx;
+					text-align: left;
+					display: flex;
+					justify-content: flex-start;
+					align-items: center;
+					padding: 0 20rpx;
+					box-sizing: border-box;
+
+					>img {
+						width: 30rpx;
+						height: 30rpx;
+						margin-right: 20rpx;
+					}
+				}
+			}
+		}
+
+		.list {
+			width: 750rpx;
+			background: #FFFFFF;
+			margin-top: 200rpx;
+
+			.total {
+				width: 180rpx;
+				height: 50rpx;
+				background: rgba(1, 131, 250, 0.2);
+				border-radius: 0rpx 0rpx 20rpx 0rpx;
+				font-size: 24rpx;
+				color: #0183FA;
+				line-height: 50rpx;
+				text-align: left;
+				padding: 0rpx 22rpx;
+				box-sizing: border-box;
+				margin-bottom: 20rpx;
+			}
+
+			.list-li {
+				margin: 0 30rpx;
+
+				.list-li-t {
+					width: 690rpx;
+					background: #F5F5F5;
+					border-radius: 10rpx 10rpx 10rpx 10rpx;
+					display: flex;
+					justify-content: flex-start;
+					padding: 12rpx 20rpx 14rpx 14rpx;
+					box-sizing: border-box;
+
+					>img {
+						width: 24rpx;
+						height: 24rpx;
+						margin-right: 30rpx;
+					}
+
+					>view {
+						flex: 1;
+						font-size: 24rpx;
+						color: #3D3D3D;
+						line-height: 34rpx;
+						text-align: left;
+					}
+				}
+
+				.list-li-b {
+					font-size: 24rpx;
+					color: #3D3D3D;
+					line-height: 70rpx;
+					text-align: right;
+
+					>text {
+						color: #FF0000;
+					}
+				}
+
+			}
+		}
+
+
+	}
+</style>

+ 179 - 0
pages_safetyCheck/views/itemsManage/hiddenDangerItemsSearch.vue

@@ -0,0 +1,179 @@
+<!-- 隐患项搜索 -->
+<template>
+	<view class="hiddenDangerItemsSearch">
+		<view class="header">
+			<view class="search">
+				<view class="search-r">
+					<img src="@/pages_safetyCheck/images/icon_aqjc_ss.png">
+					模糊搜索检查项
+				</view>
+				<view class="cancel">取消</view>
+			</view>
+		</view>
+		<view class="list">
+			<view class="list-li" v-for="(item,index) in dataList">
+				<view class="list-li-t">{{item.one}}</view>
+				<view class="list-li-b">{{item.tow}}</view>
+			</view>
+		</view>
+	</view>
+
+</template>
+
+<script>
+	import {
+		config
+	} from '@/api/request/config.js'
+	export default {
+		name: "hiddenDangerItemsSearch",
+		components: {
+
+		},
+		data() {
+			return {
+				baseUrl: config.base_url,
+				pageType: 1,
+				tabTextTow: ['待整改', '已整改', '暂无法整改'],
+				curTabTow: 0,
+				form: {
+					imgDtoList: [],
+				},
+				newData: {
+
+				},
+				dialogVisible: false,
+				dataList: [
+					{
+						one: '1.1.1实验室安全工作纳入学校决策研究事项',
+						tow: '三级检查项目条款全显示三级检查项目条款检查项目条款检查项目条款全显示三级检查项目检查项目条款'
+					},
+					{
+						one: '1.1.1实验室安全工作纳入学校决策研究事项',
+						tow: '三级检查项目条款全显示三级检查项目条款检查项目条款检查项目条款全显示三级检查项目检查项目条款'
+					},
+				],
+
+			}
+		},
+		onLoad(option) {},
+		onShow() {
+
+		},
+		mounted() {
+
+		},
+		methods: {
+			//滚动事件
+			scrollGet() {},
+			//顶部tab点击
+			tabClickTow(index) {
+				this.curTabTow = index;
+			},
+			dialogOpen(){
+				this.dialogVisible = true;
+			},
+			dialogClose() {
+				this.dialogVisible = false;
+			},
+			quotaClick(index){
+				this.quotaIndex=index
+			},
+
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	.hiddenDangerItemsSearch{
+		height: 100%;
+		display flex;
+		box-sizing: border-box;
+		#totalColor-A{
+			color: #0183FA;
+			background: rgba(1,131,250,0.2);
+		}
+		#totalColor-B{
+			color: #16B531;
+			background: rgba(22,181,49,0.2);
+		}
+		#totalColor-C{
+			color: #FF8C00;
+			background: rgba(255,140,0,0.2);
+		}
+		.header {
+			width: 100%;
+			position: fixed;
+			top: 0rpx;
+			z-index: 100;
+			background: #fff;
+			.search {
+				width: 750rpx;
+				height: 100rpx;
+				background: #FFFFFF;
+				border-radius: 0rpx 0rpx 0rpx 0rpx;
+				display: flex;
+				justify-content: center;
+				align-items: center;
+				.search-r {
+					width: 610rpx;
+					height: 60rpx;
+					background: #FFFFFF;
+					border-radius: 50rpx 50rpx 50rpx 50rpx;
+					border: 1rpx solid #E0E0E0;
+					font-size: 24rpx;
+					color: #999999;
+					line-height: 60rpx;
+					text-align: left;
+					display: flex;
+					justify-content: flex-start;
+					align-items: center;
+					padding: 0 20rpx;
+					box-sizing: border-box;
+					>img{
+						width: 30rpx;
+						height: 30rpx;
+						margin-right: 20rpx;
+					}
+				}
+			}
+			.cancel{
+				font-size: 28rpx;
+				color: #0183FA;
+				line-height: 30rpx;
+				text-align: left;
+				margin-left: 18rpx;
+			}
+		}
+
+		.list {
+			width: 750rpx;
+			background: #FFFFFF;
+			margin-top: 110rpx;
+			padding-top:12rpx;
+			box-sizing: border-box;
+			.list-li {
+				margin: 0 30rpx 20rpx;
+				.list-li-t {
+					font-size: 24rpx;
+					color: #3D3D3D;
+					line-height: 34rpx;
+					text-align: left;
+					margin-bottom: 20rpx;
+				}
+
+				.list-li-b {
+					width: 690rpx;
+					background: #F5F5F5;
+					border-radius: 10rpx 10rpx 10rpx 10rpx;
+					display: flex;
+					justify-content: flex-start;
+					padding: 12rpx 20rpx 14rpx 14rpx;
+					box-sizing: border-box;
+				}
+
+			}
+		}
+
+		
+	}
+</style>

+ 530 - 0
pages_safetyCheck/views/itemsManage/snapshotRectification.vue

@@ -0,0 +1,530 @@
+<!-- 随手拍隐患项整改 -->
+<template>
+	<view class="snapshotDetail">
+		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
+			<view class="tip">整改期限2024-10-06(逾期未完成整改关闭实验室)</view>
+			<view class="items" v-if="inspectionItems==0">
+				<view class="items-t">
+					<view class="items-t-r">{{newData.data3}}</view>
+				</view>
+				<view class="items-b">< {{newData.data4}} <</view>
+			</view>
+			<view v-if="inspectionItems==0" class="items-number">此检查项在当前实验室累计出现<text>{{newData.data5}}</text>次隐患</view>
+			<view class="list">
+				<view v-if="inspectionItems==0" class="list-li">
+					<view>检查要点</view>
+					<view>
+						<img src="@/pages_safetyCheck/images/icon_06.png">
+					</view>
+				</view>
+				<view v-if="inspectionItems==0" class="hidden-content">{{newData.data6}}
+				</view>
+				<view class="list-li">
+					<view>检查隐患</view>
+					<view style="color: #FF8C00;">
+						<img src="@/pages_safetyCheck/images/icon_06.png">
+					</view>
+				</view>
+				<view class="hidden-content">{{newData.data7}}
+				</view>
+				<view class="photo">
+					<img src="@/pages_safetyCheck/images/img_ssp_pz@1x.png">
+				</view>
+				<view class="list-li">
+					<view>姓名:</view>
+					<view>李瑶瑶</view>
+				</view>
+				<view class="list-li">
+					<view>时间:</view>
+					<view>2024-01-01</view>
+				</view>
+				<view class="list-li">
+					<view>隐患整改</view>
+					<view>
+						<img src="@/pages_safetyCheck/images/icon_06.png">
+					</view>
+				</view>
+				<textarea class="describe" type="text" v-model="form.rectifyDescribe" maxlength="200"
+					placeholder="请填写整改措施" placeholder-style="font-size:24rpx;color:#999;"></textarea>
+				<view class="check-for-img-max-box">
+					<view class="left-title-p"></view>
+					<view class="right-img-box">
+						<view class="img-box" v-for="(imgUrl,imgIndex) in form.imgDtoList" :key="imgIndex">
+							<img class="img-data" :src="baseUrl+imgUrl.fileUrl">
+							<img class="position-img" src="@/pages_safetyCheck/images/icon_ssp_closure.png"
+								@click="delImg(imgIndex)">
+						</view>
+						<img class="add-button" src="@/pages_safetyCheck/images/img_ssp_pz@1x.png"
+							@click="selectImage()" v-if="form.imgDtoList.length<5">
+					</view>
+				</view>
+				<view class="list-li-tow">
+					<view>整改方案(上传文件)</view>
+					<view>
+						<img src="@/pages_safetyCheck/images/icon_aqjc_sc.png">
+					</view>
+				</view>
+				<view class="file-li">
+					<img src="@/pages_safetyCheck/images/icon_djc_wj.png">
+					<view>文件标题文件标题文件标题文件标题</view>
+					<img src="@/pages_safetyCheck/images/icon_yybz_sc.png">
+				</view>
+			</view>
+		</scroll-view>
+		<view class="sub-btn">
+			<view>暂无法整改</view>
+			<view>完成整改</view>
+		</view>
+	</view>
+
+</template>
+
+<script>
+	import {
+		config
+	} from '@/api/request/config.js'
+	export default {
+		name: "snapshotDetail",
+		components: {
+
+		},
+		data() {
+			return {
+				baseUrl: config.base_url,
+				inspectionItems:0,//0有检查项 1无检查项
+				form: {
+					imgDtoList: [],
+				},
+				newData: {
+					data1:'实验室名称(房间号)',
+					data2:'学院单位名称',
+					data3:'1.1.1 检查项检查项检查项检查',
+					data4:'1.1 检查项检查项检查项检查项检查项检查项',
+					data5:'19',
+					data6:'(1)有学校相关会议(校务会议、党委常委会会议等)纪要,内容包含实验室安全工作。',
+					data7:'内容内容内容内容内容内容内容内容内容内容内容内内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容',
+					data8:'李瑶瑶',
+					data9:'2024-01-01',
+					rectificationStatus:0,//整改状态 0待整改 1暂无法整改 2已整改
+				},
+			}
+		},
+		onLoad(option) {},
+		onShow() {
+
+		},
+		mounted() {
+
+		},
+		methods: {
+			//滚动事件
+			scrollGet() {},
+			/******图片上传******/
+			selectImage() {
+				let self = this;
+				if (this.form.imgDtoList.length > 4) {
+					uni.showToast({
+						title: '最多上传5张图片',
+						icon: "none",
+						mask: true,
+						duration: 2000
+					});
+					return
+				}
+				wx.chooseImage({
+					count: 1,
+					sizeType: ["original", "compressed"],
+					sourceType: ["album", "camera"],
+					success: function(res) {
+						let tempFilePaths = res.tempFilePaths[0];
+						self.uploadImg(tempFilePaths);
+					}
+				});
+			},
+			async uploadImg(tempFilePaths) {
+				var self = this;
+				uni.showLoading({
+					title: '上传中',
+					mask: true
+				});
+				uni.uploadFile({
+					url: config.base_url + '/system/file/upload', //仅为示例,非真实的接口地址
+					header: {
+						'Authorization': uni.getStorageSync('token')
+					},
+					filePath: tempFilePaths,
+					name: 'file',
+					formData: {
+						'user': 'test'
+					},
+					success: (uploadFileRes) => {
+						let res = JSON.parse(uploadFileRes.data);
+						if (res.code == 200) {
+							this.form.imgDtoList.push({
+								'fileUrl': res.data.url,
+								'fileName': res.data.name
+							});
+							console.log(res.data.url)
+						} else {
+							uni.showToast({
+								title: res.msg,
+								icon: "none",
+								mask: true,
+								duration: 2000
+							});
+						}
+					},
+					fail: err => {},
+					complete: () => {
+						uni.hideLoading()
+					}
+				});
+			},
+			//删除图片
+			delImg(minIndex) {
+				this.form.imgDtoList.splice(minIndex, 1);
+				this.$forceUpdate();
+			},
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	.snapshotDetail {
+		height: 100%;
+		display flex;
+		box-sizing: border-box;
+		padding-bottom: 160rpx;
+		box-sizing: border-box;
+		#bgColor-A {
+			color: #FFD400;
+		}
+
+		#bgColor-B {
+			color: #FF8C00;
+		}
+
+		#bgColor-C {
+			color: #E11608;
+		}
+
+		.tip {
+			width: 750rpx;
+			height: 80rpx;
+			background: rgba(255, 140, 0, 0.2);
+			font-weight: normal;
+			font-size: 28rpx;
+			color: #FF8C00;
+			line-height: 80rpx;
+			text-align: center;
+		}
+
+		.items {
+			width: 690rpx;
+			min-height: 165rpx;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			margin: 20rpx 0 0 30rpx;
+			.items-li{
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+				border-bottom: 1rpx solid #E0E0E0;
+				
+				>view:nth-of-type(1) {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 80rpx;
+					text-align: left;
+				}
+				
+				>view:nth-of-type(2) {
+					font-size: 28rpx;
+					color: #666666;
+					line-height: 80rpx;
+					text-align: left;
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+				}
+			}
+			.items-t {
+				border-bottom: 1rpx solid #E0E0E0;
+				height: 80rpx;
+				display: flex;
+				justify-content: flex-start;
+				align-items: center;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+
+				.items-t-l {
+					width: 175rpx;
+					height: 50rpx;
+					background: #E11608;
+					border-radius: 50rpx 50rpx 50rpx 50rpx;
+					font-size: 30rpx;
+					color: #FFFFFF;
+					line-height: 50rpx;
+					text-align: center;
+					margin-right: 14rpx;
+				}
+
+				.items-t-r {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 42rpx;
+					text-align: left;
+				}
+			}
+
+			.items-b {
+				padding: 0 30rpx;
+				box-sizing: border-box;
+				height: 80rpx;
+				font-size: 28rpx;
+				color: #666666;
+				line-height: 80rpx;
+				text-align: left;
+			}
+		}
+
+		.items-number {
+			font-size: 24rpx;
+			color: #3D3D3D;
+			line-height: 34rpx;
+			text-align: right;
+			margin: 20rpx 60rpx 0 0;
+
+			>text {
+				font-size: 24rpx;
+				color: #FF0000;
+				line-height: 34rpx;
+				text-align: right;
+			}
+		}
+
+		.list {
+			width: 690rpx;
+			margin: 20rpx 30rpx 0;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+
+			.list-li {
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+				border-bottom: 1rpx solid #E0E0E0;
+
+				>view:nth-of-type(1) {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 80rpx;
+					text-align: left;
+				}
+
+				>view:nth-of-type(2) {
+					font-size: 28rpx;
+					color: #666666;
+					line-height: 80rpx;
+					text-align: left;
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+
+					>img {
+						width: 24rpx;
+						height: 12rpx;
+						margin-left: 10rpx;
+					}
+				}
+
+			}
+			.list-li-tow {
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+				border-top: 1rpx solid #E0E0E0;
+				border-bottom: 1rpx solid #E0E0E0;
+			
+				>view:nth-of-type(1) {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 80rpx;
+					text-align: left;
+				}
+			
+				>view:nth-of-type(2) {
+					font-size: 28rpx;
+					color: #666666;
+					line-height: 80rpx;
+					text-align: left;
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+			
+					>img {
+						width: 30rpx;
+						height: 28rpx;
+						margin-left: 10rpx;
+					}
+				}
+			
+			}
+			.file-li{
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+				>img:nth-of-type(1) {
+					width: 30rpx;
+					height: 30rpx;
+				}
+				>view{
+					flex: 1;
+					font-size: 28rpx;
+					color: #333333;
+					line-height: 80rpx;
+					text-align: left;
+					margin: 0 92rpx 0 16rpx;
+					overflow: hidden;
+					text-overflow: ellipsis;
+					white-space: nowrap;   
+				}
+				>img:nth-of-type(2) {
+					width: 30rpx;
+					height: 30rpx;
+				}
+			}
+			.hidden-content {
+				width: 630rpx;
+				min-height: 200rpx;
+				background: #F5F5F5;
+				border-radius: 20rpx 20rpx 20rpx 20rpx;
+				margin: 20rpx 30rpx 0;
+				padding: 20rpx;
+				box-sizing: border-box;
+				font-size: 28rpx;
+				color: #666666;
+				line-height: 39rpx;
+				text-align: left;
+			}
+
+			.photo {
+				display: flex;
+				justify-content: flex-start;
+				flex-wrap: wrap;
+				margin-top: 20rpx;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+
+				>img {
+					width: 150rpx;
+					height: 150rpx;
+					border-radius: 10rpx 10rpx 10rpx 10rpx;
+					margin: 0 10rpx 10rpx 0;
+				}
+			}
+
+			.describe {
+				width: 636rpx;
+				height: 120rpx;
+				border-radius: 10rpx 10rpx 10rpx 10rpx;
+				border: 1rpx solid #E0E0E0;
+				margin: 20rpx 0 0 28rpx;
+				padding: 12rpx 16rpx;
+				box-sizing: border-box;
+			}
+
+			.check-for-img-max-box {
+				margin: 20px 28rpx;
+
+				.left-title-p {
+					width: 100%;
+					text-align: left;
+					font-size: 30rpx;
+					font-family: PingFang SC-Medium, PingFang SC;
+					font-weight: 400;
+					color: #333333;
+					line-height: 80rpx;
+				}
+
+				.right-img-box {
+					.img-box {
+						display inline-block;
+						height: 150rpx;
+						width: 150rpx;
+						position relative;
+						margin: 0 14rpx 20rpx 0;
+						border-radius 10rpx;
+						overflow hidden;
+
+						.img-data {
+							height: 150rpx;
+							width: 150rpx;
+						}
+
+						.position-img {
+							position absolute;
+							right: 0;
+							top: 0;
+							width: 36rpx;
+							height: 36rpx;
+						}
+					}
+
+					.img-box:nth-of-type(3n+3) {
+						margin-right: 0rpx;
+					}
+
+					.add-button {
+						margin: 0 0rpx 20rpx 0;
+						border-radius 10rpx;
+						overflow hidden;
+						display inline-block;
+						height: 150rpx;
+						width: 150rpx;
+					}
+				}
+			}
+
+			.list-li:last-of-type {
+				border: none;
+			}
+		}
+		
+	}
+	.sub-btn{
+		display: flex;
+		justify-content: center;
+		position: fixed;
+		left: 30rpx;
+		bottom: 30rpx;
+		>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;
+		}
+	}
+</style>

+ 103 - 0
pages_safetyCheck/views/materialAttachments.vue

@@ -0,0 +1,103 @@
+<!-- 材料附件 -->
+<template>
+  <view class="materialAttachments">
+	<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
+		<view class="list"> 
+			<view class="list-li" v-for="(item,index) in newData.data1">
+				<img src="@/pages_safetyCheck/images/icon_djc_wj.png">
+				<view>{{item}}</view>
+				<view>查看</view>
+			</view>
+		</view>
+	</scroll-view>
+  </view>
+
+</template>
+
+<script>
+import { config } from '@/api/request/config.js'
+import {chemicalAppletGetStockDetail} from '@/pages/api/index.js'
+export default {
+  name: "materialAttachments",
+  components: {
+
+  },
+  data() {
+    return {
+		baseUrl:config.base_url,
+		pageType:0,
+		newData:{
+			data1:['文件标题文件标题文件标题文件标题文件标题文件标题文件标题文件标题','文件标题文件标题文件标题文件标题',],
+		},
+	}
+  },
+  onLoad(option) {
+	
+
+  },
+  onShow() {
+
+  },
+  mounted(){
+	
+  },
+  methods: {
+		//滚动事件
+		scrollGet(){},
+		
+  }
+}
+</script>
+
+<style lang="stylus" scoped>
+.materialAttachments{
+	height:100%;
+	display flex;
+	box-sizing: border-box;
+	padding: 0 30rpx;
+	box-sizing: border-box;
+	.list{
+		width: 690rpx;
+		background: #FFFFFF;
+		border-radius: 20rpx 20rpx 20rpx 20rpx;
+		padding: 0 30rpx;
+		box-sizing: border-box;
+		margin-bottom: 20rpx;
+		margin-top: 20rpx;
+		.list-li{
+			height: 100rpx;
+			border-bottom: 1rpx solid #E0E0E0;
+			display: flex;
+			justify-content: space-between;
+			align-items: center;
+			>img{
+				width: 30rpx;
+				height: 30rpx;
+				margin-right: 16rpx;
+			}
+			>view:nth-of-type(1){
+				flex: 1;
+				font-size: 28rpx;
+				color: #333333;
+				line-height: 39rpx;
+				text-align: left;
+				overflow: hidden;
+				text-overflow: ellipsis;
+				white-space: nowrap;
+				margin-right: 56rpx;
+			}
+			>view:nth-of-type(2){
+				font-size: 28rpx;
+				color: #0183FA;
+				line-height: 39rpx;
+				text-align: left;
+			}
+		}
+		.list-li:last-of-type{
+			border: none;
+		}
+	}
+
+}
+
+</style>

+ 337 - 0
pages_safetyCheck/views/planDetail.vue

@@ -0,0 +1,337 @@
+<!-- 计划详情 -->
+<template>
+	<view class="planDetail">
+		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
+			<view class="title">
+				<view class="title-t">{{newData.data1}}</view>
+				<view class="title-b">
+					<view v-for="(item,index) in newData.data2" :key="index">{{item}}</view>
+				</view>
+			</view>
+			<view class="box">
+				<view class="content-li">
+					<view>检查周期</view>
+					<view>{{newData.data3}}</view>
+				</view>
+				<view class="content-li">
+					<view>检查范围</view>
+					<view>{{newData.data4}}</view>
+				</view>
+				<view class="content-li">
+					<view>检查组织</view>
+					<view>{{newData.data5}}</view>
+				</view>
+				<view class="content-li-tow">
+					<view>检查要求</view>
+					<view>{{newData.data6}}</view>
+				</view>
+			</view>
+			<view class="small-title">
+				<view>材料附件</view>
+				<view>
+					<text>{{newData.data7}}个</text>
+					<img src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
+				</view>
+			</view>
+			<view class="list" v-for="(item,index) in newData.data8">
+				<view class="subscript">{{index+1}}</view>
+				<view class="list-li">
+					<view>第1次检查</view>
+					<view :id="item.status==0?'color-A':(item.status==1?'color-B':'color-C')">{{item.data1}}</view>
+				</view>
+				<view class="list-li">
+					<view>检查开始日期</view>
+					<view>{{item.data2}}</view>
+				</view>
+				<view class="list-li">
+					<view>整改期限</view>
+					<view class="rectify-term">
+						<text class="rectify-term-l" v-if="item.status==4">逾期未完成整改关闭实验室</text>
+						<text class="rectify-term-c" v-if="item.status==4">丨</text>
+						<text class="rectify-term-r">{{item.data3}}</text>
+					</view>
+				</view>
+				<view class="list-li">
+					<view>检查依据</view>
+					<view>{{item.data4}}</view>
+				</view>
+			</view>
+		</scroll-view>
+	</view>
+
+</template>
+
+<script>
+	import {
+		config
+	} from '@/api/request/config.js'
+	import {
+		chemicalAppletGetStockDetail
+	} from '@/pages/api/index.js'
+	export default {
+		name: "planDetail",
+		components: {
+
+		},
+		data() {
+			return {
+				baseUrl: config.base_url,
+				pageType: 0,
+				newData: {
+					data1: '计划标题计划标题计划标题计划标题计划标题计标题计划标题计划标题',
+					data2: ['校级检查', '全面检查', '交叉检查'],
+					data3: '2024-04-01至2024-08-31',
+					data4: '共33间实验室',
+					data5: '督导组名称',
+					data6: '内容内容内容内容内容内容内容内容内内容内容 内容内容容内容内容内容内容内容内容内容内容 内容内容内容内容内容内容内容内容',
+					data7: '2',
+					data8: [{
+							data1: '未开始',
+							data2: '2024-09-06',
+							data3: '2024-09-06',
+							data4: '全部检查项',
+							status: 0,
+						},
+						{
+							data1: '进行中',
+							data2: '2024-09-06',
+							data3: '2024-09-06',
+							data4: '全部检查项',
+							status: 1,
+						},
+					],
+				},
+			}
+		},
+		onLoad(option) {
+
+			this.$set(this, 'newData', JSON.parse(decodeURIComponent(option.infoData)));
+		},
+		onShow() {
+
+		},
+		mounted() {
+
+		},
+		methods: {
+			//滚动事件
+			scrollGet() {},
+
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	.planDetail {
+		height: 100%;
+		display flex;
+		box-sizing: border-box;
+		padding: 0 30rpx;
+		box-sizing: border-box;
+
+		.title {
+			width: 689rpx;
+			min-height: 200rpx;
+			background: #FFFFFF;
+			border-radius: 0rpx 0rpx 20rpx 20rpx;
+			padding: 20rpx 30rpx 0;
+			box-sizing: border-box;
+
+			.title-t {
+				font-size: 30rpx;
+				color: #333333;
+				line-height: 42rpx;
+				text-align: left;
+			}
+
+			.title-b {
+				display: flex;
+				justify-content: flex-start;
+				margin-top: 16rpx;
+
+				>view {
+					width: 130rpx;
+					height: 50rpx;
+					background: rgba(1, 131, 250, 0.2);
+					border-radius: 6rpx 6rpx 6rpx 6rpx;
+					font-size: 24rpx;
+					color: #0183FA;
+					line-height: 50rpx;
+					text-align: center;
+					margin-right: 14rpx;
+				}
+			}
+		}
+
+		.box {
+			width: 689rpx;
+			min-height: 500rpx;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			margin-top: 20rpx;
+
+			.content-li {
+				height: 80rpx;
+				border-bottom: 1rpx solid #E0E0E0;
+				display: flex;
+				justify-content: space-between;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+
+				>view:nth-of-type(1) {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 80rpx;
+					text-align: left;
+				}
+
+				>view:nth-of-type(2) {
+					font-size: 30rpx;
+					color: #666666;
+					line-height: 80rpx;
+					text-align: right;
+				}
+			}
+
+			.content-li-tow {
+				padding: 0 30rpx;
+				box-sizing: border-box;
+
+				>view:nth-of-type(1) {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 80rpx;
+					text-align: left;
+				}
+
+				>view:nth-of-type(2) {
+					padding: 20rpx;
+					box-sizing: border-box;
+					width: 630rpx;
+					min-height: 160rpx;
+					background: #F5F5F5;
+					border-radius: 20rpx 20rpx 20rpx 20rpx;
+					font-size: 28rpx;
+					color: #666666;
+					line-height: 39rpx;
+					text-align: left;
+				}
+			}
+		}
+
+		.small-title {
+			display: flex;
+			justify-content: space-between;
+			padding: 0 30rpx;
+			box-sizing: border-box;
+
+			>view:nth-of-type(1) {
+				font-size: 30rpx;
+				color: #333333;
+				line-height: 80rpx;
+				text-align: left;
+			}
+
+			>view:nth-of-type(2) {
+				display: flex;
+				justify-content: flex-start;
+				align-items: center;
+
+				>text {
+					font-size: 28rpx;
+					color: #0183FA;
+					line-height: 80rpx;
+					text-align: left;
+				}
+
+				>img {
+					width: 24rpx;
+					height: 24rpx;
+					margin-left: 12rpx;
+				}
+			}
+
+		}
+
+		.list {
+			width: 690rpx;
+			height: 323rpx;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			padding: 0 30rpx;
+			box-sizing: border-box;
+			margin-bottom: 20rpx;
+			position: relative;
+
+			.subscript {
+				position: absolute;
+				left: 0;
+				top: 0;
+				width: 36rpx;
+				height: 36rpx;
+				background: #0183FA;
+				border-radius: 20rpx 0rpx 20rpx 0rpx;
+				font-size: 24rpx;
+				color: #FFFFFF;
+				line-height: 36rpx;
+				text-align: center;
+			}
+
+			.list-li {
+				border-bottom: 1rpx solid #E0E0E0;
+				display: flex;
+				justify-content: space-between;
+
+				>view:nth-of-type(1) {
+					font-size: 28rpx;
+					color: #333333;
+					line-height: 80rpx;
+					text-align: left;
+				}
+
+				>view:nth-of-type(2) {
+					font-size: 28rpx;
+					color: #666666;
+					line-height: 80rpx;
+					text-align: left;
+				}
+			}
+
+			.rectify-term {
+				.rectify-term-l {
+					font-size: 24rpx;
+					color: #FF8C00;
+					line-height: 34rpx;
+					text-align: left;
+				}
+
+				.rectify-term-c {
+					color: #666666;
+				}
+
+				.rectify-term-r {
+					font-size: 28rpx;
+					color: #666666;
+					line-height: 80rpx;
+					text-align: left;
+				}
+			}
+
+			.list-li:last-of-type {
+				border: none;
+			}
+		}
+
+		#color-A {
+			color: #FF8C00;
+		}
+
+		#color-B {
+			color: #0183FA;
+		}
+
+		#color-C {
+			color: #16B531;
+		}
+	}
+</style>

+ 410 - 0
pages_safetyCheck/views/safetyCheck.vue

@@ -0,0 +1,410 @@
+<!-- 计划详情 -->
+<template>
+	<view class="planDetail">
+		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
+			<view class="header">
+				<view class="tabTitle">
+					<view class="tabTitle_li" @tap="tabClick(index)" :key="index" v-for="(item,index) in tabText">
+						<view class="tabTitle_text">
+							<img :src="item.img">
+							<view
+								:id="curTab==index && curTab==0?'fontColor-A':(curTab==index && curTab==1?'fontColor-B':'')">
+								{{item.name}}
+							</view>
+							<view>{{item.title}}</view>
+						</view>
+						<view :class="{on:curTab==index}" class="tabTitle_across">
+							<img src="@/pages_safetyCheck/images/img_xyzc_bg@1x.png">
+						</view>
+					</view>
+				</view>
+			</view>
+			<view class="list">
+				<view class="list-li" @click="planClick(item)" v-for="(item,index) in dataList">
+					<view :id="item.status==0?'bgColor-A':'bgColor-B'">{{item.status==0?'全部检查':'专项检查'}}</view>
+					<view>{{item.title}}</view>
+					<img src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
+				</view>
+			</view>
+
+		</scroll-view>
+		<view class="shade" v-if="dialogVisible">
+			<view class="null-box" @click="dialogClose()"></view>
+			<view class="shade_n">
+				<view class="title">
+					<view>检查批次</view>
+					<img src="@/pages_safetyCheck/images/icon_06.png">
+				</view>
+				<view class="batch">
+					<view class="batch-li" @click="batchClick(item)" v-for="(item,index) in batchList">
+						<view class="batch-li-l">
+							<text>{{item.title}}</text>
+							<text>开始检查日期:{{item.time}}</text>
+						</view>
+						<view class="batch-li-r">检查进度{{item.schedule}}
+							<img src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
+						</view>
+					</view>
+				</view>
+			</view>
+		</view>
+	</view>
+
+</template>
+
+<script>
+	import {
+		config
+	} from '@/api/request/config.js'
+	import {} from '@/pages/api/index.js'
+	export default {
+		name: "planDetail",
+		components: {
+
+		},
+		data() {
+			return {
+				baseUrl: config.base_url,
+				pageType: 0,
+				tabText: [{
+						name: '校级检查',
+						title: '学校检查计划',
+						img: require('@/pages_safetyCheck/images/img_aqjc_xjjc@1x.png'),
+					},
+					{
+						name: '学院自查',
+						title: '学院自查计划',
+						img: require('@/pages_safetyCheck/images/img_aqjc_xyzc@1x.png'),
+					},
+					{
+						name: '随手拍',
+						title: '隐患上报整改',
+						img: require('@/pages_safetyCheck/images/img_aqjc_ssp@1x.png'),
+					},
+				],
+				curTab: 0,
+				dataList: [{
+						status: 0,
+						title: '计划标题计划标题计划标题计划标题计划标题计划标题计划标题计划标题',
+					},
+					{
+						status: 1,
+						title: '计划标题计划标题计划标题计划标题',
+					}
+				],
+				dialogVisible: false,
+				batchList:[
+					{
+						title:'第3次检查',
+						time:'2024-04-01',
+						schedule:'0%',
+					},
+					{
+						title:'第3次检查',
+						time:'2024-04-01',
+						schedule:'0%',
+					},
+					{
+						title:'第3次检查',
+						time:'2024-04-01',
+						schedule:'0%',
+					},
+					{
+						title:'第3次检查',
+						time:'2024-04-01',
+						schedule:'0%',
+					},
+					{
+						title:'第3次检查',
+						time:'2024-04-01',
+						schedule:'0%',
+					},
+				],
+			}
+		},
+		onLoad(option) {
+
+
+		},
+		onShow() {
+
+		},
+		mounted() {
+
+		},
+		methods: {
+			//滚动事件
+			scrollGet() {},
+			//顶部tab点击
+			tabClick(index) {
+				this.curTab = index;
+				if(index==0){
+					//校级检查
+					
+				}else if(index==1){
+					//学院自查
+					
+				}else if(index==2){
+					//随手拍
+					uni.navigateTo({
+						url: "/pages_safetyCheck/views/safetyCheck",
+					});
+				}
+			},
+			//检查批次点击
+			batchClick(row){
+				let infoData=row;
+				infoData.pageType=this.curTab;
+				uni.navigateTo({
+					url: '/pages_safetyCheck/views/inspectManage/inspectList?infoData=' + encodeURIComponent(JSON.stringify(infoData))
+				});
+			},
+			planClick(row){
+				//如果只有1个检查批次不弹窗
+				this.dialogVisible = true;
+			},
+			dialogClose() {
+				this.dialogVisible = false;
+			},
+
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	.planDetail {
+		height: 100%;
+		display flex;
+		box-sizing: border-box;
+
+		#fontColor-A {
+			color: #00AEDE;
+		}
+
+		#fontColor-B {
+			color: #009519;
+		}
+
+		#bgColor-A {
+			color: #0183FA;
+			background: rgba(1, 131, 250, 0.2);
+		}
+
+		#bgColor-B {
+			color: #16B531;
+			background: rgba(22, 181, 49, 0.2);
+		}
+
+
+		.header {
+			width: 100%;
+			position: fixed;
+			top: 0rpx;
+			z-index: 100;
+			background: #fff;
+
+			.tabTitle {
+				width: 750rpx;
+				height: 225rpx;
+				display flex;
+				justify-content: flex-start;
+				align-items: center;
+				border-bottom: 4rpx solid #F5F5F5;
+
+				.tabTitle_li {
+					height: 225rpx;
+					flex: 1;
+					position: relative;
+					text-align center;
+					border-right: 2rpx solid #F5F5F5;
+
+					.tabTitle_text {
+						display: flex;
+						justify-content: center;
+						flex-direction: column;
+						align-items: center;
+
+						>img {
+							width: 80rpx;
+							height: 80rpx;
+							margin-top: 20rpx;
+						}
+
+						>view:nth-of-type(1) {
+							font-size: 30rpx;
+							color: #333333;
+							line-height: 42rpx;
+							text-align: left;
+							margin-top: 10rpx;
+						}
+
+						>view:nth-of-type(2) {
+							font-size: 24rpx;
+							color: #666666;
+							line-height: 34rpx;
+							text-align: left;
+						}
+
+
+						position: relative;
+
+						&.on {}
+					}
+
+					.tabTitle_across {
+						/* width: 50rpx;
+						height: 4rpx;
+						background: #0183FA;
+						border-radius: 2rpx; */
+						margin-left: 38%;
+						margin-top: 12rpx;
+						display none;
+
+						>img {
+							width: 40rpx;
+							height: 26rpx;
+						}
+
+						&.on {
+							display block;
+						}
+					}
+
+				}
+			}
+		}
+
+		.list {
+			background: #fff;
+			margin-top: 225rpx;
+
+			.list-li {
+				border-bottom: 1rpx dashed #E0E0E0;
+				height: 80rpx;
+				display: flex;
+				justify-content: flex-start;
+				align-items: center;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+
+				>view:nth-of-type(1) {
+					width: 120rpx;
+					height: 40rpx;
+					background: rgba(1, 131, 250, 0.2);
+					border-radius: 10rpx 10rpx 10rpx 10rpx;
+					font-size: 24rpx;
+					color: #0183FA;
+					line-height: 40rpx;
+					text-align: center;
+				}
+
+				>view:nth-of-type(2) {
+					flex: 1;
+					font-size: 28rpx;
+					color: #333333;
+					line-height: 39rpx;
+					text-align: left;
+					margin: 0 52rpx 0 20rpx;
+					overflow: hidden;
+					text-overflow: ellipsis;
+					white-space: nowrap;
+				}
+
+				>img {
+					width: 24rpx;
+					height: 24rpx;
+				}
+
+			}
+		}
+
+		.shade {
+			height: 100%;
+			width: 100%;
+			position: fixed;
+			display: flex;
+			flex-direction: column;
+			z-index: 200;
+			background: rgba(0, 0, 0, 0.2);
+
+			.null-box {
+				flex: 1;
+			}
+
+			.shade_n {
+				position: absolute;
+				bottom: 0;
+				left: 0;
+				width: 750rpx;
+				height: 466rpx;
+				background: #FFFFFF;
+				border-radius: 20rpx 20rpx 0rpx 0rpx;
+				overflow-y: auto;
+
+				.title {
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+					padding: 0 50rpx 0 284rpx;
+					box-sizing: border-box;
+					border-bottom: 1rpx solid #E0E0E0;
+
+					>view {
+						font-size: 30rpx;
+						color: #3D3D3D;
+						line-height: 90rpx;
+						text-align: left;
+					}
+
+					>img {
+						width: 24rpx;
+						height: 12rpx;
+					}
+				}
+				.batch{
+					padding: 0 30rpx;
+					box-sizing: border-box;
+					.batch-li{
+						display: flex;
+						justify-content: space-between;
+						align-items: center;
+						border-bottom: 1rpx solid #E0E0E0;
+						padding: 20rpx 0 16rpx 0rpx;
+						box-sizing: border-box;
+						.batch-li-l{
+							>text:nth-of-type(1){
+								display: block;
+								font-size: 30rpx;
+								color: #333333;
+								line-height: 42rpx;
+								text-align: left;
+							}
+							>text:nth-of-type(2){
+								display: block;
+								font-size: 28rpx;
+								color: #666666;
+								line-height: 39rpx;
+								text-align: left;
+								margin-top: 6rpx;
+							}
+						}
+						.batch-li-r{
+							font-size: 28rpx;
+							color: #666666;
+							line-height: 39rpx;
+							text-align: left;
+							display: flex;
+							justify-content: flex-start;
+							align-items: center;
+							>img{
+								width: 24rpx;
+								height: 24rpx;
+								margin-left: 9rpx;
+							}
+						}
+					}
+				}
+			}
+		}
+	}
+</style>

+ 319 - 0
pages_safetyCheck/views/snapshotManage/snapshotDetail.vue

@@ -0,0 +1,319 @@
+<!-- 随手拍详情 -->
+<template>
+	<view class="snapshotDetail">
+		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
+			<view class="items" v-if="inspectionItems==0">
+				<view class="items-li">
+					<view>实验室</view>
+					<view>{{newData.data1}}</view>
+				</view>
+				<view class="items-li">
+					<view>学院单位</view>
+					<view>{{newData.data2}}</view>
+				</view>
+				<view class="items-t">
+					<view class="items-t-r">{{newData.data3}}</view>
+				</view>
+				<view class="items-b">< {{newData.data4}} <</view>
+			</view>
+			<view class="items-number" v-if="inspectionItems==0">此检查项在当前实验室累计出现<text>{{newData.data5}}</text>次隐患</view>
+			<view class="list">
+				<view class="list-li" v-if="inspectionItems==1">
+					<view>实验室</view>
+					<view>{{newData.data1}}</view>
+				</view>
+				<view class="list-li" v-if="inspectionItems==1">
+					<view>学院单位</view>
+					<view>{{newData.data2}}</view>
+				</view>
+				<view class="list-li" v-if="inspectionItems==0">
+					<view>检查要点</view>
+					<view>
+						<img src="@/pages_safetyCheck/images/icon_06.png">
+					</view>
+				</view>
+				<view v-if="inspectionItems==0" class="hidden-content">{{newData.data6}}
+				</view>
+				<view class="list-li">
+					<view>检查隐患</view>
+				</view>
+				<view class="hidden-content">{{newData.data7}}
+				</view>
+				<view class="photo">
+					<img src="@/pages_safetyCheck/images/img_ssp_pz@1x.png">
+				</view>
+				<view class="list-li">
+					<view>隐患整改</view>
+					<view :id="newData.rectificationStatus==0?'fontColor-A':(newData.rectificationStatus==1?'fontColor-B':'fontColor-C')">
+						{{newData.rectificationStatus==0?'待整改':(newData.rectificationStatus==1?'已整改':'暂无法整改')}}
+						<img src="@/pages_safetyCheck/images/icon_06.png">
+					</view>
+				</view>
+				<view class="hidden-content">{{newData.data7}}
+				</view>
+				<view class="photo">
+					<img src="@/pages_safetyCheck/images/img_ssp_pz@1x.png">
+				</view>
+				<view class="list-li">
+					<view>姓名:</view>
+					<view>{{newData.data8}}</view>
+				</view>
+				<view class="list-li">
+					<view>时间:</view>
+					<view>{{newData.data9}}</view>
+				</view>
+				
+			</view>
+		</scroll-view>
+		<view class="sub-btn">整改</view>
+	</view>
+
+</template>
+
+<script>
+	import {
+		config
+	} from '@/api/request/config.js'
+	export default {
+		name: "snapshotDetail",
+		components: {
+
+		},
+		data() {
+			return {
+				baseUrl: config.base_url,
+				inspectionItems:0,//0有检查项 1无检查项
+				newData: {
+					data1:'实验室名称(房间号)',
+					data2:'学院单位名称',
+					data3:'1.1.1 检查项检查项检查项检查',
+					data4:'1.1 检查项检查项检查项检查项检查项检查项',
+					data5:'19',
+					data6:'(1)有学校相关会议(校务会议、党委常委会会议等)纪要,内容包含实验室安全工作。',
+					data7:'内容内容内容内容内容内容内容内容内容内容内容内内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容',
+					data8:'李瑶瑶',
+					data9:'2024-01-01',
+					rectificationStatus:0,//整改状态 0待整改 1暂无法整改 2已整改
+				},
+			}
+		},
+		onLoad(option) {},
+		onShow() {
+
+		},
+		mounted() {
+
+		},
+		methods: {
+			//滚动事件
+			scrollGet() {},
+			
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	.snapshotDetail {
+		height: 100%;
+		display flex;
+		box-sizing: border-box;
+		padding-bottom: 160rpx;
+		box-sizing: border-box;
+		#bgColor-A {
+			color: #FFD400;
+		}
+
+		#bgColor-B {
+			color: #FF8C00;
+		}
+
+		#bgColor-C {
+			color: #E11608;
+		}
+		#fontColor-A {
+			color: #0183FA;
+		}
+		
+		#fontColor-B {
+			color: #FF8C00;
+		}
+		
+		#fontColor-C {
+			color: #16B531;
+		}
+		.items {
+			width: 690rpx;
+			min-height: 165rpx;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			margin: 20rpx 0 0 30rpx;
+			.items-li{
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+				border-bottom: 1rpx solid #E0E0E0;
+				
+				>view:nth-of-type(1) {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 80rpx;
+					text-align: left;
+				}
+				
+				>view:nth-of-type(2) {
+					font-size: 28rpx;
+					color: #666666;
+					line-height: 80rpx;
+					text-align: left;
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+				}
+			}
+			.items-t {
+				border-bottom: 1rpx solid #E0E0E0;
+				height: 80rpx;
+				display: flex;
+				justify-content: flex-start;
+				align-items: center;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+
+				.items-t-l {
+					width: 175rpx;
+					height: 50rpx;
+					background: #E11608;
+					border-radius: 50rpx 50rpx 50rpx 50rpx;
+					font-size: 30rpx;
+					color: #FFFFFF;
+					line-height: 50rpx;
+					text-align: center;
+					margin-right: 14rpx;
+				}
+
+				.items-t-r {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 42rpx;
+					text-align: left;
+				}
+			}
+
+			.items-b {
+				padding: 0 30rpx;
+				box-sizing: border-box;
+				height: 80rpx;
+				font-size: 28rpx;
+				color: #666666;
+				line-height: 80rpx;
+				text-align: left;
+			}
+		}
+
+		.items-number {
+			font-size: 24rpx;
+			color: #3D3D3D;
+			line-height: 34rpx;
+			text-align: right;
+			margin: 20rpx 60rpx 0 0;
+
+			>text {
+				font-size: 24rpx;
+				color: #FF0000;
+				line-height: 34rpx;
+				text-align: right;
+			}
+		}
+
+		.list {
+			width: 690rpx;
+			margin: 20rpx 30rpx 0;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+
+			.list-li {
+				display: flex;
+				justify-content: space-between;
+				align-items: center;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+				border-bottom: 1rpx solid #E0E0E0;
+
+				>view:nth-of-type(1) {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 80rpx;
+					text-align: left;
+				}
+
+				>view:nth-of-type(2) {
+					font-size: 28rpx;
+					color: #666666;
+					line-height: 80rpx;
+					text-align: left;
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+
+					>img {
+						width: 24rpx;
+						height: 12rpx;
+						margin-left: 10rpx;
+					}
+				}
+
+			}
+
+			.hidden-content {
+				width: 630rpx;
+				min-height: 120rpx;
+				background: #F5F5F5;
+				border-radius: 20rpx 20rpx 20rpx 20rpx;
+				margin: 20rpx 30rpx 0;
+				padding: 20rpx;
+				box-sizing: border-box;
+				font-size: 28rpx;
+				color: #666666;
+				line-height: 39rpx;
+				text-align: left;
+			}
+
+			.photo {
+				display: flex;
+				justify-content: flex-start;
+				flex-wrap: wrap;
+				margin-top: 20rpx;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+
+				>img {
+					width: 150rpx;
+					height: 150rpx;
+					border-radius: 10rpx 10rpx 10rpx 10rpx;
+					margin: 0 10rpx 10rpx 0;
+				}
+			}
+			.list-li:last-of-type {
+				border: none;
+			}
+		}
+		
+	}
+	.sub-btn{
+		width: 686rpx;
+		height: 100rpx;
+		background: #0183FA;
+		border-radius: 50rpx 50rpx 50rpx 50rpx;
+		position: fixed;
+		left: 30rpx;
+		bottom: 30rpx;
+		font-weight: 400;
+		font-size: 30rpx;
+		color: #FFFFFF;
+		line-height: 100rpx;
+		text-align: center;
+	}
+	
+</style>

+ 905 - 0
pages_safetyCheck/views/snapshotManage/snapshotList.vue

@@ -0,0 +1,905 @@
+<!-- 随手拍列表 -->
+<template>
+	<view class="snapshotList">
+		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
+			<view class="tabTitle" v-if="userType==0">
+				<view :class="tabIndex==index?'tab-A':'tab-B'" v-for="(item,index) in tabList" @click="tabClick(index)">
+					{{item}}
+				</view>
+			</view>
+			<view class="tabTitleTow" v-if="userType==1">
+				<view :class="tabIndexTow==index?'tab-C':'tab-D'" v-for="(item,index) in tabListTow"
+					@click="tabClickTow(index)">{{item}}</view>
+			</view>
+			<view v-if="pageType==0">
+				<view class="srearch">
+					<view class="srearch-n">
+						<view class="srearch-l" @click="popupClick(1)">
+							<img src="@/pages_safetyCheck/images/icon_aqjc_ss.png">
+						</view>
+						<input class="srearch-c" type="text" v-model="form.searchValue" placeholder="实验室/房间号" />
+						<view class="srearch-r" @click="saoCode()">
+							<img src="@/pages_safetyCheck/images/icon_aqjc_sm.png">
+						</view>
+					</view>
+				</view>
+				<view class="list">
+					<view class="list-li">
+						<view>实验室名称(房间号)</view>
+						<view></view>
+					</view>
+					<view class="list-li">
+						<view>学院单位名称</view>
+						<view>化工学院</view>
+					</view>
+					<view class="list-li">
+						<view>检查项目</view>
+						<uni-data-picker :ellipsis="false" :localdata="checkOptionList[0]"
+							:map="{text:'name',value:'id'}" popup-title="请选择所属目录" @change="(e)=>onchange('',e,index)"
+							@nodeclick="onnodeclick()" ref="uniDataPicker" :addType="true" :addIndex="index">
+							<view class="project_r">{{form.hazardCheckName?form.hazardCheckName:'请选择检查项 >'}}</view>
+						</uni-data-picker>
+					</view>
+					<view class="list-li">
+						<view>隐患描述</view>
+						<view></view>
+					</view>
+					<textarea class="describe" type="text" v-model="form.rectifyDescribe" maxlength="200"
+						placeholder="请填写隐患描述" placeholder-style="font-size:24rpx;color:#999;"></textarea>
+					<view class="check-for-img-max-box">
+						<view class="left-title-p"></view>
+						<view class="right-img-box">
+							<view class="img-box" v-for="(imgUrl,imgIndex) in form.imgDtoList" :key="imgIndex">
+								<img class="img-data" :src="baseUrl+imgUrl.fileUrl">
+								<img class="position-img" src="@/pages_safetyCheck/images/icon_ssp_closure.png"
+									@click="delImg(imgIndex)">
+							</view>
+							<img class="add-button" src="@/pages_safetyCheck/images/img_ssp_pz@1x.png"
+								@click="selectImage()" v-if="form.imgDtoList.length<5">
+						</view>
+					</view>
+				</view>
+				<view class="subBtn">提交</view>
+			</view>
+			<!-- 上报记录 -->
+			<view class="escalation" v-if="pageType==1">
+				<view class="escalation-li" v-for="(item,index) in escalationList">
+					<view class="escalation-li-t">
+						<view>{{item.subName}}</view>
+						<view :id="item.status==0?'color-A':(item.status==1?'color-B':(item.status==2?'color-C':''))">
+							待整改
+							<img  src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
+						</view>
+					</view>
+					<view class="escalation-li-b">
+						<view>上报时间</view>
+						<view>{{item.time}}</view>
+					</view>
+				</view>
+			</view>
+			<!-- 隐患整改 -->
+			<view class="hidden" v-if="pageType==2">
+				<view class="hidden-li" v-for="(item,index) in hiddenList">
+					<img class="hidden-li-l"  src="@/pages_safetyCheck/images/icon_sys_xz@1x.png">
+					<view class="hidden-li-c">{{item.subName}}</view>
+					<view class="hidden-li-r">待检查{{item.num}}项
+						<img  src="@/pages_safetyCheck/images/icon_wd_gd@1x.png">
+					</view>
+				</view>
+			</view>
+
+		</scroll-view>
+		<view class="popup-max-box" v-if="popupType">
+			<view class="popup-null" @click="popupClick(2)"></view>
+			<view class="popup-big-box">
+				<view class="popup-input-box">
+					<input type="text" maxlength="10" v-model="room" placeholder="请输入关键字">
+					<view @click="buildBySub">搜索</view>
+				</view>
+				<view class="popup-for-max-box">
+					<view class="popup-for-null" v-if="!roomList[0]">暂无数据</view>
+					<view class="popup-for-box" v-for="(item,index) in roomList" :key="index">
+						<view class="name-p">{{item.subName}} ({{item.roomNum?item.roomNum:'-'}})</view>
+						<view class="button-p" @click="popupClickItem(item)">确定</view>
+					</view>
+				</view>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	import {
+		config
+	} from '@/api/request/config.js'
+	import {} from '@/pages/api/index.js'
+	import {
+		laboratorySubRelInfoGetRelList,
+		checkOptionListNew,
+	} from '@/pages_safetyCheck/api/index.js'
+	export default {
+		name: "snapshotList",
+		components: {
+
+		},
+		data() {
+			return {
+				baseUrl: config.base_url,
+				pageType: 0,
+				userType: 1,
+				tabList: ['随手拍上报', '上报记录'],
+				tabIndex: 0,
+				tabListTow: ['随手拍上报', '上报记录', '隐患整改'],
+				tabIndexTow: 0,
+				newData: {
+
+				},
+				form: {
+					rectifyDescribe: '',
+					imgDtoList: [],
+					hazardCheckName:'',
+				},
+				popupType: false,
+				roomList: [],
+				checkOptionList: [],
+				escalationList:[
+					{
+						subName:'实验室名称(房间号)',
+						status:0,
+						time:'2024-01-01',
+					},
+					{
+						subName:'实验室名称(房间号)',
+						status:1,
+						time:'2024-01-01',
+					},
+					{
+						subName:'实验室名称(房间号)',
+						status:2,
+						time:'2024-01-01',
+					},
+				],
+				hiddenList:[
+					{
+						subName:'实验室名称实验室名称实验室名称实验室名称',
+						num:3,
+					},
+					{
+						subName:'实验室名称实验室名称实验室名称实验室名称',
+						num:3,
+					},
+					{
+						subName:'实验室名称实验室名称实验室名称实验室名称',
+						num:3,
+					},
+				],
+			}
+		},
+		onLoad(option) {
+
+
+		},
+		onShow() {
+
+		},
+		mounted() {
+
+		},
+		methods: {
+			//滚动事件
+			scrollGet() {},
+			tabClick(index) {
+				this.tabIndex = index;
+				this.pageType = index;
+			},
+			tabClickTow(index) {
+				this.tabIndexTow = index;
+				this.pageType = index;
+			},
+			/******图片上传******/
+			selectImage() {
+				let self = this;
+				if (this.form.imgDtoList.length > 4) {
+					uni.showToast({
+						title: '最多上传5张图片',
+						icon: "none",
+						mask: true,
+						duration: 2000
+					});
+					return
+				}
+				wx.chooseImage({
+					count: 1,
+					sizeType: ["original", "compressed"],
+					sourceType: ["album", "camera"],
+					success: function(res) {
+						let tempFilePaths = res.tempFilePaths[0];
+						self.uploadImg(tempFilePaths);
+					}
+				});
+			},
+			async uploadImg(tempFilePaths) {
+				var self = this;
+				uni.showLoading({
+					title: '上传中',
+					mask: true
+				});
+				uni.uploadFile({
+					url: config.base_url + '/system/file/upload', //仅为示例,非真实的接口地址
+					header: {
+						'Authorization': uni.getStorageSync('token')
+					},
+					filePath: tempFilePaths,
+					name: 'file',
+					formData: {
+						'user': 'test'
+					},
+					success: (uploadFileRes) => {
+						let res = JSON.parse(uploadFileRes.data);
+						if (res.code == 200) {
+							this.form.imgDtoList.push({
+								'fileUrl': res.data.url,
+								'fileName': res.data.name
+							});
+							console.log(res.data.url)
+						} else {
+							uni.showToast({
+								title: res.msg,
+								icon: "none",
+								mask: true,
+								duration: 2000
+							});
+						}
+					},
+					fail: err => {},
+					complete: () => {
+						uni.hideLoading()
+					}
+				});
+			},
+			//删除图片
+			delImg(minIndex) {
+				this.form.imgDtoList.splice(minIndex, 1);
+				this.$forceUpdate();
+			},
+			/******搜索房间弹层开关******/
+			popupClick(type) {
+				if (type == 1) {
+					this.room = "";
+					this.roomList = [];
+					this.popupType = true;
+					this.buildBySub();
+				} else if (type == 2) {
+					this.popupType = false;
+				}
+			},
+			//搜索房间接口
+			async buildBySub() {
+				let self = this;
+				const {
+					data
+				} = await laboratorySubRelInfoGetRelList({
+					'searchValue': this.form.searchValue,
+				});
+				if (data.code == 200) {
+					if (data.data[0]) {
+						this.roomList = data.data;
+					} else {
+						uni.showToast({
+							title: '未找到相关实验室',
+							icon: "none",
+							mask: true,
+							duration: 2000
+						});
+					}
+				}
+			},
+			//确认搜索房间
+			popupClickItem(item) {
+				console.log(item)
+				this.$set(this.form, "subId", item.subId)
+				this.$set(this.form, "subName", item.subName)
+				this.$set(this.form, "deptId", item.deptId)
+				for (let i = 0; i < this.collegeList.length; i++) {
+					if (item.deptId == this.collegeList[i].deptId) {
+						this.$set(this.form, "deptName", this.collegeList[i].deptName)
+					}
+				}
+				this.popupType = false;
+			},
+			/******调用摄像头******/
+			saoCode() {
+				let self = this;
+				uni.scanCode({
+					onlyFromCamera: true,
+					success: function(res) {
+						let list = res.result.split("?")[1].split("&");
+						let codeData = {};
+						list.forEach((item) => {
+							codeData[item.split("=")[0]] = item.split("=")[1];
+						})
+						console.log('二维码', codeData)
+						if (codeData.code) {
+							self.laboratoryAppletGetSubDetailInfo(codeData.code);
+						} else {
+							uni.showToast({
+								title: '请扫描正确的二维码',
+								icon: "none",
+								mask: true,
+								duration: 2000
+							});
+						}
+					}
+				});
+			},
+			/**************************搜索项***************************/
+			//获取检查项
+			async getCheckOptionList() {
+				const {
+					data
+				} = await checkOptionListNew();
+				if (data.code == 200) {
+					let list = this.getTreeData(data.data);
+					console.log(list)
+					this.checkOptionList.push(JSON.parse(JSON.stringify(list)));
+
+				}
+			},
+			getTreeData(data) {
+				for (var i = 0; i < data.length > 0; i++) {
+					if (data[i].children == null || data[i].children.length <= 0) {
+						// children若为空数组,则将children设为undefined
+						data[i].children = undefined;
+					} else {
+						if (this.form.checkCategory == 1 && data[i].level == 3) {
+							if (data[i].children[0]) {
+								let mainPoint = []
+								for (let b = 0; b < data[i].children.length; b++) {
+									mainPoint.push(data[i].children[b].name)
+									data[i].mainPoint = mainPoint.join(',')
+								}
+							} else {
+								data[i].mainPoint = '';
+							}
+							data[i].children = [];
+						}
+						// children若不为空数组,则继续 递归调用 本方法
+						this.getTreeData(data[i].children);
+					}
+				}
+				return data;
+			},
+			/**************************搜索项***************************/
+			//搜索特定检查项
+			async searchClick(text, index) {
+				console.log("搜索text", text);
+				console.log("搜索index", index);
+				const {
+					data
+				} = await checkOptionListNew({
+					'searchValue': text
+				});
+				if (data.code == 200) {
+					if (data.data[0]) {
+						let list = [];
+						list[0] = this.getTreeData(data.data)
+						this.$set(this, 'checkOptionList', JSON.parse(JSON.stringify(list)))
+
+						console.log(this.checkOptionList)
+
+						this.$refs.uniDataPicker[index].show();
+					} else {
+						uni.showToast({
+							title: '未找到相关检查项',
+							icon: "none",
+							mask: true,
+							duration: 2000
+						});
+					}
+				}
+			},
+			//重置检查项
+			async resetClick(index) {
+				console.log("重置index", index);
+				const {
+					data
+				} = await checkOptionListNew();
+				if (data.code == 200) {
+					let list = [];
+					list[0] = this.getTreeData(data.data);
+					this.$set(this, 'checkOptionList', JSON.parse(JSON.stringify(list)))
+					this.$refs.uniDataPicker[index].show();
+				}
+			},
+			//选中固有检查项(新)
+			onchange(indexAll, e, index) {
+				let self = this;
+				//hazardCheckCode:'', //检查项目code序号
+				//hazardCheckName:'', //检查项目名称
+				//hazardCheckPro:'', //最后一级的id
+				if (this.getTreeName(this.checkOptionList[0], e.detail.value[e.detail.value.length - 1].value).level ==
+					3) {
+					let jcxSstkNum = this.getTreeName(this.checkOptionList[0], e.detail.value[e.detail.value.length -
+						1].value).code
+					this.$set(this.form.checkHazardDtoList[index], 'hazardCheckPro', e.detail.value[e.detail.value
+						.length - 1].value);
+					this.$set(this.form.checkHazardDtoList[index], 'hazardCheckCode', jcxSstkNum);
+					this.$set(this.form.checkHazardDtoList[index], 'hazardCheckName', e.detail.value[e.detail.value
+						.length - 1].text);
+					this.$set(this.form.checkHazardDtoList[index], 'hazardCheckPoint', this.getTreeName(this
+						.checkOptionList[0], e.detail.value[e.detail.value.length - 1].value).mainPoint);
+							
+				} else {
+					uni.showToast({
+						title: '暂无数据',
+						icon: "none",
+						mask: true,
+						duration: 2000
+					});
+				}
+			},
+
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	.snapshotList {
+		height: 100%;
+		display flex;
+
+		.tabTitle {
+			width: 600rpx;
+			height: 80rpx;
+			display: flex;
+			justify-content: center;
+			margin: 20rpx 0 0 74rpx;
+
+			>view:nth-of-type(1) {
+				width: 300rpx;
+				height: 80rpx;
+				border-radius: 50rpx 0rpx 0rpx 50rpx;
+			}
+
+			>view:nth-of-type(2) {
+				width: 300rpx;
+				height: 80rpx;
+				border-radius: 0rpx 50rpx 50rpx 0rpx;
+			}
+
+			.tab-A {
+				font-size: 30rpx;
+				color: #FFFFFF;
+				line-height: 80rpx;
+				text-align: center;
+				background: #0183FA;
+			}
+
+			.tab-B {
+				font-size: 30rpx;
+				color: #333333;
+				line-height: 80rpx;
+				text-align: center;
+				background: #FFFFFF;
+			}
+		}
+
+		.tabTitleTow {
+			width: 690rpx;
+			height: 80rpx;
+			display: flex;
+			justify-content: center;
+			margin: 20rpx 0 0 30rpx;
+
+			>view:nth-of-type(1) {
+				width: 230rpx;
+				height: 80rpx;
+				border-radius: 50rpx 0rpx 0rpx 50rpx;
+			}
+
+			>view:nth-of-type(2) {
+				width: 230rpx;
+				height: 80rpx;
+				border-radius: 0rpx 0rpx 0rpx 0rpx;
+			}
+
+			>view:nth-of-type(3) {
+				width: 230rpx;
+				height: 80rpx;
+				border-radius: 0rpx 50rpx 50rpx 0rpx;
+			}
+
+			.tab-C {
+				font-size: 30rpx;
+				color: #FFFFFF;
+				line-height: 80rpx;
+				text-align: center;
+				background: #0183FA;
+			}
+
+			.tab-D {
+				font-size: 30rpx;
+				color: #333333;
+				line-height: 80rpx;
+				text-align: center;
+				background: #FFFFFF;
+			}
+		}
+
+		.srearch {
+			width: 750rpx;
+			height: 100rpx;
+			background: #FFFFFF;
+			border-radius: 0rpx 0rpx 0rpx 0rpx;
+			overflow: hidden;
+			margin-top: 20rpx;
+
+			.srearch-n {
+				width: 690rpx;
+				height: 60rpx;
+				border-radius: 50rpx 50rpx 50rpx 50rpx;
+				border: 1rpx solid #E0E0E0;
+				margin: 20rpx 0 0 30rpx;
+				display: flex;
+				justify-content: flex-start;
+				align-items: center;
+
+				.srearch-l {
+					width: 60rpx;
+					height: 60rpx;
+
+					>img {
+						width: 20rpx;
+						height: 20rpx;
+						margin: 20rpx 0 0 26rpx;
+					}
+				}
+
+				.srearch-c {
+					flex: 1;
+					height: 58rpx;
+					font-size: 24rpx;
+					color: #999999;
+					line-height: 30rpx;
+					text-align: left;
+				}
+
+				.srearch-r {
+					width: 60rpx;
+					height: 60rpx;
+
+					>img {
+						width: 30rpx;
+						height: 30rpx;
+						margin: 14rpx 22rpx 0 0;
+					}
+
+
+				}
+			}
+		}
+
+		.list {
+			width: 690rpx;
+			min-height: 765rpx;
+			background: #FFFFFF;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			margin: 20rpx 0 0 30rpx;
+
+			.list-li {
+				display: flex;
+				justify-content: space-between;
+				border-bottom: 1rpx solid #E0E0E0;
+				padding: 0 22rpx 0 28rpx;
+				box-sizing: border-box;
+
+				>view:nth-of-type(1) {
+					font-size: 30rpx;
+					color: #333333;
+					line-height: 80rpx;
+					text-align: left;
+				}
+
+				>view:nth-of-type(2) {
+					font-size: 28rpx;
+					color: #666666;
+					line-height: 80rpx;
+					text-align: left;
+					display: flex;
+					justify-content: flex-start;
+					align-items: center;
+
+					>img {
+						width: 24rpx;
+						height: 24rpx;
+						margin-left: 8rpx;
+					}
+				}
+
+				.project_r {
+					width: 510rpx;
+					min-height: 80rpx;
+					display: flex;
+					justify-content: flex-end;
+					align-items: center;
+					padding-left: 20rpx;
+					box-sizing: border-box;
+					color: #666;
+				}
+
+			}
+
+			.describe {
+				width: 636rpx;
+				height: 120rpx;
+				border-radius: 10rpx 10rpx 10rpx 10rpx;
+				border: 1rpx solid #E0E0E0;
+				margin: 20rpx 0 0 28rpx;
+				padding: 12rpx 16rpx;
+				box-sizing: border-box;
+			}
+
+			.check-for-img-max-box {
+				margin: 20px 28rpx;
+
+				.left-title-p {
+					width: 100%;
+					text-align: left;
+					font-size: 30rpx;
+					font-family: PingFang SC-Medium, PingFang SC;
+					font-weight: 400;
+					color: #333333;
+					line-height: 80rpx;
+				}
+
+				.right-img-box {
+					.img-box {
+						display inline-block;
+						height: 150rpx;
+						width: 150rpx;
+						position relative;
+						margin: 0 14rpx 20rpx 0;
+						border-radius 10rpx;
+						overflow hidden;
+
+						.img-data {
+							height: 150rpx;
+							width: 150rpx;
+						}
+
+						.position-img {
+							position absolute;
+							right: 0;
+							top: 0;
+							width: 36rpx;
+							height: 36rpx;
+						}
+					}
+
+					.img-box:nth-of-type(3n+3) {
+						margin-right: 0rpx;
+					}
+
+					.add-button {
+						margin: 0 0rpx 20rpx 0;
+						border-radius 10rpx;
+						overflow hidden;
+						display inline-block;
+						height: 150rpx;
+						width: 150rpx;
+					}
+				}
+			}
+		}
+
+		/* 实验室弹框 */
+		.popup-max-box {
+			z-index: 10;
+			height: 100%;
+			width: 100%;
+			position fixed;
+			background rgba(0, 0, 0, 0.2);
+			display flex;
+
+			flex-direction column;
+
+			.popup-null {
+				flex: 1;
+			}
+
+			.popup-big-box {
+				border-top-left-radius: 20rpx;
+				border-top-right-radius: 20rpx;
+
+				background #fff;
+
+				.popup-input-box {
+					padding: 30rpx 20rpx;
+					display: flex;
+
+					input {
+						flex: 1;
+						height: 70rpx;
+						border: 1rpx solid #e0e0e0;
+						border-radius: 10rpx;
+						margin-right: 20rpx;
+						padding: 0 20rpx;
+					}
+
+					view {
+						background #0183FA;
+						color: #fff;
+						border-radius: 10rpx;
+						width: 140rpx;
+						line-height: 70rpx;
+						text-align center;
+						font-size: 28rpx;
+					}
+				}
+
+				.popup-for-max-box {
+					margin: 0 20rpx 30rpx;
+					height: 600rpx;
+					overflow-y scroll;
+
+					.popup-for-null {
+						line-height: 100rpx;
+						text-align center;
+						color: #999;
+					}
+
+					.popup-for-box {
+						display: flex;
+						padding: 10px 0;
+
+						.name-p {
+							flex: 1;
+							line-height: 60rpx;
+						}
+
+						.button-p {
+							background #0183FA;
+							color: #fff;
+							text-align center;
+							width: 100rpx;
+							line-height: 60rpx;
+							height: 60rpx;
+							border-radius: 10rpx;
+						}
+					}
+				}
+			}
+		}
+
+		.subBtn {
+			width: 690rpx;
+			height: 100rpx;
+			background: #0183FA;
+			border-radius: 50rpx 50rpx 50rpx 50rpx;
+			font-weight: 400;
+			font-size: 30rpx;
+			color: #FFFFFF;
+			line-height: 100rpx;
+			text-align: center;
+			position: fixed;
+			left: 30rpx;
+			bottom: 10rpx;
+		}
+		/* 上报记录 */
+		.escalation{
+			
+			.escalation-li{
+				width: 690rpx;
+				height: 162rpx;
+				background: #FFFFFF;
+				border-radius: 20rpx 20rpx 20rpx 20rpx;
+				margin: 20rpx 30rpx;
+				padding: 0 30rpx;
+				box-sizing: border-box;
+				.escalation-li-t{
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+					border-bottom: 1rpx solid #E0E0E0;
+					>view:nth-of-type(1) {
+						font-weight: 400;
+						font-size: 30rpx;
+						color: #333333;
+						line-height: 80rpx;
+						text-align: left;
+					}
+					>view:nth-of-type(2) {
+						font-weight: 400;
+						font-size: 28rpx;
+						color: #0183FA;
+						line-height: 80rpx;
+						text-align: left;
+						display: flex;
+						justify-content: flex-start;
+						align-items: center;
+						>img{
+							width: 24rpx;
+							height: 24rpx;
+						}
+					}
+				}
+				.escalation-li-b{
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+					>view:nth-of-type(1) {
+						font-weight: 400;
+						font-size: 30rpx;
+						color: #333333;
+						line-height: 80rpx;	
+						text-align: left;
+					}
+					>view:nth-of-type(2) {
+						font-weight: 400;
+						font-size: 30rpx;
+						color: #666666;
+						line-height: 80rpx;
+						text-align: left;
+					}
+				}
+				
+			}
+		}
+		/* 隐患整改 */
+		.hidden{
+			width: 690rpx;
+			border-radius: 20rpx 20rpx 20rpx 20rpx;
+			background: #FFFFFF;
+			padding: 0 30rpx;
+			box-sizing: border-box;
+			margin: 20rpx 30rpx;
+			.hidden-li{
+				height: 80rpx;
+				border-bottom: 1rpx solid #E0E0E0;
+				display: flex;
+				justify-content: flex-start;
+				align-items: center;
+				.hidden-li-l{
+					width: 34rpx;
+					height: 34rpx;
+				}
+				.hidden-li-c{
+					font-size: 28rpx;
+					color: #333333;
+					line-height: 30rpx;
+					text-align: left;
+					flex: 1;
+					overflow: hidden;
+					text-overflow: ellipsis;
+					white-space: nowrap;
+					margin: 0 84rpx 0 12rpx;
+				}
+				.hidden-li-r{
+					font-size: 28rpx;
+					color: #0183FA;
+					line-height: 80rpx;
+					text-align: left;
+					display: flex;
+					justify-content: flex-start;
+					align-items: center;
+					>img{
+						width: 24rpx;
+						height: 24rpx;
+					}
+				}
+			}
+			.hidden-li:last-of-type{
+				border: none;
+			}
+		}
+		#color-A{
+			color: #0183FA;
+		}
+		#color-B{
+			color: #FF8C00;
+		}
+		#color-C{
+			color: #16B531;
+		}
+	}
+</style>

BIN
pages_safetyExamine/images/clear.png


BIN
pages_safetyExamine/images/icon_04.png


BIN
pages_safetyExamine/images/icon_07.png


BIN
pages_safetyExamine/images/icon_aqjc_ssp.png


BIN
pages_safetyExamine/images/icon_bfhx_sq.png


BIN
pages_safetyExamine/images/icon_bfhx_xq.png


BIN
pages_safetyExamine/images/icon_cg.png


BIN
pages_safetyExamine/images/icon_djcsys.png


BIN
pages_safetyExamine/images/icon_fjgk_sc.png


BIN
pages_safetyExamine/images/icon_jcjh_cy.png


BIN
pages_safetyExamine/images/icon_ksjc_yysr.png


BIN
pages_safetyExamine/images/icon_kzjc_bfh.png


BIN
pages_safetyExamine/images/icon_kzjc_fh.png


BIN
pages_safetyExamine/images/icon_rl.png


BIN
pages_safetyExamine/images/icon_ssp_ry.png


BIN
pages_safetyExamine/images/icon_xyxc_aqyh.png


BIN
pages_safetyExamine/images/icon_xyxc_qx.png


BIN
pages_safetyExamine/images/icon_xyxc_sys.png


BIN
pages_safetyExamine/images/icon_xyxc_syszc.png


BIN
pages_safetyExamine/images/icon_xyxc_xy.png


BIN
pages_safetyExamine/images/icon_xyxc_xyxc.png


BIN
pages_safetyExamine/images/icon_xyxcgl_jhwks.png


BIN
pages_safetyExamine/images/icon_xzwt_xz.png


BIN
pages_safetyExamine/images/icon_ywc.png


BIN
pages_safetyExamine/images/icon_yyt.png


BIN
pages_safetyExamine/images/null-data-1.png


File diff suppressed because it is too large
+ 0 - 1627
pages_safetyExamine/views/dangerManage/dangerDetail.vue


+ 0 - 616
pages_safetyExamine/views/dangerManage/dangerList.vue

@@ -1,616 +0,0 @@
-<!-- 安全检查-安全隐患 -->
-<template>
-	<view class="examine">
-		<view class="header">
-			<view class="tabTitle_tow">
-				<view class="tabTitle_tow_li" @tap="tabClickTow(index)" :key="index" v-for="(item,index) in tabTextTow">
-					<view :class="{on:curTabTow==index}" class="tabTitle_tow_text">{{item}}</view>
-					<view :class="{on:curTabTow==index}" class="tabTitle_tow_across"></view>
-				</view>
-			</view>
-			<view class="lab_title">
-				<picker @change="collegeChange" :value="collegeIndex" :range="collegeArray" class="lab_title_l">
-					<view class="lab_title_l_n">
-						<view>{{getData.deptName?getData.deptName:'选择学院'}}</view>
-						<img src="@/pages_safetyExamine/images/icon_06.png">
-					</view>
-				</picker>
-				<view class="lab_title_r">
-					<input type="text" v-model="getData.searchValue" placeholder="请输入实验室名称" name="search"
-						@confirm='searchBtn' confirm-type='search' maxlength="50"
-						placeholder-style="color: #CCCCCC;font-size:26rpx;">
-					<view v-if="getData.searchValue>0" class="lab_title_r_btn" @click="clearBtn">
-						<img src="@/pages_safetyExamine/images/clear.png" />
-					</view>
-				</view>
-			</view>
-		</view>
-
-		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-			<view class="list_three">
-				<view class="list_three_li" v-for="(item,index) in  dataList" :key="index"
-					@click="handleClick(item,'detail')">
-					<view class="list_three_li_t">
-						<view class="list_three_li_t_l">
-							<img v-if="item.checkRange==1" src="@/pages_safetyExamine/images/icon_xyxc_qx.png" />
-							<img v-if="item.checkRange==2" src="@/pages_safetyExamine/images/icon_xyxc_xy.png" />
-							<img v-if="item.checkRange==3" src="@/pages_safetyExamine/images/icon_xyxc_sys.png" />
-							<text></text>
-						</view>
-						<view class="list_three_li_t_c" v-if="item.checkCategory==1">{{item.subRoom}}</view>
-						<view class="list_three_li_t_c" v-if="item.checkCategory==2">
-							{{item.subRoom}}-{{item.hazardName}}{{item.code}}
-						</view>
-						<view class="list_three_li_t_c2" v-if="item.overdueStatus==1">已逾期</view>
-						<view class="list_three_li_t_r"></view>
-					</view>
-					<view class="list_three_li_m">
-						<view class="list_three_li_m_t">{{item.title}}</view>
-						<view class="list_three_li_m_b">
-							<text class="green_color" v-if="item.rectifyStatus==1">已完成</text>
-							<text class="blue_color" v-if="item.rectifyStatus==2">待整改</text>
-							<text class="orange_color" v-if="item.rectifyStatus==3">待复核</text>
-							<text class="gray_color" v-if="item.rectifyStatus==4">暂无法整改</text>
-							<text>{{item.hazardType==1?'校院巡查':'实验室自查'}}-{{item.checkCategory==1?'综合检查':'专项检查'}}</text>
-							<text>{{item.collegeName}}</text>
-						</view>
-					</view>
-					<view class="list_three_li_b">整改期限:{{item.rectifyDeadline}}</view>
-				</view>
-			</view>
-			<img class="null-img" v-if="!dataList[0]" src="@/pages_safetyExamine/images/null-data-1.png">
-		</scroll-view>
-	</view>
-
-</template>
-
-<script>
-	import {
-		config
-	} from '@/api/request/config.js'
-	import {
-		checkHazardAppList,
-		systemDeptDropList
-	} from '@/pages_safetyExamine/api/index.js'
-	export default {
-		name: "rectifyList",
-		components: {
-
-		},
-		data() {
-			return {
-				pageType: 0,
-				//列表请求参数
-				getData: {
-					page: 1,
-					pageSize: 20,
-					hazardType: '1', //1是院校巡查,2是实验室自查
-					rectifyStatus: '', //1已完成 2待整改 3待复核 4 暂无法整改
-					searchValue: '',
-				},
-				tabTextTow: ['全部', '待整改', '待复核', '已完成', '暂无法整改'],
-				curTabTow: 0,
-				form: {
-					name: '',
-					type: '校院巡查',
-					startTime: '',
-					endTime: '',
-					inspectScope: [],
-					tiemQuickList: [],
-					scopeIndex: '',
-					seleteListLab: [],
-					patrolIndex: '',
-					seleteListMember: [],
-				},
-				collegeList: [{
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, ],
-				collegeIndex: 0,
-				collegeArray: [],
-				dataList: [],
-			}
-		},
-		onLoad(option) {
-			if (option.form) {
-				this.form = JSON.parse(decodeURIComponent(option.form));
-			}
-			if (option.pageType == 1) {
-				uni.setNavigationBarTitle({
-					title: '校院巡查隐患'
-				})
-				this.getData.hazardType = option.pageType;
-			} else if (option.pageType == 2) {
-				uni.setNavigationBarTitle({
-					title: '实验室自查隐患'
-				})
-				this.getData.hazardType = option.pageType;
-			}
-		},
-		onShow() {
-
-		},
-		mounted() {
-			this.dataList = [];
-			this.getList();
-			this.conditionCollegeInfo();
-		},
-		methods: {
-			//顶部tab点击
-			tabClickTow(index) {
-				this.curTabTow = index;
-				this.getData.page = 1;
-				this.getData.searchValue = '';
-				this.getData.deptId = '';
-				this.getData.deptName = '';
-				this.dataList = [];
-				if (index == 0) {
-					this.getData.rectifyStatus = '';
-				} else if (index == 1) { //待整改
-					this.getData.rectifyStatus = 2;
-				} else if (index == 2) { //待复核
-					this.getData.rectifyStatus = 3;
-				} else if (index == 3) { //已完成
-					this.getData.rectifyStatus = 1;
-				} else if (index == 4) { //暂无法整改
-					this.getData.rectifyStatus = 4;
-				}
-				this.getList()
-			},
-			//选择学院
-			collegeChange(e) {
-				this.collegeIndex = e.target.value;
-				this.getData.deptId = this.collegeList[e.target.value].deptId
-				this.getData.deptName = this.collegeList[e.target.value].deptName
-				this.dataList = [];
-				this.getList();
-			},
-			//实验室搜索
-			searchBtn() {
-				this.dataList = [];
-				this.getList();
-			},
-			//清除
-			clearBtn() {
-				this.getData.page = 1;
-				this.collegeIndex = 0;
-				this.getData.deptId = '';
-				this.getData.deptName = '';
-				this.getData.searchValue = '';
-				this.dataList = [];
-				this.getList();
-			},
-			//滚动事件
-			scrollGet() {
-				let self = this;
-				if (self.total / self.getData.pageSize <= self.getData.page) {
-					console.log('没有更多数据!')
-				} else {
-					setTimeout(function() {
-						self.getData.page += 1;
-						self.getList();
-					}, 1000)
-
-				}
-
-			},
-			//查询学院列表
-			async conditionCollegeInfo() {
-				let self = this;
-				const {
-					data
-				} = await systemDeptDropList({
-					deptName: '',
-					level: 2,
-					deptType: 1
-				});
-				if (data.code == 200) {
-					data.data.forEach(function(item) {
-						item.type = false;
-					})
-					self.collegeList = data.data;
-
-					//检查管理
-					for (let i = 0; i < data.data.length; i++) {
-						self.collegeArray.push(data.data[i].deptName)
-					}
-				}
-			},
-			handleClick(row, doType) {
-				let self = this;
-				if (doType == 'subBtn') { //
-
-				} else if (doType == 'detail') { //详情
-					uni.redirectTo({
-						url: '/pages_safetyExamine/views/dangerManage/dangerDetail?item=' + encodeURIComponent(JSON
-							.stringify(row))
-					})
-				}
-
-			},
-			async getList() {
-				let self = this;
-				const {
-					data
-				} = await checkHazardAppList(this.getData);
-				if (data.code == 200) {
-					this.dataList = [...this.dataList, ...data.data.records]
-					this.total = data.data.total;
-				}
-			},
-
-		}
-	}
-</script>
-
-<style lang="stylus" scoped>
-	.examine {
-		height: 100%;
-		display flex;
-		// padding: 0 30rpx;
-		// box-sizing: border-box;
-		padding-bottom: 20rpx;
-		box-sizing: border-box;
-
-		.blue_color {
-			color: #0183FA;
-			border: 1rpx solid #0183FA;
-		}
-
-		.red_color {
-			color: #FF4545;
-			border: 1rpx solid #FF4545;
-		}
-
-		.green_color {
-			color: #1FA50D;
-			border: 1rpx solid #1FA50D;
-		}
-
-		.orange_color {
-			color: #FA8E1B;
-			border: 1rpx solid #FA8E1B;
-		}
-
-		.gray_color {
-			color: #A2A2A2;
-			border: 1rpx solid #A2A2A2;
-		}
-
-		.null-img {
-			display block;
-			width: 276rpx;
-			height: 321rpx;
-			margin: 100rpx 0 0 274rpx;
-		}
-
-		.info-max-box {
-			flex: 1;
-			overflow: scroll;
-
-			padding: 220rpx 0rpx 0;
-			box-sizing: border-box;
-		}
-
-		/* 切换按钮 */
-		.header {
-			width: 100%;
-			position: fixed;
-			top: 0rpx;
-			z-index: 100;
-
-			.tabTitle_tow {
-				width: 100%;
-				height: 100rpx;
-				background: #fff;
-				display flex;
-				justify-content: flex-start;
-				align-items: center;
-				border-bottom: 1rpx solid #E0E0E0;
-
-				.tabTitle_tow_li {
-					position: relative;
-					width: 152rpx;
-					text-align center;
-
-					.tabTitle_tow_text {
-						display: inline-block;
-						font-size: 30rpx;
-						font-family: PingFang SC;
-						font-weight: 500;
-						color: #333333;
-						line-height: 46rpx;
-						position: relative;
-
-						&.on {
-							color: #0183FA;
-						}
-					}
-
-					.tabTitle_tow_across {
-						width: 50rpx;
-						height: 4rpx;
-						background: #0183FA;
-						border-radius: 2rpx;
-						margin-left: 50rpx;
-						display none;
-
-						&.on {
-							display block;
-						}
-					}
-
-				}
-			}
-
-			.lab_title {
-				width: 750rpx;
-				height: 100rpx;
-				background: #FFFFFF;
-				padding: 20rpx 30rpx;
-				box-sizing: border-box;
-				display: flex;
-				justify-content: flex-start;
-
-				.lab_title_l {
-					width: 250rpx;
-					height: 60rpx;
-					margin-right: 20rpx;
-
-					.lab_title_l_n {
-						width: 250rpx;
-						height: 60rpx;
-						border-radius: 10rpx;
-						border: 1rpx solid #E0E0E0;
-						display: flex;
-						justify-content: flex-start;
-						align-items: center;
-
-						>view {
-							flex: 1;
-							line-height: 60rpx;
-							margin-left: 20rpx;
-							color: #999999;
-							font-size: 28rpx;
-							white-space: nowrap;
-							overflow: hidden;
-							text-overflow: ellipsis;
-						}
-
-						>img {
-							width: 14rpx;
-							height: 8rpx;
-							margin-right: 30rpx;
-						}
-					}
-				}
-
-				.lab_title_r {
-					width: 420rpx;
-					height: 60rpx;
-					position: relative;
-					border-radius: 10rpx;
-					border: 1rpx solid #E0E0E0;
-
-					.lab_title_r_btn {
-						width: 60rpx;
-						height: 60rpx;
-						position: absolute;
-						top: 0rpx;
-						right: 0rpx;
-						z-index: 100;
-
-						>img {
-							width: 20rpx;
-							height: 20rpx;
-							position: absolute;
-							top: 20rpx;
-							left: 24rpx;
-						}
-					}
-
-					>input {
-						width: 274rpx;
-						height: 60rpx;
-						position: absolute;
-						top: 0rpx;
-						left: 60rpx;
-					}
-
-					.clear {
-						width: 60rpx;
-						height: 60rpx;
-						position: absolute;
-						top: 0rpx;
-						right: 20rpx;
-						font-size: 30rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #0183FA;
-						line-height: 60rpx;
-					}
-				}
-			}
-
-		}
-
-		.list_three {
-			padding: 0 30rpx;
-			box-sizing: border-box;
-
-			.list_three_li {
-				position: relative;
-				width: 690rpx;
-				height: 320rpx;
-				background: #fff;
-				border-radius: 10rpx;
-				overflow: hidden;
-				margin-bottom: 20rpx;
-
-				.list_three_li_t {
-					width: 100%;
-					position: absolute;
-					left: 0;
-					top: 0;
-
-					.list_three_li_t_l {
-						>img {
-							width: 70rpx;
-							height: 70rpx;
-						}
-
-						>text {
-							position: absolute;
-							left: -15rpx;
-							top: 76rpx;
-							display: inline-block;
-							width: 30rpx;
-							height: 30rpx;
-							background: #F5F5F5;
-							border-radius: 15rpx;
-						}
-					}
-
-					.list_three_li_t_c {
-						width: 580rpx;
-						height: 110rpx;
-						position: absolute;
-						left: 30rpx;
-						top: 0;
-						font-size: 30rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #333333;
-						line-height: 110rpx;
-						border-bottom: 1rpx dashed #D8D8D8;
-						overflow: hidden;
-						text-overflow: ellipsis;
-						white-space: nowrap;
-						padding-right: 60rpx;
-						box-sizing: border-box;
-					}
-
-					.list_three_li_t_c2 {
-						position: absolute;
-						right: 20rpx;
-						top: 38rpx;
-						width: 120rpx;
-						height: 40rpx;
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #FF5757;
-						line-height: 40rpx;
-						border: 1rpx solid #FF5757;
-						border-radius: 6rpx;
-						text-align: center;
-					}
-
-					.list_three_li_t_r {
-						position: absolute;
-						right: -15rpx;
-						top: 76rpx;
-						width: 30rpx;
-						height: 30rpx;
-						background: #F5F5F5;
-						border-radius: 15rpx;
-					}
-				}
-
-				.list_three_li_m {
-					position: absolute;
-					top: 110rpx;
-					left: 0;
-					width: 690rpx;
-					height: 158rpx;
-					padding-left: 30rpx;
-					box-sizing: border-box;
-
-					.list_three_li_m_t {
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #666666;
-						line-height: 40rpx;
-						margin-top: 22rpx;
-						overflow: hidden;
-						text-overflow: ellipsis;
-						white-space: nowrap;
-					}
-
-					.list_three_li_m_b {
-						margin-top: 26rpx;
-
-						>text:nth-of-type(1) {
-							font-size: 26rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							line-height: 40rpx;
-							border-radius: 6rpx;
-							padding: 0 20rpx;
-							margin-right: 14rpx;
-						}
-
-						>text:nth-of-type(2) {
-							font-size: 26rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							color: #0183FA;
-							line-height: 40rpx;
-							padding: 0 8rpx;
-							border-radius: 6rpx;
-							background: rgba(1, 131, 250, 0.1);
-							margin-right: 24rpx;
-						}
-
-						>text:nth-of-type(3) {
-							display: inline-block;
-							width: 180rpx;
-							font-size: 26rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							color: #333333;
-							line-height: 26rpx;
-							overflow: hidden;
-							text-overflow: ellipsis;
-							white-space: nowrap;
-
-						}
-					}
-				}
-
-				.list_three_li_b {
-					height: 60rpx;
-					width: 100%;
-					position: absolute;
-					top: 258rpx;
-					left: 0;
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #666666;
-					line-height: 60rpx;
-					padding-left: 28rpx;
-					box-sizing: border-box;
-				}
-
-			}
-		}
-
-	}
-</style>

+ 0 - 730
pages_safetyExamine/views/dangerManage/dangerManage.vue

@@ -1,730 +0,0 @@
-<!-- 安全检查-安全隐患 -->
-<template>
-	<view class="examine">
-		<view class="header">
-			<view class="tabTitle" v-if="pageType==0 && !collegeGentle">
-				<view class="tabTitle_li" @tap="tabClick(index)" :key="index" v-for="(item,index) in tabText">
-					<view :class="{on:curTab==index}" class="tabTitle_text">{{item}}</view>
-					<view :class="{on:curTab==index}" class="tabTitle_across"></view>
-				</view>
-			</view>
-			<view class="tabTitle_tow">
-				<view class="tabTitle_tow_li" @tap="tabClickTow(index)" :key="index" v-for="(item,index) in tabTextTow">
-					<view :class="{on:curTabTow==index}" class="tabTitle_tow_text">{{item}}</view>
-					<view :class="{on:curTabTow==index}" class="tabTitle_tow_across"></view>
-				</view>
-			</view><strong></strong>
-			<view class="lab_title">
-				<picker @change="collegeChange" :value="collegeIndex" :range="collegeArray" class="lab_title_l">
-					<view class="lab_title_l_n">
-						<view>{{getData.deptName?getData.deptName:'选择学院'}}</view>
-						<img src="@/pages_safetyExamine/images/icon_06.png">
-					</view>
-				</picker>
-				<view class="lab_title_r">
-					<input type="text" v-model="getData.searchValue" placeholder="实验室/房间号" name="search"
-						@confirm='searchBtn' confirm-type='search' maxlength="50"
-						placeholder-style="color: #CCCCCC;font-size:22rpx;">
-
-					<view v-if="getData.searchValue>0" class="lab_title_r_btn" @click="clearBtn">
-						<img src="@/pages_safetyExamine/images/clear.png" />
-					</view>
-				</view>
-			</view>
-		</view>
-
-		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-			<view class="list_three">
-				<view class="list_three_li" v-for="(item,index) in  dataList" :key="index"
-					@click="handleClick(item,'detail')">
-					<view class="list_three_li_t">
-						<view class="list_three_li_t_l">
-							<img v-if="item.checkRange==1" src="@/pages_safetyExamine/images/icon_xyxc_qx.png" />
-							<img v-if="item.checkRange==2" src="@/pages_safetyExamine/images/icon_xyxc_xy.png" />
-							<img v-if="item.checkRange==3" src="@/pages_safetyExamine/images/icon_xyxc_sys.png" />
-							<text></text>
-						</view>
-						<view class="list_three_li_t_c">{{item.subRoom}}</view>
-						<view class="list_three_li_t_c2" v-if="item.overdueStatus==1">已逾期</view>
-						<view class="list_three_li_t_r"></view>
-					</view>
-					<view class="list_three_li_m">
-						<view class="list_three_li_m_t">{{item.title}}</view>
-						<view class="list_three_li_m_b">
-							<text class="green_color" v-if="item.rectifyStatus==1">已完成</text>
-							<text class="blue_color" v-if="item.rectifyStatus==2">待整改</text>
-							<text class="orange_color" v-if="item.rectifyStatus==3">待复核</text>
-							<text class="gray_color" v-if="item.rectifyStatus==4">暂无法整改</text>
-							<text>{{item.hazardType==1?'校院巡查':'实验室自查'}}-{{item.checkCategory==1?'综合检查':'专项检查'}}</text>
-							<text>{{item.collegeName}}</text>
-						</view>
-					</view>
-					<view class="list_three_li_b">整改期限:{{item.rectifyDeadline?item.rectifyDeadline:''}}</view>
-				</view>
-			</view>
-			<img class="null-img" v-if="!dataList[0]" src="@/pages_safetyExamine/images/null-data-1.png">
-		</scroll-view>
-	</view>
-
-</template>
-
-<script>
-	import {
-		config
-	} from '@/api/request/config.js'
-
-	import {
-		checkHazardAppList,
-		systemDeptDropList
-	} from '@/pages_safetyExamine/api/index.js'
-	
-	
-	export default {
-		name: "rectifyList",
-		components: {
-
-		},
-		data() {
-			return {
-				pageType: 0,
-				//列表请求参数
-				getData: {
-					page: 1,
-					pageSize: 20,
-					hazardType: '1', //1是院校巡查,2是实验室自查
-					rectifyStatus: '', //1已完成 2待整改 3待复核 4 暂无法整改
-					searchValue: '',
-				},
-				tabText: ['校院巡查隐患', '实验室自查隐患'],
-				curTab: 0,
-				tabTextTow: ['全部', '待整改', '待复核', '已完成', '暂无法整改'],
-				curTabTow: 0,
-				form: {
-					name: '',
-					type: '校院巡查',
-					startTime: '',
-					endTime: '',
-					inspectScope: [],
-					tiemQuickList: [],
-					scopeIndex: '',
-					seleteListLab: [],
-					patrolIndex: '',
-					seleteListMember: [],
-				},
-				collegeList: [{
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, ],
-				collegeIndex: 0,
-				collegeArray: [],
-				dataList: [],
-				collegeGentle: '', //院级管理员身份 如果是院级管理员隐藏校院巡查
-			}
-		},
-		onLoad(option) {
-			this.collegeGentle = uni.getStorageSync('gentleIdentifierData').collegeGentle
-			if (option.form) {
-				this.form = JSON.parse(decodeURIComponent(option.form));
-				console.log(this.form)
-			}
-			if (option.pageType == 1) {
-				if (this.collegeGentle) {
-					uni.setNavigationBarTitle({
-						title: '实验室自查隐患'
-					})
-				} else {
-					uni.setNavigationBarTitle({
-						title: '校院巡查隐患'
-					})
-				}
-
-			} else if (option.pageType == 2) {
-				uni.setNavigationBarTitle({
-					title: '实验室自查隐患'
-				})
-			}
-		},
-		onShow() {
-
-		},
-		mounted() {
-
-			this.dataList = [];
-			this.getList();
-			this.conditionCollegeInfo();
-		},
-		methods: {
-			tabClick(index) {
-				this.curTab = index;
-				this.getData.page = 1;
-				this.getData.searchValue = '';
-				this.getData.deptId = '';
-				this.getData.deptName = '';
-				this.getData.rectifyStatus = '';
-				this.curTabTow = 0;
-				this.dataList = [];
-				if (index == 0) { //校院
-					this.getData.hazardType = 1;
-				} else if (index == 1) { //实验室
-					this.getData.hazardType = 2;
-				}
-				this.getList()
-			},
-			//顶部tab点击
-			tabClickTow(index) {
-				this.curTabTow = index;
-				this.getData.page = 1;
-				this.getData.searchValue = '';
-				this.getData.deptId = '';
-				this.getData.deptName = '';
-				this.dataList = [];
-				if (index == 0) {
-					this.getData.rectifyStatus = '';
-				} else if (index == 1) { //待整改
-					this.getData.rectifyStatus = 2;
-				} else if (index == 2) { //待复核
-					this.getData.rectifyStatus = 3;
-				} else if (index == 3) { //已完成
-					this.getData.rectifyStatus = 1;
-				} else if (index == 4) { //暂无法整改
-					this.getData.rectifyStatus = 4;
-				}
-				this.getList()
-			},
-			//选择学院
-			collegeChange(e) {
-				this.collegeIndex = e.target.value;
-				this.getData.deptId = this.collegeList[e.target.value].deptId
-				this.getData.deptName = this.collegeList[e.target.value].deptName
-				this.dataList = [];
-				this.getList();
-			},
-			//实验室搜索
-			searchBtn() {
-				this.dataList = [];
-				this.getList();
-			},
-			//清除
-			clearBtn() {
-				this.getData.page = 1;
-				this.collegeIndex = 0;
-				this.getData.deptId = '';
-				this.getData.deptName = '';
-				this.getData.searchValue = '';
-				this.dataList = [];
-				this.getList();
-			},
-			//滚动事件
-			scrollGet() {
-				let self = this;
-				if (self.total / self.getData.pageSize <= self.getData.page) {
-					console.log('没有更多数据!')
-				} else {
-					setTimeout(function() {
-						self.getData.page += 1;
-						self.getList();
-					}, 1000)
-
-				}
-
-			},
-			//查询学院列表
-			async conditionCollegeInfo() {
-				let self = this;
-				const {
-					data
-				} = await systemDeptDropList({
-					deptName: '',
-					level: 2,
-					deptType: 1
-				});
-				if (data.code == 200) {
-					data.data.forEach(function(item) {
-						item.type = false;
-					})
-					self.collegeList = data.data;
-				
-					//检查管理
-					for (let i = 0; i < data.data.length; i++) {
-						self.collegeArray.push(data.data[i].deptName)
-					}
-				}
-			
-			},
-			handleClick(row, doType) {
-				let self = this;
-				if (doType == 'subBtn') { //
-
-				} else if (doType == 'detail') { //详情
-					uni.navigateTo({
-						url: '/pages_safetyExamine/views/dangerManage/dangerDetail?item=' + encodeURIComponent(JSON
-							.stringify(row))
-					})
-				}
-
-			},
-			async getList() {
-				let self = this;
-				const {
-					data
-				} = await checkHazardAppList(this.getData);
-				if (data.code == 200) {
-					this.dataList = [...this.dataList, ...data.data.records]
-					this.total = data.data.total;
-				}
-			},
-
-		}
-	}
-</script>
-
-<style lang="stylus" scoped>
-	.examine {
-		height: 100%;
-		display flex;
-		// padding: 0 30rpx;
-		// box-sizing: border-box;
-		padding-bottom: 20rpx;
-		box-sizing: border-box;
-
-		.null-img {
-			display block;
-			width: 276rpx;
-			height: 321rpx;
-			margin: 100rpx 0 0 274rpx;
-		}
-
-		.blue_color {
-			color: #0183FA;
-			border: 1rpx solid #0183FA;
-		}
-
-		.red_color {
-			color: #FF4545;
-			border: 1rpx solid #FF4545;
-		}
-
-		.green_color {
-			color: #1FA50D;
-			border: 1rpx solid #1FA50D;
-		}
-
-		.orange_color {
-			color: #FA8E1B;
-			border: 1rpx solid #FA8E1B;
-		}
-
-		.gray_color {
-			color: #A2A2A2;
-			border: 1rpx solid #A2A2A2;
-		}
-
-		.info-max-box {
-			flex: 1;
-			overflow: scroll;
-
-			padding: 220rpx 0rpx 0;
-			box-sizing: border-box;
-		}
-
-		.info-max-box {
-			flex: 1;
-			overflow: scroll;
-
-			padding: 210rpx 0rpx 0;
-			box-sizing: border-box;
-		}
-
-		/* 切换按钮 */
-		.header {
-			width: 100%;
-			position: fixed;
-			top: 0rpx;
-			z-index: 100;
-
-			.tabTitle {
-				width: 100%;
-				height: 100rpx;
-				background: #fff;
-				display flex;
-				justify-content: center;
-				align-items: center;
-				margin-bottom: 20rpx;
-
-				.tabTitle_li {
-					position: relative;
-					width: 372rpx;
-					text-align center;
-
-					.tabTitle_text {
-						display: inline-block;
-						font-size: 30rpx;
-						font-family: PingFang SC;
-						font-weight: 500;
-						color: #333333;
-						line-height: 46rpx;
-						position: relative;
-
-						>text {
-							position: absolute;
-							min-width: 30rpx;
-							min-height: 30rpx;
-							border-radius: 54%;
-							background: #E80000;
-							font-size: 18rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							color: #FFFFFF;
-							text-align: center;
-							line-height: 30rpx;
-							margin-left: 6rpx;
-							padding: 2rpx;
-							box-sizing: border-box;
-						}
-
-						&.on {
-							color: #0183FA;
-						}
-					}
-
-					.tabTitle_across {
-						width: 50rpx;
-						height: 4rpx;
-						background: #0183FA;
-						border-radius: 2rpx;
-						margin-left 162rpx;
-						display none;
-
-						&.on {
-							display block;
-						}
-					}
-
-				}
-
-				.tabTitle_li:nth-of-type(1)::after {
-					content: '';
-					position: absolute;
-					top: 0rpx;
-					right: 0rpx;
-					width: 1rpx;
-					height: 50rpx;
-					background: #E0E0E0;
-				}
-			}
-
-			.tabTitle_tow {
-				width: 100%;
-				height: 100rpx;
-				background: #fff;
-				display flex;
-				justify-content: flex-start;
-				align-items: center;
-				border-bottom: 1rpx solid #E0E0E0;
-
-				.tabTitle_tow_li {
-					position: relative;
-					width: 152rpx;
-					text-align center;
-
-					.tabTitle_tow_text {
-						display: inline-block;
-						font-size: 30rpx;
-						font-family: PingFang SC;
-						font-weight: 500;
-						color: #333333;
-						line-height: 46rpx;
-						position: relative;
-
-						&.on {
-							color: #0183FA;
-						}
-					}
-
-					.tabTitle_tow_across {
-						width: 50rpx;
-						height: 4rpx;
-						background: #0183FA;
-						border-radius: 2rpx;
-						margin-left: 50rpx;
-						display none;
-
-						&.on {
-							display block;
-						}
-					}
-
-				}
-			}
-
-			.lab_title {
-				width: 750rpx;
-				height: 100rpx;
-				background: #FFFFFF;
-				padding: 20rpx 30rpx;
-				box-sizing: border-box;
-				display: flex;
-				justify-content: flex-start;
-
-				.lab_title_l {
-					width: 250rpx;
-					height: 60rpx;
-					margin-right: 20rpx;
-
-					.lab_title_l_n {
-						width: 250rpx;
-						height: 60rpx;
-						border-radius: 10rpx;
-						border: 1rpx solid #E0E0E0;
-						display: flex;
-						justify-content: flex-start;
-						align-items: center;
-
-						>view {
-							flex: 1;
-							line-height: 60rpx;
-							margin-left: 20rpx;
-							color: #999999;
-							font-size: 28rpx;
-							white-space: nowrap;
-							overflow: hidden;
-							text-overflow: ellipsis;
-						}
-
-						>img {
-							width: 14rpx;
-							height: 8rpx;
-							margin-right: 30rpx;
-						}
-					}
-				}
-
-				.lab_title_r {
-					width: 420rpx;
-					height: 60rpx;
-					position: relative;
-					border-radius: 10rpx;
-					border: 1rpx solid #E0E0E0;
-
-					.lab_title_r_btn {
-						width: 60rpx;
-						height: 60rpx;
-						position: absolute;
-						top: 0rpx;
-						right: 0rpx;
-						z-index: 100;
-
-						>img {
-							width: 20rpx;
-							height: 20rpx;
-							position: absolute;
-							top: 20rpx;
-							left: 24rpx;
-						}
-					}
-
-					>input {
-						width: 274rpx;
-						height: 60rpx;
-						position: absolute;
-						top: 0rpx;
-						left: 60rpx;
-					}
-
-					.clear {
-						width: 60rpx;
-						height: 60rpx;
-						position: absolute;
-						top: 0rpx;
-						right: 20rpx;
-						font-size: 30rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #0183FA;
-						line-height: 60rpx;
-					}
-				}
-			}
-
-		}
-
-		.list_three {
-			padding: 120rpx 30rpx 0;
-			box-sizing: border-box;
-
-			.list_three_li {
-				position: relative;
-				width: 690rpx;
-				height: 320rpx;
-				background: #fff;
-				border-radius: 10rpx;
-				overflow: hidden;
-				margin-bottom: 20rpx;
-
-				.list_three_li_t {
-					width: 100%;
-					position: absolute;
-					left: 0;
-					top: 0;
-
-					.list_three_li_t_l {
-						>img {
-							width: 70rpx;
-							height: 70rpx;
-						}
-
-						>text {
-							position: absolute;
-							left: -15rpx;
-							top: 76rpx;
-							display: inline-block;
-							width: 30rpx;
-							height: 30rpx;
-							background: #F5F5F5;
-							border-radius: 15rpx;
-						}
-					}
-
-					.list_three_li_t_c {
-						width: 630rpx;
-						height: 110rpx;
-						position: absolute;
-						left: 30rpx;
-						top: 0;
-						font-size: 30rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #333333;
-						line-height: 110rpx;
-						border-bottom: 1rpx dashed #D8D8D8;
-						overflow: hidden;
-						text-overflow: ellipsis;
-						white-space: nowrap;
-						padding-right: 60rpx;
-						box-sizing: border-box;
-					}
-
-					.list_three_li_t_c2 {
-						position: absolute;
-						right: 20rpx;
-						top: 38rpx;
-						width: 120rpx;
-						height: 40rpx;
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #FF5757;
-						line-height: 40rpx;
-						border: 1rpx solid #FF5757;
-						border-radius: 6rpx;
-						text-align: center;
-					}
-
-					.list_three_li_t_r {
-						position: absolute;
-						right: -15rpx;
-						top: 76rpx;
-						width: 30rpx;
-						height: 30rpx;
-						background: #F5F5F5;
-						border-radius: 15rpx;
-					}
-				}
-
-				.list_three_li_m {
-					position: absolute;
-					top: 110rpx;
-					left: 0;
-					width: 690rpx;
-					height: 158rpx;
-					padding-left: 30rpx;
-					box-sizing: border-box;
-
-					.list_three_li_m_t {
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #666666;
-						line-height: 40rpx;
-						margin-top: 22rpx;
-						overflow: hidden;
-						text-overflow: ellipsis;
-						white-space: nowrap;
-					}
-
-					.list_three_li_m_b {
-						margin-top: 26rpx;
-
-						>text:nth-of-type(1) {
-							font-size: 26rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							line-height: 40rpx;
-							border-radius: 6rpx;
-							padding: 0 20rpx;
-							margin-right: 14rpx;
-						}
-
-						>text:nth-of-type(2) {
-							font-size: 26rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							color: #0183FA;
-							line-height: 40rpx;
-							padding: 0 8rpx;
-							border-radius: 6rpx;
-							background: rgba(1, 131, 250, 0.1);
-							margin-right: 24rpx;
-						}
-
-						>text:nth-of-type(3) {
-							display: inline-block;
-							width: 180rpx;
-							font-size: 26rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							color: #333333;
-							line-height: 26rpx;
-							overflow: hidden;
-							text-overflow: ellipsis;
-							white-space: nowrap;
-
-						}
-					}
-				}
-
-				.list_three_li_b {
-					height: 60rpx;
-					width: 100%;
-					position: absolute;
-					top: 258rpx;
-					left: 0;
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #666666;
-					line-height: 60rpx;
-					padding-left: 28rpx;
-					box-sizing: border-box;
-				}
-
-			}
-		}
-
-	}
-</style>

File diff suppressed because it is too large
+ 0 - 1697
pages_safetyExamine/views/examineManage/examineAdd.vue


+ 0 - 330
pages_safetyExamine/views/examineManage/examineAddContent.vue

@@ -1,330 +0,0 @@
-<!-- 安全检查-发起巡查计划-选择内容 -->
-<template>
-	<view class="examine">
-		<view class="lab_title">
-			<view class="lab_title_r">
-				<view class="lab_title_r_btn" @click="searchBtn">
-					<img src="@/pages_safetyExamine/images/icon_aqjc_ss.png" />
-				</view>
-				<input type="text" v-model="getData.searchValue" placeholder="设备名称/型号" maxlength="50"
-					placeholder-style="color: #CCCCCC;font-size:26rpx;">
-				<!-- <img class="scanBtn"  @click="scanBtn" src="@/pages_safetyExamine/images/icon_aqjc_sm.png"/> -->
-			</view>
-		</view>
-		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-			<view>
-				<view class="list">
-					<view class="list_li" v-for="(item,index) in  dataList" :key="index" @click="labSelete(index)">
-						<text :class="item.type?'color_B':'color_A'">{{item.chName}}</text>
-						<img v-if="item.type" src="@/pages_safetyExamine/images/icon_xzwt_xz.png">
-					</view>
-				</view>
-			</view>
-		</scroll-view>
-		<div class="bottom">
-			<view class="bottom_l" @click="clearForm">取消</view>
-			<view class="bottom_r" @click="submitForm">确定</view>
-		</div>
-	</view>
-
-</template>
-
-<script>
-	import {
-		config
-	} from '@/api/request/config.js'
-	import {
-		getHazardInfoBySubId
-	} from '@/pages_safetyExamine/api/index.js'
-	export default {
-		name: "rectifyList",
-		components: {
-
-		},
-		data() {
-			return {
-				pageType: 0,
-				//列表请求参数
-				getData: {
-					page: 1,
-					pageSize: 200,
-					searchValue: '',
-					subId: '',
-				},
-				total: 0,
-				collegeIndex: 0,
-				collegeArray: [],
-				collegeList: [],
-				dataList: [],
-				seleteListDevice: [], //临时存储选中的
-				form: {},
-			}
-		},
-		onLoad(option) {
-			if (option.form) {
-				this.form = JSON.parse(decodeURIComponent(option.form));
-			}
-			if (option.pageType) { //pageType=1添加页面进入2编辑页面进入
-				this.pageType = option.pageType
-			}
-		},
-		onShow() {
-
-		},
-		mounted() {
-			this.dataList = [];
-			this.getList();
-		},
-		methods: {
-			//滚动事件
-			scrollGet() {
-		
-			},
-			//点击选择实验室
-			labSelete(index) {
-				this.dataList[index].type = !this.dataList[index].type
-
-				if (this.dataList[index].type) { //判断是选中还是取消
-					if (this.seleteListDevice.length > 0) {
-						if (this.seleteListDevice.findIndex((item) => item.joinHazardId === this.dataList[index]
-								.joinHazardId) == -1) { //等于-1说明数组里没有当前选中元素,可以添加
-							this.seleteListDevice.push(this.dataList[index])
-						}
-					} else {
-						this.seleteListDevice.push(this.dataList[index])
-					}
-				} else {
-					this.seleteListDevice.splice(this.seleteListDevice.indexOf(this.dataList[index]), 1);
-				}
-			},
-			//实验室搜索
-			searchBtn() {
-				this.dataList = [];
-				this.getList();
-			},
-			handleClick(doType) {
-				let self = this;
-				if (doType == 'subBtn') { //保存数据
-
-				}
-			},
-			//扫码
-			scanBtn() {
-				uni.redirectTo({
-					url: '/pages/saoCode/scan?form=' + encodeURIComponent(JSON.stringify(this.form))
-				});
-			},
-
-			//取消
-			clearForm() {
-				uni.navigateTo({
-					url: '/pages_safetyExamine/views/examineManage/examineAdd?form=' + encodeURIComponent(JSON
-						.stringify(this.form))
-				});
-			},
-			//设备-保存
-			async submitForm() {
-				let _this = this;
-				let hazardIds = [];
-				let joinHazardIds = [];
-				//this.$set(this.form,'hazardNum', this.seleteListDevice.length)
-				//this.$set(this.form,'seleteListDevice', this.seleteListDevice)
-				if (this.seleteListDevice.length > 0) {
-					this.seleteListDevice.forEach(function(item) {
-						hazardIds.push(item.hazardId)
-						joinHazardIds.push(item.joinHazardId)
-					})
-					this.$set(this.form, 'hazardIds', hazardIds.join(','))
-					this.$set(this.form, 'joinHazardIds', joinHazardIds.join(','))
-				} else {
-					this.$set(this.form, 'hazardIds', '')
-					this.$set(this.form, 'joinHazardIds', '')
-					uni.showToast({
-						title: '请选择检查内容!',
-						icon: "none",
-						mask: true,
-						duration: 2000
-					});
-					return
-				}
-
-				uni.redirectTo({
-					url: '/pages_safetyExamine/views/examineManage/examineAddTow?form=' + encodeURIComponent(JSON
-						.stringify(this.form)) + '&joinHazardIds=' + this.form.joinHazardIds
-				});
-
-
-			},
-			async getList() {
-				let _this = this;
-				this.getData.subId = this.form.subIds;
-				const {
-					data
-				} = await getHazardInfoBySubId(this.getData);
-				if (data.code == 200) {
-					data.data.forEach(function(item) {
-						item.type = false;
-					})
-					this.dataList = [...this.dataList, ...data.data]
-					_this.total = data.total;
-					if (this.form.joinHazardIds) {
-						let joinHazardIds = this.form.joinHazardIds.split(',')
-						for (let i = 0; i < this.dataList.length; i++) {
-							for (let b = 0; b < joinHazardIds.length; b++) {
-								if (this.dataList[i].joinHazardId == joinHazardIds[b]) {
-									this.seleteListDevice.push(this.dataList[i]);
-									this.dataList[i].type = true;
-								}
-							}
-						}
-					}
-				}
-			}
-		}
-	}
-</script>
-
-<style lang="stylus" scoped>
-	.examine {
-		height: 100%;
-		display flex;
-
-		.info-max-box {
-			flex: 1;
-			overflow: scroll;
-			padding: 120rpx 0rpx 100rpx;
-			box-sizing: border-box;
-		}
-
-		.lab_title {
-			width: 750rpx;
-			height: 100rpx;
-			background: #FFFFFF;
-			position: fixed;
-			top: 0;
-			padding: 10rpx 30rpx;
-			box-sizing: border-box;
-			display: flex;
-			justify-content: flex-start;
-
-			.lab_title_r {
-				width: 690rpx;
-				height: 80rpx;
-				position: relative;
-				border-radius: 10rpx;
-				border: 1rpx solid #E0E0E0;
-
-				.lab_title_r_btn {
-					width: 60rpx;
-					height: 80rpx;
-					position: absolute;
-					top: 0rpx;
-					left: 0rpx;
-
-					>img {
-						width: 26rpx;
-						height: 26rpx;
-						position: absolute;
-						top: 30rpx;
-						left: 24rpx;
-					}
-				}
-
-				>input {
-					width: 274rpx;
-					height: 80rpx;
-					position: absolute;
-					top: 0rpx;
-					left: 60rpx;
-				}
-
-				.scanBtn {
-					width: 30rpx;
-					height: 30rpx;
-					position: absolute;
-					top: 26rpx;
-					right: 26rpx;
-				}
-			}
-		}
-
-		.list {
-			background: #FFFFFF;
-			border-radius: 20rpx 20rpx 0rpx 0rpx;
-			padding: 0 30rpx;
-			box-sizing: border-box;
-			margin: 0 30rpx;
-
-			.list_li {
-				display: flex;
-				justify-content: space-between;
-				align-items: center;
-				height: 80rpx;
-				border-bottom: 1rpx solid #E0E0E0;
-
-				>text {
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					line-height: 80rpx;
-					overflow: hidden;
-					text-overflow: ellipsis;
-					white-space: nowrap;
-				}
-
-				>img {
-					width: 24rpx;
-					height: 16rpx;
-					margin-right: 14rpx;
-				}
-			}
-
-			.list_li:last-child {
-				border: none;
-			}
-
-			.color_A {
-				color: #333333;
-			}
-
-			.color_B {
-				color: #0183FA;
-			}
-		}
-
-		.bottom {
-			width: 750rpx;
-			height: 90rpx;
-			background: #FFFFFF;
-			position: fixed;
-			left: 0;
-			bottom: 0;
-			display: flex;
-			justify-content: flex-start;
-
-			.bottom_l {
-				font-size: 30rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #333333;
-				line-height: 90rpx;
-				width: 50%;
-				height: 90rpx;
-				background: #fff;
-				text-align: center;
-			}
-
-			.bottom_r {
-				font-size: 30rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #FFFFFF;
-				line-height: 90rpx;
-				width: 50%;
-				height: 90rpx;
-				background: #0183FA;
-				text-align: center;
-			}
-		}
-	}
-</style>

File diff suppressed because it is too large
+ 0 - 1629
pages_safetyExamine/views/examineManage/examineAddTow.vue


File diff suppressed because it is too large
+ 0 - 1041
pages_safetyExamine/views/examineManage/examineDetail.vue


+ 0 - 979
pages_safetyExamine/views/examineManage/examineList.vue

@@ -1,979 +0,0 @@
-<!-- 安全检查-校院巡查管理 -->
-<template>
-	<view class="examine">
-		<view class="header">
-			<view class="tabTitle_tow">
-				<view class="tabTitle_tow_li" @tap="tabClickTow(index)" :key="index" v-for="(item,index) in tabTextTow">
-					<view :class="{on:curTabTow==index}" class="tabTitle_tow_text">{{item}}</view>
-					<view :class="{on:curTabTow==index}" class="tabTitle_tow_across"></view>
-				</view>
-			</view>
-			<view class="lab_title">
-				<picker @change="collegeChange" :value="collegeIndex" :range="collegeArray" class="lab_title_l">
-					<view class="lab_title_l_n">
-						<view>{{getData.deptName?getData.deptName:'选择学院'}}</view>
-						<img src="@/pages_safetyExamine/images/icon_06.png">
-					</view>
-				</picker>
-				<view class="lab_title_r">
-					<input type="text" v-model="getData.searchValue" placeholder="请输入实验室名称" name="search"
-						@confirm='searchBtn' confirm-type='search' maxlength="50"
-						placeholder-style="color: #CCCCCC;font-size:26rpx;">
-					<view v-if="getData.searchValue>0" class="lab_title_r_btn" @click="clearBtn">
-						<img src="@/pages_safetyExamine/images/clear.png" />
-					</view>
-				</view>
-			</view>
-		</view>
-
-		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-			<view class="list_three">
-				<view class="list_three_li" v-for="(item,index) in  dataList" :key="index">
-					<view class="list_three_li_t">
-						<view class="list_three_li_t_l">
-							<img v-if="item.checkRange==1" src="@/pages_safetyExamine/images/icon_xyxc_qx.png" />
-							<img v-if="item.checkRange==2" src="@/pages_safetyExamine/images/icon_xyxc_xy.png" />
-							<img v-if="item.checkRange==3" src="@/pages_safetyExamine/images/icon_xyxc_sys.png" />
-							<text></text>
-						</view>
-						<view class="list_three_li_t_c">{{item.subjectName}}-{{item.roomNumber?item.roomNumber:''}}</view>
-						<view class="list_three_li_t_c2" v-if="item.isOverdue==1">已逾期</view>
-						<view class="list_three_li_t_r"></view>
-					</view>
-					<view class="list_three_li_m">
-						<view class="list_three_li_m_t">{{item.title}}</view>
-						<view class="list_three_li_m_b">
-							<text class="blue_color" v-if="item.manageStatus==0">待检查</text>
-							<text class="red_color" v-if="item.manageStatus==1">检查中</text>
-							<text class="green_color" v-if="item.manageStatus==2">已检查</text>
-							<text>{{item.checkType==1?'校院巡查':'实验室自查'}}-{{item.checkCategory==1?'综合检查':'专项检查'}}</text>
-							<text>{{item.collegeName}}</text>
-						</view>
-					</view>
-					<!-- 开始检查 -->
-					<view v-if="buttonHide && item.isSelfData==1">
-						<view v-if="item.manageStatus==0 && item.notStarted" class="list_three_li_b"
-							@click="handleClick(item,'add')">开始检查</view>
-						<view v-if="item.manageStatus==1 && item.notStarted" class="list_three_li_b"
-							@click="handleClick(item,'edit')">编辑</view>
-						<view v-if="!item.notStarted" class="list_three_li_b_tow"><img
-								src="@/pages_safetyExamine/images/icon_xyxcgl_jhwks.png" />计划未开始</view>
-						<view v-if="item.manageStatus==2 && item.notStarted" class="list_three_li_b_three">
-							<img src="@/pages_safetyExamine/images/icon_djcsys.png" />
-							<text>整改进度:</text>
-							<text v-if="item.checkResult==0"
-								@click="handleClick(item,'detail')">{{item.rectifySchedule}}</text>
-							<text v-if="item.checkResult==1" @click="handleClick(item,'detail')">已完成</text>
-							<text v-if="item.isEndProcess==1" class="report"
-								@click="handleClick(item,'download')">整改报告</text>
-						</view>
-					</view>
-				</view>
-			</view>
-			<img class="null-img" v-if="!dataList[0]" src="@/pages_safetyExamine/images/null-data-1.png">
-		</scroll-view>
-		<view class="bottom_btn" @click="handleClick('','startInspect')">开始检查</view>
-	</view>
-
-</template>
-
-<script>
-	import {
-		config
-	} from '@/api/request/config.js'
-	import {
-		checkManageList,
-		systemDeptDropList
-	} from '@/pages_safetyExamine/api/index.js'
-
-	export default {
-		name: "rectifyList",
-		components: {
-
-		},
-		data() {
-			return {
-				pageType: 0,
-				//列表请求参数
-				getData: {
-					page: 1,
-					pageSize: 20,
-					isSelf: 0, //是否本人查询
-					checkType: '', //检查组织(0全部1校院巡查2实验室自查)
-					manageStatus: -1, //管理状态(-1全部 0待检查,1检查中,2已检查)
-					searchValue: '',
-				},
-				tabTextTow: ['全部', '待检查', '检查中', '已检查'],
-				curTabTow: 0,
-				form: {
-					name: '',
-					type: '校院巡查',
-					startTime: '',
-					endTime: '',
-					inspectScope: [],
-					tiemQuickList: [],
-					scopeIndex: '',
-					seleteListLab: [],
-					patrolIndex: '',
-					seleteListMember: [],
-				},
-				collegeList: [],
-				collegeIndex: 0,
-				collegeArray: [],
-				dataList: [],
-				currentDate: '',
-				myApplyGentle: '', //自查身份 校院巡查管理 里操作按钮隐藏
-				applyGentle: '', //检查组身份 实验室自查管理 里操作按钮隐藏
-				buttonHide: false, //判断按钮显示隐藏
-			}
-		},
-		onLoad(option) {
-			this.myApplyGentle = uni.getStorageSync('gentleIdentifierData').myApplyGentle
-			this.applyGentle = uni.getStorageSync('gentleIdentifierData').applyGentle
-
-			if (option.pageType == 1) {
-				this.getData.checkType = option.pageType
-				uni.setNavigationBarTitle({
-					title: '校院巡查管理'
-				})
-				if (this.myApplyGentle && !this.applyGentle) {
-					this.buttonHide = false
-				}
-				if (!this.myApplyGentle && !this.applyGentle) {
-					this.buttonHide = false
-				} else {
-					this.buttonHide = true;
-				}
-
-			} else if (option.pageType == 2) {
-				this.getData.checkType = option.pageType
-				uni.setNavigationBarTitle({
-					title: '实验室自查管理'
-				})
-				if (!this.myApplyGentle && this.applyGentle) {
-					this.buttonHide = false
-				}
-				if (!this.myApplyGentle && !this.applyGentle) {
-					this.buttonHide = false
-				} else {
-					this.buttonHide = true;
-				}
-			}
-		},
-		onShow() {
-
-		},
-		mounted() {
-			//获取当前日期
-			this.currentDate = this.getNowFormatDate()
-			this.dataList = [];
-			this.getList();
-			this.systemDeptDropList();
-
-		},
-		methods: {
-			//顶部tab点击
-			tabClickTow(index) {
-				this.curTabTow = index;
-				this.getData.page = 1;
-				this.dataList = [];
-				if (index == 0) {
-					this.getData.manageStatus = -1;
-				} else if (index == 1) {
-					this.getData.manageStatus = 0;
-				} else if (index == 2) {
-					this.getData.manageStatus = 1;
-				} else if (index == 3) {
-					this.getData.manageStatus = 2;
-				}
-				this.getList()
-			},
-			//选择学院
-			collegeChange(e) {
-				this.collegeIndex = e.target.value;
-				this.getData.deptId = this.collegeList[e.target.value].deptId
-				this.getData.deptName = this.collegeList[e.target.value].deptName
-				this.dataList = [];
-				this.getList();
-			},
-			//实验室搜索
-			searchBtn() {
-				this.dataList = [];
-				this.getList();
-			},
-			//清除
-			clearBtn() {
-				this.getData.page = 1;
-				this.collegeIndex = 0;
-				this.getData.deptId = '';
-				this.getData.deptName = '';
-				this.getData.searchValue = '';
-				this.dataList = [];
-				this.getList();
-			},
-			//滚动事件
-			scrollGet() {
-				let self = this;
-				if (self.total / self.getData.pageSize <= self.getData.page) {
-					console.log('没有更多数据!')
-				} else {
-					setTimeout(function() {
-						self.getData.page += 1;
-						self.getList();
-					}, 1000)
-
-				}
-
-			},
-			//查询学院列表
-			async systemDeptDropList() {
-				let self=this;
-				const {
-					data
-				} = await systemDeptDropList({
-					deptName: '',
-					level: 2,
-					deptType: 1
-				});
-				if (data.code == 200) {
-					data.data.forEach(function(item) {
-						item.type = false;
-					})
-					self.collegeList = data.data;
-
-					//检查管理
-					for (let i = 0; i < data.data.length; i++) {
-						self.collegeArray.push(data.data[i].deptName)
-					}
-				}
-			},
-			handleClick(row, doType) {
-				let self = this;
-				if (doType == 'add') { //开始检查
-					uni.navigateTo({
-						url: '/pages_safetyExamine/views/examineManage/examineAdd?id=' + row.id
-					});
-				} else if (doType == 'edit') {
-					uni.navigateTo({
-						url: '/pages_safetyExamine/views/examineManage/examineAdd?id=' + row.id
-					});
-				} else if (doType == 'detail') {
-					uni.navigateTo({
-						url: '/pages_safetyExamine/views/examineManage/examineDetail?id=' + row.id +
-							'&manageStatus=' + row.manageStatus
-					});
-				} else if (doType == 'startInspect') { //开始检查
-					uni.navigateTo({
-						url: '/pages_safetyExamine/views/examineManage/examineAdd'
-					});
-				} else if (doType == 'download') { //整改报告下载rectifyNotice 整改通知(1整改告知书 2整改通知书)
-					this.rectifyReport(row)
-				}
-
-			},
-			//整改报告
-			rectifyReport(row) {
-				uni.showLoading({
-					title: '下载中'
-				});
-				wx.downloadFile({
-					url: config.base_url + '/zd-security/checkRectify/genReport/?id='+row.id+'&fileUrl='+uni.getStorageSync('fileBrowseEnvironment'),
-					header: {
-						Authorization: uni.getStorageSync('token')
-					},
-					success: function(res) {
-						const fileManager = wx.getFileSystemManager()
-						const filePath = wx.env.USER_DATA_PATH + '/(整改报告).docx'
-						fileManager.saveFile({
-							tempFilePath: res.tempFilePath,
-							filePath,
-							success: () => {
-								uni.hideLoading();
-								wx.openDocument({
-									filePath: filePath,
-									showMenu: true,
-									fileType: 'docx'
-								})
-							},
-							fail: function(res) {
-								uni.hideLoading();
-								uni.showToast({
-									title: '下载失败',
-									icon: "none",
-									mask: true,
-									duration: 2000
-								});
-							}
-						})
-					},
-					fail: function(res) {
-						uni.hideLoading();
-						uni.showToast({
-							title: '下载失败',
-							icon: "none",
-							mask: true,
-							duration: 2000
-						});
-					}
-				})
-			},
-			//整改通知书
-			genNotice(row) {
-				uni.showLoading({
-					title: '下载中'
-				});
-				wx.downloadFile({
-					url: config.base_url + '/zd-security/checkManage/getRectifyAdviceNote/?checkMangeId='+row.id+'&fileUrl='+uni.getStorageSync('fileBrowseEnvironment'),
-					header: {
-						Authorization: uni.getStorageSync('token')
-					},
-					success: function(res) {
-						const fileManager = wx.getFileSystemManager()
-						const filePath = wx.env.USER_DATA_PATH + '/(整改通知书).docx'
-						fileManager.saveFile({
-							tempFilePath: res.tempFilePath,
-							filePath,
-							success: () => {
-								uni.hideLoading();
-								wx.openDocument({
-									filePath: filePath,
-									showMenu: true,
-									fileType: 'docx'
-								})
-							},
-							fail: function(res) {
-								uni.hideLoading();
-								uni.showToast({
-									title: '下载失败',
-									icon: "none",
-									mask: true,
-									duration: 2000
-								});
-							}
-						})
-					},
-					fail: function(res) {
-						uni.hideLoading();
-						uni.showToast({
-							title: '下载失败',
-							icon: "none",
-							mask: true,
-							duration: 2000
-						});
-					}
-				})
-			},
-			//整改告知书
-			genReport(row) {
-				uni.showLoading({
-					title: '下载中'
-				});
-				wx.downloadFile({
-					url: config.base_url + '/zd-security/checkManage/getRectifyNotification/?checkMangeId='+row.id+'&fileUrl='+uni.getStorageSync('fileBrowseEnvironment'),
-					header: {
-						Authorization: uni.getStorageSync('token')
-					},
-					success: function(res) {
-						const fileManager = wx.getFileSystemManager()
-						const filePath = wx.env.USER_DATA_PATH + '/整改报告.docx'
-						fileManager.saveFile({
-							tempFilePath: res.tempFilePath,
-							filePath,
-							success: () => {
-								uni.hideLoading();
-								wx.openDocument({
-									filePath: filePath,
-									showMenu: true,
-									fileType: 'docx'
-								})
-							},
-							fail: function(res) {
-								uni.hideLoading();
-								uni.showToast({
-									title: '下载失败',
-									icon: "none",
-									mask: true,
-									duration: 2000
-								});
-							}
-						})
-					},
-					fail: function(res) {
-						uni.hideLoading();
-						uni.showToast({
-							title: '下载失败',
-							icon: "none",
-							mask: true,
-							duration: 2000
-						});
-					}
-				})
-			},
-			//获取当前日期函数
-			getNowFormatDate() {
-				let date = new Date(),
-					year = date.getFullYear(), //获取完整的年份(4位)
-					month = date.getMonth() + 1, //获取当前月份(0-11,0代表1月)
-					strDate = date.getDate() // 获取当前日(1-31)
-				if (month < 10) month = `0${month}` // 如果月份是个位数,在前面补0
-				if (strDate < 10) strDate = `0${strDate}` // 如果日是个位数,在前面补0
-
-				return `${year}-${month}-${strDate}`
-			},
-			//是否可以开始检查
-			compareTime(date1) {
-				if (!date1) {
-					return false
-				} else {
-					const oDate1 = new Date(date1);
-					const oDate2 = new Date(this.currentDate)
-
-					if (oDate1.getTime() <= oDate2.getTime()) {
-						return true; //可以开始
-					} else {
-						return false; //不能开始
-					}
-				}
-			},
-			async getList() {
-				let self = this;
-				const {
-					data
-				} = await checkManageList(this.getData);
-				if (data.code == 200) {
-					//判断计划是否开始
-					data.data.records.forEach(function(item) {
-						item.notStarted = self.compareTime(item.cycleStartTime)
-					})
-					this.dataList = [...this.dataList, ...data.data.records]
-					this.total = data.data.total;
-				}
-			},
-
-		}
-	}
-</script>
-
-<style lang="stylus" scoped>
-	.examine {
-		height: 100%;
-		display flex;
-		// padding: 0 30rpx;
-		// box-sizing: border-box;
-		padding-bottom: 126rpx;
-		box-sizing: border-box;
-
-		.blue_color {
-			color: #0183FA;
-			border: 1rpx solid #0183FA;
-		}
-
-		.red_color {
-			color: #FF4545;
-			border: 1rpx solid #FF4545;
-		}
-
-		.green_color {
-			color: #1FA50D;
-			border: 1rpx solid #1FA50D;
-		}
-
-		.null-img {
-			display block;
-			 width: 276rpx;
-			height: 321rpx;
-			margin: 100rpx 0 0 274rpx;
-		}
-
-		.info-max-box {
-			flex: 1;
-			overflow: scroll;
-
-			padding: 220rpx 0rpx 0;
-			box-sizing: border-box;
-		}
-
-		/* 切换按钮 */
-		.header {
-			width: 100%;
-			position: fixed;
-			top: 0rpx;
-			z-index: 100;
-
-			.tabTitle_tow {
-				width: 100%;
-				height: 100rpx;
-				background: #fff;
-				display flex;
-				justify-content: flex-start;
-				align-items: center;
-				border-bottom: 1rpx solid #E0E0E0;
-
-				.tabTitle_tow_li {
-					position: relative;
-					width: 146rpx;
-					text-align center;
-
-					.tabTitle_tow_text {
-						display: inline-block;
-						font-size: 30rpx;
-						font-family: PingFang SC;
-						font-weight: 500;
-						color: #333333;
-						line-height: 46rpx;
-						position: relative;
-
-						&.on {
-							color: #0183FA;
-						}
-					}
-
-					.tabTitle_tow_across {
-						width: 50rpx;
-						height: 4rpx;
-						background: #0183FA;
-						border-radius: 2rpx;
-						margin-left: 46rpx;
-						display none;
-
-						&.on {
-							display block;
-						}
-					}
-
-				}
-			}
-
-			.lab_title {
-				width: 750rpx;
-				height: 100rpx;
-				background: #FFFFFF;
-				padding: 20rpx 30rpx;
-				box-sizing: border-box;
-				display: flex;
-				justify-content: flex-start;
-
-				.lab_title_l {
-					width: 250rpx;
-					height: 60rpx;
-					margin-right: 20rpx;
-
-					.lab_title_l_n {
-						width: 250rpx;
-						height: 60rpx;
-						border-radius: 10rpx;
-						border: 1rpx solid #E0E0E0;
-						display: flex;
-						justify-content: flex-start;
-						align-items: center;
-
-						>view {
-							flex: 1;
-							line-height: 60rpx;
-							margin-left: 20rpx;
-							color: #999999;
-							font-size: 28rpx;
-							white-space: nowrap;
-							overflow: hidden;
-							text-overflow: ellipsis;
-						}
-
-						>img {
-							width: 14rpx;
-							height: 8rpx;
-							margin-right: 30rpx;
-						}
-					}
-				}
-
-				.lab_title_r {
-					width: 420rpx;
-					height: 60rpx;
-					position: relative;
-					border-radius: 10rpx;
-					border: 1rpx solid #E0E0E0;
-
-					.lab_title_r_btn {
-						width: 60rpx;
-						height: 60rpx;
-						 position: absolute;
-						top: 0rpx;
-						right: 0rpx;
-						z-index: 100;
-
-						>img {
-							width: 20rpx;
-							height: 20rpx;
-							position: absolute;
-							top: 20rpx;
-							left: 24rpx;
-						}
-					}
-
-					>input {
-						width: 274rpx;
-						height: 60rpx;
-						position: absolute;
-						top: 0rpx;
-						left: 60rpx;
-					}
-
-					.clear {
-						width: 60rpx;
-						height: 60rpx;
-						position: absolute;
-						top: 0rpx;
-						right: 20rpx;
-						font-size: 30rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #0183FA;
-						line-height: 60rpx;
-					}
-				}
-			}
-
-		}
-
-		.list_three {
-			padding: 0 30rpx;
-			box-sizing: border-box;
-
-			.list_three_li {
-				position: relative;
-				width: 690rpx;
-				/* height: 360rpx; */
-				height: auto;
-				background: #fff;
-				border-radius: 10rpx;
-				overflow: hidden;
-				margin-bottom: 20rpx;
-
-				.list_three_li_t {
-					width: 100%;
-					height: 110rpx;
-					position: relative;
-					left: 0;
-					top: 0;
-
-					.list_three_li_t_l {
-						>img {
-							width: 70rpx;
-							height: 70rpx;
-						}
-
-						>text {
-							position: absolute;
-							left: -15rpx;
-							top: 76rpx;
-							display: inline-block;
-							width: 30rpx;
-							height: 30rpx;
-							background: #F5F5F5;
-							border-radius: 15rpx;
-						}
-					}
-
-					.list_three_li_t_c {
-						width: 630rpx;
-						height: 110rpx;
-						position: absolute;
-						left: 30rpx;
-						top: 0;
-						font-size: 30rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #333333;
-						line-height: 110rpx;
-						border-bottom: 1rpx dashed #D8D8D8;
-						overflow: hidden;
-						text-overflow: ellipsis;
-						white-space: nowrap;
-						padding-right: 120rpx;
-						box-sizing: border-box;
-					}
-
-					.list_three_li_t_c2 {
-						position: absolute;
-						right: 20rpx;
-						top: 38rpx;
-						width: 120rpx;
-						height: 40rpx;
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #FF5757;
-						line-height: 40rpx;
-						border: 1rpx solid #FF5757;
-						border-radius: 6rpx;
-						text-align: center;
-					}
-
-					.list_three_li_t_r {
-						position: absolute;
-						right: -15rpx;
-						top: 76rpx;
-						width: 30rpx;
-						height: 30rpx;
-						background: #F5F5F5;
-						border-radius: 15rpx;
-					}
-				}
-
-				.list_three_li_m {
-					// position: absolute;
-					// top: 110rpx;
-					// left: 0;
-					width: 690rpx;
-					height: 158rpx;
-					padding-left: 30rpx;
-					box-sizing: border-box;
-
-					.list_three_li_m_t {
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #666666;
-						line-height: 40rpx;
-						margin-top: 22rpx;
-					}
-
-					.list_three_li_m_b {
-						margin-top: 26rpx;
-
-						>text:nth-of-type(1) {
-							font-size: 26rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							line-height: 40rpx;
-							border-radius: 6rpx;
-							padding: 0 20rpx;
-							margin-right: 14rpx;
-						}
-
-						>text:nth-of-type(2) {
-							font-size: 26rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							color: #0183FA;
-							line-height: 40rpx;
-							padding: 0 8rpx;
-							border-radius: 6rpx;
-							background: rgba(1, 131, 250, 0.1);
-							margin-right: 24rpx;
-						}
-
-						>text:nth-of-type(3) {
-							display: inline-block;
-							width: 220rpx;
-							font-size: 26rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							color: #333333;
-							line-height: 26rpx;
-							overflow: hidden;
-							text-overflow: ellipsis;
-							white-space: nowrap;
-
-						}
-					}
-				}
-
-				.list_three_li_b {
-					height: 80rpx;
-					width: 100%;
-					// position: absolute;
-					// top: 278rpx;
-					// left: 0;
-					border-top: 1rpx solid #E0E0E0;
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #0183FA;
-					line-height: 80rpx;
-					text-align: center;
-				}
-
-				.list_three_li_b_tow {
-					height: 80rpx;
-					width: 100%;
-					// position: absolute;
-					// top: 278rpx;
-					// left: 0;
-					border-top: 1rpx solid #E0E0E0;
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #0183FA;
-					line-height: 80rpx;
-					display: flex;
-					justify-content: center;
-					align-items: center;
-
-					>img {
-						width: 28rpx;
-						height: 30rpx;
-						margin-right: 12rpx;
-					}
-				}
-
-				.list_three_li_b_three {
-					height: 80rpx;
-					// position: absolute;
-					// top: 278rpx;
-					// left: 0;
-					display: flex;
-					justify-content: flex-start;
-					align-items: center;
-					width: 100%;
-					border-top: 1rpx solid #E0E0E0;
-
-					>img {
-						width: 24rpx;
-						height: 30rpx;
-						margin-right: 26rpx;
-						margin-left: 30rpx;
-					}
-
-					>text:nth-of-type(1) {
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #333333;
-						line-height: 28rpx;
-					}
-
-					>text:nth-of-type(2) {
-						flex: 1;
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #0183FA;
-						line-height: 28rpx;
-						white-space: nowrap;
-						overflow: hidden;
-						text-overflow: ellipsis;
-					}
-
-					.report {
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #0183FA;
-						line-height: 28rpx;
-						margin-right: 40rpx;
-					}
-				}
-			}
-		}
-
-		.bottom_btn {
-			position: fixed;
-			bottom: 26rpx;
-			left: 30rpx;
-			font-size: 30rpx;
-			font-family: PingFang SC-Medium, PingFang SC;
-			font-weight: 400;
-			color: #FFFFFF;
-			line-height: 90rpx;
-			width: 690rpx;
-			height: 90rpx;
-			background: #0183FA;
-			border-radius: 20rpx;
-			text-align: center;
-
-		}
-
-		/* 指纹采集 */
-		.shade {
-			height: 100%;
-			width: 100%;
-			position: fixed;
-			display: flex;
-			flex-direction: column;
-			z-index: 10;
-			background: rgba(0, 0, 0, 0.2);
-
-			.null-box {
-				flex: 1;
-			}
-
-			.shade_n {
-				position: absolute;
-				bottom: 0;
-				left: 0;
-				width: 750rpx;
-				height: 560rpx;
-				background: #FFFFFF;
-				border-radius: 20rpx 20rpx 0rpx 0rpx;
-
-				.shade_n_title {
-					height: 100rpx;
-					padding: 0 30rpx;
-					box-sizing: border-box;
-					display: flex;
-					justify-content: space-between;
-					border-bottom: 1rpx solid #E0E0E0;
-
-					>text:nth-of-type(1) {
-						font-size: 30rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #333333;
-						line-height: 100rpx;
-					}
-
-					>text:nth-of-type(2) {
-						font-size: 30rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #0183FA;
-						line-height: 100rpx;
-
-					}
-				}
-
-				.shade_n_b {
-					height: 460rpx;
-					padding: 0 30rpx;
-					box-sizing: border-box;
-					overflow-y: auto;
-
-					.shade_n_b_li {
-						display: flex;
-						justify-content: space-between;
-						align-items: center;
-						height: 80rpx;
-						border-bottom: 1rpx solid #E0E0E0;
-
-						>text {
-							font-size: 28rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							line-height: 80rpx;
-							overflow: hidden;
-							text-overflow: ellipsis;
-							white-space: nowrap;
-						}
-
-						>img {
-							width: 24rpx;
-							height: 16rpx;
-							margin-right: 14rpx;
-						}
-					}
-
-					.color_A {
-						color: #333333;
-					}
-
-					.color_B {
-						color: #0183FA;
-					}
-
-
-				}
-			}
-		}
-	}
-</style>

+ 0 - 369
pages_safetyExamine/views/inforSign.vue

@@ -1,369 +0,0 @@
-<!-- 安全信息牌 -->
-<template>
-	<view class="examine">
-		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-			<view class="header">
-				<view class="header_l">
-					<text>{{itemData.typeName}}</text>
-					<text></text>
-					<text>{{itemData.levelName}}</text>
-				</view>
-				<view class="header_r">{{itemData.deptName}}-{{itemData.room}}</view>
-			</view>
-			<view class="basics">
-				<view class="grade">
-					<text>责任单位:</text>
-					<text>{{itemData.deptName}}</text>
-				</view>
-				<view class="grade">
-					<text>实验室负责人:</text>
-					<text>{{itemData.adminName}}-{{itemData.adminPhone?itemData.adminPhone:'未填写'}}</text>
-				</view>
-				<view class="duty">
-					<view class="duty_l">安全责任人:</view>
-					<view class="duty_r">
-						<text>{{itemData.safeUserNameAdminPhone}}</text>
-					</view>
-				</view>
-			</view>
-			<view class="category" v-if="item.privateList.length>0 && item.classifyType==1"
-				v-for="(item,index) in  itemData.classifyList" :key="index">
-				<view class="title" :style="'background:'+item.showColour">{{item.classifyName}}</view>
-				<view class="category_li" v-for="(item2,index2) in item.privateList" :key="index2">
-					<text></text><text>{{item2.infoName}}</text></view>
-			</view>
-			<view class="category" v-if="item.privateList.length>0 && item.classifyType==2"
-				v-for="(item,index) in  itemData.classifyList" :key="index">
-				<view class="title">{{item.classifyName}}</view>
-				<view class="identify_img" @click="lockImg(item.privateList)">
-					<img :src="baseUrl+item2.infoContent" v-for="(item2,index2) in item.privateList" :key="index2" />
-				</view>
-			</view>
-			<view class="category" v-if="item.privateList.length>0 && item.isSpecial==2"
-				v-for="(item,index) in  itemData.classifyList" :key="index">
-				<view class="title">{{item.classifyName}}</view>
-				<view class="telephone_li" v-for="(item3,index3) in item.privateList" :key="index3">
-					{{item3.infoContent}}</view>
-			</view>
-
-		</scroll-view>
-		<view class="bottom_btn" @click="handleClick('start')">开展检查</view>
-	</view>
-
-</template>
-
-<script>
-	import {
-		config
-	} from '@/api/request/config.js'
-	import {
-		getSelectInfoByRoom,
-		getInforSign
-	} from '@/api/apiDemo/index.js'
-	export default {
-		name: "rectifyList",
-		components: {
-
-		},
-		data() {
-			return {
-				baseUrl: config.base_url,
-				pageType: 2,
-				id: '',
-				itemData: {},
-			}
-		},
-		onLoad(option) {
-			if (option.subId) {
-				this.id = option.subId;
-			}
-		},
-		onShow() {
-
-		},
-		mounted() {
-			this.getInforSign()
-			console.log(uni.getStorageSync('saoCodeId'))
-		},
-		methods: {
-			//滚动事件
-			scrollGet() {},
-			//查询详情
-			async getInforSign() {
-				let self = this;
-				let id = uni.getStorageSync('saoCodeId');
-				const {
-					data
-				} = await getInforSign(id);
-				if (data.code == 200) {
-					this.itemData = data.data;
-					console.log(this.itemData)
-				}
-			},
-			//查看图片
-			lockImg(list) {
-				console.log(list)
-				if (!list[0]) {
-					return
-				}
-				let urlList = [];
-				for (let i = 0; i < list.length; i++) {
-					urlList.push(this.baseUrl + list[i].infoContent)
-				}
-				wx.previewImage({
-					urls: urlList, //需要预览的图片http链接列表,多张的时候,url直接写在后面就行了
-					current: '', // 当前显示图片的http链接,默认是第一个
-					success: function(res) {},
-					fail: function(res) {},
-					complete: function(res) {},
-				})
-			},
-			handleClick(doType) {
-				let self = this;
-				if (doType == 'start') { //提交
-					uni.navigateTo({
-						url: '/pages_safetyExamine/views/examineManage/examineAdd?id=' + uni.getStorageSync(
-							'saoCodeId')
-					});
-				}
-			},
-		}
-	}
-</script>
-
-<style lang="stylus" scoped>
-	.examine {
-		height: 100%;
-		display flex;
-		box-sizing: border-box;
-
-		.info-max-box {
-			flex: 1;
-			overflow: scroll;
-			padding-bottom: 128rpx;
-			box-sizing: border-box;
-		}
-
-		.header {
-			width: 690rpx;
-			height: 100rpx;
-			background: #FFFFFF;
-			border-radius: 20rpx 20rpx 20rpx 20rpx;
-			margin: 20rpx 30rpx;
-			padding: 0 30rpx;
-			box-sizing: border-box;
-			display: flex;
-			justify-content: flex-start;
-			align-items: center;
-
-			.header_l {
-				width: auto;
-				height: 60rpx;
-				background: #FFFFFF;
-				border-radius: 50rpx 50rpx 50rpx 50rpx;
-				opacity: 1;
-				border: 1rpx solid #DF4848;
-				padding: 0 20rpx;
-				box-sizing: border-box;
-				display: flex;
-				justify-content: flex-start;
-				align-items: center;
-				margin-right: 26rpx;
-
-				>text:nth-of-type(1) {
-					font-size: 24rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #DF4848;
-					line-height: 60rpx;
-				}
-
-				>text:nth-of-type(2) {
-					display: inline-block;
-					width: 0rpx;
-					height: 19rpx;
-					opacity: 1;
-					border: 1rpx solid #A2A2A2;
-					margin: 0 10rpx;
-				}
-
-				>text:nth-of-type(3) {
-					font-size: 24rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #DF4848;
-					line-height: 60rpx;
-				}
-			}
-
-			.header_r {
-				font-size: 30rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #333333;
-				line-height: 60rpx;
-				flex: 1;
-				white-space: nowrap;
-				overflow: hidden;
-				text-overflow: ellipsis;
-			}
-		}
-
-		.basics {
-			width: 690rpx;
-			background: #FFFFFF;
-			border-radius: 20rpx;
-			padding: 0rpx 30rpx;
-			box-sizing: border-box;
-			margin: 20rpx 30rpx;
-
-			.grade {
-				height: 100rpx;
-				display: flex;
-				justify-content: space-between;
-				border-bottom: 1rpx solid #D8D8D8;
-
-				>text:nth-of-type(1) {
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 100rpx;
-				}
-
-				>text:nth-of-type(2) {
-					flex: 1;
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #666666;
-					line-height: 100rpx;
-					text-align: right;
-				}
-			}
-
-			.duty {
-				display: flex;
-				justify-content: space-between;
-				padding: 20rpx 0rpx;
-				box-sizing: border-box;
-
-				.duty_l {
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 60rpx;
-				}
-
-				.duty_r {
-					flex: 1;
-
-					>text {
-						display: block;
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #666666;
-						line-height: 60rpx;
-						text-align: right;
-					}
-				}
-			}
-
-		}
-
-		.category {
-			width: 690rpx;
-			background: #FFFFFF;
-			border-radius: 20rpx;
-			margin: 20rpx 30rpx;
-			padding-bottom: 20rpx;
-			box-sizing: border-box;
-
-			.title {
-				width: 690rpx;
-				height: 80rpx;
-				background: #133E93;
-				border-radius: 10rpx 10rpx 0rpx 0rpx;
-				font-size: 30rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #FFFFFF;
-				line-height: 80rpx;
-				text-align: center;
-				margin-bottom: 20rpx;
-			}
-
-			.category_li {
-				margin-left: 34rpx;
-				display: flex;
-				justify-content: flex-start;
-
-				>text:nth-of-type(1) {
-					display: inline-block;
-					width: 20rpx;
-					height: 20rpx;
-					border-radius: 50%;
-					background: #D8D8D8;
-					margin-right: 14rpx;
-					margin-top: 20rpx;
-				}
-
-				>text:nth-of-type(2) {
-					flex: 1;
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #666666;
-					line-height: 60rpx;
-				}
-			}
-
-			/* 安全警示标识 */
-			.identify_img {
-				display: flex;
-				justify-content: flex-start;
-				flex-wrap: wrap;
-				margin-left: 34rpx;
-
-				>img {
-					width: 67rpx;
-					height: 90rpx;
-					margin-right: 24rpx;
-					margin-bottom: 20rpx;
-				}
-			}
-
-			/* 紧急报警电话 */
-			.telephone_li {
-				flex: 1;
-				font-size: 28rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #333333;
-				line-height: 60rpx;
-				margin-left: 34rpx;
-			}
-		}
-
-		/* 待整改 */
-
-		.bottom_btn {
-			position: fixed;
-			bottom: 26rpx;
-			left: 30rpx;
-			font-size: 30rpx;
-			font-family: PingFang SC-Medium, PingFang SC;
-			font-weight: 400;
-			color: #FFFFFF;
-			line-height: 90rpx;
-			width: 690rpx;
-			height: 90rpx;
-			background: #0183FA;
-			border-radius: 20rpx;
-			text-align: center;
-
-		}
-	}
-</style>

File diff suppressed because it is too large
+ 0 - 1109
pages_safetyExamine/views/patrolPlan/patrolPlanAdd.vue


+ 0 - 394
pages_safetyExamine/views/patrolPlan/patrolPlanAddContent.vue

@@ -1,394 +0,0 @@
-<!-- 安全检查-发起巡查计划-选择内容 -->
-<template>
-	<view class="examine">
-		<view class="lab_title">
-			<picker @change="collegeChange" :value="collegeIndex" :range="collegeArray" class="lab_title_l">
-				<view class="lab_title_l_n">
-					<view>{{getData.hazardTypeModeName?getData.hazardTypeModeName:'选择类型'}}</view>
-					<img src="@/pages_safetyExamine/images/icon_06.png">
-				</view>
-			</picker>
-			<view class="lab_title_r">
-				<input type="text" v-model="getData.searchValue" placeholder="请输入检查内容" name="search"
-					@confirm='searchBtn' confirm-type='search' maxlength="50"
-					placeholder-style="color: #CCCCCC;font-size:26rpx;">
-				<view v-if="getData.searchValue>0" class="lab_title_r_btn" @click="clearBtn">
-					<img src="@/pages_safetyExamine/images/clear.png" />
-				</view>
-			</view>
-		</view>
-		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-			<view>
-				<view class="list">
-					<view class="list_li" v-for="(item,index) in  dataList" :key="index" @click="labSelete(index)">
-						<text :class="item.type?'color_B':'color_A'">{{item.chName}}</text>
-						<img v-if="item.type" src="@/pages_safetyExamine/images/icon_xzwt_xz.png">
-					</view>
-				</view>
-			</view>
-		</scroll-view>
-		<view class="bottom_btn" @click="submitForm">确定</view>
-	</view>
-
-</template>
-
-<script>
-	import {
-		config
-	} from '@/api/request/config.js'
-	import {
-		getDicts,
-		findDeviceList,
-		haveHazardInSub,
-	} from '@/pages_safetyExamine/api/index.js'
-	export default {
-		name: "rectifyList",
-		components: {
-
-		},
-		data() {
-			return {
-				pageType: 0,
-				//列表请求参数
-				getData: {
-					page: 1,
-					pageSize: 20,
-					hazardTypeMode: '', //类型id
-					hazardTypeModeName: '',
-					searchValue: '',
-					filtType: '',
-					hazardIds: [],
-					selectedHazardIds: [],
-				},
-				total: 0,
-				collegeIndex: 0,
-				collegeArray: [],
-				collegeList: [],
-				dataList: [],
-				seleteListDevice: [], //临时存储选中的
-				form: {},
-			}
-		},
-		onLoad(option) {
-			this.form = JSON.parse(decodeURIComponent(option.form));
-			if (this.form.seleteListDevice.length > 0) {
-				this.seleteListDevice = this.form.seleteListDevice;
-			}
-			if (option.pageType) { //pageType=1添加页面进入2编辑页面进入
-				this.pageType = option.pageType
-			}
-		},
-		onShow() {
-
-		},
-		mounted() {
-			this.dataList = [];
-			this.dangerList();
-			this.getList();
-		},
-		methods: {
-			//滚动事件
-			scrollGet() {
-				let self = this;
-				if (self.total / self.getData.pageSize <= self.getData.page) {
-					console.log('没有更多数据!')
-				} else {
-					setTimeout(function() {
-						self.getData.page += 1;
-						self.getList();
-					}, 1000)
-
-				}
-			},
-			//选择学院
-			collegeChange(e) {
-				this.collegeIndex = e.target.value;
-				this.getData.hazardTypeMode = this.collegeList[e.target.value].value
-				this.getData.hazardTypeModeName = this.collegeList[e.target.value].label
-				this.getData.page = 1;
-				this.dataList = [];
-				this.getList();
-			},
-			//点击选择实验室
-			labSelete(index) {
-				this.dataList[index].type = !this.dataList[index].type
-
-				if (this.dataList[index].type) { //判断是选中还是取消
-					if (this.seleteListDevice.length > 0) {
-						if (this.seleteListDevice.findIndex((item) => item.hazardId === this.dataList[index].hazardId) == -
-							1) { //等于-1说明数组里没有当前选中元素,可以添加
-							this.seleteListDevice.push(this.dataList[index])
-						}
-					} else {
-						this.seleteListDevice.push(this.dataList[index])
-					}
-				} else {
-					this.seleteListDevice.splice(this.seleteListDevice.indexOf(this.dataList[index]), 1);
-				}
-			},
-			//实验室搜索
-			searchBtn() {
-				this.dataList = [];
-				this.getList();
-			},
-			//清除
-			clearBtn() {
-				this.getData.page = 1;
-				this.collegeIndex = 0;
-				this.getData.deptId = '';
-				this.getData.deptName = '';
-				this.getData.searchValue = '';
-				this.dataList = [];
-				this.getList();
-			},
-			handleClick(doType) {
-				let self = this;
-				if (doType == 'subBtn') { //保存数据
-
-				}
-			},
-			//设备-保存
-			async submitForm() {
-				let self = this;
-				let hazardIds = [];
-				this.$set(this.form, 'hazardNum', this.seleteListDevice.length)
-				this.$set(this.form, 'seleteListDevice', this.seleteListDevice)
-				if (this.seleteListDevice.length > 0) {
-					this.seleteListDevice.forEach(function(item) {
-						hazardIds.push(item.hazardId)
-					})
-					this.$set(this.form, 'hazardIds', hazardIds.join(','))
-				} else {
-					uni.showToast({
-						title: '请选择检查内容!',
-						icon: "none",
-						mask: true,
-						duration: 2000
-					});
-					return;
-				}
-
-				//实验室是否有当前设备
-				let obj = {
-					"checkRange": this.form.checkRange,
-					"collegeIds": this.form.checkRange == 2 ? this.form.collegeIds + '' : '', //学院ID转换字符串
-					"subIds": this.form.checkRange == 3 ? this.form.subIds + '' : '', //实验室ID
-					"hazardIds": this.form.hazardIds,
-				}
-				const {
-					data
-				} = await haveHazardInSub(obj);
-				if (data.code == 200) {
-					let pages = getCurrentPages();
-					let prevPage = pages[pages.length - 2]; //上一个页面
-					prevPage.onShow(encodeURIComponent(JSON.stringify(this.form)))
-					uni.navigateBack()
-				}
-
-
-			},
-
-			//检查类型
-			async dangerList() {
-				let self = this;
-				const {
-					data
-				} = await getDicts('lab_hazard_type');
-				if (data.code == 200) {
-					for (let i = 0; i < data.data.length; i++) {
-						self.collegeArray.push(data.data[i].label)
-					}
-					self.collegeList = data.data;
-				}
-			},
-			async getList() {
-				let self = this;
-				const {
-					data
-				} = await findDeviceList(self.getData);
-				if (data.code == 200) {
-					data.data.records.forEach(function(item) {
-						item.type = false;
-					})
-					this.dataList = [...this.dataList, ...data.data.records]
-					self.total = data.total;
-					if (this.seleteListDevice.length > 0) { //如果有选中的数据
-						for (let i = 0; i < this.dataList.length; i++) {
-							if (this.seleteListDevice.findIndex((item) => item.hazardId === this.dataList[i].hazardId) != -
-								1) { //不等于-1说明数组里有当前元素,可以改为选中
-								this.dataList[i].type = true;
-							} else {
-
-							}
-						}
-					}
-				}
-			}
-		}
-	}
-</script>
-
-<style lang="stylus" scoped>
-	.examine {
-		height: 100%;
-		display flex;
-
-		.info-max-box {
-			flex: 1;
-			overflow: scroll;
-			padding: 120rpx 0rpx 30rpx;
-			box-sizing: border-box;
-		}
-
-		.lab_title {
-			width: 750rpx;
-			height: 100rpx;
-			background: #FFFFFF;
-			position: fixed;
-			top: 0;
-			padding: 10rpx 30rpx;
-			box-sizing: border-box;
-			display: flex;
-			justify-content: flex-start;
-
-			.lab_title_l {
-				width: 250rpx;
-				height: 80rpx;
-				margin-right: 20rpx;
-
-				.lab_title_l_n {
-					width: 250rpx;
-					height: 80rpx;
-					border-radius: 10rpx;
-					border: 1rpx solid #E0E0E0;
-					display: flex;
-					justify-content: flex-start;
-					align-items: center;
-
-					>view {
-						flex: 1;
-						line-height: 80rpx;
-						margin-left: 20rpx;
-						color: #999999;
-						font-size: 28rpx;
-						white-space: nowrap;
-						overflow: hidden;
-						text-overflow: ellipsis;
-					}
-
-					>img {
-						width: 14rpx;
-						height: 8rpx;
-						margin-right: 30rpx;
-					}
-				}
-			}
-
-			.lab_title_r {
-				width: 420rpx;
-				height: 80rpx;
-				position: relative;
-				border-radius: 10rpx;
-				border: 1rpx solid #E0E0E0;
-
-				.lab_title_r_btn {
-					width: 60rpx;
-					height: 80rpx;
-					position: absolute;
-					top: 0rpx;
-					right: 0rpx;
-
-					>img {
-						width: 20rpx;
-						height: 20rpx;
-						position: absolute;
-						top: 30rpx;
-						left: 24rpx;
-					}
-				}
-
-				>input {
-					width: 274rpx;
-					height: 80rpx;
-					position: absolute;
-					top: 0rpx;
-					left: 60rpx;
-				}
-
-				.clear {
-					width: 60rpx;
-					height: 80rpx;
-					position: absolute;
-					top: 0rpx;
-					right: 20rpx;
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #0183FA;
-					line-height: 80rpx;
-				}
-			}
-		}
-
-		.list {
-			background: #FFFFFF;
-			border-radius: 20rpx 20rpx 0rpx 0rpx;
-			padding: 0 30rpx;
-			box-sizing: border-box;
-			margin: 0 30rpx;
-
-			.list_li {
-				display: flex;
-				justify-content: space-between;
-				align-items: center;
-				height: 80rpx;
-				border-bottom: 1rpx solid #E0E0E0;
-
-				>text {
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					line-height: 80rpx;
-					overflow: hidden;
-					text-overflow: ellipsis;
-					white-space: nowrap;
-				}
-
-				>img {
-					width: 24rpx;
-					height: 16rpx;
-					margin-right: 14rpx;
-				}
-			}
-
-			.list_li:last-child {
-				border: none;
-			}
-
-			.color_A {
-				color: #333333;
-			}
-
-			.color_B {
-				color: #0183FA;
-			}
-		}
-
-		.bottom_btn {
-			position: fixed;
-			bottom: 26rpx;
-			left: 30rpx;
-			font-size: 30rpx;
-			font-family: PingFang SC-Medium, PingFang SC;
-			font-weight: 400;
-			color: #FFFFFF;
-			line-height: 90rpx;
-			width: 690rpx;
-			height: 90rpx;
-			background: #0183FA;
-			border-radius: 20rpx;
-			text-align: center;
-
-		}
-	}
-</style>

+ 0 - 377
pages_safetyExamine/views/patrolPlan/patrolPlanAddLab.vue

@@ -1,377 +0,0 @@
-<!-- 安全检查-发起巡查计划-选择实验室 -->
-<template>
-	<view class="examine">
-		<view class="lab_title">
-			<picker @change="collegeChange" :value="collegeIndex" :range="collegeArray" class="lab_title_l">
-				<view class="lab_title_l_n">
-					<view>{{getData.deptName?getData.deptName:'选择学院'}}</view>
-					<img src="@/pages_safetyExamine/images/icon_06.png">
-				</view>
-			</picker>
-			<view class="lab_title_r">
-				<input type="text" v-model="getData.searchValue" placeholder="请输入实验室名称" name="search"
-					@confirm='searchBtn' confirm-type='search' maxlength="50"
-					placeholder-style="color: #CCCCCC;font-size:26rpx;">
-				<view v-if="getData.searchValue>0" class="lab_title_r_btn" @click="clearBtn">
-					<img src="@/pages_safetyExamine/images/clear.png" />
-				</view>
-			</view>
-		</view>
-		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-			<view>
-
-				<view class="list">
-					<view class="list_li" v-for="(item,index) in  dataList" :key="index" @click="labSelete(index)">
-						<text :class="item.type?'color_B':'color_A'">{{item.subName}}-{{item.roomNum?item.roomNum:''}}</text>
-						<img v-if="item.type" src="@/pages_safetyExamine/images/icon_xzwt_xz.png">
-					</view>
-				</view>
-			</view>
-		</scroll-view>
-		<view class="bottom_btn" @click="submitForm">保存</view>
-	</view>
-
-</template>
-
-<script>
-	import {
-		config
-	} from '@/api/request/config.js'
-	import {
-		systemDeptDropList,
-		laboratorySubRelInfoGetRelList,
-		laboratorySubRelInfoGetRelListByCondition
-	} from '@/pages_safetyExamine/api/index.js'
-	export default {
-		name: "rectifyList",
-		components: {
-
-		},
-		data() {
-			return {
-				pageType: 0,
-				//列表请求参数
-				getData: {
-					page: 1,
-					pageSize: 20,
-					deptId: '', //学院id
-					deptName: '',
-					searchValue: '',
-					selectedSubIds: [],
-					subIds: [],
-				},
-				total: 0,
-				collegeIndex: 0,
-				collegeArray: [],
-				collegeList: [],
-				dataList: [],
-				seleteListLab: [], //临时存储选中的
-				form: {},
-			}
-		},
-		onLoad(option) {
-			this.form = JSON.parse(decodeURIComponent(option.form));
-			if (this.form.seleteListLab.length > 0) {
-				this.seleteListLab = this.form.seleteListLab;
-			}
-			if (option.pageType) { //pageType=1添加页面进入2编辑页面进入
-				this.pageType = option.pageType
-			}
-		},
-		onShow() {
-
-		},
-		mounted() {
-			this.dataList = [];
-			this.conditionCollegeInfo();
-			this.getList();
-		},
-		methods: {
-			//滚动事件
-			scrollGet() {
-				let self = this;
-				if (self.total / self.getData.pageSize <= self.getData.page) {
-					console.log('没有更多数据!')
-				} else {
-					setTimeout(function() {
-						self.getData.page += 1;
-						self.getList();
-					}, 1000)
-
-				}
-			},
-			//选择学院
-			collegeChange(e) {
-				this.collegeIndex = e.target.value;
-				this.getData.deptId = this.collegeList[e.target.value].deptId
-				this.getData.deptName = this.collegeList[e.target.value].deptName
-				this.getData.page = 1;
-				this.dataList = [];
-				this.getList();
-			},
-			//点击选择实验室
-			labSelete(index) {
-				this.dataList[index].type = !this.dataList[index].type
-
-				if (this.dataList[index].type) { //判断是选中还是取消
-					if (this.seleteListLab.length > 0) {
-						if (this.seleteListLab.findIndex((item) => item.subId === this.dataList[index].subId) == -
-							1) { //等于-1说明数组里没有当前选中元素,可以添加
-							this.seleteListLab.push(this.dataList[index])
-						}
-					} else {
-						this.seleteListLab.push(this.dataList[index])
-					}
-				} else {
-					this.seleteListLab.splice(this.seleteListLab.indexOf(this.dataList[index]), 1);
-				}
-			},
-			//实验室搜索
-			searchBtn() {
-				this.dataList = [];
-				this.getList();
-			},
-			//清除
-			clearBtn() {
-				this.getData.page = 1;
-				this.collegeIndex = 0;
-				this.getData.deptId = '';
-				this.getData.deptName = '';
-				this.getData.searchValue = '';
-				this.dataList = [];
-				this.getList();
-			},
-			handleClick(doType) {
-				let self = this;
-				if (doType == 'subBtn') { //保存数据
-
-				}
-			},
-			//实验室-保存
-			async submitForm() {
-				let _this = this;
-				let subIds = [];
-				this.$set(this.form, 'subjectNum', this.seleteListLab.length)
-				this.$set(this.form, 'seleteListLab', this.seleteListLab)
-				if (this.seleteListLab.length > 0) {
-					this.seleteListLab.forEach(function(item) {
-						subIds.push(item.subId)
-					})
-					this.$set(this.form, 'subIds', subIds.join(','))
-				}
-				let pages = getCurrentPages();
-				let prevPage = pages[pages.length - 2]; //上一个页面
-				prevPage.onShow(encodeURIComponent(JSON.stringify(this.form)))
-				uni.navigateBack()
-
-
-			},
-
-			//查询学院列表
-			async conditionCollegeInfo() {
-				let self = this;
-				const {
-					data
-				} = await systemDeptDropList({
-					deptName: '',
-					level: 2,
-					deptType: 1
-				});
-				if (data.code == 200) {
-					for (let i = 0; i < data.data.length; i++) {
-						self.collegeArray.push(data.data[i].deptName)
-					}
-					self.collegeList = data.data;
-				}
-			},
-			async getList() {
-				let _this = this;
-				const {
-					data
-				} = await laboratorySubRelInfoGetRelListByCondition(_this.getData);
-				if (data.code == 200) {
-					data.data.records.forEach(function(item) {
-						item.type = false;
-					})
-					this.dataList = [...this.dataList, ...data.data.records]
-					_this.total = data.data.total;
-					if (this.seleteListLab.length > 0) { //如果有选中的数据
-						for (let i = 0; i < this.dataList.length; i++) {
-							if (this.seleteListLab.findIndex((item) => item.subId === this.dataList[i].subId) != -
-								1) { //不等于-1说明数组里有当前元素,可以改为选中
-								this.dataList[i].type = true;
-							} else {
-
-							}
-						}
-					}
-				}
-			}
-		}
-	}
-</script>
-
-<style lang="stylus" scoped>
-	.examine {
-		height: 100%;
-		display flex;
-
-		.info-max-box {
-			flex: 1;
-			overflow: scroll;
-			padding: 120rpx 0rpx 120rpx;
-			box-sizing: border-box;
-		}
-
-		.lab_title {
-			width: 750rpx;
-			height: 100rpx;
-			background: #FFFFFF;
-			position: fixed;
-			top: 0;
-			padding: 10rpx 30rpx;
-			box-sizing: border-box;
-			display: flex;
-			justify-content: flex-start;
-
-			.lab_title_l {
-				width: 250rpx;
-				height: 80rpx;
-				margin-right: 20rpx;
-
-				.lab_title_l_n {
-					width: 250rpx;
-					height: 80rpx;
-					border-radius: 10rpx;
-					border: 1rpx solid #E0E0E0;
-					display: flex;
-					justify-content: flex-start;
-					align-items: center;
-
-					>view {
-						flex: 1;
-						line-height: 80rpx;
-						margin-left: 20rpx;
-						color: #999999;
-						font-size: 28rpx;
-						white-space: nowrap;
-						overflow: hidden;
-						text-overflow: ellipsis;
-					}
-
-					>img {
-						width: 14rpx;
-						height: 8rpx;
-						margin-right: 30rpx;
-					}
-				}
-			}
-
-			.lab_title_r {
-				width: 420rpx;
-				height: 80rpx;
-				position: relative;
-				border-radius: 10rpx;
-				border: 1rpx solid #E0E0E0;
-
-				.lab_title_r_btn {
-					width: 60rpx;
-					height: 80rpx;
-					position: absolute;
-					top: 0rpx;
-					right: 0rpx;
-
-					>img {
-						width: 20rpx;
-						height: 20rpx;
-						position: absolute;
-						top: 30rpx;
-						left: 24rpx;
-					}
-				}
-
-				>input {
-					width: 274rpx;
-					height: 80rpx;
-					position: absolute;
-					top: 0rpx;
-					left: 60rpx;
-				}
-
-				.clear {
-					width: 60rpx;
-					height: 80rpx;
-					position: absolute;
-					top: 0rpx;
-					right: 20rpx;
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #0183FA;
-					line-height: 80rpx;
-				}
-			}
-		}
-
-		.list {
-			background: #FFFFFF;
-			border-radius: 20rpx 20rpx 0rpx 0rpx;
-			padding: 0 30rpx;
-			box-sizing: border-box;
-			margin: 0 30rpx;
-
-			.list_li {
-				display: flex;
-				justify-content: space-between;
-				align-items: center;
-				height: 80rpx;
-				border-bottom: 1rpx solid #E0E0E0;
-
-				>text {
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					line-height: 80rpx;
-					overflow: hidden;
-					text-overflow: ellipsis;
-					white-space: nowrap;
-				}
-
-				>img {
-					width: 24rpx;
-					height: 16rpx;
-					margin-right: 14rpx;
-				}
-			}
-
-			.list_li:last-child {
-				border: none;
-			}
-
-			.color_A {
-				color: #333333;
-			}
-
-			.color_B {
-				color: #0183FA;
-			}
-		}
-
-		.bottom_btn {
-			position: fixed;
-			bottom: 26rpx;
-			left: 30rpx;
-			font-size: 30rpx;
-			font-family: PingFang SC-Medium, PingFang SC;
-			font-weight: 400;
-			color: #FFFFFF;
-			line-height: 90rpx;
-			width: 690rpx;
-			height: 90rpx;
-			background: #0183FA;
-			border-radius: 20rpx;
-			text-align: center;
-
-		}
-	}
-</style>

+ 0 - 308
pages_safetyExamine/views/patrolPlan/patrolPlanAddMember.vue

@@ -1,308 +0,0 @@
-<!-- 安全检查-发起巡查计划-巡查组 -->
-<template>
-	<view class="examine">
-		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-			<view>
-				<view class="lab_title">
-					<view class="lab_title_n">
-						<input type="text" v-model="getData.searchValue" placeholder="请输入巡查组名称" name="search"
-							@confirm='searchBtn' confirm-type='search' maxlength="50"
-							placeholder-style="color: #CCCCCC;font-size:26rpx;">
-
-						<view class="lab_title_r_btn" v-if="getData.searchValue>0" @click="clearBtn">
-							<img src="@/pages_safetyExamine/images/clear.png" />
-						</view>
-					</view>
-				</view>
-				<view class="list">
-					<view class="list_li" v-for="(item,index) in  dataList" :key="index" @click="labSelete(index)">
-						<text :class="item.type?'color_B':'color_A'">{{item.groupName}}</text>
-						<img v-if="item.type" src="@/pages_safetyExamine/images/icon_xzwt_xz.png">
-					</view>
-				</view>
-			</view>
-		</scroll-view>
-		<view class="bottom_btn" @click="submitForm">保存</view>
-	</view>
-
-</template>
-
-<script>
-	import {
-		config
-	} from '@/api/request/config.js'
-	import {
-		checkGroupList,
-		checkGroupDetail
-	} from '@/pages_safetyExamine/api/index.js'
-	export default {
-		name: "rectifyList",
-		components: {
-
-		},
-		data() {
-			return {
-				pageType: 0,
-				//列表请求参数
-				getData: {
-					checkLevel: '0',
-					searchValue: '',
-					checkLevel: '',
-				},
-				total: 0,
-				dataList: [],
-				seleteListMember: [], //临时存储选中巡查组
-				checkMemberDtoList: [], //临时存储选中的
-				form: {},
-			}
-		},
-		onLoad(option) {
-			if (option.form) {
-				this.form = JSON.parse(decodeURIComponent(option.form));
-				if (this.form.seleteListMember.length > 0) {
-					this.seleteListMember = this.form.seleteListMember;
-				}
-				this.getData.checkLevel = this.form.groupDataType
-			}
-			if (option.pageType) { //pageType=1添加页面进入2编辑页面进入
-				this.pageType = option.pageType
-			}
-		},
-		onShow() {
-			this.dataList = [];
-			this.getList();
-		},
-		mounted() {
-
-		},
-		methods: {
-			//滚动事件
-			scrollGet() {
-				let self = this;
-				if (self.total <= self.getData.page) {
-					console.log('没有更多数据!')
-				} else {
-					setTimeout(function() {
-						self.getData.page += 1;
-						self.getList();
-					}, 1000)
-
-				}
-			},
-			//点击选择实验室
-			labSelete(index) {
-				let _this = this;
-				this.seleteListMember = [];
-				this.dataList[index].type = !this.dataList[index].type
-				if (_this.dataList[index].type == true) {
-					_this.dataList.forEach(function(item2) {
-						if (item2.id == _this.dataList[index].id) {
-							item2.type = true
-						} else {
-							item2.type = false
-						}
-					})
-				}
-				this.seleteListMember.push(this.dataList[index])
-			},
-			//实验室搜索
-			searchBtn() {
-				this.dataList = [];
-				this.getList();
-			},
-			//清除按钮
-			clearBtn() {
-				this.getData.page = 1;
-				this.getData.searchValue = '';
-				this.dataList = [];
-				this.getList();
-			},
-			handleClick(doType) {
-				let self = this;
-				if (doType == 'subBtn') { //保存数据
-
-				}
-			},
-			//巡查组-保存
-			async submitForm() {
-				let _this = this;
-				console.log(this.seleteListMember)
-				let id = this.seleteListMember[0].id
-				this.form.checkMemberDtoList = [];
-
-				this.$set(this.form, 'checkGroupId', this.seleteListMember[0].id)
-				this.$set(this.form, 'checkGroupName', this.seleteListMember[0].groupName)
-				const {
-					data
-				} = await checkGroupDetail({
-					id: id,
-					selectEnable: '1'
-				});
-				if (data.code == 200) {
-					let obj = {};
-					for (let i = 0; i < data.data.checkGroupMemberList.length; i++) {
-						obj = {
-							"deptId": data.data.checkGroupMemberList[i].deptId,
-							"deptName": data.data.checkGroupMemberList[i].deptName,
-							"enable": data.data.checkGroupMemberList[i].enable,
-							"jobNum": data.data.checkGroupMemberList[i].jobNum,
-							"name": data.data.checkGroupMemberList[i].name,
-							"userId": data.data.checkGroupMemberList[i].userId,
-							"userType": data.data.checkGroupMemberList[i].userType
-						}
-						this.form.checkMemberDtoList.push(obj)
-					}
-					let pages = getCurrentPages();
-					let prevPage = pages[pages.length - 2]; //上一个页面
-					prevPage.onShow(encodeURIComponent(JSON.stringify(this.form)))
-					uni.navigateBack()
-
-				}
-
-			},
-
-			async getList() {
-
-				let _this = this;
-				const {
-					data
-				} = await checkGroupList(_this.getData);
-				if (data.code == 200) {
-
-					if (data.data) {
-						data.data.forEach(function(item) {
-							item.type = false
-						})
-					}
-					this.dataList = [...this.dataList, ...data.data]
-					//如果有选中的数据
-					if (this.seleteListMember.length > 0) {
-						for (let i = 0; i < this.dataList.length; i++) {
-							if (this.seleteListMember[0].id == this.dataList[i].id) {
-								this.dataList[i].type = true;
-							}
-						}
-					}
-					this.total = data.data.total;
-				}
-			}
-		}
-	}
-</script>
-
-<style lang="stylus" scoped>
-	.examine {
-		height: 100%;
-		display flex;
-
-		.info-max-box {
-			flex: 1;
-			overflow: scroll;
-			padding: 120rpx 0rpx 30rpx;
-			box-sizing: border-box;
-		}
-
-		.lab_title {
-			width: 750rpx;
-			height: 100rpx;
-			background: #FFFFFF;
-			position: fixed;
-			top: 0;
-			padding: 10rpx 30rpx;
-			box-sizing: border-box;
-
-			.lab_title_n {
-				width: 690rpx;
-				height: 80rpx;
-				position: relative;
-				border-radius: 10rpx;
-				border: 1rpx solid #E0E0E0;
-
-				.lab_title_r_btn {
-					width: 60rpx;
-					height: 80rpx;
-					position: absolute;
-					top: 0rpx;
-					right: 0rpx;
-
-					>img {
-						width: 20rpx;
-						height: 20rpx;
-						position: absolute;
-						top: 30rpx;
-						left: 24rpx;
-					}
-				}
-
-				>input {
-					width: 360rpx;
-					height: 80rpx;
-					position: absolute;
-					top: 0rpx;
-					left: 60rpx;
-				}
-			}
-		}
-
-		.list {
-			background: #FFFFFF;
-			border-radius: 20rpx 20rpx 0rpx 0rpx;
-			padding: 0 30rpx;
-			box-sizing: border-box;
-			margin: 0 30rpx;
-
-			.list_li {
-				display: flex;
-				justify-content: space-between;
-				align-items: center;
-				height: 80rpx;
-				border-bottom: 1rpx solid #E0E0E0;
-
-				>text {
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					line-height: 80rpx;
-					overflow: hidden;
-					text-overflow: ellipsis;
-					white-space: nowrap;
-				}
-
-				>img {
-					width: 24rpx;
-					height: 16rpx;
-					margin-right: 14rpx;
-				}
-			}
-
-			.list_li:last-child {
-				border: none;
-			}
-
-			.color_A {
-				color: #333333;
-			}
-
-			.color_B {
-				color: #0183FA;
-			}
-		}
-
-		.bottom_btn {
-			position: fixed;
-			bottom: 26rpx;
-			left: 30rpx;
-			font-size: 30rpx;
-			font-family: PingFang SC-Medium, PingFang SC;
-			font-weight: 400;
-			color: #FFFFFF;
-			line-height: 90rpx;
-			width: 690rpx;
-			height: 90rpx;
-			background: #0183FA;
-			border-radius: 20rpx;
-			text-align: center;
-
-		}
-	}
-</style>

+ 0 - 877
pages_safetyExamine/views/patrolPlan/patrolPlanDetail.vue

@@ -1,877 +0,0 @@
-<!-- 安全检查-发起巡查计划 -->
-<template>
-  <view class="examine">
-	<view class="tabTitle">
-		<view class="tabTitle_li" @tap="tabClick(index)"  :key="index" v-for="(item,index) in tabText">
-			<view :class="{on:curTab==index}" class="tabTitle_text">{{item}}</view>
-		    <view :class="{on:curTab==index}" class="tabTitle_across"></view>
-		</view>
-	</view>
-	<view class="header" v-if="pageType==1">
-		<view class="line"></view>
-		<view class="tabTitle_tow">
-			<view class="tabTitle_tow_li" @tap="tabClickTow(index)"  :key="index" v-for="(item,index) in tabTextTow">
-				<view :class="{on:curTabTow==index}" class="tabTitle_tow_text">{{item}}</view>
-			    <view :class="{on:curTabTow==index}" class="tabTitle_tow_across"></view>
-			</view>
-		</view>
-		<view class="lab_title">
-			<picker @change="collegeChange" :value="collegeIndex" :range="collegeArray" class="lab_title_l">
-				<view class="lab_title_l_n">
-					<view>{{collegeArray[collegeIndex]}}</view>
-					<img src="@/pages_safetyExamine/images/icon_06.png">
-				</view>
-			</picker>
-			<view class="lab_title_r">
-				<view class="lab_title_r_btn" @click="searchBtn">
-					<img src="@/pages_safetyExamine/images/icon_aqjc_ss.png"/>
-				</view>
-				<input type="text" v-model="getData.name" placeholder="请输入实验室名称" maxlength="50" placeholder-style="color: #CCCCCC;font-size:26rpx;">
-			</view>
-		</view>
-	</view>
-
-	<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-		<view v-if="pageType==0" style="padding: 0 30rpx;box-sizing: border-box;">
-			<view class="delay_inspect" >
-				<view class="delay_inspect_l" v-if="inspectState==0">待检查实验室:<text>22间</text></view>
-				<view class="delay_inspect_r" v-if="inspectState==0">未开始</view>
-				<view class="delay_inspect_l" v-if="inspectState==1">检查进度:<text>待检查2/检查中2/已检查1</text></view>
-				<view class="delay_inspect_r_tow" v-if="inspectState==1">进行中</view>
-			</view>
-			<view class="basics">
-				<view class="basics_li">
-					<text>计划标题:</text>
-					<text>2023年度4月份安全检查</text>
-				</view>
-				<view class="basics_li">
-					<text>检查类型:</text>
-					<text>校院巡查</text>
-				</view>
-				<view class="basics_li">
-					<text>检查周期:</text>
-					<text>2023-04-01至2023-04-01</text>
-				</view>
-				<view class="basics_li" style="border:none;">
-					<text>检查范围:</text>
-					<text>全校</text>
-				</view>
-				<view class="scope_text">已选择<text>{{form.inspectScope.length}}</text>个学院,共<text>0</text>间实验室</view>
-			</view>
-
-			<view class="attachment">
-				<view class="attachment_t">
-					<text>材料附件</text>
-					<text>点击文件标题查看</text>
-				</view>
-				<view class="attachment_li">
-					<img src="@/pages_safetyExamine/images/icon_djc_wj.png"/>
-					<text>文件标题文件标题</text>
-					<img class="attachment_li_del" src="@/pages_safetyExamine/images/icon_fjgk_sc.png"/>
-				</view>
-			</view>
-			<view class="patrol_group">
-				<view class="patrol">
-					<view class="patrol_l">巡查组:</view>
-					<view class="patrol_r">校级巡查组</view>
-				</view>
-				<view class="list">
-					<view class="list_title"><img src="@/pages_safetyExamine/images/icon_jcjh_cy.png">成员</view>
-					<view class="list_header"><text>工号</text><text>姓名</text></view>
-					<view class="list_li"><text>12345678</text><text>刘洋</text></view>
-					<view class="list_li"><text>12345678</text><text>刘洋</text></view>
-					<view class="list_li"><text>12345678</text><text>刘洋</text></view>
-					<view class="list_bottom">无数据</view>
-				</view>
-			</view>
-		</view>
-		<view v-if="pageType==1">
-			<view class="list_three">
-				<view class="list_three_li" v-for="(item,index) in  dataList" :key="index">
-					<view class="list_three_li_t">
-						<view class="list_three_li_t_l">
-							<img v-if="item.checkRange==1" src="@/pages_safetyExamine/images/icon_xyxc_qx.png"/>
-							<img v-if="item.checkRange==2" src="@/pages_safetyExamine/images/icon_xyxc_xy.png"/>
-							<img v-if="item.checkRange==3" src="@/pages_safetyExamine/images/icon_xyxc_sys.png"/>
-							<text></text>
-						</view>
-						<view class="list_three_li_t_c">实验室名称-房间号</view>
-						<view class="list_three_li_t_c2">已逾期</view>
-						<view class="list_three_li_t_r"></view>
-					</view>
-					<view class="list_three_li_m">
-						<view class="list_three_li_m_t">计划标题计划标题计划标题计划标题计划标题计划...</view>
-						<view class="list_three_li_m_b">
-							<text class="blue_color">未开始</text>
-							<text>校院巡查</text>
-							<text>环境与测绘学院</text>
-						</view>
-					</view>
-					<view class="list_three_li_b">
-						<img src="@/pages_safetyExamine/images/icon_djcsys.png"/>
-						<text>整改进度:</text>
-						<text>待检查22/待复核1/已完成/暂无法整改</text>
-					</view>
-				</view>
-			</view>
-		</view>
-
-
-	</scroll-view>
-  </view>
-
-</template>
-
-<script>
-import { config } from '@/api/request/config.js'
-import { } from '@/api/apiDemo/index.js'
-export default {
-  name: "rectifyList",
-  components: {
-
-  },
-  data() {
-    return {
-		pageType:0,
-		//列表请求参数
-		getData:{
-		 page:1,
-		 pageSize:20,
-		},
-		inspectState:0,//检查状态 0 未开始 1进行中
-		tabText:['检查计划','检查管理'],
-		curTab:0,
-		tabTextTow:['全部','未开始','进行中','已结束'],
-		curTabTow:0,
-		form:{
-			name:'',
-			type:'校院巡查',
-			startTime:'',
-			endTime:'',
-			inspectScope:[],
-			tiemQuickList:[],
-			scopeIndex:'',
-			seleteListLab:[],
-			patrolIndex:'',
-			seleteListMember:[],
-		},
-		collegeIndex :0,
-		collegeArray:['选择学院','学院名称1','学院名称2','学院名称3',],
-		dataList:[{name:'计划标题计划标题计划标题计划标题',},{name:'计划标题计划标题计划标题计划标题',},{name:'计划标题计划标题计划标题计划标题',},{name:'计划标题计划标题计划标题计划标题',},{name:'计划标题计划标题计划标题计划标题',}],
-	}
-  },
-  onLoad(option) {
-	 if(option.form){
-		this.form=JSON.parse(decodeURIComponent(option.form));
-		console.log(this.form)
-	 }
-  },
-  onShow() {
-
-  },
-  mounted(){
-
-  },
-  methods: {
-		//顶部tab点击
-		tabClick(index) {
-			this.curTab = index;
-			this.pageType = index;
-		},
-		//顶部tab点击
-		tabClickTow(index) {
-			this.curTabTow = index;
-		},
-		//选择学院
-		collegeChange(e){
-			this.collegeIndex = e.target.value;
-			this.dataList=[];
-			this.getList();
-		},
-		//实验室搜索
-		searchBtn(){
-			this.dataList=[];
-			this.getList();
-		},
-		//滚动事件
-		scrollGet(){
-			let self=this;
-			if(self.total<=self.getData.page){
-			    console.log('没有更多数据!')
-			}else{
-					setTimeout(function(){
-						self.getData.page += 1;
-						self.getList();
-					},1000)
-
-			}
-		},
-	    handleClick(doType){
-		  let self=this;
-
-
-	    },
-		async getList(){
-				  let list=[{name:'实验室名称-房间号',type:false,id:4},{name:'实验室名称-房间号',type:false,id:5}]
-				  this.total=5;
-				  this.dataList=[...this.dataList,...list]
-
-
-		 //    let self = this;
-		 //    let obj = {
-		 //        page:this.getData.page,
-		 //        pageSize:this.getData.pageSize,
-		 //    };
-		 //    const {data} = await groupList(obj);
-		 //    if(data.code==200){
-					 //  this.total=data.total;
-					 //  this.dataList=[...this.dataList,...data.data]
-				  // }
-		},
-
-  }
-}
-</script>
-
-<style lang="stylus" scoped>
-.examine{
-	height:100%;
-	display flex;
-	// padding: 0 30rpx;
-	// box-sizing: border-box;
-	padding-bottom: 30rpx;
-	box-sizing: border-box;
-	.blue_color{
-		color: #0183FA;
-		border: 1rpx solid #0183FA;
-	}
-	.red_color{
-		color: #FF4545;
-		border: 1rpx solid #FF4545;
-	}
-	.green_color{
-		color: #1FA50D;
-		border: 1rpx solid #1FA50D;
-	}
-	/* 切换按钮 */
-	.tabTitle{
-		width:100%;
-		height: 100rpx;
-		background: #fff;
-		display flex;
-		justify-content: center;
-		align-items: center;
-		position: fixed;
-		top: 0;
-		z-index: 100;
-		box-shadow: 0rpx 3rpx 8rpx 0rpx rgba(0,0,0,0.16);
-		.tabTitle_li{
-			position: relative;
-			width:372rpx;
-			text-align center;
-			.tabTitle_text{
-				display: inline-block;
-				font-size: 30rpx;
-				font-family: PingFang SC;
-				font-weight: 500;
-				color: #333333;
-				line-height: 46rpx;
-				position: relative;
-				>text{
-					position:absolute;
-					min-width: 30rpx;
-					min-height: 30rpx;
-					border-radius:54%;
-					background: #E80000;
-					font-size: 18rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #FFFFFF;
-					text-align: center;
-					line-height: 30rpx;
-					margin-left: 6rpx;
-					padding:2rpx;
-					box-sizing: border-box;
-				}
-				&.on{
-					color:#0183FA;
-				}
-			}
-			.tabTitle_across{
-				width: 50rpx;
-				height: 4rpx;
-				background: #0183FA;
-				border-radius: 2rpx;
-				margin-left 162rpx;
-				display none;
-				&.on{
-					display block;
-				}
-			}
-
-		}
-		.tabTitle_li:nth-of-type(1)::after{
-			content: '';
-			position: absolute;
-			top: 0rpx;
-			right:  0rpx;
-			width: 1rpx;
-			height: 50rpx;
-			background: #E0E0E0;
-		}
-	}
-	.info-max-box{
-		flex: 1;
-		overflow: scroll;
-
-	}
-	/* 检查计划---------------------------------------------------------------------------------- */
-	.delay_inspect{
-		width: 690rpx;
-		height: 100rpx;
-		background: #FFFFFF;
-		border-radius: 20rpx;
-		display: flex;
-		justify-content: space-between;
-		align-items: center;
-		padding: 0 30rpx;
-		box-sizing: border-box;
-		.delay_inspect_l{
-			font-size: 28rpx;
-			font-family: PingFang SC-Medium, PingFang SC;
-			font-weight: 400;
-			color: #333333;
-			line-height: 100rpx;
-			>text{
-				color: #0183FA;
-			}
-		}
-		.delay_inspect_r{
-			font-size: 26rpx;
-			font-family: PingFang SC-Medium, PingFang SC;
-			font-weight: 400;
-			color: #0183FA;
-			line-height: 40rpx;
-			width: 120rpx;
-			height: 40rpx;
-			border-radius: 6rpx;
-			text-align: center;
-			border: 1rpx solid #0183FA;
-		}
-		.delay_inspect_r_tow{
-			font-size: 26rpx;
-			font-family: PingFang SC-Medium, PingFang SC;
-			font-weight: 400;
-			color: #FF4545;
-			line-height: 40rpx;
-			width: 120rpx;
-			height: 40rpx;
-			border-radius: 6rpx;
-			text-align: center;
-			border: 1rpx solid rgba(255,69,69,0.898);
-		}
-	}
-
-	.basics{
-		width: 690rpx;
-		background: #FFFFFF;
-		border-radius: 20rpx;
-		margin-top: 20rpx;
-		padding: 30rpx 30rpx 32rpx;
-		box-sizing: border-box;
-		.basics_li{
-			height: 80rpx;
-			display: flex;
-			justify-content: space-between;
-			border-bottom: 1rpx solid #D8D8D8;
-			>text:nth-of-type(1){
-				font-size: 28rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #666666;
-				line-height: 80rpx;
-				width: 140rpx;
-			}
-			>text:nth-of-type(2){
-				flex: 1;
-				font-size: 28rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #333333;
-				line-height: 80rpx;
-				text-align: right;
-			}
-		}
-		.scope_text{
-			width: 100%;
-			font-size: 26rpx;
-			font-family: PingFang SC-Medium, PingFang SC;
-			font-weight: 400;
-			color: #999999;
-			line-height: 36rpx;
-			text-align: right;
-			>text{
-				color: #0183FA;
-			}
-		}
-	}
-	.attachment{
-		width: 690rpx;
-		background: #FFFFFF;
-		border-radius: 20rpx;
-		margin-top: 20rpx;
-		padding-bottom: 32rpx;
-		box-sizing: border-box;
-		.attachment_t{
-			border-bottom: 1rpx solid #D8D8D8;
-			>text:nth-of-type(1){
-				font-size: 30rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #333333;
-				line-height: 110rpx;
-				margin-left: 28rpx;
-			}
-			>text:nth-of-type(2){
-				font-size: 30rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #999999;
-				line-height: 110rpx;
-				margin-left: 24rpx;
-			}
-		}
-		.attachment_li{
-			height: 40rpx;
-			display: flex;
-			justify-content: flex-start;
-			align-items: center;
-			margin-top: 32rpx;
-			>img{
-				width: 30rpx;
-				height: 26rpx;
-				margin-right: 20rpx;
-				margin-left: 50rpx;
-			}
-			>text{
-				flex: 1;
-				font-size: 28rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #0183FA;
-				line-height: 40rpx;
-				white-space: nowrap;
-				overflow: hidden;
-				text-overflow: ellipsis;
-			}
-			.attachment_li_del{
-				width: 30rpx;
-				height: 30rpx;
-			}
-		}
-	}
-	.patrol_group{
-		width: 690rpx;
-		background: #FFFFFF;
-		border-radius: 20rpx;
-		margin-top: 20rpx;
-		padding: 40rpx 30rpx 64rpx;
-		box-sizing: border-box;
-		.patrol{
-			display: flex;
-			justify-content: flex-start;
-			align-items: center;
-			margin-top: 26rpx;
-			.patrol_l{
-				width: 146rpx;
-				font-size: 30rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #666666;
-				line-height: 42rpx;
-				text-align: left;
-			}
-			.patrol_r{
-				flex: 1;
-				font-size: 30rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #333333;
-				line-height: 42rpx;
-				text-align: right;
-			}
-		}
-		.list{
-			margin-top: 42rpx;
-			.list_title{
-				display: flex;
-				justify-content: flex-start;
-				align-items: center;
-				height: 80rpx;
-				background: #F5F5F5;
-				border-radius: 10rpx 10rpx 0rpx 0rpx;
-				font-size: 30rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #333333;
-				line-height: 80rpx;
-				>img{
-					width: 30rpx;
-					height: 30rpx;
-					margin: 0 20rpx;
-				}
-			}
-			.list_header{
-				display: flex;
-				justify-content: flex-start;
-				>text{
-					flex: 1;
-					height: 80rpx;
-					background: #F5F5F5;
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 80rpx;
-					text-align: center;
-					border: 1rpx solid #E0E0E0;
-				}
-				>text:nth-of-type(1){
-					border-right: none;
-				}
-			}
-			.list_li{
-				display: flex;
-				justify-content: flex-start;
-				>text{
-					flex: 1;
-					height: 80rpx;
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 80rpx;
-					text-align: center;
-					border: 1rpx solid #E0E0E0;
-				}
-				>text:nth-of-type(1){
-					border-right: none;
-					border-top: none;
-				}
-				>text:nth-of-type(2){
-					border-top: none;
-				}
-			}
-			.list_bottom{
-				flex: 1;
-				height: 80rpx;
-				font-size: 30rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #999999;
-				line-height: 80rpx;
-				text-align: center;
-				border: 1rpx solid #E0E0E0;
-				border-top: none;
-			}
-		}
-	}
-	/* 检查管理----------------------------------------------------------------------------------- */
-	/* 切换按钮 */
-	.header{
-		width:100%;
-		position: fixed;
-		top: 100rpx;
-		z-index: 100;
-		.line{
-			width: 100%;
-			height: 20rpx;
-			background: #F5F5F5;
-		}
-		.tabTitle_tow{
-			width:100%;
-			height: 100rpx;
-			background: #fff;
-			display flex;
-			justify-content: flex-start;
-			align-items: center;
-			border-bottom: 1rpx solid #E0E0E0;
-			.tabTitle_tow_li{
-				position: relative;
-				width:146rpx;
-				text-align center;
-				.tabTitle_tow_text{
-					display: inline-block;
-					font-size: 30rpx;
-					font-family: PingFang SC;
-					font-weight: 500;
-					color: #333333;
-					line-height: 46rpx;
-					position: relative;
-					&.on{
-						color:#0183FA;
-					}
-				}
-				.tabTitle_tow_across{
-					width: 50rpx;
-					height: 4rpx;
-					background: #0183FA;
-					border-radius: 2rpx;
-					margin-left: 46rpx;
-					display none;
-					&.on{
-						display block;
-					}
-				}
-
-			}
-		}
-		.lab_title{
-			width: 750rpx;
-			height: 100rpx;
-			background: #FFFFFF;
-			padding: 20rpx 30rpx;
-			box-sizing: border-box;
-			display: flex;
-			justify-content: flex-start;
-
-			.lab_title_l{
-				width: 250rpx;
-				height: 60rpx;
-				margin-right: 20rpx;
-				.lab_title_l_n{
-					width: 250rpx;
-					height: 60rpx;
-					border-radius: 10rpx;
-					border: 1rpx solid #E0E0E0;
-					display: flex;
-					justify-content: flex-start;
-					align-items: center;
-					>view{
-						flex:1;
-						line-height:60rpx;
-						margin-left:20rpx;
-						color: #999999;
-						font-size:28rpx;
-					}
-					>img{
-						width: 14rpx;
-						height: 8rpx;
-						margin-right: 30rpx;
-					}
-				}
-			}
-			.lab_title_r{
-				width: 420rpx;
-				height: 60rpx;
-				position:relative;
-				border-radius: 10rpx;
-				border: 1rpx solid #E0E0E0;
-				.lab_title_r_btn{
-					width: 60rpx;
-					height: 60rpx
-					position: absolute;
-					top: 0rpx;
-					left:0rpx;
-					>img{
-						width: 20rpx;
-						height: 20rpx;
-						position: absolute;
-						top: 20rpx;
-						left: 24rpx;
-					}
-				}
-				>input{
-					width: 360rpx;
-					height: 60rpx;
-					position: absolute;
-					top: 0rpx;
-					left: 60rpx;
-				}
-			}
-		}
-
-	}
-	.list_three{
-		padding: 0 30rpx;
-		box-sizing: border-box;
-		margin-top: 340rpx;
-		.list_three_li{
-			position: relative;
-			width: 690rpx;
-			height: 360rpx;
-			background: #fff;
-			border-radius: 10rpx;
-			overflow: hidden;
-			margin-bottom: 20rpx;
-			.list_three_li_t{
-				width: 100%;
-				position: absolute;
-				left: 0;
-				top: 0;
-				.list_three_li_t_l{
-					>img{
-						width: 70rpx;
-						height: 70rpx;
-					}
-					>text{
-						position: absolute;
-						left: -15rpx;
-						top: 76rpx;
-						display: inline-block;
-						width: 30rpx;
-						height: 30rpx;
-						background: #F5F5F5;
-						border-radius: 15rpx;
-					}
-				}
-				.list_three_li_t_c{
-					width: 630rpx;
-					height: 110rpx;
-					position: absolute;
-					left: 30rpx;
-					top: 0;
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 110rpx;
-					border-bottom: 1rpx dashed #D8D8D8;
-					overflow: hidden;
-					text-overflow:ellipsis;
-					white-space: nowrap;
-					padding-right: 60rpx;
-					box-sizing: border-box;
-				}
-				.list_three_li_t_c2{
-					position: absolute;
-					right: 20rpx;
-					top: 38rpx;
-					width: 120rpx;
-					height: 40rpx;
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #FF5757;
-					line-height: 40rpx;
-					border: 1rpx solid #FF5757;
-					border-radius: 6rpx;
-					text-align: center;
-				}
-				.list_three_li_t_r{
-					position: absolute;
-					right:-15rpx;
-					top: 76rpx;
-					width: 30rpx;
-					height: 30rpx;
-					background:#F5F5F5;
-					border-radius: 15rpx;
-				}
-			}
-			.list_three_li_m{
-				position: absolute;
-				top: 110rpx;
-				left: 0;
-				width: 690rpx;
-				height: 158rpx;
-				padding-left: 30rpx;
-				box-sizing: border-box;
-				.list_three_li_m_t{
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #666666;
-					line-height: 40rpx;
-					margin-top:22rpx;
-				}
-				.list_three_li_m_b{
-					margin-top:26rpx;
-					>text:nth-of-type(1){
-						font-size: 26rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						line-height: 40rpx;
-						border-radius: 6rpx;
-						padding: 0 20rpx;
-						margin-right: 14rpx;
-					}
-					>text:nth-of-type(2){
-						font-size: 26rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #0183FA;
-						line-height: 40rpx;
-						padding: 0 8rpx;
-						border-radius: 6rpx;
-						background: rgba(1,131,250,0.1);
-						margin-right: 24rpx;
-					}
-					>text:nth-of-type(3){
-						display: inline-block;
-						width: 380rpx;
-						font-size: 26rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #333333;
-						line-height: 26rpx;
-						overflow: hidden;
-						text-overflow:ellipsis;
-						white-space: nowrap;
-
-					}
-				}
-			}
-			.list_three_li_b{
-				height: 80rpx;
-				position: absolute;
-				top: 278rpx;
-				left: 0;
-				display: flex;
-				justify-content: flex-start;
-				align-items: center;
-				border-top: 1rpx solid #E0E0E0;
-				>img{
-					width: 24rpx;
-					height: 30rpx;
-					margin-right: 26rpx;
-					margin-left: 30rpx;
-				}
-				>text:nth-of-type(1){
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 28rpx;
-				}
-				>text:nth-of-type(2){
-					flex:1;
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #0183FA;
-					line-height: 28rpx;
-					white-space: nowrap;
-					overflow: hidden;
-					text-overflow: ellipsis;
-				}
-			}
-		}
-	}
-	.bottom_btn{
-		position: fixed;
-		bottom: 26rpx;
-		left: 30rpx;
-		font-size: 30rpx;
-		font-family: PingFang SC-Medium, PingFang SC;
-		font-weight: 400;
-		color: #FFFFFF;
-		line-height: 90rpx;
-		width: 690rpx;
-		height: 90rpx;
-		background: #0183FA;
-		border-radius: 20rpx;
-		text-align: center;
-
-	}
-}
-</style>

File diff suppressed because it is too large
+ 0 - 1820
pages_safetyExamine/views/patrolPlan/patrolPlanEdit.vue


+ 0 - 482
pages_safetyExamine/views/patrolPlan/patrolPlanList.vue

@@ -1,482 +0,0 @@
-<!-- 安全检查-发起巡查计划 -->
-<template>
-	<view class="examine">
-		<view class="tabTitle">
-			<view class="tabTitle_li" @tap="tabClick(index)" :key="index" v-for="(item,index) in tabText">
-				<view :class="{on:curTab==index}" class="tabTitle_text">{{item}}</view>
-				<view :class="{on:curTab==index}" class="tabTitle_across"></view>
-			</view>
-		</view>
-		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-			<view>
-				<view class="search">
-					<input type="text" v-model="getData.searchValue" placeholder="计划标题" name="search"
-						@confirm='searchBtn' confirm-type='search' maxlength="50"
-						placeholder-style="color: #CCCCCC;font-size:26rpx;">
-					<view class="search_btn" v-if="getData.searchValue>0" @click="clearBtn">
-						<img src="@/pages_safetyExamine/images/clear.png" />
-					</view>
-				</view>
-				<view class="list">
-					<view class="list_li" v-for="(item,index) in  dataList" :key="index"
-						@click="handleClick(item,'edit')">
-						<view class="list_li_t">
-							<view class="list_li_t_l">
-								<img v-if="item.checkRange==1" src="@/pages_safetyExamine/images/icon_xyxc_qx.png" />
-								<img v-if="item.checkRange==2" src="@/pages_safetyExamine/images/icon_xyxc_xy.png" />
-								<img v-if="item.checkRange==3" src="@/pages_safetyExamine/images/icon_xyxc_sys.png" />
-								<text></text>
-							</view>
-							<view class="list_li_t_c">{{item.title}}</view>
-							<view class="list_li_t_c2" v-if="item.isOverdue==1">已逾期</view>
-							<view class="list_li_t_r"></view>
-						</view>
-						<view class="list_li_m">
-							<view class="list_li_m_t">计划周期:{{item.cycleStartTime}}至{{item.cycleEndTime}}</view>
-							<view class="list_li_m_b">
-								<text class="blue_color" v-if="item.checkStatus==1">未开始</text>
-								<text class="red_color" v-if="item.checkStatus==2">进行中</text>
-								<text class="green_color" v-if="item.checkStatus==3">已结束</text>
-								<text>{{item.checkType==1?'校院巡查':'实验室自查'}}-专项检查</text>
-							</view>
-						</view>
-						<view class="list_li_b">
-							<img src="@/pages_safetyExamine/images/icon_djcsys.png" />
-							<text v-if="item.checkStatus==1">待检查实验室:</text>
-							<text v-if="item.checkStatus==1">{{item.subjectNum}}间</text>
-							<text v-if="item.checkStatus==2 || item.checkStatus==3">检查进度:</text>
-							<text v-if="item.checkStatus==2 || item.checkStatus==3">{{item.checkSchedule}}间</text>
-						</view>
-					</view>
-				</view>
-			</view>
-			<img class="null-img" v-if="!dataList[0]" src="@/pages_safetyExamine/images/null-data-1.png">
-		</scroll-view>
-		<view class="bottom_btn" @click="handleClick('','subBtn')">{{subBtnTitle}}</view>
-	</view>
-
-</template>
-
-<script>
-	import {
-		config
-	} from '@/api/request/config.js'
-	import {
-		checkPlanList
-	} from '@/pages_safetyExamine/api/index.js'
-	export default {
-		name: "rectifyList",
-		components: {
-
-		},
-		data() {
-			return {
-				pageType: 0,
-				//列表请求参数
-				getData: {
-					page: 1,
-					pageSize: 20,
-					searchValue: '',
-					checkType: '',
-				},
-				total: 0,
-				tabText: ['全部', '未开始', '进行中', '已结束'],
-				curTab: 0,
-				dataList: [],
-				subBtnTitle: '发起巡查计划',
-			}
-		},
-		onLoad(option) {
-			console.log(option.pageType)
-			if (option.pageType == 1) {
-				this.getData.checkType = option.pageType
-				uni.setNavigationBarTitle({
-					title: '校院巡查计划'
-				})
-				this.subBtnTitle = '发起巡查计划';
-			} else if (option.pageType == 2) {
-				this.getData.checkType = option.pageType
-				uni.setNavigationBarTitle({
-					title: '实验室自查计划'
-				})
-				this.subBtnTitle = '发起自查计划';
-			}
-
-		},
-		onShow() {
-			this.dataList = [];
-			this.getList();
-		},
-		mounted() {
-
-		},
-
-		methods: {
-			//实验室搜索
-			searchBtn() {
-				this.dataList = [];
-				this.getList();
-			},
-			//清除按钮
-			clearBtn() {
-				this.getData.page = 1;
-				this.getData.searchValue = '';
-				this.dataList = [];
-				this.getList();
-			},
-			//滚动事件
-			scrollGet() {
-				let self = this;
-				if (self.total / self.getData.pageSize <= self.getData.page) {
-					console.log('没有更多数据!')
-				} else {
-					setTimeout(function() {
-						self.getData.page += 1;
-						self.getList();
-					}, 1000)
-
-				}
-			},
-
-			//顶部tab点击
-			tabClick(index) {
-				this.curTab = index;
-				this.getData.page = 1;
-				this.dataList = [];
-				this.getData.checkStatus = index;
-				this.getList()
-			},
-			handleClick(row, doType) {
-				let self = this;
-
-				if (doType == 'subBtn') { //发起巡查计划
-					uni.navigateTo({
-						url: '/pages_safetyExamine/views/patrolPlan/patrolPlanAdd?pageType=' + this.getData
-							.checkType
-					});
-				} else if (doType == 'edit') { //编辑
-					uni.navigateTo({
-						url: '/pages_safetyExamine/views/patrolPlan/patrolPlanEdit?pageType=' + row.checkType +
-							'&id=' + row.id
-					});
-				}
-
-			},
-			async getList() {
-				let self = this;
-				const {
-					data
-				} = await checkPlanList(this.getData);
-				if (data.code == 200) {
-					this.dataList = [...this.dataList, ...data.data.records]
-					this.total = data.data.total;
-				}
-			}
-		}
-	}
-</script>
-
-<style lang="stylus" scoped>
-	.examine {
-		height: 100%;
-		display flex;
-
-		.null-img {
-			display block;
-			width: 276rpx;
-			height: 321rpx;
-			margin: 100rpx 0 0 274rpx;
-		}
-
-		.info-max-box {
-			flex: 1;
-			overflow: scroll;
-			padding-bottom: 128rpx;
-			padding-top: 100rpx;
-		}
-
-		.blue_color {
-			color: #0183FA;
-			border: 1rpx solid #0183FA;
-		}
-
-		.red_color {
-			color: #FF4545;
-			border: 1rpx solid #FF4545;
-		}
-
-		.green_color {
-			color: #1FA50D;
-			border: 1rpx solid #1FA50D;
-		}
-
-		/* 切换按钮 */
-		.tabTitle {
-			width: 100%;
-			height: 100rpx;
-			background: #fff;
-			display flex;
-			justify-content: flex-start;
-			align-items: center;
-			position: fixed;
-			top: 0;
-			z-index: 100;
-
-			.tabTitle_li {
-				position: relative;
-				width: 146rpx;
-				text-align center;
-
-				.tabTitle_text {
-					display: inline-block;
-					font-size: 30rpx;
-					font-family: PingFang SC;
-					font-weight: 500;
-					color: #333333;
-					line-height: 46rpx;
-					position: relative;
-
-					&.on {
-						color: #0183FA;
-					}
-				}
-
-				.tabTitle_across {
-					width: 50rpx;
-					height: 4rpx;
-					background: #0183FA;
-					border-radius: 2rpx;
-					margin-left: 46rpx;
-					display none;
-
-					&.on {
-						display block;
-					}
-				}
-
-			}
-		}
-
-		.search {
-			width: 750rpx;
-			height: 100rpx;
-			background: #FFFFFF;
-			padding: 20rpx 30rpx;
-			box-sizing: border-box;
-			position: relative;
-			margin-top: 20rpx;
-
-			>input {
-				position: absolute;
-				top: 20rpx;
-				left: 30rpx;
-				width: 690rpx;
-				height: 60rpx;
-				border-radius: 50rpx;
-				opacity: 1;
-				border: 1rpx solid #E0E0E0;
-				padding: 0 74rpx 0 30rpx;
-				box-sizing: border-box;
-			}
-
-			.search_btn {
-				width: 70rpx;
-				height: 60rpx;
-				position: absolute;
-				top: 20rpx;
-				right: 30rpx;
-				z-index: 200;
-
-				>img {
-					width: 20rpx;
-					height: 20rpx;
-					position: absolute;
-					top: 20rpx;
-					left: 24rpx;
-				}
-			}
-		}
-
-		.list {
-			padding: 0 30rpx;
-			box-sizing: border-box;
-			margin-top: 20rpx;
-
-			.list_li {
-				position: relative;
-				width: 690rpx;
-				height: 360rpx;
-				background: #fff;
-				border-radius: 10rpx;
-				overflow: hidden;
-				margin-bottom: 20rpx;
-
-				.list_li_t {
-					width: 100%;
-					position: absolute;
-					left: 0;
-					top: 0;
-
-					.list_li_t_l {
-						>img {
-							width: 70rpx;
-							height: 70rpx;
-						}
-
-						>text {
-							position: absolute;
-							left: -15rpx;
-							top: 76rpx;
-							display: inline-block;
-							width: 30rpx;
-							height: 30rpx;
-							background: #F5F5F5;
-							border-radius: 15rpx;
-						}
-					}
-
-					.list_li_t_c {
-						width: 570rpx;
-						height: 110rpx;
-						position: absolute;
-						left: 30rpx;
-						top: 0;
-						font-size: 30rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #333333;
-						line-height: 110rpx;
-						border-bottom: 1rpx dashed #D8D8D8;
-						overflow: hidden;
-						text-overflow: ellipsis;
-						white-space: nowrap;
-						padding-right: 60rpx;
-						box-sizing: border-box;
-					}
-
-					.list_li_t_c2 {
-						position: absolute;
-						right: 20rpx;
-						top: 38rpx;
-						width: 120rpx;
-						height: 40rpx;
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #FF5757;
-						line-height: 40rpx;
-						border: 1rpx solid #FF5757;
-						border-radius: 6rpx;
-						text-align: center;
-					}
-
-					.list_li_t_r {
-						position: absolute;
-						right: -15rpx;
-						top: 76rpx;
-						width: 30rpx;
-						height: 30rpx;
-						background: #F5F5F5;
-						border-radius: 15rpx;
-					}
-				}
-
-				.list_li_m {
-					position: absolute;
-					top: 110rpx;
-					left: 0;
-					width: 690rpx;
-					height: 168rpx;
-					border-bottom: 1rpx solid #E0E0E0;
-					padding-left: 30rpx;
-					box-sizing: border-box;
-
-					.list_li_m_t {
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #666666;
-						line-height: 40rpx;
-						margin-top: 22rpx;
-					}
-
-					.list_li_m_b {
-						margin-top: 26rpx;
-
-						>text:nth-of-type(1) {
-							font-size: 26rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							line-height: 40rpx;
-							border-radius: 6rpx;
-							padding: 0 20rpx;
-							margin-right: 14rpx;
-						}
-
-						>text:nth-of-type(2) {
-							font-size: 26rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							color: #0183FA;
-							line-height: 40rpx;
-							padding: 0 8rpx;
-							border-radius: 6rpx;
-							background: rgba(1, 131, 250, 0.1);
-						}
-					}
-				}
-
-				.list_li_b {
-					height: 80rpx;
-					position: absolute;
-					top: 278rpx;
-					left: 0;
-					display: flex;
-					justify-content: flex-start;
-					align-items: center;
-
-					>img {
-						width: 24rpx;
-						height: 30rpx;
-						margin-right: 26rpx;
-						margin-left: 30rpx;
-					}
-
-					>text:nth-of-type(1) {
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #333333;
-						line-height: 28rpx;
-					}
-
-					>text:nth-of-type(2) {
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #0183FA;
-						line-height: 28rpx;
-					}
-				}
-			}
-		}
-
-		.bottom_btn {
-			position: fixed;
-			bottom: 26rpx;
-			left: 30rpx;
-			font-size: 30rpx;
-			font-family: PingFang SC-Medium, PingFang SC;
-			font-weight: 400;
-			color: #FFFFFF;
-			line-height: 90rpx;
-			width: 690rpx;
-			height: 90rpx;
-			background: #0183FA;
-			border-radius: 20rpx;
-			text-align: center;
-
-		}
-
-	}
-</style>

File diff suppressed because it is too large
+ 0 - 2290
pages_safetyExamine/views/safetyExamineWorkbench.vue


+ 0 - 717
pages_safetyExamine/views/snapshotManage/snapshotAdd.vue

@@ -1,717 +0,0 @@
-<!-- 随手拍-添加 -->
-<template>
-	<view class="examine">
-		<view class="header" @click="handleClick('manage')">
-			<text>随手拍管理</text>
-			<img src="@/pages_safetyExamine/images/icon_04.png">
-		</view>
-		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-
-			<view class="basics">
-				<view class="basics_li">
-					<view class="basics_li_l">学院</view>
-					<picker @change="collegeChange" :value="collegeIndex" :range="collegeArray" class="scope_r">
-						<view class="basics_li_r college_r">
-							<view>{{form.deptName?form.deptName:'选择学院'}}</view>
-							<img src="@/pages_safetyExamine/images/icon_06.png">
-						</view>
-					</picker>
-				</view>
-				<view class="basics_li">
-					<view class="basics_li_l">实验室</view>
-					<view class="basics_li_r lab_r">
-						<input class="picker-text" @click="popupClick(1)" type="text" disabled v-model="form.subName"
-							placeholder="请输入实验室关键词查询" placeholder-style="font-size: 30rpx;color:#333;">
-						<view class="img-box" @click.stop="saoCode">
-							<img src="@/pages_safetyExamine/images/icon_aqjc_sm.png">
-						</view>
-					</view>
-				</view>
-				<view class="check-for-input-max-box">
-					<view class="left-title-p">隐患描述:</view>
-					<textarea type="text" v-model="form.hazardDescribe" maxlength="50" placeholder="请输入隐患描述"
-						placeholder-style="font-size:28rpx;color:#999;"></textarea>
-				</view>
-				<view class="check-for-img-max-box">
-					<view class="left-title-p">隐患照片(最多上传5张):</view>
-					<view class="right-img-box">
-						<view class="img-box" v-for="(imgUrl,imgIndex) in form.imgDtoList" :key="imgIndex">
-							<img class="img-data" :src="configURL+imgUrl.fileUrl">
-							<img class="position-img" src="@/pages_safetyExamine/images/icon_ssp_closure.png"
-								@click="delImg(imgIndex)">
-						</view>
-						<img class="add-button" src="@/pages_safetyExamine/images/icon_07.png" @click="selectImage()"
-							v-if="form.imgDtoList.length<5">
-					</view>
-				</view>
-			</view>
-			<view class="record"><text @click="handleClick('self')">随手拍上报记录</text></view>
-		</scroll-view>
-		<!-- 房间选择弹出层 -->
-		<view class="popup-max-box" v-if="popupType">
-			<view class="popup-null" @click="popupClick(2)"></view>
-			<view class="popup-big-box">
-				<view class="popup-input-box">
-					<input type="text" maxlength="10" v-model="room" placeholder="请输入关键字">
-					<view @click="buildBySub">搜索</view>
-				</view>
-				<view class="popup-for-max-box">
-					<view class="popup-for-null" v-if="!roomList[0]">暂无数据</view>
-					<view class="popup-for-box" v-for="(item,index) in roomList" :key="index">
-						<view class="name-p">{{item.subName}} ({{item.roomNum?item.roomNum:'-'}})</view>
-						<view class="button-p" @click="popupClickItem(item)">确定</view>
-					</view>
-				</view>
-			</view>
-		</view>
-		<view class="bottom_btn" @click="submitForm()">提交</view>
-	</view>
-
-</template>
-
-<script>
-	import {
-		config
-	} from '@/api/request/config.js'
-	import {
-		laboratoryAppletGetSubDetailInfo
-	} from '@/pages/api/index.js'
-	import {
-		laboratorySubRelInfoGetRelList,
-		getUserCollegCheck,
-		systemDeptDropList,
-		checkClapAdd,
-	} from '@/pages_safetyExamine/api/index.js'
-
-	export default {
-		name: "rectifyList",
-		components: {
-
-		},
-		data() {
-			return {
-				configURL: config.base_url,
-				pageType: 0,
-				//列表请求参数
-				getData: {
-					page: 1,
-					pageSize: 20,
-				},
-				form: {
-					deptId: '',
-					deptName: '',
-					subId: '',
-					subName: '',
-					hazardDescribe: '',
-					imgDtoList: [],
-				},
-				collegeIndex: 0,
-				collegeArray: [],
-				categoryIndex: 0,
-				collegeList: [],
-				categoryArray: ['校级巡查', '院级巡查'],
-				planIndex: 0,
-				planArray: ['请选择巡查计划标题', '2023年3月份校级督导检查', '2023年4月份校级督导检查'],
-				resultIndex: 0,
-				resultArray: ['不符合', '符合'],
-				informIndex: 0,
-				informArray: ['整改告知书', '整改通知书'],
-
-
-				//房间弹层 状态
-				popupType: false,
-				//房间搜索字段
-				room: "",
-				subId: "",
-				roomList: [],
-
-			}
-		},
-		onLoad(option) {
-
-		},
-		onShow() {
-
-		},
-		mounted() {
-			this.listDepartments();
-			// this.getUserCollegCheck();
-		},
-		methods: {
-			//滚动事件
-			scrollGet() {},
-			handleClick(doType) {
-				let self = this;
-				if (doType == 'manage') { //随手拍管理
-					uni.navigateTo({
-						url: '/pages_safetyExamine/views/snapshotManage/snapshotList?pageType=1'
-					});
-				} else if (doType == 'self') { //随手拍上报记录
-					uni.navigateTo({
-						url: '/pages_safetyExamine/views/snapshotManage/snapshotList?pageType=2'
-					});
-				} else if (doType == 'subBtn') { //提交
-
-				}
-
-			},
-			collegeChange(e) {
-				this.collegeIndex = e.target.value;
-				this.form.deptId = this.collegeList[e.target.value].deptId
-				this.form.deptName = this.collegeList[e.target.value].deptName
-			},
-			// 图片上传
-			selectImage() {
-				let self = this;
-				if (this.form.imgDtoList.length > 4) {
-					uni.showToast({
-						title: '最多上传5张图片',
-						icon: "none",
-						mask: true,
-						duration: 2000
-					});
-					return
-				}
-				wx.chooseImage({
-					count: 5,
-					sizeType: ["original", "compressed"],
-					sourceType: ["album", "camera"],
-					success: function(res) {
-						//let tempFilePaths = res.tempFilePaths[0];
-						self.uploadImg(res.tempFilePaths);
-					}
-				});
-			},
-			async uploadImg(tempFilePaths) {
-				var self = this;
-				uni.showLoading({
-					title: '上传中',
-					mask: true
-				});
-				for (let i = 0; i < tempFilePaths.length; i++) {
-					console.log(tempFilePaths[i])
-					uni.uploadFile({
-						url: config.base_url + '/system/file/upload', //仅为示例,非真实的接口地址
-						header: {
-							'Authorization': uni.getStorageSync('token')
-						},
-						filePath: tempFilePaths[i],
-						name: 'file',
-						formData: {
-							'user': 'test'
-						},
-						success: (uploadFileRes) => {
-							let res = JSON.parse(uploadFileRes.data);
-							console.log(res.data)
-							if (res.code == 200) {
-								this.form.imgDtoList.push({
-									'fileUrl': res.data.url,
-									'fileName': res.data.name
-								});
-							} else {
-								uni.showToast({
-									title: res.msg,
-									icon: "none",
-									mask: true,
-									duration: 2000
-								});
-							}
-						},
-						fail: err => {},
-						complete: () => {
-							uni.hideLoading()
-						}
-					});
-				}
-
-			},
-			//删除图片
-			delImg(minIndex) {
-				this.form.imgDtoList.splice(minIndex, 1);
-				this.$forceUpdate();
-			},
-			//搜索房间弹层开关
-			popupClick(type) {
-				if (type == 1) {
-					this.room = "";
-					this.roomList = [];
-					this.popupType = true;
-					this.buildBySub();
-				} else if (type == 2) {
-					this.popupType = false;
-				}
-			},
-			//搜索房间接口
-			async buildBySub() {
-				let self = this;
-				const {
-					data
-				} = await laboratorySubRelInfoGetRelList({
-					'searchValue': this.room,
-					'deptId': this.form.deptId
-				});
-				if (data.code == 200) {
-					if (data.data[0]) {
-						this.roomList = data.data;
-					} else {
-						uni.showToast({
-							title: '未找到相关实验室',
-							icon: "none",
-							mask: true,
-							duration: 2000
-						});
-					}
-				}
-			},
-			//确认搜索房间
-			popupClickItem(item) {
-				console.log(item)
-				this.$set(this.form, "subId", item.subId)
-				this.$set(this.form, "subName", item.subName)
-				this.$set(this.form, "deptId", item.deptId)
-				for (let i = 0; i < this.collegeList.length; i++) {
-					if (item.deptId == this.collegeList[i].deptId) {
-						this.$set(this.form, "deptName", this.collegeList[i].deptName)
-					}
-				}
-				this.popupType = false;
-			},
-			//调用摄像头
-			saoCode() {
-				let self = this;
-				uni.scanCode({
-					onlyFromCamera: true,
-					success: function(res) {
-						let list = res.result.split("?")[1].split("&");
-						let codeData = {};
-						list.forEach((item) => {
-							codeData[item.split("=")[0]] = item.split("=")[1];
-						})
-						console.log('二维码', codeData)
-						if (codeData.code) {
-							self.laboratoryAppletGetSubDetailInfo(codeData.code);
-						} else {
-							uni.showToast({
-								title: '请扫描正确的二维码',
-								icon: "none",
-								mask: true,
-								duration: 2000
-							});
-						}
-					}
-				});
-			},
-			//获取实验室详情
-			async laboratoryAppletGetSubDetailInfo(infoId) {
-				const {
-					data
-				} = await laboratoryAppletGetSubDetailInfo({
-					infoId: infoId
-				});
-				if (data.code == 200) {
-					this.$set(this.form, "subId", data.data.subId)
-					this.$set(this.form, "subName", data.data.subName)
-					this.$set(this.form, "deptId", data.data.deptId)
-					this.$set(this.form, "deptName", data.data.deptName)
-				}
-			},
-			//查询用户身份信息
-			async getUserCollegCheck() {
-				let _this = this;
-				const {
-					data
-				} = await getUserCollegCheck();
-				if (data.code == 200) {
-					this.form.deptId = data.data.dept.deptId;
-					this.form.deptName = data.data.dept.deptName;
-
-				}
-			},
-			//查询学院列表
-			async listDepartments() {
-				let self = this;
-				const {
-					data
-				} = await systemDeptDropList({
-					deptName: '',
-					level: 2,
-					deptType: 1
-				});
-				if (data.code == 200) {
-
-					for (let i = 0; i < data.data.length; i++) {
-						self.collegeArray.push(data.data[i].deptName)
-					}
-					self.collegeList = data.data;
-
-				}
-			},
-			//添加
-			async submitForm() {
-				let _this = this;
-				if (!this.form.deptId) {
-					uni.showToast({
-						title: '请选择学院!',
-						icon: "none",
-						mask: true,
-						duration: 2000
-					});
-					return
-				}
-				if (!this.form.subId) {
-					uni.showToast({
-						title: '请选择实验室!',
-						icon: "none",
-						mask: true,
-						duration: 2000
-					});
-					return
-				}
-				if (this.form.imgDtoList.length == 0) {
-					uni.showToast({
-						title: '请上传隐患照片!',
-						icon: "none",
-						mask: true,
-						duration: 2000
-					});
-					return
-				}
-				const {
-					data
-				} = await checkClapAdd(_this.form);
-				if (data.code == 200) {
-					uni.showToast({
-						title: '提交成功',
-						icon: "none",
-						mask: true,
-						duration: 2000
-					});
-					uni.navigateTo({
-						url: '/pages_safetyExamine/views/snapshotManage/snapshotList?pageType=2'
-					});
-
-				}
-			},
-
-
-		}
-	}
-</script>
-
-<style lang="stylus" scoped>
-	.examine {
-		height: 100%;
-		display flex;
-		box-sizing: border-box;
-
-		.info-max-box {
-			flex: 1;
-			overflow: scroll;
-			padding: 120rpx 0rpx 128rpx;
-			box-sizing: border-box;
-		}
-
-		.header {
-			width: 749rpx;
-			height: 100rpx;
-			background: #FFFFFF;
-			padding: 0 40rpx 0 30rpx;
-			box-sizing: border-box;
-			display: flex;
-			justify-content: space-between;
-			align-items: center;
-			position: fixed;
-			left: 0;
-			top: 0;
-
-			>text {
-				font-size: 30rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #333333;
-				line-height: 42rpx;
-			}
-
-			>img {
-				width: 8rpx;
-				height: 14rpx;
-			}
-		}
-
-		.basics {
-			margin: 0 30rpx;
-			width: 690rpx;
-			background: #FFFFFF;
-			border-radius: 20rpx;
-			padding: 30rpx 28rpx 30rpx;
-			box-sizing: border-box;
-
-			.basics_li {
-				display: flex;
-				justify-content: flex-start;
-				margin-bottom: 24rpx;
-
-				.basics_li_l {
-					width: 146rpx;
-					text-align: left;
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 80rpx;
-				}
-
-				.basics_li_r {
-					width: 486rpx;
-					height: 80rpx;
-					border-radius: 10rpx;
-					opacity: 1;
-					border: 1rpx solid #E0E0E0;
-					padding-left: 20rpx;
-					box-sizing: border-box;
-
-
-				}
-
-				/* 学院 */
-				.college_r {
-					width: 486rpx;
-					height: 80rpx;
-					border-radius: 10rpx;
-					border: 1rpx solid #E0E0E0;
-					display: flex;
-					justify-content: flex-start;
-					align-items: center;
-
-					>view {
-						flex: 1;
-						line-height: 80rpx;
-						font-size: 30rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #333333;
-						line-height: 80rpx;
-					}
-
-					>img {
-						width: 14rpx;
-						height: 8rpx;
-						margin-right: 30rpx;
-					}
-				}
-
-				/* 实验室 */
-				.lab_r {
-					width: 486rpx;
-					height: 80rpx;
-					display: flex;
-					justify-content: flex-start;
-
-					.picker-text {
-						width: 438rpx;
-						height: 80rpx;
-					}
-
-					.img-box {
-						width: 48rpx;
-
-						>img {
-							width: 30rpx;
-							height: 28rpx;
-							margin: 26rpx 18rpx 0 0;
-						}
-					}
-				}
-			}
-
-			/* 隐患描述 */
-			.check-for-input-max-box {
-				.left-title-p {
-					width: 150rpx;
-					line-height: 80rpx;
-					text-align right;
-					font-size: 30rpx;
-				}
-
-				textarea {
-					width: 630rpx;
-					height: 158rpx;
-					border-radius: 20rpx 20rpx 20rpx 20rpx;
-					border: 1rpx solid #E0E0E0;
-					padding: 20rpx 14rpx;
-					box-sizing: border-box;
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 34rpx;
-				}
-			}
-
-			/* 隐患照片 */
-			.check-for-img-max-box {
-				.left-title-p {
-					width: 100%;
-					text-align: left;
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 80rpx;
-				}
-
-				.right-img-box {
-					.img-box {
-						display inline-block;
-						height: 200rpx;
-						width: 200rpx;
-						position relative;
-						margin: 0 14rpx 20rpx 0;
-						border-radius 10rpx;
-						overflow hidden;
-
-						.img-data {
-							height: 200rpx;
-							width: 200rpx;
-						}
-
-						.position-img {
-							position absolute;
-							right: 0;
-							top: 0;
-							width: 36rpx;
-							height: 36rpx;
-						}
-					}
-
-					.img-box:nth-of-type(3n+3) {
-						margin-right: 0rpx;
-					}
-
-					.add-button {
-						margin: 0 0rpx 20rpx 0;
-						border-radius 10rpx;
-						overflow hidden;
-						display inline-block;
-						height: 200rpx;
-						width: 200rpx;
-					}
-				}
-			}
-		}
-
-		.record {
-			overflow: hidden;
-
-			>text {
-				display: block;
-				width: 220rpx;
-				height: 40rpx;
-				background: #E0E0E0;
-				border-radius: 60rpx 60rpx 60rpx 60rpx;
-				margin: 122rpx 0 90rpx 266rpx;
-				font-size: 26rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #0183FA;
-				line-height: 40rpx;
-				text-align: center;
-			}
-		}
-
-		.popup-max-box {
-			z-index: 10;
-			height: 100%;
-			width: 100%;
-			position fixed;
-			background rgba(0, 0, 0, 0.2);
-			display flex;
-
-			flex-direction column;
-
-			.popup-null {
-				flex: 1;
-			}
-
-			.popup-big-box {
-				border-top-left-radius: 20rpx;
-				border-top-right-radius: 20rpx;
-
-				background #fff;
-
-				.popup-input-box {
-					padding: 30rpx 20rpx;
-					display: flex;
-
-					input {
-						flex: 1;
-						height: 70rpx;
-						border: 1rpx solid #e0e0e0;
-						border-radius: 10rpx;
-						margin-right: 20rpx;
-						padding: 0 20rpx;
-					}
-
-					view {
-						background #0183FA;
-						color: #fff;
-						border-radius: 10rpx;
-						width: 140rpx;
-						line-height: 70rpx;
-						text-align center;
-						font-size: 28rpx;
-					}
-				}
-
-				.popup-for-max-box {
-					margin: 0 20rpx 30rpx;
-					height: 600rpx;
-					overflow-y scroll;
-
-					.popup-for-null {
-						line-height: 100rpx;
-						text-align center;
-						color: #999;
-					}
-
-					.popup-for-box {
-						display: flex;
-						padding: 10px 0;
-
-						.name-p {
-							flex: 1;
-							line-height: 60rpx;
-						}
-
-						.button-p {
-							background #0183FA;
-							color: #fff;
-							text-align center;
-							width: 100rpx;
-							line-height: 60rpx;
-							height: 60rpx;
-							border-radius: 10rpx;
-						}
-					}
-				}
-			}
-		}
-
-		.bottom_btn {
-			position: fixed;
-			bottom: 26rpx;
-			left: 30rpx;
-			font-size: 30rpx;
-			font-family: PingFang SC-Medium, PingFang SC;
-			font-weight: 400;
-			color: #FFFFFF;
-			line-height: 90rpx;
-			width: 690rpx;
-			height: 90rpx;
-			background: #0183FA;
-			border-radius: 20rpx;
-			text-align: center;
-
-		}
-	}
-</style>

+ 0 - 602
pages_safetyExamine/views/snapshotManage/snapshotDetail.vue

@@ -1,602 +0,0 @@
-<!-- 随手拍-详情 -->
-<template>
-	<view class="examine">
-		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-			<view class="basics">
-				<view class="grade">
-					<text>学院:</text>
-					<text>{{item.deptName}}</text>
-				</view>
-				<view class="grade">
-					<text>实验室:</text>
-					<text>{{item.subName}}</text>
-				</view>
-				<view class="project">
-					<view class="project_t">隐患描述:</view>
-					<view class="project_b">{{item.hazardDescribe}}</view>
-				</view>
-				<view class="picture">
-					<view class="picture_t">隐患照片:</view>
-					<view class="picture_b" @click="lockImg(item.yhDtoList)">
-						<img :src="baseUrl+item.fileUrl" v-for="(item,index) in item.yhDtoList" />
-					</view>
-				</view>
-				<view class="grade">
-					<text>上报时间:</text>
-					<text>{{item.createTime}}</text>
-				</view>
-				<view class="grade" style="border:none;">
-					<text>上报人:</text>
-					<text>{{item.createName}}</text>
-				</view>
-			</view>
-			<!-- 待整改 -->
-			<view v-if="rectifyStatus==0 && item.rectifyGentle">
-				<view class="await">
-					<view class="result">
-						<view class="result_l">整改结果</view>
-						<view class="result_r">
-							<view v-for="(item,index) in resultArray" :key="index" @click="tabClick(index)">
-								<text :class="resultIndex==index?'checked':'result_r_l' "></text>
-								<text class="result_r_r">{{item}}</text>
-							</view>
-						</view>
-					</view>
-					<view class="describe">
-						<view class="describe_l">{{describeTitle}}:</view>
-						<textarea class="describe_r" type="text" v-model="form.rectifyDescribe" maxlength="50"
-							placeholder="请输入描述内容" placeholder-style="font-size:28rpx;color:#999;"></textarea>
-					</view>
-					<view class="check-for-img-max-box">
-						<view class="left-title-p">隐患照片(最多上传5张):</view>
-						<view class="right-img-box">
-							<view class="img-box" v-for="(imgUrl,imgIndex) in form.imgDtoList" :key="imgIndex">
-								<img class="img-data" :src="baseUrl+imgUrl.fileUrl">
-								<img class="position-img" src="@/pages_safetyExamine/images/icon_ssp_closure.png"
-									@click="delImg(imgIndex)">
-							</view>
-							<img class="add-button" src="@/pages_safetyExamine/images/icon_07.png"
-								@click="selectImage()" v-if="form.imgDtoList.length<5">
-						</view>
-					</view>
-				</view>
-			</view>
-			<!-- 隐患整改 -->
-			<view class="basics" v-if="rectifyStatus==1 || rectifyStatus==2">
-				<view class="small_title">隐患整改</view>
-				<view class="grade">
-					<text>整改结果:</text>
-					<text style="color: #0183FA;">{{item.rectifyStatus==1?'已整改':'暂无法整改'}}</text>
-				</view>
-				<view class="project">
-					<view class="project_t">整改措施:</view>
-					<view class="project_b">{{item.rectifyDescribe}}</view>
-				</view>
-				<view class="picture">
-					<view class="picture_t">上传照片:</view>
-					<view class="picture_b" @click="lockImg(item.zgDtoList)">
-						<img :src="baseUrl+item.fileUrl" v-for="(item,index) in item.zgDtoList" />
-					</view>
-				</view>
-				<view class="grade">
-					<text>整改时间:</text>
-					<text>{{item.rectifyTime}}</text>
-				</view>
-				<view class="grade" style="border:none;">
-					<text>整改人:</text>
-					<text>{{item.rectifyPeople}}</text>
-				</view>
-			</view>
-		</scroll-view>
-		<view v-if="rectifyStatus==0 && item.rectifyGentle" class="bottom_btn" @click="submitForm()">提交</view>
-	</view>
-
-</template>
-
-<script>
-	import {
-		config
-	} from '@/api/request/config.js'
-	import {
-		checkClapById,
-		checkClapRectify
-	} from '@/pages_safetyExamine/api/index.js'
-	export default {
-		name: "rectifyList",
-		components: {
-
-		},
-		data() {
-			return {
-				baseUrl: config.base_url,
-				id: '',
-				rectifyStatus: '', //整改状态,0是待整改,1是已整改,2是暂无法整改
-				pageType: 1,
-				form: {
-					id: '',
-					rectifyStatus: 1, //0待整改 1已整改 2暂无法整改
-					rectifyDescribe: '',
-					imgDtoList: [],
-				},
-				item: {},
-				describeTitle: '整改措施',
-				resultIndex: 0,
-				resultArray: ['已整改', '暂无法整改'],
-			}
-		},
-		onLoad(option) {
-			console.log(option.id)
-			if (option.id) {
-				this.id = option.id
-			}
-			if (option.pageType) {
-				this.pageType = option.pageType
-			}
-			if (option.rectifyStatus) {
-				this.rectifyStatus = option.rectifyStatus
-				if (option.rectifyStatus == 0) {
-					uni.setNavigationBarTitle({
-						title: '待整改'
-					})
-				} else if (option.rectifyStatus == 1) {
-					uni.setNavigationBarTitle({
-						title: '已整改'
-					})
-				} else if (option.rectifyStatus == 2) {
-					uni.setNavigationBarTitle({
-						title: '暂无法整改'
-					})
-				}
-			}
-
-
-		},
-		onShow() {
-
-		},
-		mounted() {
-			this.checkClapById();
-		},
-		methods: {
-			//整改结果
-			tabClick(index) {
-				this.resultIndex = index;
-				if (index == 0) {
-					this.describeTitle = '整改措施';
-					this.form.rectifyStatus = 1;
-				} else if (index == 1) {
-					this.describeTitle = '原因描述';
-					this.form.rectifyStatus = 2;
-				}
-			},
-			//滚动事件
-			scrollGet() {},
-			handleClick(doType) {
-				let self = this;
-				if (doType == 'subBtn') { //提交
-
-				}
-
-			},
-			//查看图片
-			lockImg(list) {
-				console.log(list)
-				if (!list[0]) {
-					return
-				}
-				let urlList = [];
-				for (let i = 0; i < list.length; i++) {
-					urlList.push(this.baseUrl + list[i].fileUrl)
-				}
-				wx.previewImage({
-					urls: urlList, //需要预览的图片http链接列表,多张的时候,url直接写在后面就行了
-					current: '', // 当前显示图片的http链接,默认是第一个
-					success: function(res) {},
-					fail: function(res) {},
-					complete: function(res) {},
-				})
-			},
-
-			// 图片上传
-			selectImage() {
-				let self = this;
-				if (this.form.imgDtoList.length > 4) {
-					uni.showToast({
-						title: '最多上传5张图片',
-						icon: "none",
-						mask: true,
-						duration: 2000
-					});
-					return
-				}
-				wx.chooseImage({
-					count: 1,
-					sizeType: ["original", "compressed"],
-					sourceType: ["album", "camera"],
-					success: function(res) {
-						let tempFilePaths = res.tempFilePaths[0];
-						self.uploadImg(tempFilePaths);
-					}
-				});
-			},
-			async uploadImg(tempFilePaths) {
-				var self = this;
-				uni.showLoading({
-					title: '上传中',
-					mask: true
-				});
-				uni.uploadFile({
-					url: config.base_url + '/system/file/upload', //仅为示例,非真实的接口地址
-					header: {
-						'Authorization': uni.getStorageSync('token')
-					},
-					filePath: tempFilePaths,
-					name: 'file',
-					formData: {
-						'user': 'test'
-					},
-					success: (uploadFileRes) => {
-						let res = JSON.parse(uploadFileRes.data);
-						if (res.code == 200) {
-							this.form.imgDtoList.push({
-								'fileUrl': res.data.url,
-								'fileName': res.data.name
-							});
-							console.log(res.data.url)
-						} else {
-							uni.showToast({
-								title: res.msg,
-								icon: "none",
-								mask: true,
-								duration: 2000
-							});
-						}
-					},
-					fail: err => {},
-					complete: () => {
-						uni.hideLoading()
-					}
-				});
-			},
-			//删除图片
-			delImg(minIndex) {
-				this.form.imgDtoList.splice(minIndex, 1);
-				this.$forceUpdate();
-			},
-			//随手拍详情
-			async checkClapById() {
-				let _this = this;
-				const {
-					data
-				} = await checkClapById({
-					id: this.id
-				});
-				if (data.code == 200) {
-					_this.item = data.data;
-					_this.form.id = data.data.id;
-
-				}
-			},
-			//提交
-			async submitForm() {
-				let _this = this;
-				const {
-					data
-				} = await checkClapRectify(_this.form);
-				if (data.code == 200) {
-					uni.showToast({
-						title: '提交成功',
-						icon: "none",
-						mask: true,
-						duration: 2000
-					});
-					uni.redirectTo({
-						url: '/pages_safetyExamine/views/snapshotManage/snapshotList?pageType=' + this.pageType
-					});
-
-				}
-			},
-
-
-
-		}
-	}
-</script>
-
-<style lang="stylus" scoped>
-	.examine {
-		height: 100%;
-		display flex;
-		box-sizing: border-box;
-
-		.info-max-box {
-			flex: 1;
-			overflow: scroll;
-			padding-bottom: 128rpx;
-			box-sizing: border-box;
-		}
-
-		.basics {
-			width: 690rpx;
-			background: #FFFFFF;
-			border-radius: 20rpx;
-			padding: 30rpx 30rpx 32rpx;
-			box-sizing: border-box;
-			margin: 20rpx 30rpx;
-
-			.small_title {
-				font-size: 30rpx;
-				font-family: PingFang SC-Medium, PingFang SC;
-				font-weight: 400;
-				color: #333333;
-				line-height: 80rpx;
-				border-bottom: 1rpx solid #D8D8D8;
-			}
-
-			.grade {
-				height: 80rpx;
-				display: flex;
-				justify-content: space-between;
-				border-bottom: 1rpx solid #D8D8D8;
-
-				>text:nth-of-type(1) {
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #666666;
-					line-height: 80rpx;
-					width: 140rpx;
-				}
-
-				>text:nth-of-type(2) {
-					flex: 1;
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 80rpx;
-					text-align: right;
-				}
-			}
-
-			.project {
-				.project_t {
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 80rpx;
-				}
-
-				.project_b {
-					min-height: 158rpx;
-					font-size: 28rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 40rpx;
-					padding: 20rpx 14rpx;
-					box-sizing: border-box;
-					background: #F5F5F5;
-					border-radius: 20rpx 20rpx 20rpx 20rpx;
-				}
-
-				.project_b2 {
-					font-size: 26rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #666666;
-					line-height: 26rpx;
-					margin-top: 14rpx;
-					text-align: right;
-				}
-			}
-
-			.picture {
-				.picture_t {
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 80rpx;
-				}
-
-				.picture_b {
-					display: flex;
-					justify-content: flex-start;
-					flex-wrap: wrap;
-
-					>img {
-						width: 200rpx;
-						height: 200rpx;
-						border-radius: 10rpx 10rpx 10rpx 10rpx;
-						margin-right: 14rpx;
-						margin-bottom: 10rpx;
-					}
-
-					>img:nth-of-type(3n+3) {
-						margin-right: 0rpx;
-					}
-				}
-			}
-		}
-
-		/* 待整改 */
-		.await {
-			width: 690rpx;
-			background: #FFFFFF;
-			border-radius: 20rpx;
-			padding: 30rpx 30rpx 32rpx;
-			box-sizing: border-box;
-			margin: 20rpx 30rpx;
-
-			/* 整改结果 */
-			.result {
-				display: flex;
-				justify-content: flex-start;
-				border-bottom: 1rpx solid #D8D8D8;
-
-				.result_l {
-					width: 146rpx;
-					text-align: left;
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 80rpx;
-				}
-
-				.result_r {
-					width: 486rpx;
-					height: 80rpx;
-					padding-left: 20rpx;
-					box-sizing: border-box;
-					display: flex;
-					justify-content: flex-end;
-					align-items: center;
-
-					>view {
-						display: flex;
-						justify-content: flex-start;
-						align-items: center;
-						margin-right: 24rpx;
-
-						.result_r_l {
-							display: inline-block;
-							width: 30rpx;
-							height: 30rpx;
-							border-radius: 50%;
-							border: 1rpx solid #E0E0E0;
-							margin-right: 14rpx;
-						}
-
-						.result_r_r {
-							font-size: 30rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							color: #333333;
-							line-height: 80rpx;
-						}
-
-						.checked {
-							display: inline-block;
-							width: 30rpx;
-							height: 30rpx;
-							border-radius: 50%;
-							border: 1rpx solid #0183FA;
-							margin-right: 14rpx;
-							position: relative;
-						}
-
-						.checked::after {
-							content: '';
-							position: absolute;
-							top: 5rpx;
-							left: 5rpx;
-							width: 20rpx;
-							height: 20rpx;
-							border-radius: 50%;
-							background: #0183FA;
-						}
-					}
-				}
-			}
-
-			/* 原因描述 */
-			.describe {
-				.describe_l {
-					width: 158rpx;
-					text-align: left;
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 80rpx;
-				}
-
-				.describe_r {
-					width: 630rpx;
-					height: 158rpx;
-					border-radius: 20rpx 20rpx 20rpx 20rpx;
-					opacity: 1;
-					border: 1rpx solid #E0E0E0;
-					padding: 20rpx 14rpx;
-					box-sizing: border-box;
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 34rpx;
-				}
-			}
-
-			/* 上传照片 */
-			.check-for-img-max-box {
-				.left-title-p {
-					width: 100%;
-					text-align: left;
-					font-size: 30rpx;
-					font-family: PingFang SC-Medium, PingFang SC;
-					font-weight: 400;
-					color: #333333;
-					line-height: 80rpx;
-				}
-
-				.right-img-box {
-					.img-box {
-						display inline-block;
-						height: 200rpx;
-						width: 200rpx;
-						position relative;
-						margin: 0 14rpx 20rpx 0;
-						border-radius 10rpx;
-						overflow hidden;
-
-						.img-data {
-							height: 200rpx;
-							width: 200rpx;
-						}
-
-						.position-img {
-							position absolute;
-							right: 0;
-							top: 0;
-							width: 36rpx;
-							height: 36rpx;
-						}
-					}
-
-					.img-box:nth-of-type(3n+3) {
-						margin-right: 0rpx;
-					}
-
-					.add-button {
-						margin: 0 0rpx 20rpx 0;
-						border-radius 10rpx;
-						overflow hidden;
-						display inline-block;
-						height: 200rpx;
-						width: 200rpx;
-					}
-				}
-			}
-		}
-
-		.bottom_btn {
-			position: fixed;
-			bottom: 26rpx;
-			left: 30rpx;
-			font-size: 30rpx;
-			font-family: PingFang SC-Medium, PingFang SC;
-			font-weight: 400;
-			color: #FFFFFF;
-			line-height: 90rpx;
-			width: 690rpx;
-			height: 90rpx;
-			background: #0183FA;
-			border-radius: 20rpx;
-			text-align: center;
-
-		}
-	}
-</style>

+ 0 - 450
pages_safetyExamine/views/snapshotManage/snapshotList.vue

@@ -1,450 +0,0 @@
-<!-- 随手拍-列表 -->
-<template>
-	<view class="examine">
-		<view class="header">
-			<view class="tabTitle_tow">
-				<view class="tabTitle_tow_li" @tap="tabClickTow(index)" :key="index" v-for="(item,index) in tabTextTow">
-					<view :class="{on:curTabTow==index}" class="tabTitle_tow_text">{{item}}</view>
-					<view :class="{on:curTabTow==index}" class="tabTitle_tow_across"></view>
-				</view>
-			</view>
-		</view>
-
-		<scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
-			<view class="list_three">
-				<view class="list_three_li" v-for="(item,index) in  dataList" :key="index"
-					@click="handleClick(item,'detail')">
-					<view class="list_three_li_t">
-						<view class="list_three_li_t_l"></view>
-						<view class="list_three_li_t_c">{{item.subName}}</view>
-						<view class="list_three_li_t_r"></view>
-					</view>
-					<view class="list_three_li_m">
-						<view class="list_three_li_m_t">{{item.hazardDescribe}}</view>
-						<view class="list_three_li_m_b">
-							<text class="blue_color" v-if="item.rectifyStatus==0">待整改</text>
-							<text class="green_color" v-if="item.rectifyStatus==1">已整改</text>
-							<text class="orange_color" v-if="item.rectifyStatus==2">暂无法整改</text>
-							<text>{{item.deptName}}</text>
-						</view>
-					</view>
-					<view class="list_three_li_b">
-						<view class="list_three_li_b_l">
-							<img src="@/pages_safetyExamine/images/icon_ssp_ry.png" />
-							<text>上报人:{{item.createName}}</text>
-						</view>
-						<view class="list_three_li_b_r">{{item.timeFlag}}</view>
-					</view>
-				</view>
-			</view>
-			<img class="null-img" v-if="!dataList[0]" src="@/pages_safetyExamine/images/null-data-1.png">
-		</scroll-view>
-	</view>
-
-</template>
-
-<script>
-	import {
-		config
-	} from '@/api/request/config.js'
-	import {
-		checkClapList,
-		checkClapMylist
-	} from '@/pages_safetyExamine/api/index.js'
-	export default {
-		name: "rectifyList",
-		components: {
-
-		},
-		data() {
-			return {
-				pageType: 1,
-				//列表请求参数
-				getData: {
-					page: 1,
-					pageSize: 20,
-					rectifyStatus: 0,
-				},
-				tabTextTow: ['待整改', '已整改', '暂无法整改'],
-				curTabTow: 0,
-				form: {
-					name: '',
-					type: '校院巡查',
-					startTime: '',
-					endTime: '',
-					inspectScope: [],
-					tiemQuickList: [],
-					scopeIndex: '',
-					seleteListLab: [],
-					patrolIndex: '',
-					seleteListMember: [],
-				},
-				collegeList: [{
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, {
-					name: '学院名称',
-					type: false
-				}, ],
-				collegeIndex: 0,
-				collegeArray: ['选择学院', '学院名称1', '学院名称2', '学院名称3', ],
-				dataList: [],
-			}
-		},
-		onLoad(option) {
-			console.log(option.pageType)
-			if (option.form) {
-				this.form = JSON.parse(decodeURIComponent(option.form));
-				console.log(this.form)
-			}
-			if (option.pageType) {
-				this.pageType = option.pageType
-				if (option.pageType == 1) {
-					uni.setNavigationBarTitle({
-						title: '随手拍管理'
-					})
-				} else if (option.pageType == 2) {
-					uni.setNavigationBarTitle({
-						title: '随手拍上报记录'
-					})
-				}
-			}
-
-		},
-		onShow() {
-			this.dataList = [];
-			this.getList()
-		},
-		mounted() {
-
-		},
-		methods: {
-			//顶部tab点击
-			tabClickTow(index) {
-				this.dataList = [];
-				this.curTabTow = index;
-				this.getData.page = 1;
-				this.getData.rectifyStatus = index;
-				this.getList()
-			},
-
-			//滚动事件
-			scrollGet() {
-				let self = this;
-				if (self.total / self.getData.pageSize <= self.getData.page) {
-					console.log('没有更多数据!')
-				} else {
-					setTimeout(function() {
-						self.getData.page += 1;
-						self.getList();
-					}, 1000)
-
-				}
-			},
-			handleClick(item, doType) {
-				let self = this;
-				if (doType == 'subBtn') { //
-
-				} else if (doType == 'detail') { //详情
-					uni.navigateTo({
-						url: '/pages_safetyExamine/views/snapshotManage/snapshotDetail?id=' + item.id +
-							'&rectifyStatus=' + this.getData.rectifyStatus + '&pageType=' + this.pageType
-					})
-				}
-
-			},
-			async getList() {
-				let _this = this;
-				if (this.pageType == 1) { //随手拍管理
-					const {
-						data
-					} = await checkClapList(this.getData);
-					if (data.code == 200) {
-						this.total = data.data.total;
-						this.dataList = [...this.dataList, ...data.data.records]
-					}
-				} else if (this.pageType == 2) { //随手拍记录
-					const {
-						data
-					} = await checkClapMylist(this.getData);
-					if (data.code == 200) {
-						this.total = data.data.total;
-						this.dataList = [...this.dataList, ...data.data.records]
-					}
-				}
-
-			},
-
-		}
-	}
-</script>
-
-<style lang="stylus" scoped>
-	.examine {
-		height: 100%;
-		display flex;
-		// padding: 0 30rpx;
-		// box-sizing: border-box;
-		padding-bottom: 20rpx;
-		box-sizing: border-box;
-
-		.blue_color {
-			color: #0183FA;
-			border: 1rpx solid #0183FA;
-		}
-
-		.red_color {
-			color: #FF4545;
-			border: 1rpx solid #FF4545;
-		}
-
-		.green_color {
-			color: #1FA50D;
-			border: 1rpx solid #1FA50D;
-		}
-
-		.orange_color {
-			color: #FA8E1B;
-			border: 1rpx solid #FA8E1B;
-		}
-
-		.gray_color {
-			color: #A2A2A2;
-			border: 1rpx solid #A2A2A2;
-		}
-
-		.null-img {
-			display block;
-			width: 276rpx;
-			height: 321rpx;
-			margin: 100rpx 0 0 274rpx;
-		}
-
-		.info-max-box {
-			flex: 1;
-			overflow: scroll;
-
-			padding: 120rpx 0rpx 0;
-			box-sizing: border-box;
-		}
-
-		/* 切换按钮 */
-		.header {
-			width: 100%;
-			position: fixed;
-			top: 0rpx;
-			z-index: 100;
-
-			.tabTitle_tow {
-				width: 100%;
-				height: 100rpx;
-				background: #fff;
-				display flex;
-				justify-content: flex-start;
-				align-items: center;
-				border-bottom: 1rpx solid #E0E0E0;
-
-				.tabTitle_tow_li {
-					flex: 1;
-					position: relative;
-					text-align center;
-
-					.tabTitle_tow_text {
-						display: inline-block;
-						font-size: 30rpx;
-						font-family: PingFang SC;
-						font-weight: 500;
-						color: #333333;
-						line-height: 46rpx;
-						position: relative;
-
-						&.on {
-							color: #0183FA;
-						}
-					}
-
-					.tabTitle_tow_across {
-						width: 50rpx;
-						height: 4rpx;
-						background: #0183FA;
-						border-radius: 2rpx;
-						margin-left: 38%;
-						display none;
-
-						&.on {
-							display block;
-						}
-					}
-
-				}
-			}
-		}
-
-		.list_three {
-			padding: 0 30rpx;
-			box-sizing: border-box;
-
-			.list_three_li {
-				position: relative;
-				width: 690rpx;
-				height: 336rpx;
-				background: #fff;
-				border-radius: 10rpx;
-				overflow: hidden;
-				margin-bottom: 20rpx;
-
-				.list_three_li_t {
-					width: 100%;
-					position: absolute;
-					left: 0;
-					top: 0;
-
-					.list_three_li_t_l {
-						position: absolute;
-						left: -15rpx;
-						top: 76rpx;
-						display: inline-block;
-						width: 30rpx;
-						height: 30rpx;
-						background: #F5F5F5;
-						border-radius: 15rpx;
-					}
-
-					.list_three_li_t_c {
-						width: 630rpx;
-						height: 110rpx;
-						position: absolute;
-						left: 30rpx;
-						top: 0;
-						font-size: 30rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #333333;
-						line-height: 110rpx;
-						border-bottom: 1rpx dashed #D8D8D8;
-						overflow: hidden;
-						text-overflow: ellipsis;
-						white-space: nowrap;
-						padding-right: 60rpx;
-						box-sizing: border-box;
-					}
-
-					.list_three_li_t_r {
-						position: absolute;
-						right: -15rpx;
-						top: 76rpx;
-						width: 30rpx;
-						height: 30rpx;
-						background: #F5F5F5;
-						border-radius: 15rpx;
-					}
-				}
-
-				.list_three_li_m {
-					position: absolute;
-					top: 110rpx;
-					left: 0;
-					width: 690rpx;
-					height: 158rpx;
-					padding-left: 30rpx;
-					box-sizing: border-box;
-
-					.list_three_li_m_t {
-						font-size: 28rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #666666;
-						line-height: 40rpx;
-						margin-top: 22rpx;
-						white-space: nowrap;
-						overflow: hidden;
-						text-overflow: ellipsis;
-					}
-
-					.list_three_li_m_b {
-						margin-top: 26rpx;
-
-						>text:nth-of-type(1) {
-							font-size: 26rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							line-height: 40rpx;
-							border-radius: 6rpx;
-							padding: 0 20rpx;
-							box-sizing: border-box;
-							margin-right: 14rpx;
-						}
-
-						>text:nth-of-type(2) {
-							display: inline-block;
-							width: 380rpx;
-							font-size: 26rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							color: #333333;
-							line-height: 26rpx;
-							overflow: hidden;
-							text-overflow: ellipsis;
-							white-space: nowrap;
-						}
-					}
-				}
-
-				.list_three_li_b {
-					height: 76rpx;
-					width: 100%;
-					position: absolute;
-					top: 258rpx;
-					left: 0;
-					padding: 0 30rpx;
-					box-sizing: border-box;
-					display: flex;
-					justify-content: space-between;
-					align-items: center;
-
-					.list_three_li_b_l {
-						display: flex;
-						justify-content: space-between;
-						align-items: center;
-
-						>img {
-							width: 28rpx;
-							height: 30rpx;
-							margin-right: 14rpx;
-						}
-
-						>text {
-							font-size: 28rpx;
-							font-family: PingFang SC-Medium, PingFang SC;
-							font-weight: 400;
-							color: #666666;
-							line-height: 76rpx;
-						}
-					}
-
-					.list_three_li_b_r {
-						font-size: 24rpx;
-						font-family: PingFang SC-Medium, PingFang SC;
-						font-weight: 400;
-						color: #999999;
-						line-height: 76rpx;
-					}
-				}
-
-			}
-		}
-
-	}
-</style>