safecheck-client 4.0.0-22 → 4.0.0-23

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 (251) hide show
  1. package/package.json +1 -1
  2. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  3. package/src/components/DefectDealMain/DefectListNew.vue +642 -642
  4. package/src/components/android/AddPlanItem.vue +447 -447
  5. package/src/components/android/AddPlanItemYy.vue +451 -451
  6. package/src/components/android/AddSpecialPlanItem.vue +426 -426
  7. package/src/components/android/BlackUserOnLine.vue +318 -318
  8. package/src/components/android/CurrentCreateYy.vue +1051 -1051
  9. package/src/components/android/Devices.vue +327 -327
  10. package/src/components/android/Devicesm.vue +327 -327
  11. package/src/components/android/PaperFeedbackTemp.vue +1470 -1470
  12. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  13. package/src/components/android/PhoneRecordInfo.vue +113 -113
  14. package/src/components/android/PhoneSellInfo.vue +113 -113
  15. package/src/components/android/PhoneUpDetail.vue +1040 -1040
  16. package/src/components/android/QRCode/QRCodeBinding.vue +300 -300
  17. package/src/components/android/QRCode/QRCodePage.vue +212 -212
  18. package/src/components/android/SafePlanItem.vue +509 -509
  19. package/src/components/android/SafecheckDevices.vue +1337 -1337
  20. package/src/components/android/UserinfoSelect.vue +714 -714
  21. package/src/components/android/examples/SafeListExamples.vue +296 -296
  22. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  23. package/src/components/android/recheck/Recheck.vue +402 -402
  24. package/src/components/android/userinfo/SafecheckUserInfo.vue +776 -776
  25. package/src/components/checkplan/checkmsg.vue +459 -459
  26. package/src/components/defect/DefectList.vue +507 -507
  27. package/src/components/defect/DefectListWeixiu.vue +484 -484
  28. package/src/components/filialCircle/CircleList.vue +139 -139
  29. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  30. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  31. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  32. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  33. package/src/components/inspections/inspectionFeedback.vue +720 -720
  34. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  35. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  36. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  37. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  38. package/src/components/pc/AnnouncementPC.vue +524 -524
  39. package/src/components/pc/DefectList.vue +742 -742
  40. package/src/components/pc/DeviceChange.vue +1068 -1068
  41. package/src/components/pc/SafeVisitInfo.vue +261 -261
  42. package/src/components/planmanage/PlanManage.vue +886 -888
  43. package/src/components/planmanage/checkPlanList.vue +368 -368
  44. package/src/components/querycheckpaper/CheckPaperList.vue +130 -130
  45. package/src/components/report/HiddenSituation.vue +165 -165
  46. package/src/components/rongcheng/AspPaperFeedback.vue +1179 -1179
  47. package/src/components/rongcheng/AspiratedOrderV.vue +2377 -2377
  48. package/src/components/rongcheng/CurrentCreateOnline.vue +906 -906
  49. package/src/components/rongcheng/DefectList.vue +560 -560
  50. package/src/components/rongcheng/PaperFeedback.vue +1318 -1318
  51. package/src/components/rongcheng/SafecheckOrderVCli.vue +2641 -2641
  52. package/src/components/safecheckNew/android/AddPlanItem.vue +419 -419
  53. package/src/components/safecheckNew/android/CurrentCreate.vue +1050 -1050
  54. package/src/components/safecheckNew/android/Recheck.vue +379 -379
  55. package/src/components/safecheckNew/android/SafecheckOrderV.vue +2731 -2731
  56. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  57. package/src/components/shaoguan/DefectList.vue +473 -473
  58. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  59. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  60. package/src/components/userfile/SecurityAudit.vue +243 -243
  61. package/src/components/userfileNew/UserInfoAuditNew.vue +274 -274
  62. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +476 -476
  63. package/src/filiale/ancheng/android/PaperFeedback.vue +1489 -1489
  64. package/src/filiale/ancheng/android/SafecheckOrderV.vue +2703 -2703
  65. package/src/filiale/ancheng/android/SafecheckUserInfo.vue +737 -737
  66. package/src/filiale/ancheng/pc/checkScreen.vue +923 -923
  67. package/src/filiale/ankangyihua/android/AddPlanItem.vue +446 -446
  68. package/src/filiale/ankangyihua/android/SafecheckOrderV.vue +2908 -2908
  69. package/src/filiale/ankangyihua/pc/DefectListWeixiu.vue +491 -491
  70. package/src/filiale/baiyin/android/SafecheckOrderV.vue +2785 -2785
  71. package/src/filiale/baiyin/pc/DefectListNew.vue +597 -597
  72. package/src/filiale/bayan/android/Edit.vue +132 -132
  73. package/src/filiale/bayan/android/PaperFeedback.vue +1669 -1669
  74. package/src/filiale/bayan/pc/DefectListNew.vue +597 -597
  75. package/src/filiale/bayan/pc/DeviceChange.vue +1838 -1838
  76. package/src/filiale/bayan/pc/HiddenSituation.vue +295 -295
  77. package/src/filiale/dexin/android/CasualSave.vue +1050 -1050
  78. package/src/filiale/dexin/android/SafecheckOrderV.vue +2950 -2950
  79. package/src/filiale/fugou/android/AddPlanItem.vue +413 -413
  80. package/src/filiale/fugou/android/SafecheckOrderV.vue +2796 -2796
  81. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +830 -830
  82. package/src/filiale/fugu/android/SafecheckOrderV.vue +2484 -2484
  83. package/src/filiale/fugu/pc/NewCheckpaper.vue +1287 -1287
  84. package/src/filiale/ganquan/android/AddPlanItem.vue +444 -444
  85. package/src/filiale/ganquan/android/SafecheckOrderV.vue +2485 -2485
  86. package/src/filiale/ganquan/pc/NewCheckpaper.vue +1354 -1354
  87. package/src/filiale/guangxi/pc/DefectListNew.vue +518 -518
  88. package/src/filiale/hanzhong/android/PaperFeedback.vue +1477 -1477
  89. package/src/filiale/hanzhong/android/SafecheckOrderV.vue +2683 -2683
  90. package/src/filiale/hanzhong/android/SafecheckUserInfo.vue +786 -786
  91. package/src/filiale/huaran/android/SafecheckOrderV.vue +2803 -2803
  92. package/src/filiale/huatong/android/PaperFeedback.vue +1433 -1433
  93. package/src/filiale/huatong/android/SafecheckOrderV.vue +2426 -2426
  94. package/src/filiale/huatong/android/SafecheckUserInfo.vue +749 -749
  95. package/src/filiale/huayin/android/PaperFeedback.vue +1422 -1422
  96. package/src/filiale/huayin/android/SafecheckOrderV.vue +2712 -2712
  97. package/src/filiale/huayin/pc/NewCheckpaper.vue +1307 -1307
  98. package/src/filiale/jiaocheng/android/AddPlanItem.vue +435 -435
  99. package/src/filiale/jiaocheng/android/PaperFeedback.vue +1308 -1308
  100. package/src/filiale/jiaocheng/android/SafecheckUserInfo.vue +737 -737
  101. package/src/filiale/jiaocheng/pc/DefectListNew.vue +576 -576
  102. package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -447
  103. package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2807 -2807
  104. package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -784
  105. package/src/filiale/jinbin/pc/DefectListWeixiu.vue +478 -478
  106. package/src/filiale/jingyang/android/AddPlanItem.vue +458 -458
  107. package/src/filiale/jingyang/android/PaperFeedback.vue +1493 -1493
  108. package/src/filiale/jingyang/android/SafecheckOrderV.vue +2734 -2734
  109. package/src/filiale/jingyang/android/SafecheckUserInfo.vue +781 -781
  110. package/src/filiale/jinhong/android/PhoneInsurancePurchaseDetail.vue +420 -420
  111. package/src/filiale/kelai/android/AddPlanItem.vue +488 -488
  112. package/src/filiale/kelai/android/AndroidDefectDeal.vue +747 -747
  113. package/src/filiale/kelai/android/PaperFeedback.vue +1539 -1539
  114. package/src/filiale/kelai/android/SafecheckOrderV.vue +2448 -2448
  115. package/src/filiale/kelai/android/SafecheckUserInfo.vue +774 -774
  116. package/src/filiale/kelai/android/SafecheckUserInfo1.vue +618 -618
  117. package/src/filiale/kelai/pc/DefectListNew.vue +688 -688
  118. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasList.vue +518 -518
  119. package/src/filiale/kelai/pc/NewCheckpaper.vue +1454 -1454
  120. package/src/filiale/liaoyuan/android/AddPlanItem.vue +412 -412
  121. package/src/filiale/liaoyuan/android/CurrentCreate.vue +1066 -1066
  122. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2388 -2388
  123. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +557 -557
  124. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +489 -489
  125. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  126. package/src/filiale/lixian/android/SafecheckOrderV.vue +2404 -2404
  127. package/src/filiale/lixian/android/SafecheckUserInfo.vue +578 -578
  128. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  129. package/src/filiale/minsheng/android/SafecheckUserInfo.vue +754 -754
  130. package/src/filiale/minsheng/pc/DefectListNew.vue +535 -535
  131. package/src/filiale/pingxiang/android/PaperFeedback.vue +1399 -1399
  132. package/src/filiale/pingxiang/android/SafecheckOrderV.vue +2424 -2424
  133. package/src/filiale/pingxiang/android/SafecheckUserInfo.vue +600 -600
  134. package/src/filiale/pingxiang/pc/DefectListNew.vue +519 -519
  135. package/src/filiale/pingxiang/pc/NewCheckpaper.vue +1294 -1294
  136. package/src/filiale/qianneng/android/AddPlanItem.vue +482 -482
  137. package/src/filiale/qianneng/android/PaperFeedback.vue +1434 -1434
  138. package/src/filiale/qianneng/android/SafecheckOrderV.vue +2785 -2785
  139. package/src/filiale/qianneng/android/SafecheckUserInfo.vue +775 -775
  140. package/src/filiale/qianneng/pc/DefectListNew.vue +576 -576
  141. package/src/filiale/qianneng/pc/NewCheckpaper.vue +1546 -1546
  142. package/src/filiale/qingjian/android/SafecheckOrderV.vue +2844 -2844
  143. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +800 -800
  144. package/src/filiale/qingtongxia/android/AddPlanItem.vue +450 -450
  145. package/src/filiale/qingtongxia/android/SafecheckOrderV.vue +2726 -2726
  146. package/src/filiale/qingtongxia/android/SafecheckUserInfo.vue +782 -782
  147. package/src/filiale/qingtongxia/pc/DefectListNew.vue +594 -594
  148. package/src/filiale/rizhao/android/AddPlanItem.vue +446 -446
  149. package/src/filiale/rizhao/android/PaperFeedback.vue +1510 -1510
  150. package/src/filiale/rizhao/android/SafecheckOrderV.vue +2430 -2430
  151. package/src/filiale/rizhao/android/SafecheckUserInfo.vue +640 -640
  152. package/src/filiale/rizhao/pc/DefectList.vue +489 -489
  153. package/src/filiale/rongchuang/android/PaperFeedback.vue +1455 -1455
  154. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +2696 -2696
  155. package/src/filiale/rongchuang/android/checkpapermsg.vue +209 -209
  156. package/src/filiale/ruihua/android/SafecheckOrderV.vue +2747 -2747
  157. package/src/filiale/ruihua/android/SafecheckUserInfo.vue +804 -804
  158. package/src/filiale/shanggao/android/PaperFeedback.vue +1422 -1422
  159. package/src/filiale/shanggao/android/SafecheckOrderV.vue +2426 -2426
  160. package/src/filiale/shanxian/android/PaperFeedback.vue +1445 -1445
  161. package/src/filiale/shanxian/android/SafecheckUserInfo.vue +749 -749
  162. package/src/filiale/shanxian/pc/HiddenSituation.vue +121 -121
  163. package/src/filiale/shanxian/pc/NewCheckpaper.vue +1526 -1526
  164. package/src/filiale/shexian/android/AddPlanItem.vue +444 -444
  165. package/src/filiale/shexian/android/PaperFeedback.vue +1448 -1448
  166. package/src/filiale/shexian/android/SafecheckOrderV.vue +2879 -2879
  167. package/src/filiale/shexian/pc/DefectListNew.vue +593 -593
  168. package/src/filiale/shexian/pc/NewCheckpaper.vue +1469 -1469
  169. package/src/filiale/shimen/android/PaperFeedback.vue +1341 -1341
  170. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  171. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  172. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  173. package/src/filiale/siyang/android/AddPlanItem.vue +450 -450
  174. package/src/filiale/siyang/android/CurrentCreate.vue +1051 -1051
  175. package/src/filiale/siyang/android/PhoneRecordInfo.vue +214 -214
  176. package/src/filiale/siyang/android/SafecheckOrderV.vue +2796 -2796
  177. package/src/filiale/siyang/android/SafecheckUserInfo.vue +789 -789
  178. package/src/filiale/siyang/pc/HiddenSituation.vue +167 -167
  179. package/src/filiale/tianke/android/AddPlanItem.vue +455 -455
  180. package/src/filiale/tianke/android/SafecheckOrderV.vue +2431 -2431
  181. package/src/filiale/tianke/android/SafecheckUserInfo.vue +744 -744
  182. package/src/filiale/tongchuan/android/AddPlanItem.vue +483 -483
  183. package/src/filiale/tongchuan/android/PaperFeedback.vue +1316 -1316
  184. package/src/filiale/tongchuan/android/PhoneRecordInfo.vue +191 -191
  185. package/src/filiale/tongchuan/android/PhoneSellInfo.vue +113 -113
  186. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +720 -720
  187. package/src/filiale/tongchuan/pc/CheckBookDetails.vue +209 -209
  188. package/src/filiale/tongchuan/pc/DefectListWeixiu.vue +484 -484
  189. package/src/filiale/tongchuan/pc/HiddenSituation.vue +166 -166
  190. package/src/filiale/weinan/android/AddPlanItem.vue +438 -438
  191. package/src/filiale/weinan/android/CurrentCreate.vue +1171 -1171
  192. package/src/filiale/weinan/android/CurrentCreateOnline.vue +911 -911
  193. package/src/filiale/weinan/android/SafePlanItem.vue +440 -440
  194. package/src/filiale/weinan/android/SafecheckUserInfo.vue +778 -778
  195. package/src/filiale/weinan/pc/DefectListNew.vue +617 -617
  196. package/src/filiale/weinan/pc/DeviceChange.vue +1088 -1088
  197. package/src/filiale/weinan/pc/HiddenSituation.vue +167 -167
  198. package/src/filiale/weinan/pc/checkScreen.vue +1094 -1094
  199. package/src/filiale/weinanct/android/SafecheckOrderV.vue +2730 -2730
  200. package/src/filiale/weinanct/pc/NewCheckpaper.vue +1315 -1315
  201. package/src/filiale/wensu/android/AddPlanItem.vue +495 -495
  202. package/src/filiale/wensu/android/AndroidDefectDeal.vue +464 -464
  203. package/src/filiale/wensu/android/PaperFeedback.vue +1358 -1358
  204. package/src/filiale/wensu/android/SafecheckOrderV.vue +2430 -2430
  205. package/src/filiale/wensu/android/SafecheckUserInfo.vue +627 -627
  206. package/src/filiale/wensu/pc/DefectListNew.vue +735 -735
  207. package/src/filiale/wenxi/android/AddPlanItem.vue +431 -431
  208. package/src/filiale/wenxi/android/PaperFeedback.vue +1607 -1607
  209. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2671 -2671
  210. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +673 -673
  211. package/src/filiale/wenxi/pc/DefectList.vue +653 -653
  212. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1358 -1358
  213. package/src/filiale/wuan/android/PaperFeedback.vue +1433 -1433
  214. package/src/filiale/wuan/android/SafecheckOrderV.vue +2241 -2241
  215. package/src/filiale/wuan/android/SafecheckUserInfo.vue +596 -596
  216. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  217. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  218. package/src/filiale/wuhai/android/PaperFeedback.vue +1350 -1350
  219. package/src/filiale/wuhai/android/SafecheckOrderV.vue +2456 -2456
  220. package/src/filiale/wuhai/android/SafecheckUserInfo.vue +573 -573
  221. package/src/filiale/wuhai/pc/NewCheckpaper.vue +1281 -1281
  222. package/src/filiale/xinkang/android/SafecheckOrderV.vue +2732 -2732
  223. package/src/filiale/xinkang/android/SafecheckUserInfo.vue +747 -747
  224. package/src/filiale/xinkang/pc/DefectListWeixiu.vue +475 -475
  225. package/src/filiale/xinkang/pc/NewCheckpaper.vue +1498 -1498
  226. package/src/filiale/yangchunboneng/android/AddPlanItem.vue +496 -496
  227. package/src/filiale/yangchunboneng/android/PaperFeedback.vue +1731 -1731
  228. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2865 -2865
  229. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +887 -887
  230. package/src/filiale/yangchunboneng/pc/DefectListNew.vue +576 -576
  231. package/src/filiale/yongzhou/android/PaperFeedback.vue +1519 -1519
  232. package/src/filiale/yongzhou/android/SafecheckOrderV.vue +2774 -2774
  233. package/src/filiale/yongzhou/android/SafecheckUserInfo.vue +776 -776
  234. package/src/filiale/yuansheng/android/PaperFeedback.vue +1488 -1488
  235. package/src/filiale/yuansheng/android/SafecheckOrderV.vue +2758 -2758
  236. package/src/filiale/yuansheng/android/SafecheckUserInfo.vue +797 -797
  237. package/src/filiale/yuansheng/pc/DefectListNew.vue +524 -524
  238. package/src/filiale/yuansheng/pc/NewCheckpaper.vue +1371 -1371
  239. package/src/filiale/yuansheng/pc/checkmsg.vue +464 -464
  240. package/src/filiale/zhongsheng/android/BuyRecords.vue +122 -122
  241. package/src/filiale/zhongsheng/android/PaperFeedback.vue +1341 -1341
  242. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2461 -2461
  243. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +690 -690
  244. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  245. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1322 -1322
  246. package/src/filiale/zhongyi/android/SafecheckOrderV.vue +2431 -2431
  247. package/src/filiale/zhongyi/pc/DefectListNew.vue +514 -514
  248. package/src/filiale/zhoukou/android/PaperFeedback.vue +1367 -1367
  249. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  250. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  251. package/src/main.js +32 -33
@@ -1,906 +1,906 @@
1
- <style scoped>
2
- .bg {
3
- background-color: blue;
4
- height: 1px;
5
- border: 0;
6
- }
7
-
8
- .app-row {
9
- background-color: white;
10
- padding: 10px 10px 0 10px;
11
- border-bottom: 1px solid rgba(235, 235, 235, 0.5);
12
- }
13
-
14
- .search_input {
15
- border: 0;
16
- outline: none;
17
- }
18
-
19
- .font {
20
- font: 15px PingFang-SC-Medium;
21
- color: #666666;
22
- }
23
-
24
- .input-font {
25
- font: 15px PingFang-SC-Medium;
26
- color: #333333;
27
- }
28
-
29
- .btn-font {
30
- font: 600 16px PingFang-SC-Bold;
31
- color: #499EDF;
32
- }
33
-
34
- .btn-color {
35
- background-color: #FFFFFF;
36
- border-radius: 10px;
37
- border: 1px solid #499EDF;
38
- }
39
-
40
- .app-text {
41
- font-size: 12px;
42
- }
43
-
44
- .panel-self {
45
- border-radius: 10px;
46
- border: 1px solid #499EDF;
47
- background-color: #F8F8F8;
48
- }
49
-
50
- .yybtn-color {
51
- background-color: #499edf;
52
- border-radius: 4px;
53
- border: 1px solid #499EDF;
54
- color: #FFFFFF;
55
- font: 14px PingFang-SC-Bold;
56
- }
57
-
58
- .qxbtn-color {
59
- background-color: #FFFFFF;
60
- border-radius: 4px;
61
- color: #499edf;
62
- font: 14px PingFang-SC-Bold;
63
- border: 1px solid #499EDF;
64
- }
65
-
66
- .button_shrink_top {
67
- width: 35px;
68
- height: 35px;
69
- background-size: 100%;
70
- background-image: url("../../../static/newStyle/stretch_top.png")
71
- }
72
-
73
- .button_shrink_bottom {
74
- width: 35px;
75
- height: 35px;
76
- background-size: 100%;
77
- background-image: url("../../../static/newStyle/stretch_bottom.png")
78
- }
79
-
80
- .button_shrink_left {
81
- width: 35px;
82
- height: 35px;
83
- background-size: 100%;
84
- background-image: url("../../../static/newStyle/stretch_left.png")
85
- }
86
-
87
- .button_shrink_right {
88
- width: 35px;
89
- height: 35px;
90
- background-size: 100%;
91
- background-image: url("../../../static/newStyle/stretch_right.png")
92
- }
93
- </style>
94
- <style>
95
- .clear-select-with .dropdown-menu {
96
- left: 0px !important;
97
- width: 200% !important;
98
- }
99
- </style>
100
- <template>
101
- <div style="height: auto;width: 100%">
102
- <criteria-paged :model="model" v-ref:paged>
103
- <criteria partial='criteria' @condition-changed='search' v-ref:cri>
104
- <div partial>
105
- <form>
106
- <div class="row app-row">
107
- <!--小区名称-->
108
- <v-select :value.sync="model.f_residential_area"
109
- class="input-font clear-select-with"
110
- :options='$parent.$parent.residentialAreaOptions'
111
- placeholder='小区名称'
112
- :width="'46.5%'"
113
- v-model="model.f_residential_area"
114
- condition="ti.f_residential_area = '{}'"
115
- @change="$parent.$parent.getbuilds"
116
- close-on-select clear-button>
117
- </v-select>
118
- <!--楼栋-->
119
- <v-select :value.sync="model.f_building"
120
- class="input-font"
121
- :options='$parent.$parent.buildOptions'
122
- placeholder='楼栋'
123
- :width="'46.5%'"
124
- v-model="model.f_building"
125
- condition="ti.f_building = '{}'"
126
- @change="$parent.$parent.getUnits"
127
- close-on-select clear-button>
128
- </v-select>
129
- </div>
130
- <div class="row app-row">
131
- <!--单元-->
132
- <v-select :value.sync="model.f_unit"
133
- class="input-font"
134
- :options='$parent.$parent.unitOptions'
135
- placeholder='单元'
136
- :width="'46.5%'"
137
- @change="$parent.$parent.getfloors"
138
- v-model="model.f_unit"
139
- condition="ti.f_unit = '{}'"
140
- close-on-select clear-button>
141
- </v-select>
142
- <!--楼层-->
143
- <v-select :value.sync="model.floor"
144
- class="input-font"
145
- :options='$parent.$parent.floors'
146
- placeholder='楼层'
147
- :width="'46.5%'"
148
- v-model="model.floor"
149
- condition="ti.f_floor = '{}'"
150
- close-on-select clear-button>
151
- </v-select>
152
- </div>
153
- <div class="row app-row">
154
- <div class="col-xs-4">
155
- <img src="../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
156
- <label for="f_userinfo_code" class="font text-left">用户编号:</label>
157
- </div>
158
- <div class="col-xs-8">
159
- <input id="f_userinfo_code" class="search_input input-font"
160
- v-model=model.f_userinfo_code condition="f_userinfo_code like '%{}%'"/>
161
- </div>
162
- </div>
163
- <div class="row app-row">
164
- <div class="col-xs-4">
165
- <img src="../../assets/用户姓名.png" style="width: 20px;margin-bottom: 5px" alt="">
166
- <label class="font text-left">用户姓名:</label>
167
- </div>
168
- <div class="col-xs-8">
169
- <input class="search_input input-font" v-model=model.f_user_name condition="f_user_name like '%{}%'"/>
170
- </div>
171
- </div>
172
- <div class="row app-row" v-if="$parent.$parent.criteriaShow">
173
- <div class="col-xs-4">
174
- <img src="../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
175
- <label class="font text-left">气表编号:</label>
176
- </div>
177
- <div class="col-xs-5">
178
- <input class="search_input input-font"
179
- v-model=model.f_meter_no condition="f_meter_no like '%{}%'"/>
180
- </div>
181
- <div class="col-xs-3">
182
- <button type="button" class="btn btn-lg btn-font btn-color" @click="$parent.$parent.scan()">扫码</button>
183
- </div>
184
- </div>
185
-
186
- <div class="row app-row" v-if="$parent.$parent.criteriaShow">
187
- <div class="col-xs-4">
188
- <img src="../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
189
- <label class="font text-left">用户地址:</label>
190
- </div>
191
- <div class="col-xs-8">
192
- <input class="search_input input-font"
193
- v-model=model.f_keyword condition="f_address like '%{}%'"/>
194
- </div>
195
- </div>
196
- <div class="row app-row" v-if="$parent.$parent.criteriaShow">
197
- <div class="col-xs-4">
198
- <img src="../../assets/用户类型.png" style="width: 20px;margin-bottom: 5px" alt="">
199
- <label for="f_user_type" class="font text-left">用户类型:</label>
200
- </div>
201
- <v-select id="f_user_type" :value.sync="model.f_user_type" class="input-font"
202
- :width="'60%'"
203
- :options='$parent.$parent.user_types' placeholder='请选择用户类型'
204
- v-model="model.f_user_type" condition="f_user_type='{}'" close-on-select
205
- clear-button></v-select>
206
- </div>
207
- <div class="row app-row" v-if="false">
208
- <div class="col-xs-6" style="text-align: center">
209
- <span class="font text-left">待办{{ $parent.$parent.upcomingCount }}条</span>
210
- </div>
211
- <div class="col-xs-6" style="text-align: center">
212
- <span class="font text-left">已办{{ $parent.$parent.doneCount }}条</span>
213
- </div>
214
- <div class="col-xs-6" style="text-align: center">
215
- <span class="font text-left">临时保存{{ $parent.$parent.tempSaveCount }}条</span>
216
- </div>
217
- <div class="col-xs-6" style="text-align: center">
218
- <span class="font text-left">总共{{ $parent.$parent.allPlanCount }}条</span>
219
- </div>
220
- </div>
221
-
222
- <div class="row text-center" style="margin-top: 20px;">
223
- <button type="button" class="btn btn-lg btn-font btn-color" style="width: 25%;"
224
- @click="$parent.$parent.selfSearch">查询
225
- </button>
226
- <button type="button" class="btn btn-lg btn-font btn-color" style="width: 25%; margin-left: 10px"
227
- @click="$parent.$parent.queryplanmany">重置
228
- </button>
229
- <div style="float: right;margin-right: 3% " class="button_spacing"
230
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
231
- @click="$parent.$parent.hidden()"></div>
232
- </div>
233
- <div class="col-sm-12">
234
-
235
- </div>
236
- <!--<div class="row app-btn">-->
237
- <!--<button class="btn btn-primary col-xs-6" type="button" @click="search"><span class="glyphicon glyphicon-search" style="margin-right: 20px;">查询</span></button>-->
238
- <!--</div>-->
239
- <div style="height:30px;"></div>
240
- </form>
241
- </div>
242
- </criteria>
243
- <list :model="model" partial='list'>
244
- <div partial>
245
- <div class="auto app-text" style="margin-top: 5px;">
246
- <div class="panel" style="padding: 10px 10px 5px 10px;">
247
- <div class="panel-body panel-self">
248
-
249
- <div class="col-xs-12">
250
- <p class="panel-title col-xs-5 text-left font" style="width: 25%;float: left"><b>用户编号:</b></p>
251
- <p class="panel-title col-xs-5 text-left input-font" style="width: 74%">{{ row.f_userinfo_code }}</p>
252
- <!-- <p class="panel-title col-xs-2 text-left input-font" style="width: 5%;float:right">-->
253
- <!-- <input type="checkbox" @click="$parent.$parent.$parent.setPlanParam(row.id, $event)"/>-->
254
- <!-- </p>-->
255
- </div>
256
- <div class="col-xs-12">
257
- <p class="panel-title col-xs-5 text-left font" style="width: 25%;float: left"><b>用户名称:</b></p>
258
- <p class="panel-title col-xs-7 text-left input-font">{{ row.f_user_name }}</p>
259
- </div>
260
- <div class="col-xs-12">
261
- <p class="panel-title col-xs-5 text-left font" style="width: 25%;"><b>用户类型:</b></p>
262
- <p class="panel-title col-xs-7 text-left input-font">{{ row.f_user_type }}
263
- </p>
264
- </div>
265
- <div class="col-xs-12">
266
- <p class="panel-title col-xs-5 text-left font" style="width: 25%;"><b>计划名称:</b></p>
267
- <p class="panel-title col-xs-7 text-left input-font">{{ row.f_plan_name }}</p>
268
- </div>
269
- <!-- <div class="col-xs-6">-->
270
- <!-- <p class="panel-title col-xs-5 text-left font"><b>小区名称:</b></p>-->
271
- <!-- <p class="panel-title col-xs-7 text-left input-font">{{ row.f_residential_area }}</p>-->
272
- <!-- </div>-->
273
- <div class="col-xs-12">
274
- <p class="panel-title text-left font" style="width: 25%;float: left"><b>用户电话:</b></p>
275
- <p class="panel-title text-left input-font" style="width: 77%">
276
- {{ row.f_user_phone2 ? row.f_user_phone2 : row.f_user_phone }}
277
- <!-- <img src="../../assets/phone.png" style="width: 6%"-->
278
- <!-- v-on:click.stop.prevent='$parent.$parent.$parent.makeAPhoneCall(row.f_user_phone2 ? row.f_user_phone2 : row.f_user_phone)'/>-->
279
- </p>
280
- </div>
281
-
282
- <div class="col-xs-12">
283
- <p class="panel-title text-left font" style="width: 25%;float: left"><b>用户地址:</b></p>
284
- <p class="panel-title text-left input-font" style="width: 79%">{{ row.f_address }}</p>
285
- </div>
286
-
287
- <!-- <div class="row">-->
288
- <!-- <p class="panel-title col-xs-4 text-left font">计划年份</p>-->
289
- <!-- <p class="panel-title col-xs-8 text-left input-font">{{ row.f_plan_year }}</p>-->
290
- <!-- </div>-->
291
- <!-- <div class="row">-->
292
- <!-- <p class="panel-title col-xs-4 text-left font">计划月份</p>-->
293
- <!-- <p class="panel-title col-xs-8 text-left input-font">{{ row.f_plan_month }}</p>-->
294
- <!-- </div>-->
295
- <!-- <div class="row">-->
296
- <!-- <p class="panel-title col-xs-4 text-left font">预约时间</p>-->
297
- <!-- <p class="panel-title col-xs-8 text-left input-font">{{ row.f_prearranged_date }}</p>-->
298
- <!-- </div>-->
299
- <!--<div class="row">-->
300
- <!--<p class="panel-title col-xs-4 text-left font">上次安检状态</p>-->
301
- <!--<p class="panel-title col-xs-8 text-left input-font">{{ row.f_last_check_state }}</p>-->
302
- <!--</div>-->
303
- <div class="col-xs-12">
304
- <p class="panel-title col-xs-5 text-left font" style="width: 25%;"><b>安检状态:</b></p>
305
- <p class="panel-title col-xs-7 text-left input-font">
306
- {{ row.f_state == '已检' ? row.f_last_check_state : row.f_state }}</p>
307
- </div>
308
- <div class="col-xs-12">
309
- <p class="panel-title col-xs-5 text-left font" style="width: 25%;"><b>上传状态:</b></p>
310
- <p class="panel-title col-xs-7 text-left input-font">{{ row.f_upload_state }}</p>
311
- </div>
312
- <div class="col-xs-12" v-if="row.f_prearranged_date !=null">
313
- <p class="panel-title col-xs-5 text-left font" style="width: 25%;float: left"><b>预约时间:</b></p>
314
- <p class="panel-title col-xs-7 text-left input-font" style="width: 79%">{{
315
- row.f_prearranged_date
316
- }}</p>
317
- </div>
318
- <div class="col-xs-12">
319
- <p class="panel-title col-xs-5 text-left font" style="width: 25%;"><b>安检类型:</b></p>
320
- <p class="panel-title col-xs-7 text-left input-font">{{ row.f_safecheck_type }}</p>
321
- </div>
322
- <div class="col-xs-12">
323
- <p class="panel-title col-xs-5 text-left font" style="width: 25%;float: left"><b>开户日期:</b></p>
324
- <p class="panel-title col-xs-7 text-left input-font">{{ row.f_open_date }}</p>
325
- </div>
326
- <!--<div class="col-xs-12">-->
327
- <!--<p class="panel-title col-xs-5 text-left font"><b>送气期限:</b></p>-->
328
- <!--<p class="panel-title col-xs-7 text-left input-font">{{timeSet(row.f_issue_time)}}</p>-->
329
- <!--</div>-->
330
- <div class="col-xs-12">
331
- <button type="button" name="button" class="btn btn-primary"
332
- style="background-color:#499edf;float: right" @click="$parent.$parent.$parent.inspect(row)">处理
333
- </button>
334
- <!-- <button type="button" name="button" class="btn btn-primary" style="background-color:#499edf;float: right;margin-right:10px;" @click="$parent.$parent.$parent.queryplan(row.id)">转发</button>-->
335
- <!--<button type="button" class="btn btn-default" @click="$parent.$parent.$parent.ceshi">确认2</button>-->
336
- </div>
337
- <!-- <div class="row text-right" v-show="row.f_upload_state != '已传'" >-->
338
- <!-- <button type="button" class="btn yybtn-color" v-on:click.stop.prevent='$parent.$parent.$parent.reserve($index)'>预约</button>&nbsp;-->
339
- <!-- <button type="button" class="btn qxbtn-color" v-if ='row.f_prearranged_date'-->
340
- <!-- v-on:click.stop.prevent='$parent.$parent.$parent.cancelReserve($index, row.id)'>取消预约</button>-->
341
- <!-- </div>-->
342
- </div>
343
- </div>
344
- </div>
345
- </div>
346
- </list>
347
- </criteria-paged>
348
- <div style="height: 50px">
349
- </div>
350
- </div>
351
-
352
- </template>
353
-
354
- <script>
355
- import Vue from 'vue'
356
- import LocalPagedList from '../../plugins/LocalPagedList'
357
- import {HttpResetClass, PagedList} from 'vue-client'
358
- import * as Util from '../Util'
359
- import co from 'co'
360
-
361
- let select = function* (self) {
362
- let http = new HttpResetClass()
363
- http.load('POST', `${self.$androidUtil.getProxyUrl()}/rs/search`, {
364
- source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
365
- userid: Vue.user.id
366
- }, {resolveMsg: null, rejectMsg: null}).then((res) => {
367
- //tag
368
- self.checkers.push({label: '全部', value: ''})
369
- res.data.forEach((checker) => {
370
- self.checkers.push({label: checker.name, value: checker.id})
371
- })
372
- })
373
- }
374
- export default {
375
- title: '送气待办',
376
- props: ['planName'],
377
- data() {
378
- return {
379
- f_filialeids: '(' + Vue.user.orgid + ')',
380
- //f_filialeids:'(305)',
381
- planparam: [],
382
- check: '',
383
- plan: '',
384
- planid: '',
385
- model:Vue.android? new LocalPagedList('androidGetuserinfoAsp',20,{condition:'this.condition'}): new PagedList( 'AndroidRest/api/af-safecheck/sql/androidGetuserinfo',20,{condition:'this.condition'}),
386
- showModal: false,
387
- showModal2: false,
388
- showModal3: false,
389
- needid: '',
390
- criteriaShow: false,
391
- planoption: [],
392
- condition: '',
393
- checkers: [],
394
- param: null,
395
- f_preset_dt: Util.to3339TimeString(),
396
- flow_direction: [
397
- {label: '请选择挂表方式', value: ''},
398
- {label: '左表', value: '左表'},
399
- {label: '右表', value: '右表'}
400
- ],
401
- check_states: [
402
- {label: '请选择安检状态', value: ''},
403
- {label: '未检', value: '未检'},
404
- {label: '临时保存', value: '已检'},
405
- ],
406
- last_check_states: [
407
- {label: '请选择上次安检状态', value: ''},
408
- {label: '入户', value: '入户'},
409
- {label: '拒检', value: '拒检'},
410
- {label: '到访不遇', value: '到访不遇'},
411
- {label: '未使用天然气', value: '未使用天然气'}
412
- ],
413
- upload_states: [
414
- {label: '请选择上传状态', value: ''},
415
- {label: '未传', value: '未传'},
416
- {label: '已传', value: '已传'}
417
- ],
418
- user_types: [
419
- {label: '请选择用户类型', value: ''},
420
- {label: '民用', value: '民用'},
421
- {label: '非民用', value: '非民用'},
422
- ],
423
- verify_state: [
424
- {label: '请选择审核状态', value: ''},
425
- {label: '未审核', value: '未审核'},
426
- {label: '打回', value: '打回'}
427
- ],
428
- residentialAreaOptions: [],
429
- buildOptions: [],
430
- unitOptions: [],
431
- floors: [],
432
- planNameOptions: [],
433
- upcomingCount: 0,
434
- doneCount: 0,
435
- tempSaveCount: 0,
436
- allPlanCount: 0
437
- }
438
- },
439
- ready() {
440
- this.$refs.paged.$refs.cri.model.f_residential_area = ''
441
- this.$refs.paged.$refs.cri.model.f_building = ''
442
- this.$refs.paged.$refs.cri.model.f_unit = ''
443
- this.$refs.paged.$refs.cri.model.floor = ''
444
- this.getAllArea()
445
- // this.getAllPlanName()
446
- this.selfSearch()
447
- let gen = select(this)
448
- co(gen)
449
- },
450
- mounted() {
451
- //tag
452
- if (window.history && window.history.pushState) {
453
- history.pushState(null, null, document.URL);
454
- window.addEventListener('popstate', this.fun, false);//false阻止默认事件
455
- }
456
- },
457
- destroyed() {
458
- //tag
459
- window.removeEventListener('popstate', this.fun, false);//false阻止默认事件
460
- },
461
- methods: {
462
- scan() {
463
- HostApp.__this__ = this,
464
- HostApp.scanCode({callback: "javascript:HostApp.__this__.getCode();"})
465
- },
466
- getCode() {
467
- const datapa = HostApp.getCode().data;
468
- //tag
469
- this.$refs.paged.$refs.cri.model.f_meter_no = datapa
470
-
471
- },
472
- fun() {
473
- //tag
474
- //tag
475
- },
476
- iscancel() {
477
- this.showModal2 = false
478
- this.showModal3 = false
479
- this.planoption = []
480
- },
481
- timeSet(val) {
482
- return val
483
- },
484
- async isok() {
485
- if (this.planoption.length == 0) {
486
- this.$showMessage("请选择计划")
487
- return false
488
- }
489
- for (let i = 0; i < this.planoption.length; i++) {
490
- if (this.planoption[i]["selected"] == true) {
491
- this.planid = this.planoption[i].value
492
- break
493
- }
494
- }
495
- if (this.planid == '') {
496
- this.$showMessage("请选择计划")
497
- return false
498
- }
499
- await this.okput()
500
- },
501
- async manyisok() {
502
- if (this.planoption.length == 0) {
503
- this.$showMessage("请选择计划")
504
- return false
505
- }
506
- for (let i = 0; i < this.planoption.length; i++) {
507
- if (this.planoption[i]["selected"] == true) {
508
- this.planid = this.planoption[i].value
509
- break
510
- }
511
- }
512
- if (this.planid == '') {
513
- this.$showMessage("请选择计划")
514
- return false
515
- }
516
- await this.manyokput()
517
- },
518
- changenull() {
519
- this.showModal2 = false
520
- this.showModal3 = false
521
- this.planoption = []
522
- this.plan = ''
523
- this.check = ''
524
- },
525
- async okput() {
526
- let res = await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/UpCheckPlanItem`, {
527
- data: {
528
-
529
- condition: `i.id='` + this.needid + `'`,
530
- f_plan_id: this.planid,
531
- switchCheckAll: false,
532
- checkAll: false,
533
- f_operator: Vue.user.name
534
- }
535
- })
536
- await this.changenull()
537
- await this.getNewOrder()
538
- },
539
- async manyokput() {
540
- let res = await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/UpCheckPlanItem`, {
541
- data: {
542
- columnName: "i.id",
543
- condition: "1=1",
544
- f_plan_id: this.planid,
545
- switchCheckAll: true,
546
- param: this.planparam,
547
- checkAll: false,
548
- f_operator: Vue.user.name
549
- }
550
- })
551
- await this.changenull()
552
- await this.getNewOrder()
553
- },
554
- async plansearch() {
555
- this.planoption = []
556
- let condition = `f_checker_id=` + this.check + ` and f_plan_name like '%` + this.plan + `%'`
557
- if (!this.check) {
558
- condition = `f_plan_name like '%` + this.plan + `%'`
559
- }
560
- let res = await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/预约计划下发`, {
561
- data: {
562
- condition: condition,
563
- f_filialeids: this.f_filialeids,
564
- groupitem: '',
565
- orderitem: 'id'
566
- }
567
- })
568
- let resoult = res.data
569
- for (let i = 0; i < resoult.length; i++) {
570
- this.planoption.push({label: resoult[i].f_plan_name, selected: false, value: resoult[i].id})
571
- }
572
- },
573
-
574
- select(row, idx) {
575
- this.$set('planoption[' + idx + '].selected', true)
576
- for (let i = 0; i < this.planoption.length; i++) {
577
- if (i != idx) {
578
- this.planoption[i]["selected"] = false
579
- }
580
- }
581
- },
582
- planclose() {
583
- this.showModal2 = false
584
- this.showModal3 = false
585
- },
586
- queryplan(val) {
587
- this.needid = val
588
- this.showModal2 = true
589
- },
590
- queryplanmany() {
591
- this.$refs.paged.$refs.cri.model.f_residential_area = ''
592
- this.$refs.paged.$refs.cri.model.f_building = ''
593
- this.$refs.paged.$refs.cri.model.f_unit = ''
594
- this.$refs.paged.$refs.cri.model.f_userinfo_code = ''
595
- this.$refs.paged.$refs.cri.model.f_user_name = ''
596
- this.$refs.paged.$refs.cri.model.f_enter_number = ''
597
- this.$refs.paged.$refs.cri.model.f_plan_name = ''
598
- this.$refs.paged.$refs.cri.model.f_state = ''
599
- this.$refs.paged.$refs.cri.model.f_meter_no = ''
600
- this.$refs.paged.$refs.cri.model.f_address = ''
601
- this.$refs.paged.$refs.cri.model.f_user_type = ''
602
- },
603
- reload() {
604
- // this.getAllArea()
605
- // this.getAllPlanName()
606
- this.selfSearch()
607
- },
608
- cancelReserve(idx, id) {
609
- if (Vue.android) {
610
- let res = this.$androidUtil.bzLogic('BookingCheck', {dt: '', id: id})
611
- this.$set('model.rows[' + idx + '].f_prearranged_date', null)
612
- if (res.code == 200) {
613
- this.$showMessage("取消预约成功")
614
- }
615
- } else {
616
- this.$androidUtil.bzLogic('PCbookingCheck', {dt: '', id: id}).then((repanse) => {
617
- this.$set('model.rows[' + idx + '].f_prearranged_date', null)
618
- if (repanse.data.code == 200) {
619
- alert("取消预约成功!")
620
- }
621
- })
622
- }
623
- },
624
- genuineReserve() {
625
- if (Vue.android) {
626
- if (!this.f_preset_dt) {
627
- this.$showMessage('请选择一个日期')
628
- return
629
- }
630
- let pdt = this.f_preset_dt.replace('T', ' ')
631
- let respanse = this.$androidUtil.bzLogic('BookingCheck', {id: this.model.rows[this.param].id, dt: pdt})
632
- this.$set('model.rows[' + this.param + '].f_prearranged_date', pdt)
633
- if (respanse.code == 200) {
634
- this.$showMessage("预约成功!")
635
- }
636
- this.showModal = false
637
- } else {
638
- if (!this.f_preset_dt) {
639
- alert('请选择一个日期')
640
- return
641
- }
642
- let pdt = this.f_preset_dt.replace('T', ' ')
643
- this.$androidUtil.bzLogic('PCbookingCheck', {id: this.model.rows[this.param].id, dt: pdt}).then((res) => {
644
- this.$set('model.rows[' + this.param + '].f_prearranged_date', pdt)
645
- if (res.data.code == 200) {
646
- alert("预约成功!")
647
- }
648
- this.showModal = false
649
- })
650
- }
651
- },
652
- inspect(row) {
653
- var _this = this
654
- if (row.f_upload_state == '未传' || (row.f_upload_state == '已传' && (row.f_state == '未检' || (row.f_state == '已检' && (row.f_last_check_state == '到访不遇' || row.f_last_check_state == '拒检'))) && row.f_no_checkplan != '无计划安检')) {
655
- new HttpResetClass().load('post', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
656
- data: {
657
- items: 'count(0) as count_num',
658
- tablename: 't_check_plan_item',
659
- condition: `id = '${row.id}' and (f_upload_state != '已传' or f_last_check_state != '入户')`,
660
- orderitem: '1'
661
- }
662
- }).then(resp => {
663
- if(resp.data[0].count_num == 0){
664
- this.$showMessage("该安检单已被上传!")
665
- this.selfSearch()
666
- return
667
- }
668
- let myDate = new Date()
669
- // if (resp.data[0].f_end_time > myDate.getFullYear() + '-' + (myDate.getMonth() + 1) + '-' + myDate.getDay() || !resp.data[0].f_end_time) {
670
- _this.$resetpost(`${_this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/查询计划项表信息`, {data: {f_userid: row.f_userinfoid}}, {
671
- resolveMsg: null,
672
- rejectMsg: null
673
- }).then((response) => {
674
- row['f_plan_meters'] = response.data
675
- var pardate = {
676
- _this:_this,
677
- title:'送气计划',
678
- safe:true
679
- }
680
- _this.$dispatch('gotoson',pardate)
681
- _this.$goto('AspiratedOrderV', {f_plan_id: row.f_plan_id, item: row, role: 'inspect'}, 'self', _this.reload)
682
- }).catch((msg) => {
683
- this.$showMessage("网络异常,请检查网络后再试!")
684
- })
685
- }).catch(error => {
686
-
687
- })
688
- } else {
689
- this.$showMessage("该安检单已被上传!")
690
- }
691
- },
692
- makeAPhoneCall(phoneNumber) {
693
- this.$androidUtil.makeAPhoneCall(phoneNumber)
694
- },
695
- reserve(idx) {
696
- this.param = idx
697
- this.showModal = true
698
- },
699
- search(args) {
700
- this.model.rows = []
701
- this.model.search(args.condition, args.model)
702
- },
703
- selfSearch() {
704
- // this.getPlanCount()
705
- let condition = "and 1 = 1 "
706
- if (this.planName)
707
- condition += " and cp.f_plan_name = '"+this.planName +"'"
708
- if (this.$refs.paged.$refs.cri.model.f_residential_area)
709
- condition += " and ti.f_residential_area like '%" + this.$refs.paged.$refs.cri.model.f_residential_area + "%'"
710
- if (this.$refs.paged.$refs.cri.model.f_building)
711
- condition += " and ti.f_building = '" + this.$refs.paged.$refs.cri.model.f_building + "'"
712
- if (this.$refs.paged.$refs.cri.model.f_unit)
713
- condition += " and ti.f_unit = '" + this.$refs.paged.$refs.cri.model.f_unit + "'"
714
- if (this.$refs.paged.$refs.cri.model.floor)
715
- condition += " and ti.f_floor = '" + this.$refs.paged.$refs.cri.model.floor + "'"
716
- if (this.$refs.paged.$refs.cri.model.f_userinfo_code)
717
- condition += " and ti.f_userinfo_code like '%" + this.$refs.paged.$refs.cri.model.f_userinfo_code + "%'"
718
- if (this.$refs.paged.$refs.cri.model.f_keyword)
719
- condition += " and ti.f_address like '%" + this.$refs.paged.$refs.cri.model.f_keyword + "%'"
720
- if (this.$refs.paged.$refs.cri.model.f_user_name)
721
- condition += " and ti.f_user_name like '%" + this.$refs.paged.$refs.cri.model.f_user_name + "%'"
722
- if (this.$refs.paged.$refs.cri.model.f_user_type[0])
723
- condition += " and ti.f_user_type='" + this.$refs.paged.$refs.cri.model.f_user_type[0] + "'"
724
- if (this.$refs.paged.$refs.cri.model.f_meter_no)
725
- condition += " and tm.f_meter_no like '%" + this.$refs.paged.$refs.cri.model.f_meter_no + "%'"
726
- if (this.$refs.paged.$refs.cri.model.f_enter_number)
727
- condition += " and ti.f_enter_number like '%" + this.$refs.paged.$refs.cri.model.f_enter_number + "%'"
728
- // const searchCondition = "((f_state = '未检') or (f_state = '已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检') )) and ti.f_no_checkplan = '有计划安检' and cp.f_safecheck_type = '送气类型' and cp.f_issued = '是' and cp.f_checker_id is null and cp.f_checker is null " + condition
729
-
730
- const searchCondition = "((f_complete = '' or f_complete = null or f_complete = '未完成') or (f_state = '未检')) and ti.f_no_checkplan = '有计划安检' and ti.f_safecheck_type='送气类型'" + condition
731
- //tag
732
- this.model.search(searchCondition)
733
- },
734
- hidden() {
735
- this.criteriaShow = !this.criteriaShow
736
- },
737
- getAllArea() {
738
- this.residentialAreaOptions = []
739
- this.buildOptions = []
740
- this.unitOptions = []
741
- let criteria = {
742
- items: 'f_residential_area',
743
- tablename: 't_check_plan_item',
744
- condition: `f_checker_idhp = '${Vue.user.id}' and f_residential_area IS NOT NULL AND f_residential_area != '' AND (f_state <> '已检' or (f_state = '已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检')))`,
745
- groupitem: 'f_residential_area'
746
- }
747
- let http = new HttpResetClass()
748
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_GroupBy`, {data:criteria}, {resolveMsg: null, rejectMsg: null}).then((res) => {
749
- //tag
750
- res.data.forEach(item => this.residentialAreaOptions.push({
751
- label: item.f_residential_area,
752
- value: item.f_residential_area
753
- }))
754
- })
755
- },
756
- getbuilds(f_residential_area) {
757
- //tag)
758
- this.buildOptions = []
759
- this.unitOptions = []
760
- this.$refs.paged.$refs.cri.model.f_building = ''
761
- this.$refs.paged.$refs.cri.model.f_unit = ''
762
- if (!f_residential_area) {
763
- return
764
- }
765
- let criteria = {
766
- items: 'f_building',
767
- tablename: 't_check_plan_item',
768
- condition: `f_checker_idhp = '${Vue.user.id}' and f_building IS NOT NULL AND f_building != '' AND (f_state <> '已检' or (f_state = '已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检'))) AND f_residential_area = '${f_residential_area}'`,
769
- groupitem: 'f_building'
770
- }
771
- let http = new HttpResetClass()
772
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_GroupBy`, {data:criteria}, {resolveMsg: null, rejectMsg: null}).then((res) => {
773
- //tag
774
- res.data.forEach(item => this.buildOptions.push({label: item.f_building, value: item.f_building}))
775
- })
776
- },
777
- getUnits(f_building) {
778
- f_building = f_building[0]
779
- //tag)
780
- this.unitOptions = []
781
- this.$refs.paged.$refs.cri.model.f_unit = ''
782
- if (!f_building) {
783
- return
784
- }
785
- let criteria = {
786
- items: 'f_unit',
787
- tablename: 't_check_plan_item',
788
- condition: `f_checker_idhp = '${Vue.user.id}' and f_unit IS NOT NULL AND f_unit != '' AND (f_state <> '已检' or (f_state = '已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检'))) AND f_residential_area = '${this.$refs.paged.$refs.cri.model.f_residential_area}' AND f_building = '${f_building}'`,
789
- groupitem: 'f_unit'
790
- }
791
- let http = new HttpResetClass()
792
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_GroupBy`, {data:criteria}, {resolveMsg: null, rejectMsg: null}).then((res) => {
793
- //tag
794
- res.data.forEach(item => this.unitOptions.push({label: item.f_unit, value: item.f_unit}))
795
- })
796
- },
797
- getfloors(f_unit) {
798
- f_unit = f_unit[0]
799
- //tag)
800
- this.floors = []
801
- this.$refs.paged.$refs.cri.model.floor = ''
802
- if (!f_unit) {
803
- return
804
- }
805
- let criteria = {
806
- items: 'f_floor',
807
- tablename: 't_check_plan_item',
808
- condition: `f_checker_idhp = '${Vue.user.id}' and f_floor IS NOT NULL AND f_floor != '' AND (f_state <> '已检' or (f_state = '已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检'))) AND f_residential_area = '${this.$refs.paged.$refs.cri.model.f_residential_area}' AND f_building = '${this.$refs.paged.$refs.cri.model.f_building}' AND f_unit = '${f_unit}'`,
809
- groupitem: 'f_floor'
810
- }
811
- let http = new HttpResetClass()
812
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_GroupBy`, {data:criteria}, {resolveMsg: null, rejectMsg: null}).then((res) => {
813
- //tag
814
- res.data.forEach(item => this.floors.push({label: item.f_floor, value: item.f_floor}))
815
- })
816
- },
817
- getPlanCount() {
818
- this.upcomingCount = 0
819
- this.tempSaveCount = 0
820
- this.doneCount = 0
821
- this.allPlanCount = 0
822
- let criteria = {
823
- items: 'count(id) count',
824
- tablename: 't_check_plan_item',
825
- condition: `f_state = '未检'`,
826
- groupitem: 'f_state'
827
- }
828
- let result = HostApp._executeTask({
829
- 'type': 'sql',
830
- 'data': {'alias': 'safe_singleTable_GroupBy', 'criteria': criteria}
831
- })
832
- if (result.code && result.code == 200) {
833
- if (result.data.rows[0] && !isNaN(result.data.rows[0].count)) {
834
- this.upcomingCount = result.data.rows[0].count
835
- }
836
- }
837
- criteria = {
838
- items: 'count(id) count',
839
- tablename: 't_check_plan_item',
840
- condition: `(f_complete = '' or f_complete = null or f_complete = '未完成') AND f_state = '已检'`,
841
- groupitem: 'f_state'
842
- }
843
- result = HostApp._executeTask({
844
- 'type': 'sql',
845
- 'data': {'alias': 'safe_singleTable_GroupBy', 'criteria': criteria}
846
- })
847
- if (result.code && result.code == 200) {
848
- if (result.data.rows[0] && !isNaN(result.data.rows[0].count)) {
849
- this.tempSaveCount = result.data.rows[0].count
850
- }
851
- }
852
- criteria = {
853
- items: 'count(id) count',
854
- tablename: 't_check_plan_item',
855
- condition: `f_complete = '已完成' AND f_state = '已检'`,
856
- groupitem: 'f_state'
857
- }
858
- result = HostApp._executeTask({
859
- 'type': 'sql',
860
- 'data': {'alias': 'safe_singleTable_GroupBy', 'criteria': criteria}
861
- })
862
- if (result.code && result.code == 200) {
863
- if (result.data.rows[0] && !isNaN(result.data.rows[0].count)) {
864
- this.doneCount = result.data.rows[0].count
865
- }
866
- }
867
- this.allPlanCount = this.upcomingCount + this.tempSaveCount + this.doneCount
868
- },
869
- getAllPlanName() {
870
- this.planNameOptions = []
871
- this.$refs.paged.$refs.cri.model.f_plan_name = ''
872
- let criteria = {
873
- items: 'f_plan_name',
874
- tablename: 't_check_plan',
875
- condition: `f_plan_name IS NOT NULL AND f_plan_name != ''`,
876
- groupitem: 'f_plan_name'
877
- }
878
- let http = new HttpResetClass()
879
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_GroupBy`, {data:criteria}, {resolveMsg: null, rejectMsg: null}).then((res) => {
880
- //tag
881
- res.data.forEach(item => this.planNameOptions.push({
882
- label: item.f_plan_name,
883
- value: item.f_plan_name
884
- }))
885
- })
886
-
887
- },
888
- setPlanParam(detailsType, event) {
889
- if (event.srcElement.checked) {
890
- this.planparam.push(detailsType)
891
- //tag
892
- } else {
893
- if (this.planparam.length > 0) {
894
- let planid = this.planparam.findIndex((value) => {
895
- return value === detailsType
896
- })
897
- this.planparam.splice(planid, 1)
898
- //tag
899
-
900
- }
901
-
902
- }
903
- }
904
- }
905
- }
906
- </script>
1
+ <style scoped>
2
+ .bg {
3
+ background-color: blue;
4
+ height: 1px;
5
+ border: 0;
6
+ }
7
+
8
+ .app-row {
9
+ background-color: white;
10
+ padding: 10px 10px 0 10px;
11
+ border-bottom: 1px solid rgba(235, 235, 235, 0.5);
12
+ }
13
+
14
+ .search_input {
15
+ border: 0;
16
+ outline: none;
17
+ }
18
+
19
+ .font {
20
+ font: 15px PingFang-SC-Medium;
21
+ color: #666666;
22
+ }
23
+
24
+ .input-font {
25
+ font: 15px PingFang-SC-Medium;
26
+ color: #333333;
27
+ }
28
+
29
+ .btn-font {
30
+ font: 600 16px PingFang-SC-Bold;
31
+ color: #499EDF;
32
+ }
33
+
34
+ .btn-color {
35
+ background-color: #FFFFFF;
36
+ border-radius: 10px;
37
+ border: 1px solid #499EDF;
38
+ }
39
+
40
+ .app-text {
41
+ font-size: 12px;
42
+ }
43
+
44
+ .panel-self {
45
+ border-radius: 10px;
46
+ border: 1px solid #499EDF;
47
+ background-color: #F8F8F8;
48
+ }
49
+
50
+ .yybtn-color {
51
+ background-color: #499edf;
52
+ border-radius: 4px;
53
+ border: 1px solid #499EDF;
54
+ color: #FFFFFF;
55
+ font: 14px PingFang-SC-Bold;
56
+ }
57
+
58
+ .qxbtn-color {
59
+ background-color: #FFFFFF;
60
+ border-radius: 4px;
61
+ color: #499edf;
62
+ font: 14px PingFang-SC-Bold;
63
+ border: 1px solid #499EDF;
64
+ }
65
+
66
+ .button_shrink_top {
67
+ width: 35px;
68
+ height: 35px;
69
+ background-size: 100%;
70
+ background-image: url("../../../static/newStyle/stretch_top.png")
71
+ }
72
+
73
+ .button_shrink_bottom {
74
+ width: 35px;
75
+ height: 35px;
76
+ background-size: 100%;
77
+ background-image: url("../../../static/newStyle/stretch_bottom.png")
78
+ }
79
+
80
+ .button_shrink_left {
81
+ width: 35px;
82
+ height: 35px;
83
+ background-size: 100%;
84
+ background-image: url("../../../static/newStyle/stretch_left.png")
85
+ }
86
+
87
+ .button_shrink_right {
88
+ width: 35px;
89
+ height: 35px;
90
+ background-size: 100%;
91
+ background-image: url("../../../static/newStyle/stretch_right.png")
92
+ }
93
+ </style>
94
+ <style>
95
+ .clear-select-with .dropdown-menu {
96
+ left: 0px !important;
97
+ width: 200% !important;
98
+ }
99
+ </style>
100
+ <template>
101
+ <div style="height: auto;width: 100%">
102
+ <criteria-paged :model="model" v-ref:paged>
103
+ <criteria partial='criteria' @condition-changed='search' v-ref:cri>
104
+ <div partial>
105
+ <form>
106
+ <div class="row app-row">
107
+ <!--小区名称-->
108
+ <v-select :value.sync="model.f_residential_area"
109
+ class="input-font clear-select-with"
110
+ :options='$parent.$parent.residentialAreaOptions'
111
+ placeholder='小区名称'
112
+ :width="'46.5%'"
113
+ v-model="model.f_residential_area"
114
+ condition="ti.f_residential_area = '{}'"
115
+ @change="$parent.$parent.getbuilds"
116
+ close-on-select clear-button>
117
+ </v-select>
118
+ <!--楼栋-->
119
+ <v-select :value.sync="model.f_building"
120
+ class="input-font"
121
+ :options='$parent.$parent.buildOptions'
122
+ placeholder='楼栋'
123
+ :width="'46.5%'"
124
+ v-model="model.f_building"
125
+ condition="ti.f_building = '{}'"
126
+ @change="$parent.$parent.getUnits"
127
+ close-on-select clear-button>
128
+ </v-select>
129
+ </div>
130
+ <div class="row app-row">
131
+ <!--单元-->
132
+ <v-select :value.sync="model.f_unit"
133
+ class="input-font"
134
+ :options='$parent.$parent.unitOptions'
135
+ placeholder='单元'
136
+ :width="'46.5%'"
137
+ @change="$parent.$parent.getfloors"
138
+ v-model="model.f_unit"
139
+ condition="ti.f_unit = '{}'"
140
+ close-on-select clear-button>
141
+ </v-select>
142
+ <!--楼层-->
143
+ <v-select :value.sync="model.floor"
144
+ class="input-font"
145
+ :options='$parent.$parent.floors'
146
+ placeholder='楼层'
147
+ :width="'46.5%'"
148
+ v-model="model.floor"
149
+ condition="ti.f_floor = '{}'"
150
+ close-on-select clear-button>
151
+ </v-select>
152
+ </div>
153
+ <div class="row app-row">
154
+ <div class="col-xs-4">
155
+ <img src="../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
156
+ <label for="f_userinfo_code" class="font text-left">用户编号:</label>
157
+ </div>
158
+ <div class="col-xs-8">
159
+ <input id="f_userinfo_code" class="search_input input-font"
160
+ v-model=model.f_userinfo_code condition="f_userinfo_code like '%{}%'"/>
161
+ </div>
162
+ </div>
163
+ <div class="row app-row">
164
+ <div class="col-xs-4">
165
+ <img src="../../assets/用户姓名.png" style="width: 20px;margin-bottom: 5px" alt="">
166
+ <label class="font text-left">用户姓名:</label>
167
+ </div>
168
+ <div class="col-xs-8">
169
+ <input class="search_input input-font" v-model=model.f_user_name condition="f_user_name like '%{}%'"/>
170
+ </div>
171
+ </div>
172
+ <div class="row app-row" v-if="$parent.$parent.criteriaShow">
173
+ <div class="col-xs-4">
174
+ <img src="../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
175
+ <label class="font text-left">气表编号:</label>
176
+ </div>
177
+ <div class="col-xs-5">
178
+ <input class="search_input input-font"
179
+ v-model=model.f_meter_no condition="f_meter_no like '%{}%'"/>
180
+ </div>
181
+ <div class="col-xs-3">
182
+ <button type="button" class="btn btn-lg btn-font btn-color" @click="$parent.$parent.scan()">扫码</button>
183
+ </div>
184
+ </div>
185
+
186
+ <div class="row app-row" v-if="$parent.$parent.criteriaShow">
187
+ <div class="col-xs-4">
188
+ <img src="../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
189
+ <label class="font text-left">用户地址:</label>
190
+ </div>
191
+ <div class="col-xs-8">
192
+ <input class="search_input input-font"
193
+ v-model=model.f_keyword condition="f_address like '%{}%'"/>
194
+ </div>
195
+ </div>
196
+ <div class="row app-row" v-if="$parent.$parent.criteriaShow">
197
+ <div class="col-xs-4">
198
+ <img src="../../assets/用户类型.png" style="width: 20px;margin-bottom: 5px" alt="">
199
+ <label for="f_user_type" class="font text-left">用户类型:</label>
200
+ </div>
201
+ <v-select id="f_user_type" :value.sync="model.f_user_type" class="input-font"
202
+ :width="'60%'"
203
+ :options='$parent.$parent.user_types' placeholder='请选择用户类型'
204
+ v-model="model.f_user_type" condition="f_user_type='{}'" close-on-select
205
+ clear-button></v-select>
206
+ </div>
207
+ <div class="row app-row" v-if="false">
208
+ <div class="col-xs-6" style="text-align: center">
209
+ <span class="font text-left">待办{{ $parent.$parent.upcomingCount }}条</span>
210
+ </div>
211
+ <div class="col-xs-6" style="text-align: center">
212
+ <span class="font text-left">已办{{ $parent.$parent.doneCount }}条</span>
213
+ </div>
214
+ <div class="col-xs-6" style="text-align: center">
215
+ <span class="font text-left">临时保存{{ $parent.$parent.tempSaveCount }}条</span>
216
+ </div>
217
+ <div class="col-xs-6" style="text-align: center">
218
+ <span class="font text-left">总共{{ $parent.$parent.allPlanCount }}条</span>
219
+ </div>
220
+ </div>
221
+
222
+ <div class="row text-center" style="margin-top: 20px;">
223
+ <button type="button" class="btn btn-lg btn-font btn-color" style="width: 25%;"
224
+ @click="$parent.$parent.selfSearch">查询
225
+ </button>
226
+ <button type="button" class="btn btn-lg btn-font btn-color" style="width: 25%; margin-left: 10px"
227
+ @click="$parent.$parent.queryplanmany">重置
228
+ </button>
229
+ <div style="float: right;margin-right: 3% " class="button_spacing"
230
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
231
+ @click="$parent.$parent.hidden()"></div>
232
+ </div>
233
+ <div class="col-sm-12">
234
+
235
+ </div>
236
+ <!--<div class="row app-btn">-->
237
+ <!--<button class="btn btn-primary col-xs-6" type="button" @click="search"><span class="glyphicon glyphicon-search" style="margin-right: 20px;">查询</span></button>-->
238
+ <!--</div>-->
239
+ <div style="height:30px;"></div>
240
+ </form>
241
+ </div>
242
+ </criteria>
243
+ <list :model="model" partial='list'>
244
+ <div partial>
245
+ <div class="auto app-text" style="margin-top: 5px;">
246
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
247
+ <div class="panel-body panel-self">
248
+
249
+ <div class="col-xs-12">
250
+ <p class="panel-title col-xs-5 text-left font" style="width: 25%;float: left"><b>用户编号:</b></p>
251
+ <p class="panel-title col-xs-5 text-left input-font" style="width: 74%">{{ row.f_userinfo_code }}</p>
252
+ <!-- <p class="panel-title col-xs-2 text-left input-font" style="width: 5%;float:right">-->
253
+ <!-- <input type="checkbox" @click="$parent.$parent.$parent.setPlanParam(row.id, $event)"/>-->
254
+ <!-- </p>-->
255
+ </div>
256
+ <div class="col-xs-12">
257
+ <p class="panel-title col-xs-5 text-left font" style="width: 25%;float: left"><b>用户名称:</b></p>
258
+ <p class="panel-title col-xs-7 text-left input-font">{{ row.f_user_name }}</p>
259
+ </div>
260
+ <div class="col-xs-12">
261
+ <p class="panel-title col-xs-5 text-left font" style="width: 25%;"><b>用户类型:</b></p>
262
+ <p class="panel-title col-xs-7 text-left input-font">{{ row.f_user_type }}
263
+ </p>
264
+ </div>
265
+ <div class="col-xs-12">
266
+ <p class="panel-title col-xs-5 text-left font" style="width: 25%;"><b>计划名称:</b></p>
267
+ <p class="panel-title col-xs-7 text-left input-font">{{ row.f_plan_name }}</p>
268
+ </div>
269
+ <!-- <div class="col-xs-6">-->
270
+ <!-- <p class="panel-title col-xs-5 text-left font"><b>小区名称:</b></p>-->
271
+ <!-- <p class="panel-title col-xs-7 text-left input-font">{{ row.f_residential_area }}</p>-->
272
+ <!-- </div>-->
273
+ <div class="col-xs-12">
274
+ <p class="panel-title text-left font" style="width: 25%;float: left"><b>用户电话:</b></p>
275
+ <p class="panel-title text-left input-font" style="width: 77%">
276
+ {{ row.f_user_phone2 ? row.f_user_phone2 : row.f_user_phone }}
277
+ <!-- <img src="../../assets/phone.png" style="width: 6%"-->
278
+ <!-- v-on:click.stop.prevent='$parent.$parent.$parent.makeAPhoneCall(row.f_user_phone2 ? row.f_user_phone2 : row.f_user_phone)'/>-->
279
+ </p>
280
+ </div>
281
+
282
+ <div class="col-xs-12">
283
+ <p class="panel-title text-left font" style="width: 25%;float: left"><b>用户地址:</b></p>
284
+ <p class="panel-title text-left input-font" style="width: 79%">{{ row.f_address }}</p>
285
+ </div>
286
+
287
+ <!-- <div class="row">-->
288
+ <!-- <p class="panel-title col-xs-4 text-left font">计划年份</p>-->
289
+ <!-- <p class="panel-title col-xs-8 text-left input-font">{{ row.f_plan_year }}</p>-->
290
+ <!-- </div>-->
291
+ <!-- <div class="row">-->
292
+ <!-- <p class="panel-title col-xs-4 text-left font">计划月份</p>-->
293
+ <!-- <p class="panel-title col-xs-8 text-left input-font">{{ row.f_plan_month }}</p>-->
294
+ <!-- </div>-->
295
+ <!-- <div class="row">-->
296
+ <!-- <p class="panel-title col-xs-4 text-left font">预约时间</p>-->
297
+ <!-- <p class="panel-title col-xs-8 text-left input-font">{{ row.f_prearranged_date }}</p>-->
298
+ <!-- </div>-->
299
+ <!--<div class="row">-->
300
+ <!--<p class="panel-title col-xs-4 text-left font">上次安检状态</p>-->
301
+ <!--<p class="panel-title col-xs-8 text-left input-font">{{ row.f_last_check_state }}</p>-->
302
+ <!--</div>-->
303
+ <div class="col-xs-12">
304
+ <p class="panel-title col-xs-5 text-left font" style="width: 25%;"><b>安检状态:</b></p>
305
+ <p class="panel-title col-xs-7 text-left input-font">
306
+ {{ row.f_state == '已检' ? row.f_last_check_state : row.f_state }}</p>
307
+ </div>
308
+ <div class="col-xs-12">
309
+ <p class="panel-title col-xs-5 text-left font" style="width: 25%;"><b>上传状态:</b></p>
310
+ <p class="panel-title col-xs-7 text-left input-font">{{ row.f_upload_state }}</p>
311
+ </div>
312
+ <div class="col-xs-12" v-if="row.f_prearranged_date !=null">
313
+ <p class="panel-title col-xs-5 text-left font" style="width: 25%;float: left"><b>预约时间:</b></p>
314
+ <p class="panel-title col-xs-7 text-left input-font" style="width: 79%">{{
315
+ row.f_prearranged_date
316
+ }}</p>
317
+ </div>
318
+ <div class="col-xs-12">
319
+ <p class="panel-title col-xs-5 text-left font" style="width: 25%;"><b>安检类型:</b></p>
320
+ <p class="panel-title col-xs-7 text-left input-font">{{ row.f_safecheck_type }}</p>
321
+ </div>
322
+ <div class="col-xs-12">
323
+ <p class="panel-title col-xs-5 text-left font" style="width: 25%;float: left"><b>开户日期:</b></p>
324
+ <p class="panel-title col-xs-7 text-left input-font">{{ row.f_open_date }}</p>
325
+ </div>
326
+ <!--<div class="col-xs-12">-->
327
+ <!--<p class="panel-title col-xs-5 text-left font"><b>送气期限:</b></p>-->
328
+ <!--<p class="panel-title col-xs-7 text-left input-font">{{timeSet(row.f_issue_time)}}</p>-->
329
+ <!--</div>-->
330
+ <div class="col-xs-12">
331
+ <button type="button" name="button" class="btn btn-primary"
332
+ style="background-color:#499edf;float: right" @click="$parent.$parent.$parent.inspect(row)">处理
333
+ </button>
334
+ <!-- <button type="button" name="button" class="btn btn-primary" style="background-color:#499edf;float: right;margin-right:10px;" @click="$parent.$parent.$parent.queryplan(row.id)">转发</button>-->
335
+ <!--<button type="button" class="btn btn-default" @click="$parent.$parent.$parent.ceshi">确认2</button>-->
336
+ </div>
337
+ <!-- <div class="row text-right" v-show="row.f_upload_state != '已传'" >-->
338
+ <!-- <button type="button" class="btn yybtn-color" v-on:click.stop.prevent='$parent.$parent.$parent.reserve($index)'>预约</button>&nbsp;-->
339
+ <!-- <button type="button" class="btn qxbtn-color" v-if ='row.f_prearranged_date'-->
340
+ <!-- v-on:click.stop.prevent='$parent.$parent.$parent.cancelReserve($index, row.id)'>取消预约</button>-->
341
+ <!-- </div>-->
342
+ </div>
343
+ </div>
344
+ </div>
345
+ </div>
346
+ </list>
347
+ </criteria-paged>
348
+ <div style="height: 50px">
349
+ </div>
350
+ </div>
351
+
352
+ </template>
353
+
354
+ <script>
355
+ import Vue from 'vue'
356
+ import LocalPagedList from '../../plugins/LocalPagedList'
357
+ import {HttpResetClass, PagedList} from 'vue-client'
358
+ import * as Util from '../Util'
359
+ import co from 'co'
360
+
361
+ let select = function* (self) {
362
+ let http = new HttpResetClass()
363
+ http.load('POST', `${self.$androidUtil.getProxyUrl()}/rs/search`, {
364
+ source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
365
+ userid: Vue.user.id
366
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
367
+ //tag
368
+ self.checkers.push({label: '全部', value: ''})
369
+ res.data.forEach((checker) => {
370
+ self.checkers.push({label: checker.name, value: checker.id})
371
+ })
372
+ })
373
+ }
374
+ export default {
375
+ title: '送气待办',
376
+ props: ['planName'],
377
+ data() {
378
+ return {
379
+ f_filialeids: '(' + Vue.user.orgid + ')',
380
+ //f_filialeids:'(305)',
381
+ planparam: [],
382
+ check: '',
383
+ plan: '',
384
+ planid: '',
385
+ model:Vue.android? new LocalPagedList('androidGetuserinfoAsp',20,{condition:'this.condition'}): new PagedList( 'AndroidRest/api/af-safecheck/sql/androidGetuserinfo',20,{condition:'this.condition'}),
386
+ showModal: false,
387
+ showModal2: false,
388
+ showModal3: false,
389
+ needid: '',
390
+ criteriaShow: false,
391
+ planoption: [],
392
+ condition: '',
393
+ checkers: [],
394
+ param: null,
395
+ f_preset_dt: Util.to3339TimeString(),
396
+ flow_direction: [
397
+ {label: '请选择挂表方式', value: ''},
398
+ {label: '左表', value: '左表'},
399
+ {label: '右表', value: '右表'}
400
+ ],
401
+ check_states: [
402
+ {label: '请选择安检状态', value: ''},
403
+ {label: '未检', value: '未检'},
404
+ {label: '临时保存', value: '已检'},
405
+ ],
406
+ last_check_states: [
407
+ {label: '请选择上次安检状态', value: ''},
408
+ {label: '入户', value: '入户'},
409
+ {label: '拒检', value: '拒检'},
410
+ {label: '到访不遇', value: '到访不遇'},
411
+ {label: '未使用天然气', value: '未使用天然气'}
412
+ ],
413
+ upload_states: [
414
+ {label: '请选择上传状态', value: ''},
415
+ {label: '未传', value: '未传'},
416
+ {label: '已传', value: '已传'}
417
+ ],
418
+ user_types: [
419
+ {label: '请选择用户类型', value: ''},
420
+ {label: '民用', value: '民用'},
421
+ {label: '非民用', value: '非民用'},
422
+ ],
423
+ verify_state: [
424
+ {label: '请选择审核状态', value: ''},
425
+ {label: '未审核', value: '未审核'},
426
+ {label: '打回', value: '打回'}
427
+ ],
428
+ residentialAreaOptions: [],
429
+ buildOptions: [],
430
+ unitOptions: [],
431
+ floors: [],
432
+ planNameOptions: [],
433
+ upcomingCount: 0,
434
+ doneCount: 0,
435
+ tempSaveCount: 0,
436
+ allPlanCount: 0
437
+ }
438
+ },
439
+ ready() {
440
+ this.$refs.paged.$refs.cri.model.f_residential_area = ''
441
+ this.$refs.paged.$refs.cri.model.f_building = ''
442
+ this.$refs.paged.$refs.cri.model.f_unit = ''
443
+ this.$refs.paged.$refs.cri.model.floor = ''
444
+ this.getAllArea()
445
+ // this.getAllPlanName()
446
+ this.selfSearch()
447
+ let gen = select(this)
448
+ co(gen)
449
+ },
450
+ mounted() {
451
+ //tag
452
+ if (window.history && window.history.pushState) {
453
+ history.pushState(null, null, document.URL);
454
+ window.addEventListener('popstate', this.fun, false);//false阻止默认事件
455
+ }
456
+ },
457
+ destroyed() {
458
+ //tag
459
+ window.removeEventListener('popstate', this.fun, false);//false阻止默认事件
460
+ },
461
+ methods: {
462
+ scan() {
463
+ HostApp.__this__ = this,
464
+ HostApp.scanCode({callback: "javascript:HostApp.__this__.getCode();"})
465
+ },
466
+ getCode() {
467
+ const datapa = HostApp.getCode().data;
468
+ //tag
469
+ this.$refs.paged.$refs.cri.model.f_meter_no = datapa
470
+
471
+ },
472
+ fun() {
473
+ //tag
474
+ //tag
475
+ },
476
+ iscancel() {
477
+ this.showModal2 = false
478
+ this.showModal3 = false
479
+ this.planoption = []
480
+ },
481
+ timeSet(val) {
482
+ return val
483
+ },
484
+ async isok() {
485
+ if (this.planoption.length == 0) {
486
+ this.$showMessage("请选择计划")
487
+ return false
488
+ }
489
+ for (let i = 0; i < this.planoption.length; i++) {
490
+ if (this.planoption[i]["selected"] == true) {
491
+ this.planid = this.planoption[i].value
492
+ break
493
+ }
494
+ }
495
+ if (this.planid == '') {
496
+ this.$showMessage("请选择计划")
497
+ return false
498
+ }
499
+ await this.okput()
500
+ },
501
+ async manyisok() {
502
+ if (this.planoption.length == 0) {
503
+ this.$showMessage("请选择计划")
504
+ return false
505
+ }
506
+ for (let i = 0; i < this.planoption.length; i++) {
507
+ if (this.planoption[i]["selected"] == true) {
508
+ this.planid = this.planoption[i].value
509
+ break
510
+ }
511
+ }
512
+ if (this.planid == '') {
513
+ this.$showMessage("请选择计划")
514
+ return false
515
+ }
516
+ await this.manyokput()
517
+ },
518
+ changenull() {
519
+ this.showModal2 = false
520
+ this.showModal3 = false
521
+ this.planoption = []
522
+ this.plan = ''
523
+ this.check = ''
524
+ },
525
+ async okput() {
526
+ let res = await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/UpCheckPlanItem`, {
527
+ data: {
528
+
529
+ condition: `i.id='` + this.needid + `'`,
530
+ f_plan_id: this.planid,
531
+ switchCheckAll: false,
532
+ checkAll: false,
533
+ f_operator: Vue.user.name
534
+ }
535
+ })
536
+ await this.changenull()
537
+ await this.getNewOrder()
538
+ },
539
+ async manyokput() {
540
+ let res = await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/UpCheckPlanItem`, {
541
+ data: {
542
+ columnName: "i.id",
543
+ condition: "1=1",
544
+ f_plan_id: this.planid,
545
+ switchCheckAll: true,
546
+ param: this.planparam,
547
+ checkAll: false,
548
+ f_operator: Vue.user.name
549
+ }
550
+ })
551
+ await this.changenull()
552
+ await this.getNewOrder()
553
+ },
554
+ async plansearch() {
555
+ this.planoption = []
556
+ let condition = `f_checker_id=` + this.check + ` and f_plan_name like '%` + this.plan + `%'`
557
+ if (!this.check) {
558
+ condition = `f_plan_name like '%` + this.plan + `%'`
559
+ }
560
+ let res = await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/预约计划下发`, {
561
+ data: {
562
+ condition: condition,
563
+ f_filialeids: this.f_filialeids,
564
+ groupitem: '',
565
+ orderitem: 'id'
566
+ }
567
+ })
568
+ let resoult = res.data
569
+ for (let i = 0; i < resoult.length; i++) {
570
+ this.planoption.push({label: resoult[i].f_plan_name, selected: false, value: resoult[i].id})
571
+ }
572
+ },
573
+
574
+ select(row, idx) {
575
+ this.$set('planoption[' + idx + '].selected', true)
576
+ for (let i = 0; i < this.planoption.length; i++) {
577
+ if (i != idx) {
578
+ this.planoption[i]["selected"] = false
579
+ }
580
+ }
581
+ },
582
+ planclose() {
583
+ this.showModal2 = false
584
+ this.showModal3 = false
585
+ },
586
+ queryplan(val) {
587
+ this.needid = val
588
+ this.showModal2 = true
589
+ },
590
+ queryplanmany() {
591
+ this.$refs.paged.$refs.cri.model.f_residential_area = ''
592
+ this.$refs.paged.$refs.cri.model.f_building = ''
593
+ this.$refs.paged.$refs.cri.model.f_unit = ''
594
+ this.$refs.paged.$refs.cri.model.f_userinfo_code = ''
595
+ this.$refs.paged.$refs.cri.model.f_user_name = ''
596
+ this.$refs.paged.$refs.cri.model.f_enter_number = ''
597
+ this.$refs.paged.$refs.cri.model.f_plan_name = ''
598
+ this.$refs.paged.$refs.cri.model.f_state = ''
599
+ this.$refs.paged.$refs.cri.model.f_meter_no = ''
600
+ this.$refs.paged.$refs.cri.model.f_address = ''
601
+ this.$refs.paged.$refs.cri.model.f_user_type = ''
602
+ },
603
+ reload() {
604
+ // this.getAllArea()
605
+ // this.getAllPlanName()
606
+ this.selfSearch()
607
+ },
608
+ cancelReserve(idx, id) {
609
+ if (Vue.android) {
610
+ let res = this.$androidUtil.bzLogic('BookingCheck', {dt: '', id: id})
611
+ this.$set('model.rows[' + idx + '].f_prearranged_date', null)
612
+ if (res.code == 200) {
613
+ this.$showMessage("取消预约成功")
614
+ }
615
+ } else {
616
+ this.$androidUtil.bzLogic('PCbookingCheck', {dt: '', id: id}).then((repanse) => {
617
+ this.$set('model.rows[' + idx + '].f_prearranged_date', null)
618
+ if (repanse.data.code == 200) {
619
+ alert("取消预约成功!")
620
+ }
621
+ })
622
+ }
623
+ },
624
+ genuineReserve() {
625
+ if (Vue.android) {
626
+ if (!this.f_preset_dt) {
627
+ this.$showMessage('请选择一个日期')
628
+ return
629
+ }
630
+ let pdt = this.f_preset_dt.replace('T', ' ')
631
+ let respanse = this.$androidUtil.bzLogic('BookingCheck', {id: this.model.rows[this.param].id, dt: pdt})
632
+ this.$set('model.rows[' + this.param + '].f_prearranged_date', pdt)
633
+ if (respanse.code == 200) {
634
+ this.$showMessage("预约成功!")
635
+ }
636
+ this.showModal = false
637
+ } else {
638
+ if (!this.f_preset_dt) {
639
+ alert('请选择一个日期')
640
+ return
641
+ }
642
+ let pdt = this.f_preset_dt.replace('T', ' ')
643
+ this.$androidUtil.bzLogic('PCbookingCheck', {id: this.model.rows[this.param].id, dt: pdt}).then((res) => {
644
+ this.$set('model.rows[' + this.param + '].f_prearranged_date', pdt)
645
+ if (res.data.code == 200) {
646
+ alert("预约成功!")
647
+ }
648
+ this.showModal = false
649
+ })
650
+ }
651
+ },
652
+ inspect(row) {
653
+ var _this = this
654
+ if (row.f_upload_state == '未传' || (row.f_upload_state == '已传' && (row.f_state == '未检' || (row.f_state == '已检' && (row.f_last_check_state == '到访不遇' || row.f_last_check_state == '拒检'))) && row.f_no_checkplan != '无计划安检')) {
655
+ new HttpResetClass().load('post', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
656
+ data: {
657
+ items: 'count(0) as count_num',
658
+ tablename: 't_check_plan_item',
659
+ condition: `id = '${row.id}' and (f_upload_state != '已传' or f_last_check_state != '入户')`,
660
+ orderitem: '1'
661
+ }
662
+ }).then(resp => {
663
+ if(resp.data[0].count_num == 0){
664
+ this.$showMessage("该安检单已被上传!")
665
+ this.selfSearch()
666
+ return
667
+ }
668
+ let myDate = new Date()
669
+ // if (resp.data[0].f_end_time > myDate.getFullYear() + '-' + (myDate.getMonth() + 1) + '-' + myDate.getDay() || !resp.data[0].f_end_time) {
670
+ _this.$resetpost(`${_this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/查询计划项表信息`, {data: {f_userid: row.f_userinfoid}}, {
671
+ resolveMsg: null,
672
+ rejectMsg: null
673
+ }).then((response) => {
674
+ row['f_plan_meters'] = response.data
675
+ var pardate = {
676
+ _this:_this,
677
+ title:'送气计划',
678
+ safe:true
679
+ }
680
+ _this.$dispatch('gotoson',pardate)
681
+ _this.$goto('AspiratedOrderV', {f_plan_id: row.f_plan_id, item: row, role: 'inspect'}, 'self', _this.reload)
682
+ }).catch((msg) => {
683
+ this.$showMessage("网络异常,请检查网络后再试!")
684
+ })
685
+ }).catch(error => {
686
+
687
+ })
688
+ } else {
689
+ this.$showMessage("该安检单已被上传!")
690
+ }
691
+ },
692
+ makeAPhoneCall(phoneNumber) {
693
+ this.$androidUtil.makeAPhoneCall(phoneNumber)
694
+ },
695
+ reserve(idx) {
696
+ this.param = idx
697
+ this.showModal = true
698
+ },
699
+ search(args) {
700
+ this.model.rows = []
701
+ this.model.search(args.condition, args.model)
702
+ },
703
+ selfSearch() {
704
+ // this.getPlanCount()
705
+ let condition = "and 1 = 1 "
706
+ if (this.planName)
707
+ condition += " and cp.f_plan_name = '"+this.planName +"'"
708
+ if (this.$refs.paged.$refs.cri.model.f_residential_area)
709
+ condition += " and ti.f_residential_area like '%" + this.$refs.paged.$refs.cri.model.f_residential_area + "%'"
710
+ if (this.$refs.paged.$refs.cri.model.f_building)
711
+ condition += " and ti.f_building = '" + this.$refs.paged.$refs.cri.model.f_building + "'"
712
+ if (this.$refs.paged.$refs.cri.model.f_unit)
713
+ condition += " and ti.f_unit = '" + this.$refs.paged.$refs.cri.model.f_unit + "'"
714
+ if (this.$refs.paged.$refs.cri.model.floor)
715
+ condition += " and ti.f_floor = '" + this.$refs.paged.$refs.cri.model.floor + "'"
716
+ if (this.$refs.paged.$refs.cri.model.f_userinfo_code)
717
+ condition += " and ti.f_userinfo_code like '%" + this.$refs.paged.$refs.cri.model.f_userinfo_code + "%'"
718
+ if (this.$refs.paged.$refs.cri.model.f_keyword)
719
+ condition += " and ti.f_address like '%" + this.$refs.paged.$refs.cri.model.f_keyword + "%'"
720
+ if (this.$refs.paged.$refs.cri.model.f_user_name)
721
+ condition += " and ti.f_user_name like '%" + this.$refs.paged.$refs.cri.model.f_user_name + "%'"
722
+ if (this.$refs.paged.$refs.cri.model.f_user_type[0])
723
+ condition += " and ti.f_user_type='" + this.$refs.paged.$refs.cri.model.f_user_type[0] + "'"
724
+ if (this.$refs.paged.$refs.cri.model.f_meter_no)
725
+ condition += " and tm.f_meter_no like '%" + this.$refs.paged.$refs.cri.model.f_meter_no + "%'"
726
+ if (this.$refs.paged.$refs.cri.model.f_enter_number)
727
+ condition += " and ti.f_enter_number like '%" + this.$refs.paged.$refs.cri.model.f_enter_number + "%'"
728
+ // const searchCondition = "((f_state = '未检') or (f_state = '已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检') )) and ti.f_no_checkplan = '有计划安检' and cp.f_safecheck_type = '送气类型' and cp.f_issued = '是' and cp.f_checker_id is null and cp.f_checker is null " + condition
729
+
730
+ const searchCondition = "((f_complete = '' or f_complete = null or f_complete = '未完成') or (f_state = '未检')) and ti.f_no_checkplan = '有计划安检' and ti.f_safecheck_type='送气类型'" + condition
731
+ //tag
732
+ this.model.search(searchCondition)
733
+ },
734
+ hidden() {
735
+ this.criteriaShow = !this.criteriaShow
736
+ },
737
+ getAllArea() {
738
+ this.residentialAreaOptions = []
739
+ this.buildOptions = []
740
+ this.unitOptions = []
741
+ let criteria = {
742
+ items: 'f_residential_area',
743
+ tablename: 't_check_plan_item',
744
+ condition: `f_checker_idhp = '${Vue.user.id}' and f_residential_area IS NOT NULL AND f_residential_area != '' AND (f_state <> '已检' or (f_state = '已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检')))`,
745
+ groupitem: 'f_residential_area'
746
+ }
747
+ let http = new HttpResetClass()
748
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_GroupBy`, {data:criteria}, {resolveMsg: null, rejectMsg: null}).then((res) => {
749
+ //tag
750
+ res.data.forEach(item => this.residentialAreaOptions.push({
751
+ label: item.f_residential_area,
752
+ value: item.f_residential_area
753
+ }))
754
+ })
755
+ },
756
+ getbuilds(f_residential_area) {
757
+ //tag)
758
+ this.buildOptions = []
759
+ this.unitOptions = []
760
+ this.$refs.paged.$refs.cri.model.f_building = ''
761
+ this.$refs.paged.$refs.cri.model.f_unit = ''
762
+ if (!f_residential_area) {
763
+ return
764
+ }
765
+ let criteria = {
766
+ items: 'f_building',
767
+ tablename: 't_check_plan_item',
768
+ condition: `f_checker_idhp = '${Vue.user.id}' and f_building IS NOT NULL AND f_building != '' AND (f_state <> '已检' or (f_state = '已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检'))) AND f_residential_area = '${f_residential_area}'`,
769
+ groupitem: 'f_building'
770
+ }
771
+ let http = new HttpResetClass()
772
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_GroupBy`, {data:criteria}, {resolveMsg: null, rejectMsg: null}).then((res) => {
773
+ //tag
774
+ res.data.forEach(item => this.buildOptions.push({label: item.f_building, value: item.f_building}))
775
+ })
776
+ },
777
+ getUnits(f_building) {
778
+ f_building = f_building[0]
779
+ //tag)
780
+ this.unitOptions = []
781
+ this.$refs.paged.$refs.cri.model.f_unit = ''
782
+ if (!f_building) {
783
+ return
784
+ }
785
+ let criteria = {
786
+ items: 'f_unit',
787
+ tablename: 't_check_plan_item',
788
+ condition: `f_checker_idhp = '${Vue.user.id}' and f_unit IS NOT NULL AND f_unit != '' AND (f_state <> '已检' or (f_state = '已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检'))) AND f_residential_area = '${this.$refs.paged.$refs.cri.model.f_residential_area}' AND f_building = '${f_building}'`,
789
+ groupitem: 'f_unit'
790
+ }
791
+ let http = new HttpResetClass()
792
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_GroupBy`, {data:criteria}, {resolveMsg: null, rejectMsg: null}).then((res) => {
793
+ //tag
794
+ res.data.forEach(item => this.unitOptions.push({label: item.f_unit, value: item.f_unit}))
795
+ })
796
+ },
797
+ getfloors(f_unit) {
798
+ f_unit = f_unit[0]
799
+ //tag)
800
+ this.floors = []
801
+ this.$refs.paged.$refs.cri.model.floor = ''
802
+ if (!f_unit) {
803
+ return
804
+ }
805
+ let criteria = {
806
+ items: 'f_floor',
807
+ tablename: 't_check_plan_item',
808
+ condition: `f_checker_idhp = '${Vue.user.id}' and f_floor IS NOT NULL AND f_floor != '' AND (f_state <> '已检' or (f_state = '已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检'))) AND f_residential_area = '${this.$refs.paged.$refs.cri.model.f_residential_area}' AND f_building = '${this.$refs.paged.$refs.cri.model.f_building}' AND f_unit = '${f_unit}'`,
809
+ groupitem: 'f_floor'
810
+ }
811
+ let http = new HttpResetClass()
812
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_GroupBy`, {data:criteria}, {resolveMsg: null, rejectMsg: null}).then((res) => {
813
+ //tag
814
+ res.data.forEach(item => this.floors.push({label: item.f_floor, value: item.f_floor}))
815
+ })
816
+ },
817
+ getPlanCount() {
818
+ this.upcomingCount = 0
819
+ this.tempSaveCount = 0
820
+ this.doneCount = 0
821
+ this.allPlanCount = 0
822
+ let criteria = {
823
+ items: 'count(id) count',
824
+ tablename: 't_check_plan_item',
825
+ condition: `f_state = '未检'`,
826
+ groupitem: 'f_state'
827
+ }
828
+ let result = HostApp._executeTask({
829
+ 'type': 'sql',
830
+ 'data': {'alias': 'safe_singleTable_GroupBy', 'criteria': criteria}
831
+ })
832
+ if (result.code && result.code == 200) {
833
+ if (result.data.rows[0] && !isNaN(result.data.rows[0].count)) {
834
+ this.upcomingCount = result.data.rows[0].count
835
+ }
836
+ }
837
+ criteria = {
838
+ items: 'count(id) count',
839
+ tablename: 't_check_plan_item',
840
+ condition: `(f_complete = '' or f_complete = null or f_complete = '未完成') AND f_state = '已检'`,
841
+ groupitem: 'f_state'
842
+ }
843
+ result = HostApp._executeTask({
844
+ 'type': 'sql',
845
+ 'data': {'alias': 'safe_singleTable_GroupBy', 'criteria': criteria}
846
+ })
847
+ if (result.code && result.code == 200) {
848
+ if (result.data.rows[0] && !isNaN(result.data.rows[0].count)) {
849
+ this.tempSaveCount = result.data.rows[0].count
850
+ }
851
+ }
852
+ criteria = {
853
+ items: 'count(id) count',
854
+ tablename: 't_check_plan_item',
855
+ condition: `f_complete = '已完成' AND f_state = '已检'`,
856
+ groupitem: 'f_state'
857
+ }
858
+ result = HostApp._executeTask({
859
+ 'type': 'sql',
860
+ 'data': {'alias': 'safe_singleTable_GroupBy', 'criteria': criteria}
861
+ })
862
+ if (result.code && result.code == 200) {
863
+ if (result.data.rows[0] && !isNaN(result.data.rows[0].count)) {
864
+ this.doneCount = result.data.rows[0].count
865
+ }
866
+ }
867
+ this.allPlanCount = this.upcomingCount + this.tempSaveCount + this.doneCount
868
+ },
869
+ getAllPlanName() {
870
+ this.planNameOptions = []
871
+ this.$refs.paged.$refs.cri.model.f_plan_name = ''
872
+ let criteria = {
873
+ items: 'f_plan_name',
874
+ tablename: 't_check_plan',
875
+ condition: `f_plan_name IS NOT NULL AND f_plan_name != ''`,
876
+ groupitem: 'f_plan_name'
877
+ }
878
+ let http = new HttpResetClass()
879
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_GroupBy`, {data:criteria}, {resolveMsg: null, rejectMsg: null}).then((res) => {
880
+ //tag
881
+ res.data.forEach(item => this.planNameOptions.push({
882
+ label: item.f_plan_name,
883
+ value: item.f_plan_name
884
+ }))
885
+ })
886
+
887
+ },
888
+ setPlanParam(detailsType, event) {
889
+ if (event.srcElement.checked) {
890
+ this.planparam.push(detailsType)
891
+ //tag
892
+ } else {
893
+ if (this.planparam.length > 0) {
894
+ let planid = this.planparam.findIndex((value) => {
895
+ return value === detailsType
896
+ })
897
+ this.planparam.splice(planid, 1)
898
+ //tag
899
+
900
+ }
901
+
902
+ }
903
+ }
904
+ }
905
+ }
906
+ </script>