safecheck-client 3.0.30-62-t10 → 3.0.30-62-t12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (246) hide show
  1. package/examples/SafePlan/comp.js +1527 -1527
  2. package/examples/SafePlan-liaoyuan/comp.js +1432 -1432
  3. package/examples/SafePlan-shaoguan/comp.js +1190 -1190
  4. package/examples/SafePlan-tongchuan/comp.js +1480 -1480
  5. package/examples/SafePlan-wenxi/comp.js +1545 -1545
  6. package/examples/SafePlan-zhoukou/comp.js +1525 -1525
  7. package/examples/SafePlanrongcheng/comp.js +1141 -1141
  8. package/examples/SafePlanrongcheng-gs/comp.js +1140 -1140
  9. package/examples/SafePlanrongcheng-gssq/comp.js +1143 -1143
  10. package/examples/SafePlanrongcheng-mysq/comp.js +1144 -1144
  11. package/package.json +1 -1
  12. package/src/components/CheckerCount/ZhouKouCheckCount.vue +272 -272
  13. package/src/components/DefectDealMain/DefectPaperNew.vue +1052 -1052
  14. package/src/components/NewDefectList/DefectPaperNew.vue +1079 -1079
  15. package/src/components/checkplan/CheckDetail.vue +205 -205
  16. package/src/components/checkplan/SelectCheckPlan.vue +311 -311
  17. package/src/components/createcheckplan/PlanUersList.vue +137 -137
  18. package/src/components/defect/DefectPaper.vue +764 -764
  19. package/src/components/defect/DefectPaperWeiXiu.vue +508 -508
  20. package/src/components/inspections/InspectionList.vue +476 -476
  21. package/src/components/inspections/InspectionLists.vue +478 -478
  22. package/src/components/inspections/InspectionListss.vue +477 -477
  23. package/src/components/noplan/NoPlanSearchUser.vue +300 -300
  24. package/src/components/olddata/OldPaperList.vue +340 -340
  25. package/src/components/paper/PaperList.vue +790 -790
  26. package/src/components/paper/filialeCheckInfo.vue +111 -111
  27. package/src/components/pc/CheckNoDetail.vue +209 -209
  28. package/src/components/pc/DefectDeal.vue +997 -997
  29. package/src/components/pc/NewCheckpaper.vue +16 -60
  30. package/src/components/pc/PaperChazhiMain.vue +504 -504
  31. package/src/components/pc/PaperDefectMain.vue +879 -866
  32. package/src/components/pc/PaperEdit.vue +151 -151
  33. package/src/components/pc/PaperVisitMain.vue +179 -179
  34. package/src/components/pc/SafeVisitHistory.vue +208 -208
  35. package/src/components/pc/SafecheckDeviceList.vue +260 -260
  36. package/src/components/pc/SecurityCheckLedger.vue +133 -133
  37. package/src/components/pc/SelectCheckNoPlan.vue +278 -278
  38. package/src/components/pc/SelectCheckPlanAndNoPLan.vue +281 -281
  39. package/src/components/planmanage/checkPlanList.vue +369 -369
  40. package/src/components/planmanage/checkUserList.vue +773 -773
  41. package/src/components/querycheckpaper/CheckSearchUser.vue +1067 -1067
  42. package/src/components/querycheckpaper/CheckSearchUserNew.vue +1109 -1109
  43. package/src/components/querycheckpaper/ShebeiSearchUser.vue +690 -690
  44. package/src/components/report/CheckPlanAreaList.vue +505 -505
  45. package/src/components/report/CheckPlanUserList.vue +216 -216
  46. package/src/components/report/NoCheckplanSafecheck.vue +212 -212
  47. package/src/components/rongcheng/CheckSearchArea.vue +703 -703
  48. package/src/components/rongcheng/CheckSearchUser.vue +936 -936
  49. package/src/components/rongcheng/CheckSearchUserNo.vue +778 -778
  50. package/src/components/rongcheng/CheckUserList.vue +205 -205
  51. package/src/components/rongcheng/DefectPaper.vue +676 -676
  52. package/src/components/rongcheng/PaperListAJ.vue +434 -434
  53. package/src/components/rongcheng/PaperListNPAJ.vue +431 -431
  54. package/src/components/rongcheng/PaperListNPSQ.vue +455 -455
  55. package/src/components/rongcheng/PaperListSQ.vue +444 -444
  56. package/src/components/rongcheng/checkerplan/SelectCheckPlan.vue +271 -271
  57. package/src/components/rongcheng/report/CheckPlanUserList.vue +228 -228
  58. package/src/components/safecheckNew/PaperList.vue +785 -785
  59. package/src/components/shaoguan/DefectPaper.vue +217 -217
  60. package/src/components/shaoguan/PaperList.vue +466 -466
  61. package/src/components/userfile/UserInfoAudit.vue +316 -316
  62. package/src/filiale/ALshan/pc/CheckSearchUser.vue +927 -927
  63. package/src/filiale/ALshan/pc/checkUserList.vue +714 -714
  64. package/src/filiale/ancheng/pc/PaperList.vue +659 -659
  65. package/src/filiale/ankangyihua/pc/CheckPlanAreaList.vue +512 -512
  66. package/src/filiale/ankangyihua/pc/CheckSearchUser.vue +1039 -1039
  67. package/src/filiale/ankangyihua/pc/DefectPaperWeiXiu.vue +545 -545
  68. package/src/filiale/ankangyihua/pc/PaperDefectMain.vue +864 -864
  69. package/src/filiale/ankangyihua/pc/PaperList.vue +656 -656
  70. package/src/filiale/ankangyihua/pc/checkUserList.vue +697 -697
  71. package/src/filiale/baiyin/pc/CheckPlanAreaList.vue +485 -485
  72. package/src/filiale/baiyin/pc/CheckSearchUser.vue +1067 -1067
  73. package/src/filiale/baiyin/pc/DefectPaperNew.vue +1052 -1052
  74. package/src/filiale/baiyin/pc/PaperList.vue +790 -790
  75. package/src/filiale/baiyin/pc/checkUserList.vue +771 -771
  76. package/src/filiale/bayan/android/PhoneUpUserinfo.vue +1376 -1376
  77. package/src/filiale/bayan/pc/CheckDetail.vue +205 -205
  78. package/src/filiale/bayan/pc/CheckSearchUser.vue +1110 -1110
  79. package/src/filiale/bayan/pc/DefectPaperNew.vue +1239 -1239
  80. package/src/filiale/bayan/pc/PaperList.vue +900 -900
  81. package/src/filiale/bayan/pc/SelectCheckPlan.vue +396 -396
  82. package/src/filiale/dexin/pc/DefectPaperNew.vue +1066 -1066
  83. package/src/filiale/dexin/pc/PaperList.vue +805 -805
  84. package/src/filiale/fugou/pc/DefectPaperNew.vue +1085 -1085
  85. package/src/filiale/fugou/pc/PaperDefectMain.vue +928 -928
  86. package/src/filiale/fugou/pc/PaperList.vue +911 -911
  87. package/src/filiale/fugou/pc/checkPlanList.vue +371 -371
  88. package/src/filiale/fugou/pc/checkUserList.vue +904 -904
  89. package/src/filiale/fugu/pc/CheckSearchUser.vue +977 -977
  90. package/src/filiale/fugu/pc/SelectCheckPlan.vue +273 -273
  91. package/src/filiale/fugu/pc/planmanage/checkUserList.vue +688 -688
  92. package/src/filiale/ganquan/pc/DefectPaperNew.vue +1009 -1009
  93. package/src/filiale/ganquan/pc/PaperList.vue +654 -654
  94. package/src/filiale/ganquan/pc/PaperVisitMain.vue +166 -166
  95. package/src/filiale/ganquan/pc/SelectCheckPlan.vue +234 -234
  96. package/src/filiale/ganquan/pc/checkUserList.vue +681 -681
  97. package/src/filiale/gehua/pc/PaperList.vue +558 -558
  98. package/src/filiale/gehua/pc/checkUserList.vue +720 -720
  99. package/src/filiale/guangxi/pc/CheckPlanAreaList.vue +471 -471
  100. package/src/filiale/guangxi/pc/DefectPaperNew.vue +988 -988
  101. package/src/filiale/hanzhong/pc/CheckSearchUser.vue +1127 -1127
  102. package/src/filiale/hanzhong/pc/CheckUserList.vue +755 -755
  103. package/src/filiale/hanzhong/pc/PaperList.vue +702 -702
  104. package/src/filiale/huaran/pc/PaperList.vue +843 -843
  105. package/src/filiale/huaran/pc/checkPlanList.vue +419 -419
  106. package/src/filiale/huaran/pc/checkUserList.vue +900 -900
  107. package/src/filiale/huatong/pc/PaperDefectMain.vue +800 -800
  108. package/src/filiale/huatong/pc/PaperList.vue +789 -789
  109. package/src/filiale/huayin/pc/PaperList.vue +621 -621
  110. package/src/filiale/jiaocheng/pc/CheckSearchUser.vue +1011 -1011
  111. package/src/filiale/jinbin/pc/CheckPlanAreaList.vue +479 -479
  112. package/src/filiale/jingyang/pc/CheckSearchUser.vue +1062 -1062
  113. package/src/filiale/jingyang/pc/PaperList.vue +793 -793
  114. package/src/filiale/jingyang/pc/ReportCheckItemList.vue +543 -543
  115. package/src/filiale/kelai/pc/CheckPlanAreaList.vue +476 -476
  116. package/src/filiale/kelai/pc/CheckSearchUser.vue +1011 -1011
  117. package/src/filiale/kelai/pc/DefectPaperNew.vue +1090 -1090
  118. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasPaper.vue +897 -897
  119. package/src/filiale/kelai/pc/PaperList.vue +596 -596
  120. package/src/filiale/kelai/pc/checkUserList.vue +698 -698
  121. package/src/filiale/liaoyuan/pc/CheckSearchUser.vue +963 -963
  122. package/src/filiale/liaoyuan/pc/DefectPaperWeiXiu.vue +1011 -1011
  123. package/src/filiale/liaoyuan/pc/PaperList.vue +637 -637
  124. package/src/filiale/liaoyuan/pc/checkPlanList.vue +373 -373
  125. package/src/filiale/lixian/pc/CheckPlanAreaList.vue +467 -467
  126. package/src/filiale/lixian/pc/CheckSearchUser.vue +927 -927
  127. package/src/filiale/lixian/pc/PaperChazhiMain.vue +540 -540
  128. package/src/filiale/lixian/pc/PaperDefectMain.vue +551 -551
  129. package/src/filiale/lixian/pc/PaperList.vue +620 -620
  130. package/src/filiale/lixian/pc/checkPlanList.vue +366 -366
  131. package/src/filiale/lixian/pc/checkUserList.vue +761 -761
  132. package/src/filiale/minsheng/pc/CheckSearchUser.vue +976 -976
  133. package/src/filiale/minsheng/pc/checkUserList.vue +806 -806
  134. package/src/filiale/pingxiang/pc/DefectPaperNew.vue +1012 -1012
  135. package/src/filiale/pingxiang/pc/PaperList.vue +595 -595
  136. package/src/filiale/qianneng/pc/DefectPaperNew.vue +1072 -1072
  137. package/src/filiale/qianneng/pc/NoCheckplanSafecheck.vue +220 -220
  138. package/src/filiale/qianneng/pc/PaperList.vue +777 -777
  139. package/src/filiale/qianneng/pc/checkPlanList.vue +429 -429
  140. package/src/filiale/qianneng/pc/checkUserList.vue +871 -871
  141. package/src/filiale/qingjian/pc/PaperDefectMain.vue +895 -895
  142. package/src/filiale/qingtongxia/pc/PaperDefectMain.vue +858 -858
  143. package/src/filiale/rizhao/pc/PaperList.vue +714 -714
  144. package/src/filiale/rongchuang/pc/PaperList.vue +812 -812
  145. package/src/filiale/rongchuang/pc/checkUserList.vue +621 -621
  146. package/src/filiale/shanxian/android/AddPlanItem.vue +447 -447
  147. package/src/filiale/shanxian/pc/CheckDetail.vue +205 -205
  148. package/src/filiale/shanxian/pc/CheckSearchUser.vue +1114 -1114
  149. package/src/filiale/shanxian/pc/DefectPaperNew.vue +1096 -1096
  150. package/src/filiale/shanxian/pc/PaperList.vue +785 -785
  151. package/src/filiale/shanxian/pc/SelectCheckPlan.vue +324 -324
  152. package/src/filiale/shanxian/pc/checkUserList.vue +700 -700
  153. package/src/filiale/shaoguan/pc/PaperList.vue +589 -589
  154. package/src/filiale/shexian/pc/DefectPaperNew.vue +1161 -1161
  155. package/src/filiale/shexian/pc/PaperDefectMain.vue +893 -893
  156. package/src/filiale/shexian/pc/PaperList.vue +822 -822
  157. package/src/filiale/shimen/pc/CheckPlanAreaList.vue +463 -463
  158. package/src/filiale/shimen/pc/CheckSearchUser.vue +927 -927
  159. package/src/filiale/shimen/pc/PaperDefectMain.vue +589 -589
  160. package/src/filiale/shimen/pc/PaperList.vue +547 -547
  161. package/src/filiale/shiquan/pc/checkUserList.vue +755 -755
  162. package/src/filiale/siyang/pc/CheckPlanAreaList.vue +512 -512
  163. package/src/filiale/siyang/pc/CheckSearchUser.vue +1035 -1035
  164. package/src/filiale/siyang/pc/PaperDefectMain.vue +864 -864
  165. package/src/filiale/siyang/pc/PaperList.vue +834 -834
  166. package/src/filiale/siyang/pc/checkPlanList.vue +367 -367
  167. package/src/filiale/siyang/pc/checkUserList.vue +765 -765
  168. package/src/filiale/tianke/pc/PaperDefectMain.vue +891 -891
  169. package/src/filiale/tongchuan/pc/CheckDetail.vue +205 -205
  170. package/src/filiale/tongchuan/pc/CheckPlanAreaList.vue +502 -502
  171. package/src/filiale/tongchuan/pc/CheckPlanUserList.vue +246 -246
  172. package/src/filiale/tongchuan/pc/CheckSearchUser.vue +1045 -1045
  173. package/src/filiale/tongchuan/pc/DefectPaper.vue +764 -764
  174. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +593 -593
  175. package/src/filiale/tongchuan/pc/NoCheckplanSafecheck.vue +213 -213
  176. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +1060 -1060
  177. package/src/filiale/tongchuan/pc/PaperList.vue +670 -670
  178. package/src/filiale/tongchuan/pc/SelectCheckPlan.vue +296 -296
  179. package/src/filiale/tongchuan/pc/checkUserList.vue +639 -639
  180. package/src/filiale/weinan/pc/CheckBookSearchUserList.vue +735 -735
  181. package/src/filiale/weinan/pc/CheckDetail.vue +278 -278
  182. package/src/filiale/weinan/pc/CheckDetailOutHelp.vue +297 -297
  183. package/src/filiale/weinan/pc/CheckNoDetail.vue +259 -259
  184. package/src/filiale/weinan/pc/CheckPlanUserList.vue +338 -338
  185. package/src/filiale/weinan/pc/CheckSearchUser.vue +1078 -1078
  186. package/src/filiale/weinan/pc/DefectPaperNew.vue +1096 -1096
  187. package/src/filiale/weinan/pc/PaperDefectMain.vue +576 -576
  188. package/src/filiale/weinan/pc/PaperList.vue +674 -674
  189. package/src/filiale/weinan/pc/SelectCheckNoPlan.vue +299 -299
  190. package/src/filiale/weinan/pc/SelectCheckPlan.vue +389 -389
  191. package/src/filiale/weinan/pc/SelectCheckPlanOutHelp.vue +446 -446
  192. package/src/filiale/weinan/pc/checkPlanList.vue +456 -456
  193. package/src/filiale/weinan/pc/checkUserList.vue +712 -712
  194. package/src/filiale/weinanct/pc/PaperList.vue +593 -593
  195. package/src/filiale/wensu/pc/CheckDetail.vue +205 -205
  196. package/src/filiale/wensu/pc/CheckSearchUser.vue +1238 -1238
  197. package/src/filiale/wensu/pc/DefectPaperNew.vue +1148 -1148
  198. package/src/filiale/wensu/pc/SelectCheckPlan.vue +342 -342
  199. package/src/filiale/wensu/pc/checkUserList.vue +650 -650
  200. package/src/filiale/wenxi/pc/CheckPlanAreaList.vue +456 -456
  201. package/src/filiale/wenxi/pc/CheckPlanUserList.vue +217 -217
  202. package/src/filiale/wenxi/pc/CheckSearchUser.vue +991 -991
  203. package/src/filiale/wenxi/pc/DefectPaper.vue +663 -663
  204. package/src/filiale/wenxi/pc/PaperDefectMain.vue +790 -790
  205. package/src/filiale/wenxi/pc/PaperList.vue +949 -949
  206. package/src/filiale/wenxi/pc/checkPlanList.vue +517 -517
  207. package/src/filiale/wenxi/pc/checkUserList.vue +695 -695
  208. package/src/filiale/wuan/pc/DefectPaperWeiXiu.vue +515 -515
  209. package/src/filiale/wuan/pc/PaperList.vue +562 -562
  210. package/src/filiale/wuhai/pc/CheckSearchUser.vue +959 -959
  211. package/src/filiale/wuhai/pc/PaperList.vue +785 -785
  212. package/src/filiale/wuhai/pc/checkUserList.vue +611 -611
  213. package/src/filiale/xilan/pc/PaperList.vue +795 -795
  214. package/src/filiale/xilan/pc/checkUserList.vue +772 -772
  215. package/src/filiale/xinkang/pc/CheckPlanAreaList.vue +425 -425
  216. package/src/filiale/xinkang/pc/CheckPlanUserList.vue +216 -216
  217. package/src/filiale/xinkang/pc/CheckSearchUser.vue +1026 -1026
  218. package/src/filiale/xinkang/pc/DefectPaperWeiXiu.vue +538 -538
  219. package/src/filiale/xinkang/pc/PaperDefectMain.vue +525 -525
  220. package/src/filiale/xinkang/pc/PaperList.vue +603 -603
  221. package/src/filiale/xinkang/pc/checkUserList.vue +639 -639
  222. package/src/filiale/yangchunboneng/pc/CheckBookUser.vue +269 -269
  223. package/src/filiale/yangchunboneng/pc/CheckPlanAreaList.vue +642 -642
  224. package/src/filiale/yangchunboneng/pc/CheckSearchUser.vue +1192 -1192
  225. package/src/filiale/yangchunboneng/pc/DefectPaperNew.vue +1128 -1128
  226. package/src/filiale/yangchunboneng/pc/PaperDefectMain.vue +1046 -1046
  227. package/src/filiale/yangchunboneng/pc/PaperList.vue +773 -773
  228. package/src/filiale/yongzhou/pc/CheckSearchUser.vue +1092 -1092
  229. package/src/filiale/yongzhou/pc/DefectPaperNew.vue +1105 -1105
  230. package/src/filiale/yongzhou/pc/NoCheckplanSafecheck.vue +557 -557
  231. package/src/filiale/yongzhou/pc/PaperDefectMain.vue +872 -872
  232. package/src/filiale/yongzhou/pc/PaperList.vue +798 -798
  233. package/src/filiale/yongzhou/pc/SelectCheckPlan.vue +364 -364
  234. package/src/filiale/yongzhou/pc/checkUserList.vue +752 -752
  235. package/src/filiale/yongzhou/pc/communityDetail.vue +194 -194
  236. package/src/filiale/yongzhou/pc/communityTypeDetailG.vue +138 -138
  237. package/src/filiale/yongzhou/pc/safeDetail.vue +539 -539
  238. package/src/filiale/yongzhou/pc/safeStatisticsDay.vue +455 -455
  239. package/src/filiale/yongzhou/pc/safeStatisticsMonth.vue +267 -267
  240. package/src/filiale/yuansheng/pc/PaperList.vue +621 -621
  241. package/src/filiale/yunchengminsheng/pc/checkUserList.vue +753 -753
  242. package/src/filiale/zhongsheng/pc/CheckPlanAreaList.vue +495 -495
  243. package/src/filiale/zhongsheng/pc/DefectPaperWeiXiu.vue +515 -515
  244. package/src/filiale/zhongsheng/pc/PaperList.vue +644 -644
  245. package/src/filiale/zhoukou/pc/CheckSearchUser.vue +923 -923
  246. package/src/filiale/zhoukou/pc/PaperDefectMain.vue +465 -465
@@ -1,1525 +1,1525 @@
1
- import {SearchList, date} from 'vue-client'
2
- import {PagedList} from 'vue-client'
3
- import {HttpResetClass,trans} from 'vue-client'
4
- import Vue from "vue"
5
- import ObjConfig from '../../src/plugins/GerJsonObjectConfig'
6
-
7
- export default class Comp {
8
-
9
-
10
- needconfig= {}
11
- isSend=true
12
- // 用户安检信息列表
13
- user = new SearchList(true)
14
- //遍历的按钮
15
- listbutton=[]
16
- fdevices=[]
17
- // 安检计划列表
18
- checkplan = new SearchList(true)
19
- // 安检计划的安检单列表
20
- checkplanitems = new SearchList(true)
21
- //按钮隐藏判断
22
- suppplanitem={}
23
- orderList= ['按时间降序', '按时间升序']//排序下拉框的值
24
- currentorder='按时间降序'//排序下拉框当前选中的值
25
- // 新增安检计划时保存的数据
26
- newPlan = {f_issued:"否",f_safecheck_type:""}
27
- http = new HttpResetClass()
28
- //查询计划弹框中是否共享选项
29
- isAndNot = ["是", "否"]
30
- //是否开启共享计划
31
- disableIssude=false
32
- //是否显示添加用户删除用户按钮
33
- disableButton=false
34
- //小区列表
35
- areaList=[]
36
- //用户类型
37
- userType=["民用","非民用"]
38
- listbuttona=[]
39
- listbuttonb=[]
40
- listbuttonc=[]
41
- listbuttond=[]
42
- //安检计划查询中的是否是共享计划单选的当前选中值
43
- sIsAndNotSelect=''
44
- //用户列表的自选查询条件的值
45
- userCondition=["请选择条件","用户类型","地址"]
46
- //当前选中的下拉值
47
- userConditionSelect="请选择条件"
48
- //当前输入的值
49
- userConditionValue=""
50
- //计划项列表自选查询条件的值
51
- planItemCondition=["请选择条件","用户编号","用户名称"]
52
- //
53
- planItemConditional={}
54
- //入户状态
55
- userState=["到访不遇","拒检","入户"]
56
- //燃气使用
57
- gasUse=["已使用","未使用"]
58
- //当前选中的下拉值
59
- planItemConditionSelect="请选择条件"
60
- //当前输入的值
61
- planItemConditionValue=""
62
- sudeState=['全部','是','否']
63
- issude=''
64
- //safecheckTypeList=Vue.$appdata.getParam("安检类型")
65
- safecheckTypeList=[]
66
- //片区列表
67
- sliceArea=[]
68
- //气表类型
69
- meter_classifys=[]
70
- //抄表册
71
- cbc=[]
72
- //今年是否入户
73
- hasHousehold=['全部','已入户','未入户']
74
- HouseholdVal='未入户'
75
- //保存当前公司所有抄表册
76
- meterbooks=[]
77
- //分公司列表
78
- orgs=[]
79
- //安检员列表
80
- checker=[]
81
- checkersname=[]
82
- //新建计划时保存是否共享计划的值,
83
- isShare="否"
84
- //安检类型
85
- safecheckList=[]
86
- //时间单位
87
- unitTime=["天"]
88
- selectTime="天"
89
- startday=""
90
- endday=""
91
- str=[]
92
- //用气性质
93
- gasproperties=[]
94
- //当前打开的安检计划id
95
- SelectedPlan=""
96
- //燃气表增添项
97
- //excel导入组件显示控制
98
- showModel=false
99
- gasexpress=[{"lname":"燃气表照片","type":"picture"},
100
- {"lname":"表品牌","type":"string","readonly":true},
101
- {"lname":"表号","type":"string","readonly":true},
102
- {"lname":"表封号","type":"number","readonly":true},
103
- {"lname":"表型号","type":"string","readonly":true},
104
- {"lname":"位置","type":"string","readonly":true},
105
- {"lname":"表底数","type":"number","readonly":true},
106
- {"lname":"左右表","type":"string","readonly":true}]
107
- //当前分公司id
108
- filialeid=global.login.orgid
109
- filialeidname=global.login.orgs
110
-
111
- //filialeid='35526'
112
- //filialeidname="梁平区聚源天然气有限公司"
113
- yearCheckList=['全部','已在计划中','未在计划中']
114
- yChecked=""
115
- //用户列表查询条件json
116
- conditionJson=[
117
- {column:"f_residential_area",checkname:"小区名称",type:"input"},
118
- {column:"f_building",checkname:"楼栋号码",type:"input"},
119
- {column:"f_unit",checkname:"单元号码",type:"input"},
120
- {column:"userType",checkname:"用户类型",type:"selector",options:['民用','非民用']},
121
- {column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用']},
122
- {column:"user_start",checkname:"开户起始",type:"date"},
123
- {column:"user_end",checkname:"开户结束",type:"date"},
124
- {column:"check_start",checkname:"安检起始",type:"date"},
125
- {column:"check_end",checkname:"安检结束",type:"date"},
126
- {column:"f_metertitles",checkname:"表箱号",type:"input"},
127
- {column:"f_gasproperties",checkname:"用气性质",type:"selector",options:this.gasproperties},
128
- {column:"f_backlist",checkname:"是否拉黑",type:"selector",options:['是','否']},
129
- {column:"meter_classify",checkname:"气表类型",type:"selector",options:this.meter_classifys}
130
- ]
131
- conditionList=[
132
- {selectitem:{column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用']},selectValue:'正常',num:0},
133
- {selectitem:{column:"meter_classify",checkname:"气表类型",type:"selector",options:this.meter_classifys},selectValue:'',num:1},
134
- {selectitem:{column:"f_gasproperties",checkname:"用气性质",type:"selector",options:this.gasproperties},selectValue:'',num:2},
135
- {selectitem:{column:"f_backlist",checkname:"是否拉黑",type:"selector",options:['是','否']},selectValue:'',num:3},
136
- {selectitem:{column:"user_start",checkname:"开户起始",type:"date"},selectValue:'',num:4},
137
- {selectitem:{column:"user_end",checkname:"开户结束",type:"date"},selectValue:new Date().getFullYear()+'-01-01 00:00:00',num:5},
138
- {selectitem:{column:"check_start",checkname:"安检起始",type:"date"},selectValue:'',num:6},
139
- {selectitem:{column:"check_end",checkname:"安检结束",type:"date"},selectValue:'',num:7}
140
- ]
141
- //安检项列表查询条件
142
- planitemconditionJson=[
143
- {column:"f_last_check_state",checkname:"安检状态",type:"selector",options:['入户','拒检','到访不遇','未使用']},
144
- {column:"f_start_time",checkname:"开始时间",type:"date"},
145
- {column:"f_end_time",checkname:"结束时间",type:"date"},
146
- {column:"f_last_check_result",checkname:"隐患状态",type:"selector",options:['正常','有隐患']},
147
- {column:"f_state1",checkname:"安检结果",type:"selector",options:['已检','未检']}
148
- ]
149
- planitemconditionList=[
150
- {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:0},
151
- {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:1},
152
- {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:2}
153
- ]
154
- //下拉框条件改变json数组
155
- conditionListChange(modelname,ind,key,value,f){
156
- //tag
157
- this[modelname][ind]["num"]=ind
158
- this[modelname][ind][key]=value
159
- f()
160
- }
161
- //添加选择条件下拉框事件
162
-
163
- addconditionList(field,f){
164
- this[field].push({selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:this.conditionList.length})
165
- f()
166
- }
167
- //删除选择条件下拉框事件
168
- deletecondition(field,modelname,index,f){
169
- //如果有这个属性,说明已经选择过,去清空条件数组里的值
170
- if(this[field][index].selectitem.column){
171
- this.setProperty(modelname,this[field][index].selectitem.column,"")
172
- }
173
- this[field].splice(index,1)
174
-
175
- for (let i =0 ;i<this[field].length;i++){
176
- this.conditionList[i].num=i
177
- }
178
- f()
179
- }
180
- async getAreaList() {
181
- let res =await this.http.load('POST', '/api/af-safecheck/sql/safe_singleTable_GroupBy', {
182
- data: {
183
- items: 'f_residential_area',
184
- tablename: 't_area',
185
- condition: 'f_filialeid = '+this.filialeid,
186
- groupitem: 'f_residential_area'
187
- }
188
- }, {resolveMsg: null, rejectMsg: null})
189
- //tag)
190
- if (res.data) {
191
- let arr=["全部"]
192
- for(let i =0 ;i<res.data.length;i++){
193
- arr.push(res.data[i].f_residential_area)
194
- }
195
- this.areaList=arr
196
- }
197
- }
198
- async ready() {
199
- await this.getOrgs()
200
- await this.getAreaList()
201
- // 加载所有安检计划
202
- await this.checkplan.searchList("/api/af-safecheck/sql/预约计划下发", {},{groupitem:"",f_filialeids:"("+this.filialeid+")",orderitem:"f_create_time desc"})
203
- // this.getAreaList()
204
- //加载安检员名单
205
- //tag)
206
- //tag
207
- //tag)
208
- this.disableIssude=Vue.$appdata.getSingleValue('共享计划')
209
- this.disableButton=Vue.$appdata.getSingleValue('派发按钮')
210
- this.formatArrayFun('meter_classifys',Vue.$appdata.getParam('气表类型'))
211
- this.formatArrayFun('gasproperties',Vue.$appdata.getParam('用气性质'))
212
- this.formatArrayFun('safecheckTypeList',Vue.$appdata.getParam('安检类型'))
213
- this.formatArrayFun('safecheckList',Vue.$appdata.getParam('安检类型'))
214
- this.searchChecker(global.login.id)
215
- /*this.setProperty('checkplan','safechecktype','年度普检')*/
216
- await this.Mreadibook()
217
- await this.getSliceArea()
218
- //await this.OverDateCheck()
219
-
220
- }
221
- async OverDateCheck() {
222
- await this.getzhouqi()
223
- await this.searchUser(() => {
224
- })
225
- //tag
226
- //tag
227
- Vue.showMessage(this.user.list.count + "户已超过安检周期,请及时处理")
228
- this.startday=''
229
- }
230
-
231
- async getzhouqi(){
232
- let http = new HttpResetClass()
233
- http.load('post', `api/af-safecheck/sql/safe_getcirclelist`, {data:{condition:`1=1 and f_filialeid in ('${this.filialeid}')`}}, {resolveMsg: null, rejectMsg: null}).then(res => {
234
- //tag
235
- let day=0
236
- //tag
237
- if (res.data.length>0){
238
- day=res.data[0].f_circle*365
239
- }
240
- //tag
241
- this.startday=day
242
- })
243
-
244
- }
245
- //补录功能组装数据
246
- zzsj(){
247
- let deviceconfig=ObjConfig.getObjConfig(this.needconfig.safecheck.DevicesConfig)
248
- //tag)
249
- for (let i = 0; i < deviceconfig.length; i++) {
250
- //tag)
251
- //tag)
252
- this.str[deviceconfig[i].index-1]=deviceconfig[i]
253
- //tag)
254
- }
255
- }
256
- readConfig () {
257
- let http = new HttpResetClass()
258
- http.load('GET', `/phone/rs/vue`, {}, {resolveMsg: null, rejectMsg: null}).then(res => {
259
- this.needconfig = res.data
260
- //tag)
261
- let aa=this.needconfig.safecheck.DevicesConfig
262
- this.zzsj()
263
- })
264
-
265
- }
266
- //当前页面属性发生改变事件
267
- fieldChange(modelname,value,f){
268
- //tag
269
- if(modelname=="user" || modelname=="checkplan" || modelname=="checkplanitems"){
270
- this.setProperty(modelname,"checkername",value.name)
271
- this.setProperty(modelname,"checkerid",value.id)
272
- f()
273
- return
274
- }
275
- if(modelname=="createPlan"){
276
- this.newPlan.f_checker_id=value.id
277
- this.newPlan.f_checker=value.name
278
- f()
279
- return
280
- }
281
- if(modelname=="upPlan"){
282
- this.plan.f_checker= value.name
283
- this.plan.f_checker_id=value.id
284
- f()
285
- return
286
- }
287
- if(value=='全部'){
288
- this[modelname]=''
289
- }else{
290
- this[modelname]=value
291
- }
292
- f()
293
- }
294
- async orgChange(value,f){
295
- //tag)
296
- if(value.value==this.filialeid){
297
- f()
298
- return
299
- }
300
- this.filialeid=value.value
301
- this.filialeidname=value.label
302
- this.user = new SearchList(true)
303
- this.checkplanitems = new SearchList(true)
304
- this.searchChecker(global.login.id)
305
- await this.Mreadibook()
306
- await this.getAreaList()
307
- await this.getSliceArea()
308
- await this.checkplan.searchList("/api/af-safecheck/sql/预约计划下发", {},{groupitem:"",f_filialeids:"("+this.filialeid+")",orderitem:"f_create_time desc"})
309
- f()
310
- }
311
- //json下拉改变时间
312
- selectChanged(modelname,key,valuename,value,f){
313
- //tag)
314
- if(value.label=='全部' || !value){
315
- this[modelname].search.setField(key, '')
316
- this[modelname].search.setField(key+'name', '全部')
317
- }else{
318
- //tag
319
- this[modelname].search.setField(key, value.value)
320
- this[modelname].search.setField(key+'name', value.label)
321
- }
322
- f()
323
- }
324
- selectChange(modulename, property, value){
325
- //tag
326
- if(value=='全部'){
327
- this.setProperty(modulename, property, '')
328
- }else{
329
- this.setProperty(modulename, property, value)
330
- }
331
-
332
- }
333
- jointCondition1(field,modelname){
334
- for (let i =0 ;i<this[field].length;i++){
335
- if(!this[field][i].selectValue){
336
- continue
337
- }
338
- //tag
339
- this.setProperty(modelname,this[field][i].selectitem.column,this[field][i].selectValue)
340
- }
341
- }
342
- //根据选择框内容设置属性值
343
- jointCondition(modelname){
344
-
345
- if(modelname="user"){
346
- this.setProperty("user","usertype","")
347
- this.setProperty("user","address","")
348
- switch(this.userConditionSelect){
349
- case "用户类型":
350
- this.setProperty("user","usertype",this.userConditionValue)
351
- break;
352
- case "地址":
353
- this.setProperty("user","address",this.userConditionValue)
354
- break;
355
- }
356
- }
357
- if(modelname="checkplanitems"){
358
- this.setProperty("checkplanitems","usercode","")
359
- this.setProperty("checkplanitems","username","")
360
- switch(this.planItemConditionSelect){
361
- case "用户编号":
362
- this.setProperty("checkplanitems","usercode",this.planItemConditionValue)
363
- break;
364
- case "用户名称":
365
- this.setProperty("checkplanitems","username",this.planItemConditionValue)
366
- break;
367
- }
368
- }
369
- }
370
-
371
- //是否共享计划单选按钮事件
372
- isAndNotChange(isAndNotselect){
373
- this.sIsAndNotSelect=isAndNotselect
374
- if(this.sIsAndNotSelect=="是"){
375
- this.setProperty("checkplan","isAndNot","is null")
376
- }
377
- if(this.sIsAndNotSelect=="否"){
378
- this.setProperty("checkplan","isAndNot","is not null")
379
- }
380
- }
381
-
382
- //按条件查询所有安检计划
383
- async loadCheckPlan(sortfield,f) {
384
- this.isSend=true
385
- this.checkplan.check.checkes=[]
386
- if(sortfield){//如果传入空串说明是查询 传入非空串就是排序
387
- //tag
388
- if(sortfield==this.currentorder){
389
- this.isSend=false
390
- return
391
- }else{
392
- this.currentorder=sortfield
393
- }
394
- }
395
- let fieldValue=''
396
- switch(this.currentorder){
397
- case "按时间降序":
398
- fieldValue='f_create_time desc'
399
- break
400
- case "按时间升序":
401
- fieldValue='f_create_time'
402
- break
403
- }
404
- //tag
405
- await this.checkplan.searchList("/api/af-safecheck/sql/预约计划下发",
406
- {"f_plan_name": "f_plan_name like '%{}%'",
407
- "f_plan_year":"f_plan_year={}",
408
- "f_plan_month":"f_plan_month={}",
409
- "checkerid":"f_checker_id={}",
410
- "isAndNot":"f_checker {}",
411
- "safechecktype":"f_safecheck_type='{}'",
412
- "issude":"f_issued = '{}'"
413
- },
414
- {orderitem:fieldValue,
415
- f_filialeids:"("+this.filialeid+")",
416
- groupitem:""
417
- }
418
- )
419
- //调刷新函数????
420
- //tag
421
- f()
422
- this.isSend=false
423
- }
424
-
425
- // 查询待检用户
426
- async searchUser(f) {
427
- this.isSend=true
428
- this.user.check.checkes=[]
429
- this.jointCondition1("conditionList","user")
430
- let sday=''
431
- let eday=''
432
- if(this.startday.trim()!=''){
433
- if(isNaN(this.startday) || isNaN(this.endday)){
434
- Vue.showMessage("请输入数字!")
435
- return
436
- }
437
- if(this.selectTime=="月"){
438
- sday= this.startday*30
439
- this.endday.trim()!=''?eday= this.endday*30:eday=''
440
- }else{
441
- sday= this.startday
442
- this.endday.trim()!=''?eday= this.endday:eday=''
443
- }
444
- if(eday){
445
- this.setProperty("user","checkTime"," ceil(to_date(to_char(sysdate,'yyyy-MM-dd HH24:mi:ss'),'yyyy-mm-dd hh24:mi:ss')-nvl(to_date(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'),'1990-01-01 00:00:00'))>="+parseInt(sday,10)+" and ceil(to_date(to_char(sysdate,'yyyy-MM-dd HH24:mi:ss'),'yyyy-mm-dd hh24:mi:ss')-nvl(to_date(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'),'1990-01-01 00:00:00'))<="+parseInt(eday,10))
446
- }else{
447
- this.setProperty("user","checkTime"," ceil(to_date(to_char(sysdate,'yyyy-MM-dd HH24:mi:ss'),'yyyy-mm-dd hh24:mi:ss')-nvl(to_date(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'),'1990-01-01 00:00:00'))>="+parseInt(sday,10))
448
- }
449
- }else{
450
- this.setProperty("user","checkTime","")
451
- }
452
- if(this.yChecked=='已在计划中'){
453
- this.setProperty("user","ychecked","ua.f_plan_id is not null")
454
- }else if(this.yChecked=='未在计划中'){
455
- this.setProperty("user","ychecked","ua.f_plan_id is null")
456
- }else{
457
- this.setProperty("user","ychecked","")
458
- }
459
- if(this.HouseholdVal=='已入户'){
460
- this.setProperty("user","householstate","Extract(year from TO_DATE(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'))=2021 and ua.F_LAST_CHECK_STATE='入户'")
461
- }else if(this.HouseholdVal=='未入户'){
462
- this.setProperty("user","householstate","(Extract(year from nvl(TO_DATE(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'),'1990-01-01 00:00:00'))!=2021 or nvl(ua.F_LAST_CHECK_STATE,'未入户')!='入户')")
463
- }else{
464
- this.setProperty("user","householstate","")
465
- }
466
- if(this.user.search.model.f_backlist){
467
- if(this.user.search.model.f_backlist=='是'){
468
- this.setProperty("user","f_backlist"," up.id is not null")
469
- }else if(this.user.search.model.f_backlist=='否'){
470
- this.setProperty("user","f_backlist"," up.id is null")
471
- }else{
472
- this.setProperty("user","f_backlist","")
473
- }
474
- }
475
- this.user.search.setField("f_filialeid",this.filialeid)
476
- await this.user.searchList("/api/af-safecheck/sql/FetchUserFileByOrgNoRuHuSXQ", {
477
- "f_filialeid": "ui.f_filialeid={}",
478
- "userinfocode": "ui.f_userinfo_code='{}'",
479
- "username": "ui.f_user_name like '%{}%'",
480
- "useraddress": "ua.f_address like '%{}%'",
481
- "userType":"uf.f_user_type='{}'",
482
- "f_residential_area":"ua.f_residential_area = '{}'",
483
- "f_building":"ua.f_building='{}'",
484
- "f_unit":"ua.f_unit='{}'",
485
- "f_user_state":"ui.f_user_state='{}'",
486
- "checkTime":" {}",
487
- "meterbook":"uf.f_meter_book_num='{}'",
488
- "user_start":" ui.f_createfile_date >='{}'",
489
- "user_end":" ui.f_createfile_date <='{}'",
490
- "check_start":" ua.f_last_check_date >='{}'",
491
- "check_end":" ua.f_last_check_date<= '{}'",
492
- "area":" f_book_slice_area ='{}'",
493
- "ychecked":" {}",
494
- "f_metertitles":" uf.f_metertitles='{}'",
495
- "f_gasproperties":" uf.f_gasproperties='{}'",
496
- "uploadCondition":" {}",
497
- "f_backlist":" {}",
498
- "meter_classify":" uf.F_METER_CLASSIFY='{}'",
499
- "householstate":" {}"
500
- }, {
501
- "orderitem": 'f_residential_area,f_building,f_unit,f_floor,f_room',
502
- "f_usertype": '',
503
- "month": '',
504
- "SafeCheckSX": {"f_check_start": '', "f_check_end": ''},
505
- "SafeCheckCQ": '',
506
- "startday":"",
507
- "endday":""
508
- })
509
- f()
510
- this.isSend=false
511
- }
512
-
513
- //查询安检员selectChanged
514
- async searchChecker(id){
515
- let res=await this.http.load('POST', '/rs/search', {
516
- source: 'tool.getChildrenOfResName($安检员$)',
517
- userid: id
518
- }, {resolveMsg: null, rejectMsg: null})
519
- this.checker=[]
520
- res.data.forEach((resRow) => {
521
- if(resRow.orgid==this.filialeid){
522
- this.checker.push(resRow)
523
- }
524
- })
525
- //tag+"---id"+this.filialeid)
526
- }
527
-
528
- async searchPlanItems(f) {
529
- await this.checkplanitems.searchList("/api/af-safecheck/sql/planItem", {"f_plan_id": "f_plan_id={}"}, {})
530
- f()
531
- }
532
- //得到更新数据
533
- async getPaper(id,f) {
534
- let res=await this.http.load("POST", "/rs/path/getUserinfomation", {
535
- data:{
536
- condition:"f_check_item_id='"+id+"'"
537
- }
538
- })
539
-
540
-
541
- this.suppplanitem=res.data[0]
542
- if (this.suppplanitem.f_check_type!=null) {
543
- this.suppplanitem["f_user_type"]=this.suppplanitem.f_check_type
544
- }
545
- this.fdevices=[]
546
-
547
- if(this.suppplanitem.f_devices.length!=0){
548
-
549
- for (let i = 0; i <this.str.length ; i++) {
550
- if (this.suppplanitem.f_devices[i]==undefined) {
551
- this.fdevices.push({
552
- f_device_type: this.str[i].checkname,
553
- f_items: []
554
- //id: this.suppplanitem.f_devices[i] == undefined ? "" : this.suppplanitem.f_devices[i].id
555
- })
556
- }else {
557
- this.fdevices.push({
558
- f_device_type: this.str[i].checkname,
559
- f_items: [],
560
- id:this.suppplanitem.f_devices[i].id
561
- })
562
- }
563
- }
564
- }else{for (let i = 0; i <this.str.length ; i++) {
565
-
566
- this.fdevices.push({f_device_type:this.str[i].checkname,f_items:[]})
567
- }}
568
-
569
- this.setFitemvalue()
570
- f()
571
-
572
-
573
-
574
- }
575
-
576
- //补录时改变fdevice
577
- suppfdevice(){
578
- for (let i = 0; i <this.str.length ; i++) {
579
- this.fdevices.push({f_device_type:this.str[i].checkname,f_items:[]})
580
- }
581
- //tag)
582
- this.changeListButton()
583
- }
584
- //改变数组的样式
585
- changeListButton(){
586
- let listarray=[]
587
- for (let i = 0; i < this.listbutton.length; i++) {
588
- if (!this.listbutton[i].mname){
589
- //tag
590
- listarray.push(this.listbutton[i])
591
- listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
592
- listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
593
- listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
594
- let count=0
595
- for (let j = 0; j < this.listbutton.length; j++) {
596
- if(this.listbutton[i].lname.substring(0,this.listbutton[i].lname.length-1)==this.listbutton[j].mname){
597
-
598
- listarray.push(this.listbutton[j])
599
- count++
600
- }
601
- }
602
- if (count%4!=0){
603
- for (let j = 0; j <4-count%4; j++) {
604
- listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
605
- }
606
- }
607
- }
608
- }
609
- //tag)
610
- this.listbutton=listarray
611
- this.tranlistbutton()
612
- }
613
- //横向分开list
614
- tranlistbutton(){
615
- //tag
616
- for (let i = 0; i < this.listbutton.length; i++) {
617
- if((i+1)%4==1){
618
- this.listbuttona.push(this.listbutton[i])
619
- }else if((i+1)%4==2){
620
- this.listbuttonb.push(this.listbutton[i])
621
- }else if((i+1)%4==3){
622
- this.listbuttonc.push(this.listbutton[i])
623
- }else if((i+1)%4==0){
624
- this.listbuttond.push(this.listbutton[i])
625
- }
626
- }
627
- }
628
- SelectedPlanType=''
629
- // 打开安检计划,加载安检计划的所有安检单
630
- async openPlan(plan, f) {
631
- this.isSend=true
632
- this.checkplanitems.check.checkes=[]
633
- this.SelectedPlan=plan.id
634
- this.SelectedPlanType=plan.f_safecheck_type
635
- this.plan=plan
636
- this.checkplanitems.search.setField("f_plan_id", plan.id)
637
- this.checkplanitems.search.setField("f_state", "作废")
638
- await this.checkplanitems.searchList("/api/af-safecheck/sql/planItem", {"f_plan_id": "i.f_plan_id='{}'","f_state": "i.f_state !='{}'"}, {})
639
- f()
640
- //this.checkplanitems.search.model.f_plan_id
641
- this.isSend=false
642
- }
643
-
644
- //根据条件查询某个安检计划下的安检单
645
- async searchPlanItem(f) {
646
- this.checkplanitems.check.checkes=[]
647
- if(this.checkplanitems.search.model.f_plan_id){
648
- this.isSend=true
649
- //tag
650
- this.jointCondition1("planitemconditionList","checkplanitems")
651
- await this.checkplanitems.searchList("/api/af-safecheck/sql/planItem",
652
- {"f_plan_id": "i.f_plan_id='{}'",
653
- "usercode": "i.f_userinfo_code='{}'",
654
- "username": "i.f_user_name='{}'",
655
- "f_address": "i.f_address like '%{}%'",
656
- "f_last_check_state": "i.f_last_check_state='{}' ",
657
- "f_start_time": "i.f_last_check_date >='{}'",
658
- "f_end_time": "i.f_last_check_date <='{}'",
659
- "f_last_check_result":"i.f_last_check_result like '%{}%'",
660
- "f_state": "i.f_state !='{}'",
661
- "f_state1": "i.f_state ='{}'"
662
- },
663
- {})
664
- f()
665
- this.isSend=false
666
- }else{
667
- Vue.showMessage("请选择安检计划")
668
- }
669
- }
670
- //加载更多数据
671
- async loadMore(modelname,f) {
672
- this.isSend=true
673
- await this[modelname].list.loadMore()
674
- f()
675
- this.isSend=false
676
- }
677
-
678
- //点击全选按钮事件 user-用户列表 planitem-计划项列表
679
- changeCheckAll(modulename, f) {
680
- this[modulename].check.setCheckAll()
681
- f()
682
- }
683
-
684
- //当选中列表中某项时触发
685
- addParam(modulename, id) {
686
- //tag
687
- this[modulename].check.setCheckes(id)
688
- }
689
-
690
- //设置属性值
691
- setProperty(modulename, property, value,f) {
692
-
693
- //tag
694
- if(property=='area'){
695
- this.selectChanged("user","meterbook","","",f)
696
- if(value=='全部'){
697
- this[modulename].search.setField(property, '')
698
- this.cbc=[]
699
- this.meterbooks.forEach((res) => {
700
- this.cbc.push({label: res.f_book_name, value: res.id})
701
- /*if(res.f_book_slice_area){
702
- if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
703
- this.sliceArea.push(res.f_book_slice_area)
704
- }
705
- }*/
706
- })
707
- f()
708
- return
709
- }
710
- this[modulename].search.setField(property, value)
711
- this.cbc=[]
712
- this.meterbooks.forEach((res) => {
713
- if(res.f_book_slice_area==value){
714
- this.cbc.push({label: res.f_book_name, value: res.id})
715
- }
716
-
717
- /*if(res.f_book_slice_area){
718
- if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
719
- this.sliceArea.push(res.f_book_slice_area)
720
- }
721
- }*/
722
- })
723
- f()
724
- }else if(value=='全部'){
725
- this[modulename].search.setField(property, '')
726
- }else{
727
- this[modulename].search.setField(property, value)
728
- }
729
- }
730
-
731
- //列表中的选择框是否被选中
732
- hasValue(modulename,value){
733
- this[modulename].check.checks.has()
734
- }
735
- // 给新建安检计划设置属性值
736
- setNewPlan(property, value) {
737
- //tag
738
- this.newPlan[property] = value
739
- return this
740
- }
741
- //将某项拖动到计划中
742
- //dragParam:从拖动的起始位置传入的参数
743
- async dragtoPlan(f_plan_id,f_safecheck_type,f_filialeid,dragParam,f){
744
- //tag
745
- await this.dragtoPlanItem(f_plan_id,f_safecheck_type,dragParam,f)
746
- await this.dragtoOtherPlanIteem(f_plan_id,dragParam,f)
747
- }
748
-
749
- //将客户信息拖至计划中
750
- async dragtoPlanItem(f_plan_id,f_safecheck_type,dragParam,f) {
751
-
752
- //tag
753
- if(dragParam=='user'){
754
- this.jointCondition("user")
755
- if(this.checkplanitems.search.model.f_plan_id){
756
- this.isSend=true
757
- let res=await this.http.load("POST", "/api/af-safecheck/logic/AddCheckPlanItem", {
758
- data:{
759
- f_operator:global.login.name,
760
- f_plan_id:f_plan_id,
761
- f_safecheck_type:f_safecheck_type,
762
- f_filialeid:this.filialeid,
763
- f_subscribe_date:'',
764
- condition:this.user.search.search({
765
- "f_filialeid": "ui.f_filialeid={}",
766
- "userinfocode": "ui.f_userinfo_code='{}'",
767
- "username": "ui.f_user_name like '%{}%'",
768
- "useraddress": "ua.f_address like '%{}%'",
769
- "userType":"uf.f_user_type='{}'",
770
- "f_residential_area":"ua.f_residential_area = '{}'",
771
- "f_building":"ua.f_building='{}'",
772
- "f_unit":"ua.f_unit='{}'",
773
- "f_user_state":"ui.f_user_state='{}'",
774
- "checkTime":" {}",
775
- "meterbook":"uf.f_meter_book_num='{}'",
776
- "user_start":" ui.f_createfile_date >='{}'",
777
- "user_end":" ui.f_createfile_date <='{}'",
778
- "check_start":" ua.f_last_check_date >='{}'",
779
- "check_end":" ua.f_last_check_date<= '{}'",
780
- "area":" ua.f_slice_area='{}'",
781
- "ychecked":" {}",
782
- "f_metertitles":" uf.f_metertitles='{}'",
783
- "f_gasproperties":" uf.f_gasproperties='{}'",
784
- "uploadCondition":" {}",
785
- "f_backlist":" {}",
786
- "meter_classify":" uf.F_METER_CLASSIFY='{}'",
787
- "householstate":" {}"
788
- }),
789
- switchCheckAll:this.user.check.switchCheckAll,
790
- checkAll:this.user.check.checkAll,
791
- param:this.user.check.checkes,
792
- columnName: "ua.id"
793
- }
794
- }, {resolveMsg: null, rejectMsg: null})
795
- //tag+"---"+res.data.result.length)
796
- if(res.data.code==200){
797
- //alert("添加成功!有"+res.data.result.length+"条用户地址已经存在于其他计划中: \n"+res.data.result.reduce((c,v)=>{c += v.f_user_name+":"+v.f_address+"\n"}),0)
798
- Vue.showMessage("添加成功!"+(res.data.result.length>0?"有"+res.data.result.length+"条用户地址已经存在于其他计划中":""))
799
- }else{
800
- Vue.showMessage("添加失败!")
801
- }
802
- this.user.check.checkes=[]
803
- await this.searchUser(()=>{})
804
- await this.searchPlanItem(()=>{})
805
- await this.loadCheckPlan("",()=>{})
806
- f()
807
- this.isSend=false
808
- }else{
809
- Vue.showMessage("请先打开一个计划再进行操作")
810
- }
811
- }
812
- }
813
-
814
- //将某个计划下的一项拖到另一个计划
815
- async dragtoOtherPlanIteem(checkplanid,dragParam,f) {
816
- if(dragParam=='item'){
817
- this.isSend=true
818
- let res=await this.http.load("POST", "/api/af-safecheck/logic/UpCheckPlanItem", {
819
- data:{
820
- f_operator:global.login.name,
821
- f_plan_id:checkplanid,
822
- condition:this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
823
- "usercode": "i.f_userinfo_code='{}'",
824
- "username": "i.f_user_name='{}'",
825
- "f_address": "i.f_address like '%{}%'",
826
- "f_last_check_state": "i.f_last_check_state='{}' ",
827
- "f_start_time": "i.f_last_check_date >='{}'",
828
- "f_end_time": "i.f_last_check_date <='{}'",
829
- "f_last_check_result":"i.f_last_check_result like '%{}%'",
830
- "f_state": "i.f_state !='{}'",
831
- "f_state1": "i.f_state ='{}'"
832
- }),
833
- switchCheckAll:this.checkplanitems.check.switchCheckAll,
834
- checkAll:this.checkplanitems.check.checkAll,
835
- param:this.checkplanitems.check.checkes,
836
- columnName: "i.id"
837
- }
838
- }, {resolveMsg: null, rejectMsg: null})
839
- if(res.data.code==200){
840
- await this.searchUser(()=>{})
841
- await this.searchPlanItem(()=>{})
842
- await this.loadCheckPlan("",()=>{})
843
- f()
844
- Vue.showMessage("更换安检计划成功!")
845
- }else{
846
- Vue.showMessage("更换安检计划失败!")
847
- }
848
- f()
849
- this.isSend=false
850
- }
851
-
852
- }
853
-
854
- //修改计划项状态为作废
855
- async delPlanItem(dragParam,f) {
856
- //tag
857
- if(dragParam=='item'){
858
- Vue.showMessage("此操作无法撤回,确定要执行作废安检单操作吗?",['confirm','cancel']).then((button)=>{
859
- if(button=='confirm'){
860
- this.isSend=true
861
- let resu=this.http.load("POST", "/api/af-safecheck/logic/UpCheckPlanItemState", {
862
- data: {
863
- f_operator:global.login.name,
864
- condition:this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
865
- "usercode": "i.f_userinfo_code='{}'",
866
- "username": "i.f_user_name='{}'",
867
- "f_address": "i.f_address like '%{}%'",
868
- "f_last_check_state": "i.f_last_check_state='{}' ",
869
- "f_start_time": "i.f_last_check_date >='{}'",
870
- "f_end_time": "i.f_last_check_date <='{}'",
871
- "f_last_check_result":"i.f_last_check_result like '%{}%'",
872
- "f_state": "i.f_state !='{}'",
873
- "f_state1": "i.f_state ='{}'"
874
- }),
875
- switchCheckAll:this.checkplanitems.check.switchCheckAll,
876
- checkAll:this.checkplanitems.check.checkAll,
877
- param:this.checkplanitems.check.checkes,
878
- columnName: "i.id"
879
- }
880
- }, {resolveMsg: null, rejectMsg: null}).then((resu)=>{
881
-
882
- //tag)
883
- if(resu.data.code==200){
884
- Vue.showMessage("移除安检单成功! 成功移除:"+resu.data.res.up+"条"+(resu.data.res.noup>0?"有"+resu.data.res.noup+"条已经不是 ‘未检’ 状态!":""))
885
- this.searchUser(f)
886
- this.searchPlanItem(f)
887
- this.loadCheckPlan("",f)
888
- }else{
889
- Vue.showMessage("取消安检计划失败!")
890
- }
891
- this.isSend=false
892
- })
893
-
894
- }
895
-
896
- })
897
-
898
- }
899
-
900
- }
901
-
902
- //新建计划
903
- async addNewPlan(f) {
904
- if(!this.validationCreatePlan()){
905
- return
906
- }
907
- this.isSend=true
908
- let res=await this.http.load("POST","/api/af-safecheck/sql/getCheckplan", {data: {condition:"f_plan_name='"+this.newPlan.f_plan_name+"'",sortfield:'f_create_time desc'}})
909
- //tag
910
- if(res.data.length>0){
911
- Vue.showMessage("计划名称不能重复!")
912
- this.isSend=false
913
- return
914
- }
915
- if(this.isShare=="是"){
916
- this.newPlan.f_checker_id=null
917
- this.newPlan.f_checker=null
918
- }
919
- this.newPlan.f_plan_type='预约计划'
920
- this.newPlan.f_subcompany=global.login.orgs
921
- this.newPlan.f_filialeid=this.filialeid
922
- this.newPlan.f_create_operator=global.login.name
923
- this.newPlan.f_create_time=this.getNowFormatDate()
924
- await Vue.resetpost("/api/af-safecheck/logic/createCheckPlan", {"data": this.newPlan},{resolveMsg : '新建计划成功!', rejectMsg : '新建计划失败!'})
925
- //await this.loadCheckPlan('',()=>{})
926
- this.newPlan={f_issued:"否"}
927
- this.isShare="否"
928
- await this.loadCheckPlan('',()=>{})
929
- f()
930
- window.dispatchEvent(new CustomEvent("goRefresh"),{})
931
- this.isSend=false
932
-
933
- }
934
-
935
- // 取消新建安检计划
936
- cancel() {
937
- this.newPlan={f_issued:"否"}
938
- this.isShare="否"
939
- this.plan={}
940
- }
941
-
942
- // 取年的选择项目
943
- years() {
944
- return date.yearSelects
945
- }
946
- /*
947
- 1.获取配置文件
948
- 2.组装配置文件 (配置文件[] JS提前固定的数组[] return [])
949
- */
950
-
951
- // str = [
952
- // {
953
- // "checkname": "燃气表",
954
- // "checkmust":false,
955
- // "items":[
956
- // {"lname": "表具状态","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"包裹","isdefect":true,"level":"C2","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"},{"data":"漏气","isdefect":true,"level":"A1","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"}]},
957
- // {"lname": "表故障","multiple":true,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"破损变形","isdefect":true,"level":"B2","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"},{"data":"失效","isdefect":true,"level":"B2","isdefault": false},{"data":"不走字","isdefect":true,"level":"B2","isdefault": false},{"data":"铅封损坏","isdefect":true,"level":"B2","isdefault": false},{"data":"气表到期(使用年限超过八年)","isdefect":true,"level":"B2","isdefault": false}]},
958
- // {"lname": "腐蚀","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"轻微","isdefect":false,"isdefault": false},{"data":"中度","isdefect":false,"isdefault": false},{"data":"严重","isdefect":true,"level":"A2","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"}]},
959
- // {"lname": "使用年限","type":"string", "data": 8,"isshow": false}
960
- // ]
961
- // },
962
- // {
963
- // "checkname": "阀门",
964
- // "checkmust":true,
965
- // "items":[
966
- // {"lname": "阀门","multiple":true,"type":"selector","options":[{"data":"无阀门","isdefect":true,"level":"A2"},{"data":"无阀柄","isdefect":true,"level":"A2"},{"data":"失效","isdefect":true,"level":"A2"}]},
967
- // {"lname": "表前阀","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A1","isdefault": false}]},
968
- // {"lname": "灶前阀","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A1","isdefault": false}]},
969
- // {"lname":"使用年限","type":"string", "data": 8,"isshow": false}
970
- // ]
971
- // },
972
- // {
973
- // "checkname": "户内管",
974
- // "quantity": 2,
975
- // "checkmust":true,
976
- // "items":[
977
- // {"lname": "穿墙管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
978
- // {"lname": "胶管","multiple":true,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"老化、超期使用","isdefect":true,"level":"A8"},{"data":"未紧箍","isdefect":true,"level":"C2"},
979
- // {"data":"软管穿墙","isdefect":true,"level":"C2"},{"data":"软管超长(长度超过两米)","isdefect":true,"level":"C2"},{"data":"非专用软管","isdefect":true,"level":"C2"}]},
980
- // {"lname": "镀锌管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
981
- // {"lname": "铝塑管、波纹管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
982
- // {"lname": "热水器管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
983
- // {"lname":"使用年限","type":"string", "data": 8,"isshow": false}
984
- // ]
985
- // },
986
- // {
987
- // "checkname": "热水器",
988
- // "quantity": 0,
989
- // "checkmust":false,
990
- // "items":[
991
- // {"lname": "热水器品牌","type":"string"},
992
- // {"lname": "热水器烟道","multiple":true,"type":"selector","options":[{"data":"正常","isdefect":false},{"data":"未安装烟道","isdefect":true,"level":"A8","tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"},{"data":"烟道未与大气直接连通","isdefect":true,"level":"A8"},{"data":"安装不规范","isdefect":true,"level":"A8"}]},
993
- // {"lname": "安装位置","multiple":false,"type":"selector","options":[{"data":"卫生间","isdefect":false},{"data":"卧室","isdefect":true,"level":"A8"},
994
- // {"data":"客厅过道","isdefect":true,"level":"A8"},{"data":"内厨房","isdefect":true,"level":"A8"},{"data":"其他密封或通风不良房间","isdefect":true,"level":"A8"}]},
995
- // {"lname": "工作状态","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false},{"data":"异常","isdefect":true,"level":"A8"}]},
996
- // {"lname":"使用年限","type":"string", "data": 4,"isshow": false}
997
- // ]
998
- // },
999
- // {
1000
- // "checkname": "燃气具",
1001
- // "checkmust":false,
1002
- // "items":[
1003
- // {"lname": "燃气具品牌","type":"string"},
1004
- // {"lname": "安装位置","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8","isdefault": false}]},
1005
- // {"lname": "安装状况","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"超年限(使用年限为8年)","isdefect":true,"level":"A8","isdefault": false}]},
1006
- // {"lname":"使用年限","multiple":false,"type":"string", "data": 4}
1007
- // ]
1008
- // },
1009
- // {
1010
- // "checkname": "其他",
1011
- // "checkmust":false,
1012
- // "items":[
1013
- // {"lname": "使用简易三通","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]},
1014
- // {"lname": "私自安装、改迁燃气设施及设备","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8","tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"}]},
1015
- // {"lname": "违反安全间距规定","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]},
1016
- // {"lname": "燃气设施及设备上搭挂重物","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]},
1017
- // {"lname": "燃气管道被作电器接地线使用","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]}
1018
- // ]
1019
- // }
1020
- // ]
1021
- //str=[{"checkname":"热水器","index":3,"items":[{"lname":"烟道式安装在卫生间","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"已过八年强制报废期","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"热水器泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"热水器品牌","index":5,"type":"string"},{"lname":"启用时间","index":6,"type":"date"},{"lname":"强制式安排在卫生间","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"}]},{"checkname":"炉","index":2,"items":[{"lname":"嵌入式炉子下面柜门无通风口","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"炉泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"已过8年强制报废期","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"},{"lname":"炉子品牌","index":5,"type":"string"},{"lname":"无自动熄火保护装置","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"启用时间","index":6,"type":"date"}]},{"checkname":"灶前阀","index":4,"items":[{"lname":"无把柄","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"开关不便","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"}]},{"checkname":"其他","index":7,"items":[{"lname":"其他/压力","index":1,"type":"string"}]},{"checkname":"胶管","index":5,"items":[{"lname":"超2年","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"},{"lname":"超2米","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"穿墙","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":5,"type":"selector"},{"lname":"老化","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"无管卡","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"}]},{"checkname":"管道","index":6,"items":[{"lname":"泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"一般锈蚀","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"暗埋","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"},{"lname":"严重锈蚀","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"悬挂物品","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":5,"type":"selector"}]},{"checkname":"燃气表","index":1,"items":[{"lname":"表前阀无把柄","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":16,"type":"selector"},{"lname":"运转正常","multiple":false,"options":[{"isdefect":false,"data":"是"},{"isdefect":false,"data":"否","isdefault":true}],"index":11,"type":"selector"},{"lname":"表不转动","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":12,"type":"selector"},{"lname":"表前阀泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":15,"type":"selector"},{"lname":"表前阀开关不便","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":17,"type":"selector"},{"lname":"未封表","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":13,"type":"selector"},{"lname":"封闭无通风","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":14,"type":"selector"}]}]
1022
-
1023
-
1024
- //遍历选择框以及得到list
1025
- getselector(){
1026
- this.listbutton=[]
1027
-
1028
- for (let i = 0; i <this.str.length ; i++) {
1029
- let strlist=[]
1030
- strlist=this.str[i].items.concat()
1031
- for (let j = 0; j <strlist.length ; j++) {
1032
- strlist[j]["mname"]=this.str[i].checkname
1033
- }
1034
- strlist.splice(0,0,{lname:this.str[i].checkname+":",type:"",mname:""})
1035
- let bb=this.listbutton
1036
- this.listbutton=bb.concat(strlist)
1037
-
1038
-
1039
- }
1040
-
1041
- let h=this.listbutton
1042
- for (let i = 0; i <h.length ; i++) {
1043
-
1044
- h[i]["selected"]=""
1045
- h[i]["level"]=""
1046
- h[i]["isdefect"]=""
1047
- if (h[i].type =="selector"){
1048
- let size=h[i].options.length
1049
-
1050
- let pl=[]
1051
- for (let j = 0; j <size ; j++) {
1052
- let n=h[i].lname+h[i].mname
1053
-
1054
- pl.push(h[i].options[j].data)
1055
- this.planItemConditional[n]=pl
1056
-
1057
- }
1058
- }
1059
- }
1060
-
1061
- //tag)
1062
- }
1063
- //返回遍历的option
1064
- reoption(key1,key2){
1065
-
1066
- let modelname=key1+key2
1067
- return this.planItemConditional[modelname]
1068
-
1069
- }
1070
-
1071
-
1072
- // 取月的选择项目
1073
- months() {
1074
- return date.monthSelects
1075
- }
1076
-
1077
- //下发安检计划
1078
- async sendCheckPlan(f){
1079
- if(this.checkplan.check.checkes.length<1){
1080
- Vue.showMessage("请选择要下发的安检计划")
1081
- return
1082
- }
1083
- this.isSend=true
1084
- let res=await this.http.load("POST", "/api/af-safecheck/logic/NewBespeakCheckPlan", {
1085
- data:{
1086
- f_issued:'是',
1087
- f_issue_time:this.getNowFormatDate(),
1088
- f_send_operator:global.login.name,
1089
- param:this.checkplan.check.checkes,
1090
- }
1091
- }, {resolveMsg: null, rejectMsg: null})
1092
- if(res.data.code==200){
1093
- //Vue.showMessage("下发成功!其中有"+res.data.repet+"个计划己经是下发状态")
1094
- Vue.showMessage("下发成功!")
1095
- await this.loadCheckPlan('',()=>{})
1096
- f()
1097
- }else{
1098
- Vue.showMessage("下发失败!")
1099
- }
1100
- this.isSend=false
1101
- }
1102
-
1103
- //删除安检计划
1104
- async delCheckPlan(f){
1105
- if(this.checkplan.check.checkes.length<1){
1106
- Vue.showMessage("请选择要删除的安检计划")
1107
- return
1108
- }
1109
- this.isSend=true
1110
- let res=await this.http.load("POST", "/api/af-safecheck/logic/deleteCheckPlan", {
1111
- data:{
1112
- f_operator:global.login.name,//global.login.name,
1113
- condition:this.checkplan.search.search({}),
1114
- switchCheckAll:this.checkplan.check.switchCheckAll,
1115
- checkAll:this.checkplan.check.checkAll,
1116
- param:this.checkplan.check.checkes,
1117
- columnName: "f_plan_id"
1118
- }
1119
- }, {resolveMsg: "删除成功!", rejectMsg: "删除失败!"})
1120
- //tag)
1121
- if(res.data.code==200){
1122
- Vue.showMessage("删除成功!"+res.data.message,"success",2500)
1123
- await this.loadCheckPlan('',()=>{})
1124
- }else{
1125
- Vue.showMessage("删除失败!"+res.data.message,"success",2500)
1126
- }
1127
- this.checkplanitems.search.model.f_plan_id=""
1128
- this.checkplanitems.list.data=[]
1129
- f()
1130
- this.isSend=false
1131
- }
1132
- //修改计划时 用来存储当前选中要修改的计划
1133
- plan={}
1134
- setPlanVal(value){
1135
- //tag
1136
- this.plan=JSON.parse(JSON.stringify( value ))
1137
- }
1138
- setPlan(key,val){
1139
- this.plan[key]=val
1140
- }
1141
- isUpdate(key1,key2){
1142
- if (key1=="已检"&&key2!="补录"){
1143
- return true;
1144
- }
1145
- return false;
1146
- }
1147
- //修改安检计划
1148
- async upCheckPlan(f){
1149
- if(this.plan.f_issued=='已下发'){
1150
- Vue.showMessage("该计划已下发,无法进行修改!")
1151
- return
1152
- }
1153
- this.isSend=true
1154
- let res=await this.http.load("POST", "/api/af-safecheck/logic/updateCheckPlan", {
1155
- data:{
1156
- f_checker:this.plan.f_checker,
1157
- f_checker_id:this.plan.f_checker_id,
1158
- f_plan_name:this.plan.f_plan_name,
1159
- f_plan_year:this.plan.f_plan_year,
1160
- f_plan_month:this.plan.f_plan_month,
1161
- f_plan_id:this.plan.id
1162
- }
1163
- }, {resolveMsg: null, rejectMsg: null})
1164
- if(res.data.code==200){
1165
- Vue.showMessage("修改成功!"+res.data.message,"success",2500)
1166
- await this.loadCheckPlan('',()=>{})
1167
- }else{
1168
- Vue.showMessage("修改失败!"+res.data.message,"success",2500)
1169
- }
1170
- f()
1171
- this.isSend=false
1172
- }
1173
-
1174
- /* getDataLength(modelname){
1175
- //tag
1176
- let l=this[modelname].list.data.length
1177
- //tag
1178
- return l
1179
- }*/
1180
- //新建安检计划非空判断
1181
- validationCreatePlan(){
1182
- if(!this.newPlan.f_plan_name){
1183
- Vue.showMessage("请输入安检计划名称!")
1184
- return false
1185
- }
1186
- if(!this.newPlan.f_plan_year){
1187
- Vue.showMessage("请选择安检年份!")
1188
- return false
1189
- }
1190
- if(!this.newPlan.f_plan_month){
1191
- Vue.showMessage("请选择安检月份!")
1192
- return false
1193
- }
1194
- if(this.isShare=="否"){
1195
- if(!this.newPlan.f_checker){
1196
- Vue.showMessage("请选择安检人员!")
1197
- return false
1198
- }
1199
- }else{
1200
- this.newPlan.f_checker=''
1201
- }
1202
- if(!this.newPlan.f_safecheck_type){
1203
- Vue.showMessage("请选择安检类型!")
1204
- return false
1205
- }
1206
- return true
1207
- }
1208
-
1209
- //调用updatecheckpaper
1210
- async addNewPaper(f){
1211
- this.setFdevices()
1212
- this.setfDevicesid()
1213
- //return;
1214
- for (var i = 0; i <this.checkerMess.length ; i++) {
1215
- if (this.checkerMess[i].name==this.suppplanitem.f_checker_name){
1216
- this.suppplanitem["f_checker_id"]=this.checkerMess[i].id
1217
- }
1218
- }
1219
- ////tag
1220
- //return;
1221
- this.suppplanitem["f_devices"]=this.fdevices
1222
- this.suppplanitem.f_check_type=this.suppplanitem.f_user_type
1223
- this.suppplanitem.f_state = "已检"
1224
- this.suppplanitem.f_approved = "未审核"
1225
- this.suppplanitem.f_complete = "已完成"
1226
- this.suppplanitem.f_no_checkplan ="有计划安检"
1227
- //return;
1228
- this.suppplanitem.f_check_plan_id=this.suppplanitem.f_plan_id
1229
-
1230
- let res=await this.http.load("POST", "/api/af-safecheck/logic/SuppCheckPaper", {data:{paper:this.suppplanitem}})
1231
-
1232
- this.openPlan(this.plan,f)
1233
- f()
1234
- window.dispatchEvent(new CustomEvent("goRefresh"),{})
1235
- }
1236
- addnewPaper(f){
1237
- delete this.suppplanitem.id
1238
- if(!this.suppplanitem.f_onsite_time){
1239
- Vue.showMessage("提交失败,请输入开始时间!")
1240
- return false
1241
- }
1242
- if(!this.suppplanitem.f_offsite_time){
1243
- Vue.showMessage("提交失败,请输入结束时间!")
1244
- return false
1245
- }
1246
- if(!this.suppplanitem.f_entry_status){
1247
- Vue.showMessage("提交失败,请输入入户状态!")
1248
- return false
1249
- }
1250
- if(!this.suppplanitem.f_usegas&&this.suppplanitem.f_entry_status=='入户'){
1251
- Vue.showMessage("提交失败,请输入燃气使用状态!")
1252
- return false
1253
- }
1254
- // if(!this.suppplanitem.f_checker_name){
1255
- // Vue.showMessage("提交失败,请输入安检员!")
1256
- // }
1257
- this.addNewPaper(f)
1258
- }
1259
- updatePaper(f){
1260
- this.addNewPaper(f)
1261
- }
1262
- setNewPaper(property,value){
1263
- this.suppplanitem[property] = value
1264
-
1265
-
1266
-
1267
- return this
1268
- }
1269
-
1270
- setFdevices(){
1271
-
1272
-
1273
- var ar=this.listbutton
1274
- var br=this.fdevices
1275
- for (var i = 0; i <br .length; i++) {
1276
- for (var j = 0; j < ar.length; j++) {
1277
- if (br[i].f_device_type == ar[j].mname) {
1278
- br[i].f_items.push({
1279
- f_item_name: ar[j].lname,
1280
- f_item_value: ar[j].selected,
1281
- type: ar[j].type,
1282
- f_is_defect: ar[j].isdefect,
1283
- f_defect_level: ar[j].level,
1284
- f_item_lists:[{
1285
- //f_item_id: "",
1286
- f_item_value: ar[j].selected,
1287
- //id:""
1288
- }]
1289
- })
1290
- }
1291
- }
1292
- }
1293
- }
1294
- //给fdevices赋值id
1295
- setfDevicesid(){
1296
- var suppf=this.suppplanitem.f_devices
1297
- var fde=this.fdevices
1298
- if (this.suppplanitem.hasOwnProperty("f_devices")){
1299
- for (let i = 0; i <suppf.length ; i++) {
1300
- for (let j = 0; j <fde.length; j++) {
1301
- if (suppf[i].f_device_type==fde[j].f_device_type){
1302
- for (let k = 0; k <suppf[i].f_items.length ; k++) {
1303
- // //tag
1304
- for (let l = 0; l <fde[j].f_items.length ; l++) {
1305
- // //tag
1306
- if (suppf[i].f_items[k].f_item_name==fde[j].f_items[l].f_item_name) {
1307
- fde[j].f_items[l]["id"]=suppf[i].f_items[k].id
1308
- if (suppf[i].f_items[k].f_item_lists.length!=0){
1309
- fde[j].f_items[l].f_item_lists[0]["id"]=suppf[i].f_items[k].f_item_lists[0].id
1310
- fde[j].f_items[l].f_item_lists[0]["f_item_id"]=suppf[i].f_items[k].f_item_lists[0].f_item_id
1311
- }
1312
- }
1313
- }
1314
- }
1315
- }
1316
- }
1317
- }
1318
- }else {
1319
- this.suppplanitem.f_upload_date=this.getNowFormatDate()
1320
- }
1321
- }
1322
- //
1323
- setFitemvalue(){
1324
- for (var k = 0; k <this.listbutton.length ; k++) {
1325
- for (var i = 0; i <this.suppplanitem.f_devices.length ; i++) {
1326
- for (var j = 0; j < this.suppplanitem.f_devices[i].f_items.length; j++) {
1327
- if (this.listbutton[k].lname==this.suppplanitem.f_devices[i].f_items[j].f_item_name){
1328
- this.listbutton[k].selected=this.suppplanitem.f_devices[i].f_items[j].f_item_value
1329
- }
1330
- }
1331
- }
1332
- }
1333
- }
1334
- //改变selected属性
1335
- changeSelected(selectedname,selectedmname,selectedvalue){
1336
- var sa=this.listbutton
1337
- for (var i = 0; i <sa.length; i++) {
1338
- if (sa[i].lname==selectedname&&sa[i].mname==selectedmname){
1339
- sa[i].selected=selectedvalue
1340
- if (sa[i].type=="selector"){//判断是否是选择类型
1341
- for (var j = 0; j < sa[i].options.length; j++) {
1342
- if (sa[i].options[j].data==selectedvalue){//赋值为json的level和isdefect
1343
- sa[i].level=sa[i].options[j].level
1344
- sa[i].isdefect=sa[i].options[j].isdefect
1345
- }
1346
- }
1347
- }
1348
- }
1349
- }
1350
- ////tag
1351
- }
1352
- /* getAreaList() {
1353
- let res = this.http.load('POST', '/api/af-safecheck/sql/safe_singleTable_GroupBy', {
1354
- data: {
1355
- items: 'f_residential_area',
1356
- tablename: 't_area',
1357
- condition: 'f_filialeid = '+this.filialeid,
1358
- groupitem: 'f_residential_area'
1359
- }
1360
- }, {resolveMsg: null, rejectMsg: null}).then((res)=>{
1361
- if (res.data) {
1362
- let arr=[]
1363
- for(let i =0 ;i<res.data.length;i++){
1364
- arr.push(res.data[i].f_residential_area)
1365
- }
1366
- this.conditionJson[0].options=arr
1367
- }
1368
- })
1369
-
1370
- }*/
1371
- //获取当前时间
1372
- getNowFormatDate() {
1373
- let date = new Date();
1374
- let seperator1 = "-";
1375
- let seperator2 = ":";
1376
- let month = date.getMonth() + 1;
1377
- let strDate = date.getDate();
1378
- let hour = date.getHours();
1379
- let min = date.getMinutes();
1380
- let second = date.getSeconds();
1381
- if (month >= 1 && month <= 9) {
1382
- month = "0" + month;
1383
- }
1384
- if (strDate >= 0 && strDate <= 9) {
1385
- strDate = "0" + strDate;
1386
- }
1387
- if (hour >= 0 && hour <= 9) {
1388
- hour = "0" + hour;
1389
- }
1390
- if (min >= 0 && min <= 9) {
1391
- min = "0" + min;
1392
- }
1393
- if (second >= 0 && second <= 9) {
1394
- second = "0" + second;
1395
- }
1396
- let currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
1397
- + " " + hour + seperator2 + min
1398
- + seperator2 + second;
1399
- return currentdate;
1400
- }
1401
- //excel导出
1402
- async exportFile(){
1403
- if(!this.checkplanitems.search.model.f_plan_id){
1404
- Vue.showMessage("请选择先打开一个安检计划!")
1405
- return
1406
- }
1407
- this.isSend=true
1408
- this.jointCondition1("planitemconditionList","checkplanitems")
1409
- let res=await this.http.load('POST','api/af-safecheck/logic/SafeExportExcel',
1410
- {
1411
- "data": {
1412
- "body": {
1413
- "data": {
1414
- "condition": this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
1415
- "usercode": "i.f_userinfo_code='{}'",
1416
- "username": "i.f_user_name='{}'",
1417
- "f_address": "i.f_address like '%{}%'",
1418
- "f_last_check_state": "i.f_last_check_state='{}' ",
1419
- "f_start_time": "i.f_last_check_date >='{}'",
1420
- "f_end_time": "i.f_last_check_date <='{}'",
1421
- "f_last_check_result":"i.f_last_check_result like '%{}%'",
1422
- "f_state": "i.f_state !='{}'",
1423
- "f_state1": "i.f_state ='{}'"
1424
- })
1425
- },
1426
- "field": ["f_userinfo_code:用户编号","f_user_name:用户名称", "f_user_type:用户类型", "f_residential_area:小区名称", "f_state:安检状态","f_address:详细地址","f_user_phone:用户电话"],
1427
- "templateName": this.plan.f_plan_name,
1428
- "sqlName": "planItem"
1429
- },
1430
- }
1431
- }
1432
- ,{resolveMsg: null, rejectMsg: null})
1433
- //tag)
1434
- let link = document.createElement('a');
1435
- let path = res.data[0].filename
1436
- //webapps这个是在服务器上导出用的
1437
- let pathName = "http://" + location.host + "/webapps" + path.split('webapps')[1]
1438
- //excel这个是在本地导出用的
1439
- link.href = pathName;
1440
- link.download = path.split('excel/')[1];
1441
- link.dispatchEvent(new MouseEvent('click'));
1442
- this.isSend=false
1443
- }
1444
-
1445
- //获取抄表册
1446
- async Mreadibook(){
1447
- this.cbc=[]
1448
- this.sliceArea=[]
1449
- let http = new HttpResetClass()
1450
- let getMeterReadingBooks = await http.load('POST','api/af-safecheck/logic/getMeterBooksData',
1451
- {data: {f_orgid: "('"+this.filialeid+"')"}},
1452
- {resolveMsg: null, rejectMsg: '获取失败!!!'})
1453
- this.cbc = [{label: '全部', value: '全部'}]
1454
- //tag
1455
- //tag)
1456
- //tag
1457
- this.meterbooks=[]
1458
- this.meterbooks=getMeterReadingBooks.data.meterbooks
1459
- this.meterbooks.forEach((res) => {
1460
- this.cbc.push({label: res.f_book_name, value: res.id})
1461
- /*if(res.f_book_slice_area){
1462
- if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
1463
- this.sliceArea.push(res.f_book_slice_area)
1464
- }
1465
- }*/
1466
- })
1467
-
1468
- }
1469
- //获取子公司
1470
- async getOrgs(){
1471
- let http = new HttpResetClass()
1472
- let orgs = await http.load('POST', '/rs/search', {
1473
- source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $organization$)',
1474
- userid: global.login.id
1475
- //userid:"15130"
1476
- }, {resolveMsg: null, rejectMsg: '获取分公司出错!!!'})
1477
- //tag)
1478
- this.orgs = []
1479
- if(orgs.data.length>0){
1480
- orgs.data.forEach((res) => {
1481
- this.orgs.push({label: res.name, value: res.id})
1482
- })
1483
- }else{
1484
- this.orgs.push({label: this.filialeidname, value:this.filialeid})
1485
- // this.orgs.push({label: '测试公司', value:222})
1486
- }
1487
-
1488
-
1489
- }
1490
- //片区获取
1491
- async getSliceArea() {
1492
- let http = new HttpResetClass()
1493
- let getAllArea = await http.load('POST', '/rs/search', {
1494
- source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
1495
- userid: global.login.id
1496
- }, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
1497
- this.sliceArea = ['全部']
1498
- //tag
1499
- //tag
1500
- //tag
1501
- getAllArea.data.forEach((res) => {
1502
- if(res.parentid==this.filialeid){
1503
- this.sliceArea.push(res.name)
1504
- }
1505
- })
1506
- //tag
1507
- }
1508
-
1509
- show1(){
1510
- this.showModel=true
1511
- }
1512
- //清空用户编号
1513
- clearUserInfoId(){
1514
- this.setProperty("user","uploadCondition",'')
1515
- Vue.showMessage("已清空用户编号")
1516
- }
1517
- formatArrayFun(type,arr){
1518
- arr.forEach((result)=>{
1519
- this[type].push(result.value)
1520
- })
1521
- }
1522
- flush(f){
1523
- f()
1524
- }
1525
- }
1
+ import {SearchList, date} from 'vue-client'
2
+ import {PagedList} from 'vue-client'
3
+ import {HttpResetClass,trans} from 'vue-client'
4
+ import Vue from "vue"
5
+ import ObjConfig from '../../src/plugins/GerJsonObjectConfig'
6
+
7
+ export default class Comp {
8
+
9
+
10
+ needconfig= {}
11
+ isSend=true
12
+ // 用户安检信息列表
13
+ user = new SearchList(true)
14
+ //遍历的按钮
15
+ listbutton=[]
16
+ fdevices=[]
17
+ // 安检计划列表
18
+ checkplan = new SearchList(true)
19
+ // 安检计划的安检单列表
20
+ checkplanitems = new SearchList(true)
21
+ //按钮隐藏判断
22
+ suppplanitem={}
23
+ orderList= ['按时间降序', '按时间升序']//排序下拉框的值
24
+ currentorder='按时间降序'//排序下拉框当前选中的值
25
+ // 新增安检计划时保存的数据
26
+ newPlan = {f_issued:"否",f_safecheck_type:""}
27
+ http = new HttpResetClass()
28
+ //查询计划弹框中是否共享选项
29
+ isAndNot = ["是", "否"]
30
+ //是否开启共享计划
31
+ disableIssude=false
32
+ //是否显示添加用户删除用户按钮
33
+ disableButton=false
34
+ //小区列表
35
+ areaList=[]
36
+ //用户类型
37
+ userType=["民用","非民用"]
38
+ listbuttona=[]
39
+ listbuttonb=[]
40
+ listbuttonc=[]
41
+ listbuttond=[]
42
+ //安检计划查询中的是否是共享计划单选的当前选中值
43
+ sIsAndNotSelect=''
44
+ //用户列表的自选查询条件的值
45
+ userCondition=["请选择条件","用户类型","地址"]
46
+ //当前选中的下拉值
47
+ userConditionSelect="请选择条件"
48
+ //当前输入的值
49
+ userConditionValue=""
50
+ //计划项列表自选查询条件的值
51
+ planItemCondition=["请选择条件","用户编号","用户名称"]
52
+ //
53
+ planItemConditional={}
54
+ //入户状态
55
+ userState=["到访不遇","拒检","入户"]
56
+ //燃气使用
57
+ gasUse=["已使用","未使用"]
58
+ //当前选中的下拉值
59
+ planItemConditionSelect="请选择条件"
60
+ //当前输入的值
61
+ planItemConditionValue=""
62
+ sudeState=['全部','是','否']
63
+ issude=''
64
+ //safecheckTypeList=Vue.$appdata.getParam("安检类型")
65
+ safecheckTypeList=[]
66
+ //片区列表
67
+ sliceArea=[]
68
+ //气表类型
69
+ meter_classifys=[]
70
+ //抄表册
71
+ cbc=[]
72
+ //今年是否入户
73
+ hasHousehold=['全部','已入户','未入户']
74
+ HouseholdVal='未入户'
75
+ //保存当前公司所有抄表册
76
+ meterbooks=[]
77
+ //分公司列表
78
+ orgs=[]
79
+ //安检员列表
80
+ checker=[]
81
+ checkersname=[]
82
+ //新建计划时保存是否共享计划的值,
83
+ isShare="否"
84
+ //安检类型
85
+ safecheckList=[]
86
+ //时间单位
87
+ unitTime=["天"]
88
+ selectTime="天"
89
+ startday=""
90
+ endday=""
91
+ str=[]
92
+ //用气性质
93
+ gasproperties=[]
94
+ //当前打开的安检计划id
95
+ SelectedPlan=""
96
+ //燃气表增添项
97
+ //excel导入组件显示控制
98
+ showModel=false
99
+ gasexpress=[{"lname":"燃气表照片","type":"picture"},
100
+ {"lname":"表品牌","type":"string","readonly":true},
101
+ {"lname":"表号","type":"string","readonly":true},
102
+ {"lname":"表封号","type":"number","readonly":true},
103
+ {"lname":"表型号","type":"string","readonly":true},
104
+ {"lname":"位置","type":"string","readonly":true},
105
+ {"lname":"表底数","type":"number","readonly":true},
106
+ {"lname":"左右表","type":"string","readonly":true}]
107
+ //当前分公司id
108
+ filialeid=global.login.orgid
109
+ filialeidname=global.login.orgs
110
+
111
+ //filialeid='35526'
112
+ //filialeidname="梁平区聚源天然气有限公司"
113
+ yearCheckList=['全部','已在计划中','未在计划中']
114
+ yChecked=""
115
+ //用户列表查询条件json
116
+ conditionJson=[
117
+ {column:"f_residential_area",checkname:"小区名称",type:"input"},
118
+ {column:"f_building",checkname:"楼栋号码",type:"input"},
119
+ {column:"f_unit",checkname:"单元号码",type:"input"},
120
+ {column:"userType",checkname:"用户类型",type:"selector",options:['民用','非民用']},
121
+ {column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用']},
122
+ {column:"user_start",checkname:"开户起始",type:"date"},
123
+ {column:"user_end",checkname:"开户结束",type:"date"},
124
+ {column:"check_start",checkname:"安检起始",type:"date"},
125
+ {column:"check_end",checkname:"安检结束",type:"date"},
126
+ {column:"f_metertitles",checkname:"表箱号",type:"input"},
127
+ {column:"f_gasproperties",checkname:"用气性质",type:"selector",options:this.gasproperties},
128
+ {column:"f_backlist",checkname:"是否拉黑",type:"selector",options:['是','否']},
129
+ {column:"meter_classify",checkname:"气表类型",type:"selector",options:this.meter_classifys}
130
+ ]
131
+ conditionList=[
132
+ {selectitem:{column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用']},selectValue:'正常',num:0},
133
+ {selectitem:{column:"meter_classify",checkname:"气表类型",type:"selector",options:this.meter_classifys},selectValue:'',num:1},
134
+ {selectitem:{column:"f_gasproperties",checkname:"用气性质",type:"selector",options:this.gasproperties},selectValue:'',num:2},
135
+ {selectitem:{column:"f_backlist",checkname:"是否拉黑",type:"selector",options:['是','否']},selectValue:'',num:3},
136
+ {selectitem:{column:"user_start",checkname:"开户起始",type:"date"},selectValue:'',num:4},
137
+ {selectitem:{column:"user_end",checkname:"开户结束",type:"date"},selectValue:new Date().getFullYear()+'-01-01 00:00:00',num:5},
138
+ {selectitem:{column:"check_start",checkname:"安检起始",type:"date"},selectValue:'',num:6},
139
+ {selectitem:{column:"check_end",checkname:"安检结束",type:"date"},selectValue:'',num:7}
140
+ ]
141
+ //安检项列表查询条件
142
+ planitemconditionJson=[
143
+ {column:"f_last_check_state",checkname:"安检状态",type:"selector",options:['入户','拒检','到访不遇','未使用']},
144
+ {column:"f_start_time",checkname:"开始时间",type:"date"},
145
+ {column:"f_end_time",checkname:"结束时间",type:"date"},
146
+ {column:"f_last_check_result",checkname:"隐患状态",type:"selector",options:['正常','有隐患']},
147
+ {column:"f_state1",checkname:"安检结果",type:"selector",options:['已检','未检']}
148
+ ]
149
+ planitemconditionList=[
150
+ {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:0},
151
+ {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:1},
152
+ {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:2}
153
+ ]
154
+ //下拉框条件改变json数组
155
+ conditionListChange(modelname,ind,key,value,f){
156
+ //tag
157
+ this[modelname][ind]["num"]=ind
158
+ this[modelname][ind][key]=value
159
+ f()
160
+ }
161
+ //添加选择条件下拉框事件
162
+
163
+ addconditionList(field,f){
164
+ this[field].push({selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:this.conditionList.length})
165
+ f()
166
+ }
167
+ //删除选择条件下拉框事件
168
+ deletecondition(field,modelname,index,f){
169
+ //如果有这个属性,说明已经选择过,去清空条件数组里的值
170
+ if(this[field][index].selectitem.column){
171
+ this.setProperty(modelname,this[field][index].selectitem.column,"")
172
+ }
173
+ this[field].splice(index,1)
174
+
175
+ for (let i =0 ;i<this[field].length;i++){
176
+ this.conditionList[i].num=i
177
+ }
178
+ f()
179
+ }
180
+ async getAreaList() {
181
+ let res =await this.http.load('POST', '/api/af-safecheck/sql/safe_singleTable_GroupBy', {
182
+ data: {
183
+ items: 'f_residential_area',
184
+ tablename: 't_area',
185
+ condition: 'f_filialeid = '+this.filialeid,
186
+ groupitem: 'f_residential_area'
187
+ }
188
+ }, {resolveMsg: null, rejectMsg: null})
189
+ //tag)
190
+ if (res.data) {
191
+ let arr=["全部"]
192
+ for(let i =0 ;i<res.data.length;i++){
193
+ arr.push(res.data[i].f_residential_area)
194
+ }
195
+ this.areaList=arr
196
+ }
197
+ }
198
+ async ready() {
199
+ await this.getOrgs()
200
+ await this.getAreaList()
201
+ // 加载所有安检计划
202
+ await this.checkplan.searchList("/api/af-safecheck/sql/预约计划下发", {},{groupitem:"",f_filialeids:"("+this.filialeid+")",orderitem:"f_create_time desc"})
203
+ // this.getAreaList()
204
+ //加载安检员名单
205
+ //tag)
206
+ //tag
207
+ //tag)
208
+ this.disableIssude=Vue.$appdata.getSingleValue('共享计划')
209
+ this.disableButton=Vue.$appdata.getSingleValue('派发按钮')
210
+ this.formatArrayFun('meter_classifys',Vue.$appdata.getParam('气表类型'))
211
+ this.formatArrayFun('gasproperties',Vue.$appdata.getParam('用气性质'))
212
+ this.formatArrayFun('safecheckTypeList',Vue.$appdata.getParam('安检类型'))
213
+ this.formatArrayFun('safecheckList',Vue.$appdata.getParam('安检类型'))
214
+ this.searchChecker(global.login.id)
215
+ /*this.setProperty('checkplan','safechecktype','年度普检')*/
216
+ await this.Mreadibook()
217
+ await this.getSliceArea()
218
+ //await this.OverDateCheck()
219
+
220
+ }
221
+ async OverDateCheck() {
222
+ await this.getzhouqi()
223
+ await this.searchUser(() => {
224
+ })
225
+ //tag
226
+ //tag
227
+ Vue.showMessage(this.user.list.count + "户已超过安检周期,请及时处理")
228
+ this.startday=''
229
+ }
230
+
231
+ async getzhouqi(){
232
+ let http = new HttpResetClass()
233
+ http.load('post', `api/af-safecheck/sql/safe_getcirclelist`, {data:{condition:`1=1 and f_filialeid in ('${this.filialeid}')`}}, {resolveMsg: null, rejectMsg: null}).then(res => {
234
+ //tag
235
+ let day=0
236
+ //tag
237
+ if (res.data.length>0){
238
+ day=res.data[0].f_circle*365
239
+ }
240
+ //tag
241
+ this.startday=day
242
+ })
243
+
244
+ }
245
+ //补录功能组装数据
246
+ zzsj(){
247
+ let deviceconfig=ObjConfig.getObjConfig(this.needconfig.safecheck.DevicesConfig)
248
+ //tag)
249
+ for (let i = 0; i < deviceconfig.length; i++) {
250
+ //tag)
251
+ //tag)
252
+ this.str[deviceconfig[i].index-1]=deviceconfig[i]
253
+ //tag)
254
+ }
255
+ }
256
+ readConfig () {
257
+ let http = new HttpResetClass()
258
+ http.load('GET', `/phone/rs/vue`, {}, {resolveMsg: null, rejectMsg: null}).then(res => {
259
+ this.needconfig = res.data
260
+ //tag)
261
+ let aa=this.needconfig.safecheck.DevicesConfig
262
+ this.zzsj()
263
+ })
264
+
265
+ }
266
+ //当前页面属性发生改变事件
267
+ fieldChange(modelname,value,f){
268
+ //tag
269
+ if(modelname=="user" || modelname=="checkplan" || modelname=="checkplanitems"){
270
+ this.setProperty(modelname,"checkername",value.name)
271
+ this.setProperty(modelname,"checkerid",value.id)
272
+ f()
273
+ return
274
+ }
275
+ if(modelname=="createPlan"){
276
+ this.newPlan.f_checker_id=value.id
277
+ this.newPlan.f_checker=value.name
278
+ f()
279
+ return
280
+ }
281
+ if(modelname=="upPlan"){
282
+ this.plan.f_checker= value.name
283
+ this.plan.f_checker_id=value.id
284
+ f()
285
+ return
286
+ }
287
+ if(value=='全部'){
288
+ this[modelname]=''
289
+ }else{
290
+ this[modelname]=value
291
+ }
292
+ f()
293
+ }
294
+ async orgChange(value,f){
295
+ //tag)
296
+ if(value.value==this.filialeid){
297
+ f()
298
+ return
299
+ }
300
+ this.filialeid=value.value
301
+ this.filialeidname=value.label
302
+ this.user = new SearchList(true)
303
+ this.checkplanitems = new SearchList(true)
304
+ this.searchChecker(global.login.id)
305
+ await this.Mreadibook()
306
+ await this.getAreaList()
307
+ await this.getSliceArea()
308
+ await this.checkplan.searchList("/api/af-safecheck/sql/预约计划下发", {},{groupitem:"",f_filialeids:"("+this.filialeid+")",orderitem:"f_create_time desc"})
309
+ f()
310
+ }
311
+ //json下拉改变时间
312
+ selectChanged(modelname,key,valuename,value,f){
313
+ //tag)
314
+ if(value.label=='全部' || !value){
315
+ this[modelname].search.setField(key, '')
316
+ this[modelname].search.setField(key+'name', '全部')
317
+ }else{
318
+ //tag
319
+ this[modelname].search.setField(key, value.value)
320
+ this[modelname].search.setField(key+'name', value.label)
321
+ }
322
+ f()
323
+ }
324
+ selectChange(modulename, property, value){
325
+ //tag
326
+ if(value=='全部'){
327
+ this.setProperty(modulename, property, '')
328
+ }else{
329
+ this.setProperty(modulename, property, value)
330
+ }
331
+
332
+ }
333
+ jointCondition1(field,modelname){
334
+ for (let i =0 ;i<this[field].length;i++){
335
+ if(!this[field][i].selectValue){
336
+ continue
337
+ }
338
+ //tag
339
+ this.setProperty(modelname,this[field][i].selectitem.column,this[field][i].selectValue)
340
+ }
341
+ }
342
+ //根据选择框内容设置属性值
343
+ jointCondition(modelname){
344
+
345
+ if(modelname="user"){
346
+ this.setProperty("user","usertype","")
347
+ this.setProperty("user","address","")
348
+ switch(this.userConditionSelect){
349
+ case "用户类型":
350
+ this.setProperty("user","usertype",this.userConditionValue)
351
+ break;
352
+ case "地址":
353
+ this.setProperty("user","address",this.userConditionValue)
354
+ break;
355
+ }
356
+ }
357
+ if(modelname="checkplanitems"){
358
+ this.setProperty("checkplanitems","usercode","")
359
+ this.setProperty("checkplanitems","username","")
360
+ switch(this.planItemConditionSelect){
361
+ case "用户编号":
362
+ this.setProperty("checkplanitems","usercode",this.planItemConditionValue)
363
+ break;
364
+ case "用户名称":
365
+ this.setProperty("checkplanitems","username",this.planItemConditionValue)
366
+ break;
367
+ }
368
+ }
369
+ }
370
+
371
+ //是否共享计划单选按钮事件
372
+ isAndNotChange(isAndNotselect){
373
+ this.sIsAndNotSelect=isAndNotselect
374
+ if(this.sIsAndNotSelect=="是"){
375
+ this.setProperty("checkplan","isAndNot","is null")
376
+ }
377
+ if(this.sIsAndNotSelect=="否"){
378
+ this.setProperty("checkplan","isAndNot","is not null")
379
+ }
380
+ }
381
+
382
+ //按条件查询所有安检计划
383
+ async loadCheckPlan(sortfield,f) {
384
+ this.isSend=true
385
+ this.checkplan.check.checkes=[]
386
+ if(sortfield){//如果传入空串说明是查询 传入非空串就是排序
387
+ //tag
388
+ if(sortfield==this.currentorder){
389
+ this.isSend=false
390
+ return
391
+ }else{
392
+ this.currentorder=sortfield
393
+ }
394
+ }
395
+ let fieldValue=''
396
+ switch(this.currentorder){
397
+ case "按时间降序":
398
+ fieldValue='f_create_time desc'
399
+ break
400
+ case "按时间升序":
401
+ fieldValue='f_create_time'
402
+ break
403
+ }
404
+ //tag
405
+ await this.checkplan.searchList("/api/af-safecheck/sql/预约计划下发",
406
+ {"f_plan_name": "f_plan_name like '%{}%'",
407
+ "f_plan_year":"f_plan_year={}",
408
+ "f_plan_month":"f_plan_month={}",
409
+ "checkerid":"f_checker_id={}",
410
+ "isAndNot":"f_checker {}",
411
+ "safechecktype":"f_safecheck_type='{}'",
412
+ "issude":"f_issued = '{}'"
413
+ },
414
+ {orderitem:fieldValue,
415
+ f_filialeids:"("+this.filialeid+")",
416
+ groupitem:""
417
+ }
418
+ )
419
+ //调刷新函数????
420
+ //tag
421
+ f()
422
+ this.isSend=false
423
+ }
424
+
425
+ // 查询待检用户
426
+ async searchUser(f) {
427
+ this.isSend=true
428
+ this.user.check.checkes=[]
429
+ this.jointCondition1("conditionList","user")
430
+ let sday=''
431
+ let eday=''
432
+ if(this.startday.trim()!=''){
433
+ if(isNaN(this.startday) || isNaN(this.endday)){
434
+ Vue.showMessage("请输入数字!")
435
+ return
436
+ }
437
+ if(this.selectTime=="月"){
438
+ sday= this.startday*30
439
+ this.endday.trim()!=''?eday= this.endday*30:eday=''
440
+ }else{
441
+ sday= this.startday
442
+ this.endday.trim()!=''?eday= this.endday:eday=''
443
+ }
444
+ if(eday){
445
+ this.setProperty("user","checkTime"," ceil(to_date(to_char(sysdate,'yyyy-MM-dd HH24:mi:ss'),'yyyy-mm-dd hh24:mi:ss')-nvl(to_date(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'),'1990-01-01 00:00:00'))>="+parseInt(sday,10)+" and ceil(to_date(to_char(sysdate,'yyyy-MM-dd HH24:mi:ss'),'yyyy-mm-dd hh24:mi:ss')-nvl(to_date(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'),'1990-01-01 00:00:00'))<="+parseInt(eday,10))
446
+ }else{
447
+ this.setProperty("user","checkTime"," ceil(to_date(to_char(sysdate,'yyyy-MM-dd HH24:mi:ss'),'yyyy-mm-dd hh24:mi:ss')-nvl(to_date(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'),'1990-01-01 00:00:00'))>="+parseInt(sday,10))
448
+ }
449
+ }else{
450
+ this.setProperty("user","checkTime","")
451
+ }
452
+ if(this.yChecked=='已在计划中'){
453
+ this.setProperty("user","ychecked","ua.f_plan_id is not null")
454
+ }else if(this.yChecked=='未在计划中'){
455
+ this.setProperty("user","ychecked","ua.f_plan_id is null")
456
+ }else{
457
+ this.setProperty("user","ychecked","")
458
+ }
459
+ if(this.HouseholdVal=='已入户'){
460
+ this.setProperty("user","householstate","Extract(year from TO_DATE(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'))=2021 and ua.F_LAST_CHECK_STATE='入户'")
461
+ }else if(this.HouseholdVal=='未入户'){
462
+ this.setProperty("user","householstate","(Extract(year from nvl(TO_DATE(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'),'1990-01-01 00:00:00'))!=2021 or nvl(ua.F_LAST_CHECK_STATE,'未入户')!='入户')")
463
+ }else{
464
+ this.setProperty("user","householstate","")
465
+ }
466
+ if(this.user.search.model.f_backlist){
467
+ if(this.user.search.model.f_backlist=='是'){
468
+ this.setProperty("user","f_backlist"," up.id is not null")
469
+ }else if(this.user.search.model.f_backlist=='否'){
470
+ this.setProperty("user","f_backlist"," up.id is null")
471
+ }else{
472
+ this.setProperty("user","f_backlist","")
473
+ }
474
+ }
475
+ this.user.search.setField("f_filialeid",this.filialeid)
476
+ await this.user.searchList("/api/af-safecheck/sql/FetchUserFileByOrgNoRuHuSXQ", {
477
+ "f_filialeid": "ui.f_filialeid={}",
478
+ "userinfocode": "ui.f_userinfo_code='{}'",
479
+ "username": "ui.f_user_name like '%{}%'",
480
+ "useraddress": "ua.f_address like '%{}%'",
481
+ "userType":"uf.f_user_type='{}'",
482
+ "f_residential_area":"ua.f_residential_area = '{}'",
483
+ "f_building":"ua.f_building='{}'",
484
+ "f_unit":"ua.f_unit='{}'",
485
+ "f_user_state":"ui.f_user_state='{}'",
486
+ "checkTime":" {}",
487
+ "meterbook":"uf.f_meter_book_num='{}'",
488
+ "user_start":" ui.f_createfile_date >='{}'",
489
+ "user_end":" ui.f_createfile_date <='{}'",
490
+ "check_start":" ua.f_last_check_date >='{}'",
491
+ "check_end":" ua.f_last_check_date<= '{}'",
492
+ "area":" f_book_slice_area ='{}'",
493
+ "ychecked":" {}",
494
+ "f_metertitles":" uf.f_metertitles='{}'",
495
+ "f_gasproperties":" uf.f_gasproperties='{}'",
496
+ "uploadCondition":" {}",
497
+ "f_backlist":" {}",
498
+ "meter_classify":" uf.F_METER_CLASSIFY='{}'",
499
+ "householstate":" {}"
500
+ }, {
501
+ "orderitem": 'f_residential_area,f_building,f_unit,f_floor,f_room',
502
+ "f_usertype": '',
503
+ "month": '',
504
+ "SafeCheckSX": {"f_check_start": '', "f_check_end": ''},
505
+ "SafeCheckCQ": '',
506
+ "startday":"",
507
+ "endday":""
508
+ })
509
+ f()
510
+ this.isSend=false
511
+ }
512
+
513
+ //查询安检员selectChanged
514
+ async searchChecker(id){
515
+ let res=await this.http.load('POST', '/rs/search', {
516
+ source: 'tool.getChildrenOfResName($安检员$)',
517
+ userid: id
518
+ }, {resolveMsg: null, rejectMsg: null})
519
+ this.checker=[]
520
+ res.data.forEach((resRow) => {
521
+ if(resRow.orgid==this.filialeid){
522
+ this.checker.push(resRow)
523
+ }
524
+ })
525
+ //tag+"---id"+this.filialeid)
526
+ }
527
+
528
+ async searchPlanItems(f) {
529
+ await this.checkplanitems.searchList("/api/af-safecheck/sql/planItem", {"f_plan_id": "f_plan_id={}"}, {})
530
+ f()
531
+ }
532
+ //得到更新数据
533
+ async getPaper(id,f) {
534
+ let res=await this.http.load("POST", "/rs/path/getUserinfomation", {
535
+ data:{
536
+ condition:"f_check_item_id='"+id+"'"
537
+ }
538
+ })
539
+
540
+
541
+ this.suppplanitem=res.data[0]
542
+ if (this.suppplanitem.f_check_type!=null) {
543
+ this.suppplanitem["f_user_type"]=this.suppplanitem.f_check_type
544
+ }
545
+ this.fdevices=[]
546
+
547
+ if(this.suppplanitem.f_devices.length!=0){
548
+
549
+ for (let i = 0; i <this.str.length ; i++) {
550
+ if (this.suppplanitem.f_devices[i]==undefined) {
551
+ this.fdevices.push({
552
+ f_device_type: this.str[i].checkname,
553
+ f_items: []
554
+ //id: this.suppplanitem.f_devices[i] == undefined ? "" : this.suppplanitem.f_devices[i].id
555
+ })
556
+ }else {
557
+ this.fdevices.push({
558
+ f_device_type: this.str[i].checkname,
559
+ f_items: [],
560
+ id:this.suppplanitem.f_devices[i].id
561
+ })
562
+ }
563
+ }
564
+ }else{for (let i = 0; i <this.str.length ; i++) {
565
+
566
+ this.fdevices.push({f_device_type:this.str[i].checkname,f_items:[]})
567
+ }}
568
+
569
+ this.setFitemvalue()
570
+ f()
571
+
572
+
573
+
574
+ }
575
+
576
+ //补录时改变fdevice
577
+ suppfdevice(){
578
+ for (let i = 0; i <this.str.length ; i++) {
579
+ this.fdevices.push({f_device_type:this.str[i].checkname,f_items:[]})
580
+ }
581
+ //tag)
582
+ this.changeListButton()
583
+ }
584
+ //改变数组的样式
585
+ changeListButton(){
586
+ let listarray=[]
587
+ for (let i = 0; i < this.listbutton.length; i++) {
588
+ if (!this.listbutton[i].mname){
589
+ //tag
590
+ listarray.push(this.listbutton[i])
591
+ listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
592
+ listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
593
+ listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
594
+ let count=0
595
+ for (let j = 0; j < this.listbutton.length; j++) {
596
+ if(this.listbutton[i].lname.substring(0,this.listbutton[i].lname.length-1)==this.listbutton[j].mname){
597
+
598
+ listarray.push(this.listbutton[j])
599
+ count++
600
+ }
601
+ }
602
+ if (count%4!=0){
603
+ for (let j = 0; j <4-count%4; j++) {
604
+ listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
605
+ }
606
+ }
607
+ }
608
+ }
609
+ //tag)
610
+ this.listbutton=listarray
611
+ this.tranlistbutton()
612
+ }
613
+ //横向分开list
614
+ tranlistbutton(){
615
+ //tag
616
+ for (let i = 0; i < this.listbutton.length; i++) {
617
+ if((i+1)%4==1){
618
+ this.listbuttona.push(this.listbutton[i])
619
+ }else if((i+1)%4==2){
620
+ this.listbuttonb.push(this.listbutton[i])
621
+ }else if((i+1)%4==3){
622
+ this.listbuttonc.push(this.listbutton[i])
623
+ }else if((i+1)%4==0){
624
+ this.listbuttond.push(this.listbutton[i])
625
+ }
626
+ }
627
+ }
628
+ SelectedPlanType=''
629
+ // 打开安检计划,加载安检计划的所有安检单
630
+ async openPlan(plan, f) {
631
+ this.isSend=true
632
+ this.checkplanitems.check.checkes=[]
633
+ this.SelectedPlan=plan.id
634
+ this.SelectedPlanType=plan.f_safecheck_type
635
+ this.plan=plan
636
+ this.checkplanitems.search.setField("f_plan_id", plan.id)
637
+ this.checkplanitems.search.setField("f_state", "作废")
638
+ await this.checkplanitems.searchList("/api/af-safecheck/sql/planItem", {"f_plan_id": "i.f_plan_id='{}'","f_state": "i.f_state !='{}'"}, {})
639
+ f()
640
+ //this.checkplanitems.search.model.f_plan_id
641
+ this.isSend=false
642
+ }
643
+
644
+ //根据条件查询某个安检计划下的安检单
645
+ async searchPlanItem(f) {
646
+ this.checkplanitems.check.checkes=[]
647
+ if(this.checkplanitems.search.model.f_plan_id){
648
+ this.isSend=true
649
+ //tag
650
+ this.jointCondition1("planitemconditionList","checkplanitems")
651
+ await this.checkplanitems.searchList("/api/af-safecheck/sql/planItem",
652
+ {"f_plan_id": "i.f_plan_id='{}'",
653
+ "usercode": "i.f_userinfo_code='{}'",
654
+ "username": "i.f_user_name='{}'",
655
+ "f_address": "i.f_address like '%{}%'",
656
+ "f_last_check_state": "i.f_last_check_state='{}' ",
657
+ "f_start_time": "i.f_last_check_date >='{}'",
658
+ "f_end_time": "i.f_last_check_date <='{}'",
659
+ "f_last_check_result":"i.f_last_check_result like '%{}%'",
660
+ "f_state": "i.f_state !='{}'",
661
+ "f_state1": "i.f_state ='{}'"
662
+ },
663
+ {})
664
+ f()
665
+ this.isSend=false
666
+ }else{
667
+ Vue.showMessage("请选择安检计划")
668
+ }
669
+ }
670
+ //加载更多数据
671
+ async loadMore(modelname,f) {
672
+ this.isSend=true
673
+ await this[modelname].list.loadMore()
674
+ f()
675
+ this.isSend=false
676
+ }
677
+
678
+ //点击全选按钮事件 user-用户列表 planitem-计划项列表
679
+ changeCheckAll(modulename, f) {
680
+ this[modulename].check.setCheckAll()
681
+ f()
682
+ }
683
+
684
+ //当选中列表中某项时触发
685
+ addParam(modulename, id) {
686
+ //tag
687
+ this[modulename].check.setCheckes(id)
688
+ }
689
+
690
+ //设置属性值
691
+ setProperty(modulename, property, value,f) {
692
+
693
+ //tag
694
+ if(property=='area'){
695
+ this.selectChanged("user","meterbook","","",f)
696
+ if(value=='全部'){
697
+ this[modulename].search.setField(property, '')
698
+ this.cbc=[]
699
+ this.meterbooks.forEach((res) => {
700
+ this.cbc.push({label: res.f_book_name, value: res.id})
701
+ /*if(res.f_book_slice_area){
702
+ if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
703
+ this.sliceArea.push(res.f_book_slice_area)
704
+ }
705
+ }*/
706
+ })
707
+ f()
708
+ return
709
+ }
710
+ this[modulename].search.setField(property, value)
711
+ this.cbc=[]
712
+ this.meterbooks.forEach((res) => {
713
+ if(res.f_book_slice_area==value){
714
+ this.cbc.push({label: res.f_book_name, value: res.id})
715
+ }
716
+
717
+ /*if(res.f_book_slice_area){
718
+ if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
719
+ this.sliceArea.push(res.f_book_slice_area)
720
+ }
721
+ }*/
722
+ })
723
+ f()
724
+ }else if(value=='全部'){
725
+ this[modulename].search.setField(property, '')
726
+ }else{
727
+ this[modulename].search.setField(property, value)
728
+ }
729
+ }
730
+
731
+ //列表中的选择框是否被选中
732
+ hasValue(modulename,value){
733
+ this[modulename].check.checks.has()
734
+ }
735
+ // 给新建安检计划设置属性值
736
+ setNewPlan(property, value) {
737
+ //tag
738
+ this.newPlan[property] = value
739
+ return this
740
+ }
741
+ //将某项拖动到计划中
742
+ //dragParam:从拖动的起始位置传入的参数
743
+ async dragtoPlan(f_plan_id,f_safecheck_type,f_filialeid,dragParam,f){
744
+ //tag
745
+ await this.dragtoPlanItem(f_plan_id,f_safecheck_type,dragParam,f)
746
+ await this.dragtoOtherPlanIteem(f_plan_id,dragParam,f)
747
+ }
748
+
749
+ //将客户信息拖至计划中
750
+ async dragtoPlanItem(f_plan_id,f_safecheck_type,dragParam,f) {
751
+
752
+ //tag
753
+ if(dragParam=='user'){
754
+ this.jointCondition("user")
755
+ if(this.checkplanitems.search.model.f_plan_id){
756
+ this.isSend=true
757
+ let res=await this.http.load("POST", "/api/af-safecheck/logic/AddCheckPlanItem", {
758
+ data:{
759
+ f_operator:global.login.name,
760
+ f_plan_id:f_plan_id,
761
+ f_safecheck_type:f_safecheck_type,
762
+ f_filialeid:this.filialeid,
763
+ f_subscribe_date:'',
764
+ condition:this.user.search.search({
765
+ "f_filialeid": "ui.f_filialeid={}",
766
+ "userinfocode": "ui.f_userinfo_code='{}'",
767
+ "username": "ui.f_user_name like '%{}%'",
768
+ "useraddress": "ua.f_address like '%{}%'",
769
+ "userType":"uf.f_user_type='{}'",
770
+ "f_residential_area":"ua.f_residential_area = '{}'",
771
+ "f_building":"ua.f_building='{}'",
772
+ "f_unit":"ua.f_unit='{}'",
773
+ "f_user_state":"ui.f_user_state='{}'",
774
+ "checkTime":" {}",
775
+ "meterbook":"uf.f_meter_book_num='{}'",
776
+ "user_start":" ui.f_createfile_date >='{}'",
777
+ "user_end":" ui.f_createfile_date <='{}'",
778
+ "check_start":" ua.f_last_check_date >='{}'",
779
+ "check_end":" ua.f_last_check_date<= '{}'",
780
+ "area":" ua.f_slice_area='{}'",
781
+ "ychecked":" {}",
782
+ "f_metertitles":" uf.f_metertitles='{}'",
783
+ "f_gasproperties":" uf.f_gasproperties='{}'",
784
+ "uploadCondition":" {}",
785
+ "f_backlist":" {}",
786
+ "meter_classify":" uf.F_METER_CLASSIFY='{}'",
787
+ "householstate":" {}"
788
+ }),
789
+ switchCheckAll:this.user.check.switchCheckAll,
790
+ checkAll:this.user.check.checkAll,
791
+ param:this.user.check.checkes,
792
+ columnName: "ua.id"
793
+ }
794
+ }, {resolveMsg: null, rejectMsg: null})
795
+ //tag+"---"+res.data.result.length)
796
+ if(res.data.code==200){
797
+ //alert("添加成功!有"+res.data.result.length+"条用户地址已经存在于其他计划中: \n"+res.data.result.reduce((c,v)=>{c += v.f_user_name+":"+v.f_address+"\n"}),0)
798
+ Vue.showMessage("添加成功!"+(res.data.result.length>0?"有"+res.data.result.length+"条用户地址已经存在于其他计划中":""))
799
+ }else{
800
+ Vue.showMessage("添加失败!")
801
+ }
802
+ this.user.check.checkes=[]
803
+ await this.searchUser(()=>{})
804
+ await this.searchPlanItem(()=>{})
805
+ await this.loadCheckPlan("",()=>{})
806
+ f()
807
+ this.isSend=false
808
+ }else{
809
+ Vue.showMessage("请先打开一个计划再进行操作")
810
+ }
811
+ }
812
+ }
813
+
814
+ //将某个计划下的一项拖到另一个计划
815
+ async dragtoOtherPlanIteem(checkplanid,dragParam,f) {
816
+ if(dragParam=='item'){
817
+ this.isSend=true
818
+ let res=await this.http.load("POST", "/api/af-safecheck/logic/UpCheckPlanItem", {
819
+ data:{
820
+ f_operator:global.login.name,
821
+ f_plan_id:checkplanid,
822
+ condition:this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
823
+ "usercode": "i.f_userinfo_code='{}'",
824
+ "username": "i.f_user_name='{}'",
825
+ "f_address": "i.f_address like '%{}%'",
826
+ "f_last_check_state": "i.f_last_check_state='{}' ",
827
+ "f_start_time": "i.f_last_check_date >='{}'",
828
+ "f_end_time": "i.f_last_check_date <='{}'",
829
+ "f_last_check_result":"i.f_last_check_result like '%{}%'",
830
+ "f_state": "i.f_state !='{}'",
831
+ "f_state1": "i.f_state ='{}'"
832
+ }),
833
+ switchCheckAll:this.checkplanitems.check.switchCheckAll,
834
+ checkAll:this.checkplanitems.check.checkAll,
835
+ param:this.checkplanitems.check.checkes,
836
+ columnName: "i.id"
837
+ }
838
+ }, {resolveMsg: null, rejectMsg: null})
839
+ if(res.data.code==200){
840
+ await this.searchUser(()=>{})
841
+ await this.searchPlanItem(()=>{})
842
+ await this.loadCheckPlan("",()=>{})
843
+ f()
844
+ Vue.showMessage("更换安检计划成功!")
845
+ }else{
846
+ Vue.showMessage("更换安检计划失败!")
847
+ }
848
+ f()
849
+ this.isSend=false
850
+ }
851
+
852
+ }
853
+
854
+ //修改计划项状态为作废
855
+ async delPlanItem(dragParam,f) {
856
+ //tag
857
+ if(dragParam=='item'){
858
+ Vue.showMessage("此操作无法撤回,确定要执行作废安检单操作吗?",['confirm','cancel']).then((button)=>{
859
+ if(button=='confirm'){
860
+ this.isSend=true
861
+ let resu=this.http.load("POST", "/api/af-safecheck/logic/UpCheckPlanItemState", {
862
+ data: {
863
+ f_operator:global.login.name,
864
+ condition:this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
865
+ "usercode": "i.f_userinfo_code='{}'",
866
+ "username": "i.f_user_name='{}'",
867
+ "f_address": "i.f_address like '%{}%'",
868
+ "f_last_check_state": "i.f_last_check_state='{}' ",
869
+ "f_start_time": "i.f_last_check_date >='{}'",
870
+ "f_end_time": "i.f_last_check_date <='{}'",
871
+ "f_last_check_result":"i.f_last_check_result like '%{}%'",
872
+ "f_state": "i.f_state !='{}'",
873
+ "f_state1": "i.f_state ='{}'"
874
+ }),
875
+ switchCheckAll:this.checkplanitems.check.switchCheckAll,
876
+ checkAll:this.checkplanitems.check.checkAll,
877
+ param:this.checkplanitems.check.checkes,
878
+ columnName: "i.id"
879
+ }
880
+ }, {resolveMsg: null, rejectMsg: null}).then((resu)=>{
881
+
882
+ //tag)
883
+ if(resu.data.code==200){
884
+ Vue.showMessage("移除安检单成功! 成功移除:"+resu.data.res.up+"条"+(resu.data.res.noup>0?"有"+resu.data.res.noup+"条已经不是 ‘未检’ 状态!":""))
885
+ this.searchUser(f)
886
+ this.searchPlanItem(f)
887
+ this.loadCheckPlan("",f)
888
+ }else{
889
+ Vue.showMessage("取消安检计划失败!")
890
+ }
891
+ this.isSend=false
892
+ })
893
+
894
+ }
895
+
896
+ })
897
+
898
+ }
899
+
900
+ }
901
+
902
+ //新建计划
903
+ async addNewPlan(f) {
904
+ if(!this.validationCreatePlan()){
905
+ return
906
+ }
907
+ this.isSend=true
908
+ let res=await this.http.load("POST","/api/af-safecheck/sql/getCheckplan", {data: {condition:"f_plan_name='"+this.newPlan.f_plan_name+"'",sortfield:'f_create_time desc'}})
909
+ //tag
910
+ if(res.data.length>0){
911
+ Vue.showMessage("计划名称不能重复!")
912
+ this.isSend=false
913
+ return
914
+ }
915
+ if(this.isShare=="是"){
916
+ this.newPlan.f_checker_id=null
917
+ this.newPlan.f_checker=null
918
+ }
919
+ this.newPlan.f_plan_type='预约计划'
920
+ this.newPlan.f_subcompany=global.login.orgs
921
+ this.newPlan.f_filialeid=this.filialeid
922
+ this.newPlan.f_create_operator=global.login.name
923
+ this.newPlan.f_create_time=this.getNowFormatDate()
924
+ await Vue.resetpost("/api/af-safecheck/logic/createCheckPlan", {"data": this.newPlan},{resolveMsg : '新建计划成功!', rejectMsg : '新建计划失败!'})
925
+ //await this.loadCheckPlan('',()=>{})
926
+ this.newPlan={f_issued:"否"}
927
+ this.isShare="否"
928
+ await this.loadCheckPlan('',()=>{})
929
+ f()
930
+ window.dispatchEvent(new CustomEvent("goRefresh"),{})
931
+ this.isSend=false
932
+
933
+ }
934
+
935
+ // 取消新建安检计划
936
+ cancel() {
937
+ this.newPlan={f_issued:"否"}
938
+ this.isShare="否"
939
+ this.plan={}
940
+ }
941
+
942
+ // 取年的选择项目
943
+ years() {
944
+ return date.yearSelects
945
+ }
946
+ /*
947
+ 1.获取配置文件
948
+ 2.组装配置文件 (配置文件[] JS提前固定的数组[] return [])
949
+ */
950
+
951
+ // str = [
952
+ // {
953
+ // "checkname": "燃气表",
954
+ // "checkmust":false,
955
+ // "items":[
956
+ // {"lname": "表具状态","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"包裹","isdefect":true,"level":"C2","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"},{"data":"漏气","isdefect":true,"level":"A1","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"}]},
957
+ // {"lname": "表故障","multiple":true,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"破损变形","isdefect":true,"level":"B2","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"},{"data":"失效","isdefect":true,"level":"B2","isdefault": false},{"data":"不走字","isdefect":true,"level":"B2","isdefault": false},{"data":"铅封损坏","isdefect":true,"level":"B2","isdefault": false},{"data":"气表到期(使用年限超过八年)","isdefect":true,"level":"B2","isdefault": false}]},
958
+ // {"lname": "腐蚀","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"轻微","isdefect":false,"isdefault": false},{"data":"中度","isdefect":false,"isdefault": false},{"data":"严重","isdefect":true,"level":"A2","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"}]},
959
+ // {"lname": "使用年限","type":"string", "data": 8,"isshow": false}
960
+ // ]
961
+ // },
962
+ // {
963
+ // "checkname": "阀门",
964
+ // "checkmust":true,
965
+ // "items":[
966
+ // {"lname": "阀门","multiple":true,"type":"selector","options":[{"data":"无阀门","isdefect":true,"level":"A2"},{"data":"无阀柄","isdefect":true,"level":"A2"},{"data":"失效","isdefect":true,"level":"A2"}]},
967
+ // {"lname": "表前阀","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A1","isdefault": false}]},
968
+ // {"lname": "灶前阀","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A1","isdefault": false}]},
969
+ // {"lname":"使用年限","type":"string", "data": 8,"isshow": false}
970
+ // ]
971
+ // },
972
+ // {
973
+ // "checkname": "户内管",
974
+ // "quantity": 2,
975
+ // "checkmust":true,
976
+ // "items":[
977
+ // {"lname": "穿墙管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
978
+ // {"lname": "胶管","multiple":true,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"老化、超期使用","isdefect":true,"level":"A8"},{"data":"未紧箍","isdefect":true,"level":"C2"},
979
+ // {"data":"软管穿墙","isdefect":true,"level":"C2"},{"data":"软管超长(长度超过两米)","isdefect":true,"level":"C2"},{"data":"非专用软管","isdefect":true,"level":"C2"}]},
980
+ // {"lname": "镀锌管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
981
+ // {"lname": "铝塑管、波纹管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
982
+ // {"lname": "热水器管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
983
+ // {"lname":"使用年限","type":"string", "data": 8,"isshow": false}
984
+ // ]
985
+ // },
986
+ // {
987
+ // "checkname": "热水器",
988
+ // "quantity": 0,
989
+ // "checkmust":false,
990
+ // "items":[
991
+ // {"lname": "热水器品牌","type":"string"},
992
+ // {"lname": "热水器烟道","multiple":true,"type":"selector","options":[{"data":"正常","isdefect":false},{"data":"未安装烟道","isdefect":true,"level":"A8","tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"},{"data":"烟道未与大气直接连通","isdefect":true,"level":"A8"},{"data":"安装不规范","isdefect":true,"level":"A8"}]},
993
+ // {"lname": "安装位置","multiple":false,"type":"selector","options":[{"data":"卫生间","isdefect":false},{"data":"卧室","isdefect":true,"level":"A8"},
994
+ // {"data":"客厅过道","isdefect":true,"level":"A8"},{"data":"内厨房","isdefect":true,"level":"A8"},{"data":"其他密封或通风不良房间","isdefect":true,"level":"A8"}]},
995
+ // {"lname": "工作状态","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false},{"data":"异常","isdefect":true,"level":"A8"}]},
996
+ // {"lname":"使用年限","type":"string", "data": 4,"isshow": false}
997
+ // ]
998
+ // },
999
+ // {
1000
+ // "checkname": "燃气具",
1001
+ // "checkmust":false,
1002
+ // "items":[
1003
+ // {"lname": "燃气具品牌","type":"string"},
1004
+ // {"lname": "安装位置","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8","isdefault": false}]},
1005
+ // {"lname": "安装状况","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"超年限(使用年限为8年)","isdefect":true,"level":"A8","isdefault": false}]},
1006
+ // {"lname":"使用年限","multiple":false,"type":"string", "data": 4}
1007
+ // ]
1008
+ // },
1009
+ // {
1010
+ // "checkname": "其他",
1011
+ // "checkmust":false,
1012
+ // "items":[
1013
+ // {"lname": "使用简易三通","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]},
1014
+ // {"lname": "私自安装、改迁燃气设施及设备","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8","tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"}]},
1015
+ // {"lname": "违反安全间距规定","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]},
1016
+ // {"lname": "燃气设施及设备上搭挂重物","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]},
1017
+ // {"lname": "燃气管道被作电器接地线使用","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]}
1018
+ // ]
1019
+ // }
1020
+ // ]
1021
+ //str=[{"checkname":"热水器","index":3,"items":[{"lname":"烟道式安装在卫生间","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"已过八年强制报废期","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"热水器泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"热水器品牌","index":5,"type":"string"},{"lname":"启用时间","index":6,"type":"date"},{"lname":"强制式安排在卫生间","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"}]},{"checkname":"炉","index":2,"items":[{"lname":"嵌入式炉子下面柜门无通风口","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"炉泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"已过8年强制报废期","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"},{"lname":"炉子品牌","index":5,"type":"string"},{"lname":"无自动熄火保护装置","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"启用时间","index":6,"type":"date"}]},{"checkname":"灶前阀","index":4,"items":[{"lname":"无把柄","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"开关不便","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"}]},{"checkname":"其他","index":7,"items":[{"lname":"其他/压力","index":1,"type":"string"}]},{"checkname":"胶管","index":5,"items":[{"lname":"超2年","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"},{"lname":"超2米","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"穿墙","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":5,"type":"selector"},{"lname":"老化","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"无管卡","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"}]},{"checkname":"管道","index":6,"items":[{"lname":"泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"一般锈蚀","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"暗埋","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"},{"lname":"严重锈蚀","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"悬挂物品","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":5,"type":"selector"}]},{"checkname":"燃气表","index":1,"items":[{"lname":"表前阀无把柄","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":16,"type":"selector"},{"lname":"运转正常","multiple":false,"options":[{"isdefect":false,"data":"是"},{"isdefect":false,"data":"否","isdefault":true}],"index":11,"type":"selector"},{"lname":"表不转动","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":12,"type":"selector"},{"lname":"表前阀泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":15,"type":"selector"},{"lname":"表前阀开关不便","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":17,"type":"selector"},{"lname":"未封表","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":13,"type":"selector"},{"lname":"封闭无通风","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":14,"type":"selector"}]}]
1022
+
1023
+
1024
+ //遍历选择框以及得到list
1025
+ getselector(){
1026
+ this.listbutton=[]
1027
+
1028
+ for (let i = 0; i <this.str.length ; i++) {
1029
+ let strlist=[]
1030
+ strlist=this.str[i].items.concat()
1031
+ for (let j = 0; j <strlist.length ; j++) {
1032
+ strlist[j]["mname"]=this.str[i].checkname
1033
+ }
1034
+ strlist.splice(0,0,{lname:this.str[i].checkname+":",type:"",mname:""})
1035
+ let bb=this.listbutton
1036
+ this.listbutton=bb.concat(strlist)
1037
+
1038
+
1039
+ }
1040
+
1041
+ let h=this.listbutton
1042
+ for (let i = 0; i <h.length ; i++) {
1043
+
1044
+ h[i]["selected"]=""
1045
+ h[i]["level"]=""
1046
+ h[i]["isdefect"]=""
1047
+ if (h[i].type =="selector"){
1048
+ let size=h[i].options.length
1049
+
1050
+ let pl=[]
1051
+ for (let j = 0; j <size ; j++) {
1052
+ let n=h[i].lname+h[i].mname
1053
+
1054
+ pl.push(h[i].options[j].data)
1055
+ this.planItemConditional[n]=pl
1056
+
1057
+ }
1058
+ }
1059
+ }
1060
+
1061
+ //tag)
1062
+ }
1063
+ //返回遍历的option
1064
+ reoption(key1,key2){
1065
+
1066
+ let modelname=key1+key2
1067
+ return this.planItemConditional[modelname]
1068
+
1069
+ }
1070
+
1071
+
1072
+ // 取月的选择项目
1073
+ months() {
1074
+ return date.monthSelects
1075
+ }
1076
+
1077
+ //下发安检计划
1078
+ async sendCheckPlan(f){
1079
+ if(this.checkplan.check.checkes.length<1){
1080
+ Vue.showMessage("请选择要下发的安检计划")
1081
+ return
1082
+ }
1083
+ this.isSend=true
1084
+ let res=await this.http.load("POST", "/api/af-safecheck/logic/NewBespeakCheckPlan", {
1085
+ data:{
1086
+ f_issued:'是',
1087
+ f_issue_time:this.getNowFormatDate(),
1088
+ f_send_operator:global.login.name,
1089
+ param:this.checkplan.check.checkes,
1090
+ }
1091
+ }, {resolveMsg: null, rejectMsg: null})
1092
+ if(res.data.code==200){
1093
+ //Vue.showMessage("下发成功!其中有"+res.data.repet+"个计划己经是下发状态")
1094
+ Vue.showMessage("下发成功!")
1095
+ await this.loadCheckPlan('',()=>{})
1096
+ f()
1097
+ }else{
1098
+ Vue.showMessage("下发失败!")
1099
+ }
1100
+ this.isSend=false
1101
+ }
1102
+
1103
+ //删除安检计划
1104
+ async delCheckPlan(f){
1105
+ if(this.checkplan.check.checkes.length<1){
1106
+ Vue.showMessage("请选择要删除的安检计划")
1107
+ return
1108
+ }
1109
+ this.isSend=true
1110
+ let res=await this.http.load("POST", "/api/af-safecheck/logic/deleteCheckPlan", {
1111
+ data:{
1112
+ f_operator:global.login.name,//global.login.name,
1113
+ condition:this.checkplan.search.search({}),
1114
+ switchCheckAll:this.checkplan.check.switchCheckAll,
1115
+ checkAll:this.checkplan.check.checkAll,
1116
+ param:this.checkplan.check.checkes,
1117
+ columnName: "f_plan_id"
1118
+ }
1119
+ }, {resolveMsg: "删除成功!", rejectMsg: "删除失败!"})
1120
+ //tag)
1121
+ if(res.data.code==200){
1122
+ Vue.showMessage("删除成功!"+res.data.message,"success",2500)
1123
+ await this.loadCheckPlan('',()=>{})
1124
+ }else{
1125
+ Vue.showMessage("删除失败!"+res.data.message,"success",2500)
1126
+ }
1127
+ this.checkplanitems.search.model.f_plan_id=""
1128
+ this.checkplanitems.list.data=[]
1129
+ f()
1130
+ this.isSend=false
1131
+ }
1132
+ //修改计划时 用来存储当前选中要修改的计划
1133
+ plan={}
1134
+ setPlanVal(value){
1135
+ //tag
1136
+ this.plan=JSON.parse(JSON.stringify( value ))
1137
+ }
1138
+ setPlan(key,val){
1139
+ this.plan[key]=val
1140
+ }
1141
+ isUpdate(key1,key2){
1142
+ if (key1=="已检"&&key2!="补录"){
1143
+ return true;
1144
+ }
1145
+ return false;
1146
+ }
1147
+ //修改安检计划
1148
+ async upCheckPlan(f){
1149
+ if(this.plan.f_issued=='已下发'){
1150
+ Vue.showMessage("该计划已下发,无法进行修改!")
1151
+ return
1152
+ }
1153
+ this.isSend=true
1154
+ let res=await this.http.load("POST", "/api/af-safecheck/logic/updateCheckPlan", {
1155
+ data:{
1156
+ f_checker:this.plan.f_checker,
1157
+ f_checker_id:this.plan.f_checker_id,
1158
+ f_plan_name:this.plan.f_plan_name,
1159
+ f_plan_year:this.plan.f_plan_year,
1160
+ f_plan_month:this.plan.f_plan_month,
1161
+ f_plan_id:this.plan.id
1162
+ }
1163
+ }, {resolveMsg: null, rejectMsg: null})
1164
+ if(res.data.code==200){
1165
+ Vue.showMessage("修改成功!"+res.data.message,"success",2500)
1166
+ await this.loadCheckPlan('',()=>{})
1167
+ }else{
1168
+ Vue.showMessage("修改失败!"+res.data.message,"success",2500)
1169
+ }
1170
+ f()
1171
+ this.isSend=false
1172
+ }
1173
+
1174
+ /* getDataLength(modelname){
1175
+ //tag
1176
+ let l=this[modelname].list.data.length
1177
+ //tag
1178
+ return l
1179
+ }*/
1180
+ //新建安检计划非空判断
1181
+ validationCreatePlan(){
1182
+ if(!this.newPlan.f_plan_name){
1183
+ Vue.showMessage("请输入安检计划名称!")
1184
+ return false
1185
+ }
1186
+ if(!this.newPlan.f_plan_year){
1187
+ Vue.showMessage("请选择安检年份!")
1188
+ return false
1189
+ }
1190
+ if(!this.newPlan.f_plan_month){
1191
+ Vue.showMessage("请选择安检月份!")
1192
+ return false
1193
+ }
1194
+ if(this.isShare=="否"){
1195
+ if(!this.newPlan.f_checker){
1196
+ Vue.showMessage("请选择安检人员!")
1197
+ return false
1198
+ }
1199
+ }else{
1200
+ this.newPlan.f_checker=''
1201
+ }
1202
+ if(!this.newPlan.f_safecheck_type){
1203
+ Vue.showMessage("请选择安检类型!")
1204
+ return false
1205
+ }
1206
+ return true
1207
+ }
1208
+
1209
+ //调用updatecheckpaper
1210
+ async addNewPaper(f){
1211
+ this.setFdevices()
1212
+ this.setfDevicesid()
1213
+ //return;
1214
+ for (var i = 0; i <this.checkerMess.length ; i++) {
1215
+ if (this.checkerMess[i].name==this.suppplanitem.f_checker_name){
1216
+ this.suppplanitem["f_checker_id"]=this.checkerMess[i].id
1217
+ }
1218
+ }
1219
+ ////tag
1220
+ //return;
1221
+ this.suppplanitem["f_devices"]=this.fdevices
1222
+ this.suppplanitem.f_check_type=this.suppplanitem.f_user_type
1223
+ this.suppplanitem.f_state = "已检"
1224
+ this.suppplanitem.f_approved = "未审核"
1225
+ this.suppplanitem.f_complete = "已完成"
1226
+ this.suppplanitem.f_no_checkplan ="有计划安检"
1227
+ //return;
1228
+ this.suppplanitem.f_check_plan_id=this.suppplanitem.f_plan_id
1229
+
1230
+ let res=await this.http.load("POST", "/api/af-safecheck/logic/SuppCheckPaper", {data:{paper:this.suppplanitem}})
1231
+
1232
+ this.openPlan(this.plan,f)
1233
+ f()
1234
+ window.dispatchEvent(new CustomEvent("goRefresh"),{})
1235
+ }
1236
+ addnewPaper(f){
1237
+ delete this.suppplanitem.id
1238
+ if(!this.suppplanitem.f_onsite_time){
1239
+ Vue.showMessage("提交失败,请输入开始时间!")
1240
+ return false
1241
+ }
1242
+ if(!this.suppplanitem.f_offsite_time){
1243
+ Vue.showMessage("提交失败,请输入结束时间!")
1244
+ return false
1245
+ }
1246
+ if(!this.suppplanitem.f_entry_status){
1247
+ Vue.showMessage("提交失败,请输入入户状态!")
1248
+ return false
1249
+ }
1250
+ if(!this.suppplanitem.f_usegas&&this.suppplanitem.f_entry_status=='入户'){
1251
+ Vue.showMessage("提交失败,请输入燃气使用状态!")
1252
+ return false
1253
+ }
1254
+ // if(!this.suppplanitem.f_checker_name){
1255
+ // Vue.showMessage("提交失败,请输入安检员!")
1256
+ // }
1257
+ this.addNewPaper(f)
1258
+ }
1259
+ updatePaper(f){
1260
+ this.addNewPaper(f)
1261
+ }
1262
+ setNewPaper(property,value){
1263
+ this.suppplanitem[property] = value
1264
+
1265
+
1266
+
1267
+ return this
1268
+ }
1269
+
1270
+ setFdevices(){
1271
+
1272
+
1273
+ var ar=this.listbutton
1274
+ var br=this.fdevices
1275
+ for (var i = 0; i <br .length; i++) {
1276
+ for (var j = 0; j < ar.length; j++) {
1277
+ if (br[i].f_device_type == ar[j].mname) {
1278
+ br[i].f_items.push({
1279
+ f_item_name: ar[j].lname,
1280
+ f_item_value: ar[j].selected,
1281
+ type: ar[j].type,
1282
+ f_is_defect: ar[j].isdefect,
1283
+ f_defect_level: ar[j].level,
1284
+ f_item_lists:[{
1285
+ //f_item_id: "",
1286
+ f_item_value: ar[j].selected,
1287
+ //id:""
1288
+ }]
1289
+ })
1290
+ }
1291
+ }
1292
+ }
1293
+ }
1294
+ //给fdevices赋值id
1295
+ setfDevicesid(){
1296
+ var suppf=this.suppplanitem.f_devices
1297
+ var fde=this.fdevices
1298
+ if (this.suppplanitem.hasOwnProperty("f_devices")){
1299
+ for (let i = 0; i <suppf.length ; i++) {
1300
+ for (let j = 0; j <fde.length; j++) {
1301
+ if (suppf[i].f_device_type==fde[j].f_device_type){
1302
+ for (let k = 0; k <suppf[i].f_items.length ; k++) {
1303
+ // //tag
1304
+ for (let l = 0; l <fde[j].f_items.length ; l++) {
1305
+ // //tag
1306
+ if (suppf[i].f_items[k].f_item_name==fde[j].f_items[l].f_item_name) {
1307
+ fde[j].f_items[l]["id"]=suppf[i].f_items[k].id
1308
+ if (suppf[i].f_items[k].f_item_lists.length!=0){
1309
+ fde[j].f_items[l].f_item_lists[0]["id"]=suppf[i].f_items[k].f_item_lists[0].id
1310
+ fde[j].f_items[l].f_item_lists[0]["f_item_id"]=suppf[i].f_items[k].f_item_lists[0].f_item_id
1311
+ }
1312
+ }
1313
+ }
1314
+ }
1315
+ }
1316
+ }
1317
+ }
1318
+ }else {
1319
+ this.suppplanitem.f_upload_date=this.getNowFormatDate()
1320
+ }
1321
+ }
1322
+ //
1323
+ setFitemvalue(){
1324
+ for (var k = 0; k <this.listbutton.length ; k++) {
1325
+ for (var i = 0; i <this.suppplanitem.f_devices.length ; i++) {
1326
+ for (var j = 0; j < this.suppplanitem.f_devices[i].f_items.length; j++) {
1327
+ if (this.listbutton[k].lname==this.suppplanitem.f_devices[i].f_items[j].f_item_name){
1328
+ this.listbutton[k].selected=this.suppplanitem.f_devices[i].f_items[j].f_item_value
1329
+ }
1330
+ }
1331
+ }
1332
+ }
1333
+ }
1334
+ //改变selected属性
1335
+ changeSelected(selectedname,selectedmname,selectedvalue){
1336
+ var sa=this.listbutton
1337
+ for (var i = 0; i <sa.length; i++) {
1338
+ if (sa[i].lname==selectedname&&sa[i].mname==selectedmname){
1339
+ sa[i].selected=selectedvalue
1340
+ if (sa[i].type=="selector"){//判断是否是选择类型
1341
+ for (var j = 0; j < sa[i].options.length; j++) {
1342
+ if (sa[i].options[j].data==selectedvalue){//赋值为json的level和isdefect
1343
+ sa[i].level=sa[i].options[j].level
1344
+ sa[i].isdefect=sa[i].options[j].isdefect
1345
+ }
1346
+ }
1347
+ }
1348
+ }
1349
+ }
1350
+ ////tag
1351
+ }
1352
+ /* getAreaList() {
1353
+ let res = this.http.load('POST', '/api/af-safecheck/sql/safe_singleTable_GroupBy', {
1354
+ data: {
1355
+ items: 'f_residential_area',
1356
+ tablename: 't_area',
1357
+ condition: 'f_filialeid = '+this.filialeid,
1358
+ groupitem: 'f_residential_area'
1359
+ }
1360
+ }, {resolveMsg: null, rejectMsg: null}).then((res)=>{
1361
+ if (res.data) {
1362
+ let arr=[]
1363
+ for(let i =0 ;i<res.data.length;i++){
1364
+ arr.push(res.data[i].f_residential_area)
1365
+ }
1366
+ this.conditionJson[0].options=arr
1367
+ }
1368
+ })
1369
+
1370
+ }*/
1371
+ //获取当前时间
1372
+ getNowFormatDate() {
1373
+ let date = new Date();
1374
+ let seperator1 = "-";
1375
+ let seperator2 = ":";
1376
+ let month = date.getMonth() + 1;
1377
+ let strDate = date.getDate();
1378
+ let hour = date.getHours();
1379
+ let min = date.getMinutes();
1380
+ let second = date.getSeconds();
1381
+ if (month >= 1 && month <= 9) {
1382
+ month = "0" + month;
1383
+ }
1384
+ if (strDate >= 0 && strDate <= 9) {
1385
+ strDate = "0" + strDate;
1386
+ }
1387
+ if (hour >= 0 && hour <= 9) {
1388
+ hour = "0" + hour;
1389
+ }
1390
+ if (min >= 0 && min <= 9) {
1391
+ min = "0" + min;
1392
+ }
1393
+ if (second >= 0 && second <= 9) {
1394
+ second = "0" + second;
1395
+ }
1396
+ let currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
1397
+ + " " + hour + seperator2 + min
1398
+ + seperator2 + second;
1399
+ return currentdate;
1400
+ }
1401
+ //excel导出
1402
+ async exportFile(){
1403
+ if(!this.checkplanitems.search.model.f_plan_id){
1404
+ Vue.showMessage("请选择先打开一个安检计划!")
1405
+ return
1406
+ }
1407
+ this.isSend=true
1408
+ this.jointCondition1("planitemconditionList","checkplanitems")
1409
+ let res=await this.http.load('POST','api/af-safecheck/logic/exportfile',
1410
+ {
1411
+ "data": {
1412
+ "body": {
1413
+ "data": {
1414
+ "condition": this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
1415
+ "usercode": "i.f_userinfo_code='{}'",
1416
+ "username": "i.f_user_name='{}'",
1417
+ "f_address": "i.f_address like '%{}%'",
1418
+ "f_last_check_state": "i.f_last_check_state='{}' ",
1419
+ "f_start_time": "i.f_last_check_date >='{}'",
1420
+ "f_end_time": "i.f_last_check_date <='{}'",
1421
+ "f_last_check_result":"i.f_last_check_result like '%{}%'",
1422
+ "f_state": "i.f_state !='{}'",
1423
+ "f_state1": "i.f_state ='{}'"
1424
+ })
1425
+ },
1426
+ "field": ["f_userinfo_code:用户编号","f_user_name:用户名称", "f_user_type:用户类型", "f_residential_area:小区名称", "f_state:安检状态","f_address:详细地址","f_user_phone:用户电话"],
1427
+ "templateName": this.plan.f_plan_name,
1428
+ "sqlName": "planItem"
1429
+ },
1430
+ }
1431
+ }
1432
+ ,{resolveMsg: null, rejectMsg: null})
1433
+ //tag)
1434
+ let link = document.createElement('a');
1435
+ let path = res.data[0].filename
1436
+ //webapps这个是在服务器上导出用的
1437
+ let pathName = "http://" + location.host + "/webapps" + path.split('webapps')[1]
1438
+ //excel这个是在本地导出用的
1439
+ link.href = pathName;
1440
+ link.download = path.split('excel/')[1];
1441
+ link.dispatchEvent(new MouseEvent('click'));
1442
+ this.isSend=false
1443
+ }
1444
+
1445
+ //获取抄表册
1446
+ async Mreadibook(){
1447
+ this.cbc=[]
1448
+ this.sliceArea=[]
1449
+ let http = new HttpResetClass()
1450
+ let getMeterReadingBooks = await http.load('POST','api/af-safecheck/logic/getMeterBooksData',
1451
+ {data: {f_orgid: "('"+this.filialeid+"')"}},
1452
+ {resolveMsg: null, rejectMsg: '获取失败!!!'})
1453
+ this.cbc = [{label: '全部', value: '全部'}]
1454
+ //tag
1455
+ //tag)
1456
+ //tag
1457
+ this.meterbooks=[]
1458
+ this.meterbooks=getMeterReadingBooks.data.meterbooks
1459
+ this.meterbooks.forEach((res) => {
1460
+ this.cbc.push({label: res.f_book_name, value: res.id})
1461
+ /*if(res.f_book_slice_area){
1462
+ if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
1463
+ this.sliceArea.push(res.f_book_slice_area)
1464
+ }
1465
+ }*/
1466
+ })
1467
+
1468
+ }
1469
+ //获取子公司
1470
+ async getOrgs(){
1471
+ let http = new HttpResetClass()
1472
+ let orgs = await http.load('POST', '/rs/search', {
1473
+ source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $organization$)',
1474
+ userid: global.login.id
1475
+ //userid:"15130"
1476
+ }, {resolveMsg: null, rejectMsg: '获取分公司出错!!!'})
1477
+ //tag)
1478
+ this.orgs = []
1479
+ if(orgs.data.length>0){
1480
+ orgs.data.forEach((res) => {
1481
+ this.orgs.push({label: res.name, value: res.id})
1482
+ })
1483
+ }else{
1484
+ this.orgs.push({label: this.filialeidname, value:this.filialeid})
1485
+ // this.orgs.push({label: '测试公司', value:222})
1486
+ }
1487
+
1488
+
1489
+ }
1490
+ //片区获取
1491
+ async getSliceArea() {
1492
+ let http = new HttpResetClass()
1493
+ let getAllArea = await http.load('POST', '/rs/search', {
1494
+ source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
1495
+ userid: global.login.id
1496
+ }, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
1497
+ this.sliceArea = ['全部']
1498
+ //tag
1499
+ //tag
1500
+ //tag
1501
+ getAllArea.data.forEach((res) => {
1502
+ if(res.parentid==this.filialeid){
1503
+ this.sliceArea.push(res.name)
1504
+ }
1505
+ })
1506
+ //tag
1507
+ }
1508
+
1509
+ show1(){
1510
+ this.showModel=true
1511
+ }
1512
+ //清空用户编号
1513
+ clearUserInfoId(){
1514
+ this.setProperty("user","uploadCondition",'')
1515
+ Vue.showMessage("已清空用户编号")
1516
+ }
1517
+ formatArrayFun(type,arr){
1518
+ arr.forEach((result)=>{
1519
+ this[type].push(result.value)
1520
+ })
1521
+ }
1522
+ flush(f){
1523
+ f()
1524
+ }
1525
+ }