safecheck-client 4.0.0-6 → 4.0.0-60

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 (313) hide show
  1. package/package.json +1 -1
  2. package/src/App.vue +31 -31
  3. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  4. package/src/components/DefectDealMain/DefectListNew.vue +642 -642
  5. package/src/components/Util/ImgSelfSafePlus.vue +13 -3
  6. package/src/components/android/AddPlanItem.vue +447 -447
  7. package/src/components/android/AddPlanItemYy.vue +451 -451
  8. package/src/components/android/AddSpecialPlanItem.vue +426 -426
  9. package/src/components/android/AndroidDefectDeal.vue +1 -1
  10. package/src/components/android/AndroidDefectDealBeforeSafe.vue +1 -1
  11. package/src/components/android/AndroidDefectDetails.vue +725 -0
  12. package/src/components/android/BlackUserOnLine.vue +2 -2
  13. package/src/components/android/CurrentCreateYy.vue +1051 -1051
  14. package/src/components/android/Devices.vue +327 -327
  15. package/src/components/android/Devicesm.vue +327 -327
  16. package/src/components/android/Insurance/PhoneInsurancePurchase.vue +1 -1
  17. package/src/components/android/PaperFeedback.vue +14 -12
  18. package/src/components/android/PaperFeedbackTemp.vue +2 -2
  19. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  20. package/src/components/android/PhoneRecordInfo.vue +113 -113
  21. package/src/components/android/PhoneSellInfo.vue +113 -113
  22. package/src/components/android/PhoneUpDetail.vue +1040 -1040
  23. package/src/components/android/PhoneUpUserinfo.vue +20 -0
  24. package/src/components/android/QRCode/QRCodeBinding.vue +300 -300
  25. package/src/components/android/QRCode/QRCodePage.vue +212 -212
  26. package/src/components/android/RelieveRestrict.vue +1 -1
  27. package/src/components/android/Restriction.vue +1 -1
  28. package/src/components/android/SafePlanItem.vue +509 -509
  29. package/src/components/android/SafecheckDevices.vue +47 -2
  30. package/src/components/android/SafecheckOrderV.vue +2 -2
  31. package/src/components/android/SealBind.vue +392 -0
  32. package/src/components/android/SealManage.vue +250 -0
  33. package/src/components/android/UserinfoSelect.vue +714 -714
  34. package/src/components/android/examples/SafeListExamples.vue +296 -296
  35. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  36. package/src/components/android/recheck/Recheck.vue +402 -402
  37. package/src/components/android/userinfo/SafecheckUserInfo.vue +776 -776
  38. package/src/components/checkplan/checkmsg.vue +459 -459
  39. package/src/components/defect/DefectList.vue +507 -507
  40. package/src/components/defect/DefectListWeixiu.vue +484 -484
  41. package/src/components/filialCircle/CircleList.vue +139 -139
  42. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  43. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  44. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  45. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  46. package/src/components/inspections/inspectionFeedback.vue +2 -2
  47. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  48. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  49. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  50. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  51. package/src/components/paper/PaperList.vue +34 -6
  52. package/src/components/pc/AddToCheckBook.vue +100 -23
  53. package/src/components/pc/AnnouncementPC.vue +524 -524
  54. package/src/components/pc/CheckBook.vue +2 -0
  55. package/src/components/pc/CheckBookDetails.vue +6 -39
  56. package/src/components/pc/CheckBookEntry.vue +6 -7
  57. package/src/components/pc/CheckBookList.vue +60 -71
  58. package/src/components/pc/CheckBookSearchArea.vue +20 -24
  59. package/src/components/pc/CheckBookSearchUser.vue +139 -84
  60. package/src/components/pc/CheckBookSearchUserList.vue +1 -2
  61. package/src/components/pc/CheckBookUser.vue +276 -44
  62. package/src/components/pc/DefectList.vue +742 -742
  63. package/src/components/pc/DeviceChange.vue +1068 -1068
  64. package/src/components/pc/NewCheckpaper.vue +14 -8
  65. package/src/components/pc/NewCheckpaperTemp.vue +5 -5
  66. package/src/components/pc/PaperDefectMain.vue +1 -0
  67. package/src/components/pc/SafeVisitInfo.vue +261 -261
  68. package/src/components/planmanage/PlanManage.vue +886 -888
  69. package/src/components/planmanage/checkPlanList.vue +368 -368
  70. package/src/components/querycheckpaper/CheckPaperList.vue +130 -130
  71. package/src/components/report/HiddenSituation.vue +165 -165
  72. package/src/components/rongcheng/AspPaperFeedback.vue +1 -1
  73. package/src/components/rongcheng/AspiratedOrderV.vue +2377 -2377
  74. package/src/components/rongcheng/CurrentCreateOnline.vue +906 -906
  75. package/src/components/rongcheng/DefectList.vue +560 -560
  76. package/src/components/rongcheng/PaperFeedback.vue +2 -2
  77. package/src/components/rongcheng/SafecheckOrderVCli.vue +2641 -2641
  78. package/src/components/safecheck/queryManage/CheckBookAll.vue +2 -2
  79. package/src/components/safecheckNew/android/AddPlanItem.vue +419 -419
  80. package/src/components/safecheckNew/android/CurrentCreate.vue +1050 -1050
  81. package/src/components/safecheckNew/android/Recheck.vue +379 -379
  82. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  83. package/src/components/shaoguan/DefectList.vue +473 -473
  84. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  85. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  86. package/src/components/userfile/SecurityAudit.vue +243 -243
  87. package/src/components/userfileNew/UserInfoAuditNew.vue +274 -274
  88. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +476 -476
  89. package/src/filiale/ancheng/android/PaperFeedback.vue +2 -2
  90. package/src/filiale/ancheng/android/SafecheckOrderV.vue +2703 -2703
  91. package/src/filiale/ancheng/android/SafecheckUserInfo.vue +737 -737
  92. package/src/filiale/ancheng/pc/checkScreen.vue +923 -923
  93. package/src/filiale/ankangyihua/android/AddPlanItem.vue +446 -446
  94. package/src/filiale/ankangyihua/android/AndroidDefectDeal.vue +1 -1
  95. package/src/filiale/ankangyihua/android/SafecheckOrderV.vue +2908 -2908
  96. package/src/filiale/ankangyihua/pc/DefectListWeixiu.vue +491 -491
  97. package/src/filiale/baiyin/android/AndroidDefectDeal.vue +1 -1
  98. package/src/filiale/baiyin/android/SafecheckOrderV.vue +2785 -2785
  99. package/src/filiale/baiyin/pc/DefectListNew.vue +597 -597
  100. package/src/filiale/bayan/android/Edit.vue +132 -132
  101. package/src/filiale/bayan/android/PaperFeedback.vue +2 -2
  102. package/src/filiale/bayan/pc/DefectListNew.vue +597 -597
  103. package/src/filiale/bayan/pc/DeviceChange.vue +1838 -1838
  104. package/src/filiale/bayan/pc/HiddenSituation.vue +295 -295
  105. package/src/filiale/dexin/android/CasualSave.vue +1050 -1050
  106. package/src/filiale/dexin/android/SafecheckOrderV.vue +2950 -2950
  107. package/src/filiale/fugou/android/AddPlanItem.vue +413 -413
  108. package/src/filiale/fugou/android/SafecheckOrderV.vue +2796 -2796
  109. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +830 -830
  110. package/src/filiale/fugou/pc/PaperDefectMain.vue +1 -1
  111. package/src/filiale/fugu/android/SafecheckOrderV.vue +2484 -2484
  112. package/src/filiale/fugu/pc/NewCheckpaper.vue +1287 -1287
  113. package/src/filiale/ganquan/android/AddPlanItem.vue +444 -444
  114. package/src/filiale/ganquan/android/SafecheckOrderV.vue +2485 -2485
  115. package/src/filiale/ganquan/pc/NewCheckpaper.vue +1354 -1354
  116. package/src/filiale/guangxi/pc/DefectListNew.vue +518 -518
  117. package/src/filiale/hanzhong/android/PaperFeedback.vue +2 -2
  118. package/src/filiale/hanzhong/android/SafecheckOrderV.vue +2683 -2683
  119. package/src/filiale/hanzhong/android/SafecheckUserInfo.vue +786 -786
  120. package/src/filiale/huaran/android/SafecheckOrderV.vue +2803 -2803
  121. package/src/filiale/huatong/android/PaperFeedback.vue +2 -2
  122. package/src/filiale/huatong/android/SafecheckOrderV.vue +2426 -2426
  123. package/src/filiale/huatong/android/SafecheckUserInfo.vue +749 -749
  124. package/src/filiale/huayin/android/PaperFeedback.vue +2 -2
  125. package/src/filiale/huayin/android/SafecheckOrderV.vue +1 -1
  126. package/src/filiale/huayin/pc/NewCheckpaper.vue +1307 -1307
  127. package/src/filiale/jiaocheng/android/AddPlanItem.vue +435 -435
  128. package/src/filiale/jiaocheng/android/PaperFeedback.vue +2 -2
  129. package/src/filiale/jiaocheng/android/SafecheckUserInfo.vue +737 -737
  130. package/src/filiale/jiaocheng/pc/DefectListNew.vue +576 -576
  131. package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -447
  132. package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2807 -2807
  133. package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -784
  134. package/src/filiale/jinbin/pc/DefectListWeixiu.vue +478 -478
  135. package/src/filiale/jingyang/android/AddPlanItem.vue +458 -458
  136. package/src/filiale/jingyang/android/PaperFeedback.vue +2 -2
  137. package/src/filiale/jingyang/android/SafecheckOrderV.vue +2734 -2734
  138. package/src/filiale/jingyang/android/SafecheckUserInfo.vue +781 -781
  139. package/src/filiale/jinhong/android/PhoneInsurancePurchaseDetail.vue +171 -100
  140. package/src/filiale/jinhong/android/PhoneInsuranceRecordList.vue +346 -0
  141. package/src/filiale/jinhong/android.js +1 -0
  142. package/src/filiale/kelai/android/AddPlanItem.vue +488 -488
  143. package/src/filiale/kelai/android/AndroidDefectDeal.vue +2 -2
  144. package/src/filiale/kelai/android/PaperFeedback.vue +2 -2
  145. package/src/filiale/kelai/android/RelieveRestrict.vue +1 -1
  146. package/src/filiale/kelai/android/SafecheckOrderV.vue +1 -1
  147. package/src/filiale/kelai/android/SafecheckUserInfo.vue +774 -774
  148. package/src/filiale/kelai/android/SafecheckUserInfo1.vue +618 -618
  149. package/src/filiale/kelai/pc/DefectListNew.vue +688 -688
  150. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasList.vue +518 -518
  151. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasPaper.vue +1 -1
  152. package/src/filiale/kelai/pc/NewCheckpaper.vue +1454 -1454
  153. package/src/filiale/liaoyuan/android/AddPlanItem.vue +412 -412
  154. package/src/filiale/liaoyuan/android/CurrentCreate.vue +1066 -1066
  155. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2388 -2388
  156. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +557 -557
  157. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +489 -489
  158. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  159. package/src/filiale/lixian/android/SafecheckOrderV.vue +2404 -2404
  160. package/src/filiale/lixian/android/SafecheckUserInfo.vue +578 -578
  161. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  162. package/src/filiale/meihekou/android/AreaPlan.vue +569 -0
  163. package/src/filiale/meihekou/android/CheckPlanList.vue +198 -0
  164. package/src/filiale/meihekou/android/CheckPlanListArea.vue +190 -0
  165. package/src/filiale/meihekou/android/CurrentCreate.vue +1087 -0
  166. package/src/filiale/meihekou/android/MeterReading.vue +106 -0
  167. package/src/filiale/meihekou/android/PhoneUpUserinfo.vue +1276 -0
  168. package/src/filiale/meihekou/android/SafecheckOrderV.vue +2398 -0
  169. package/src/filiale/meihekou/android/SafecheckUserInfo.vue +787 -0
  170. package/src/filiale/meihekou/android.js +19 -0
  171. package/src/filiale/meihekou/pc.js +12 -0
  172. package/src/filiale/minsheng/android/SafecheckUserInfo.vue +754 -754
  173. package/src/filiale/minsheng/pc/DefectListNew.vue +535 -535
  174. package/src/filiale/pingxiang/android/PaperFeedback.vue +2 -2
  175. package/src/filiale/pingxiang/android/SafecheckOrderV.vue +2424 -2424
  176. package/src/filiale/pingxiang/android/SafecheckUserInfo.vue +600 -600
  177. package/src/filiale/pingxiang/pc/DefectListNew.vue +519 -519
  178. package/src/filiale/pingxiang/pc/NewCheckpaper.vue +1294 -1294
  179. package/src/filiale/qianneng/android/AddPlanItem.vue +482 -482
  180. package/src/filiale/qianneng/android/PaperFeedback.vue +2 -2
  181. package/src/filiale/qianneng/android/SafecheckOrderV.vue +2785 -2785
  182. package/src/filiale/qianneng/android/SafecheckUserInfo.vue +775 -775
  183. package/src/filiale/qianneng/pc/DefectListNew.vue +576 -576
  184. package/src/filiale/qianneng/pc/NewCheckpaper.vue +1546 -1546
  185. package/src/filiale/qingjian/android/SafecheckOrderV.vue +2844 -2844
  186. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +800 -800
  187. package/src/filiale/qingtongxia/android/AddPlanItem.vue +450 -450
  188. package/src/filiale/qingtongxia/android/SafecheckOrderV.vue +2726 -2726
  189. package/src/filiale/qingtongxia/android/SafecheckUserInfo.vue +782 -782
  190. package/src/filiale/qingtongxia/pc/DefectListNew.vue +594 -594
  191. package/src/filiale/rizhao/android/AddPlanItem.vue +446 -446
  192. package/src/filiale/rizhao/android/PaperFeedback.vue +2 -2
  193. package/src/filiale/rizhao/android/SafecheckOrderV.vue +2430 -2430
  194. package/src/filiale/rizhao/android/SafecheckUserInfo.vue +640 -640
  195. package/src/filiale/rizhao/pc/DefectList.vue +489 -489
  196. package/src/filiale/rongchuang/android/PaperFeedback.vue +2 -2
  197. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +2696 -2696
  198. package/src/filiale/rongchuang/android/checkpapermsg.vue +209 -209
  199. package/src/filiale/ruihua/android/SafecheckOrderV.vue +2747 -2747
  200. package/src/filiale/ruihua/android/SafecheckUserInfo.vue +804 -804
  201. package/src/filiale/shanggao/android/PaperFeedback.vue +2 -2
  202. package/src/filiale/shanggao/android/SafecheckOrderV.vue +2426 -2426
  203. package/src/filiale/shanxian/android/AndroidDefectDeal.vue +1 -1
  204. package/src/filiale/shanxian/android/PaperFeedback.vue +2 -2
  205. package/src/filiale/shanxian/android/SafecheckUserInfo.vue +749 -749
  206. package/src/filiale/shanxian/pc/HiddenSituation.vue +121 -121
  207. package/src/filiale/shanxian/pc/NewCheckpaper.vue +1526 -1526
  208. package/src/filiale/shexian/android/AddPlanItem.vue +444 -444
  209. package/src/filiale/shexian/android/AndroidDefectDeal.vue +1 -1
  210. package/src/filiale/shexian/android/PaperFeedback.vue +2 -2
  211. package/src/filiale/shexian/android/SafecheckOrderV.vue +2879 -2879
  212. package/src/filiale/shexian/pc/DefectListNew.vue +593 -593
  213. package/src/filiale/shexian/pc/NewCheckpaper.vue +1469 -1469
  214. package/src/filiale/shimen/android/PaperFeedback.vue +2 -2
  215. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  216. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  217. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  218. package/src/filiale/siyang/android/AddPlanItem.vue +450 -450
  219. package/src/filiale/siyang/android/CurrentCreate.vue +1051 -1051
  220. package/src/filiale/siyang/android/PhoneRecordInfo.vue +214 -214
  221. package/src/filiale/siyang/android/SafecheckOrderV.vue +2796 -2796
  222. package/src/filiale/siyang/android/SafecheckUserInfo.vue +789 -789
  223. package/src/filiale/siyang/pc/HiddenSituation.vue +167 -167
  224. package/src/filiale/tianke/android/AddPlanItem.vue +455 -455
  225. package/src/filiale/tianke/android/SafecheckOrderV.vue +2431 -2431
  226. package/src/filiale/tianke/android/SafecheckUserInfo.vue +744 -744
  227. package/src/filiale/tongchuan/android/AddPlanItem.vue +483 -483
  228. package/src/filiale/tongchuan/android/AndroidDefectDeal.vue +1 -1
  229. package/src/filiale/tongchuan/android/PaperFeedback.vue +2 -2
  230. package/src/filiale/tongchuan/android/PhoneRecordInfo.vue +191 -191
  231. package/src/filiale/tongchuan/android/PhoneSellInfo.vue +113 -113
  232. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +720 -720
  233. package/src/filiale/tongchuan/pc/CheckBookDetails.vue +209 -209
  234. package/src/filiale/tongchuan/pc/DefectListWeixiu.vue +484 -484
  235. package/src/filiale/tongchuan/pc/HiddenSituation.vue +166 -166
  236. package/src/filiale/weinan/android/AddPlanItem.vue +438 -438
  237. package/src/filiale/weinan/android/CurrentCreate.vue +1171 -1171
  238. package/src/filiale/weinan/android/CurrentCreateOnline.vue +911 -911
  239. package/src/filiale/weinan/android/SafePlanItem.vue +440 -440
  240. package/src/filiale/weinan/android/SafecheckOrderV.vue +3 -3
  241. package/src/filiale/weinan/android/SafecheckUserInfo.vue +778 -778
  242. package/src/filiale/weinan/pc/DefectListNew.vue +617 -617
  243. package/src/filiale/weinan/pc/DeviceChange.vue +1088 -1088
  244. package/src/filiale/weinan/pc/HiddenSituation.vue +167 -167
  245. package/src/filiale/weinan/pc/checkScreen.vue +1094 -1094
  246. package/src/filiale/weinanct/android/SafecheckOrderV.vue +2730 -2730
  247. package/src/filiale/weinanct/pc/NewCheckpaper.vue +1315 -1315
  248. package/src/filiale/wensu/android/AddPlanItem.vue +495 -495
  249. package/src/filiale/wensu/android/AndroidDefectDeal.vue +464 -464
  250. package/src/filiale/wensu/android/PaperFeedback.vue +1358 -1358
  251. package/src/filiale/wensu/android/SafecheckOrderV.vue +2430 -2430
  252. package/src/filiale/wensu/android/SafecheckUserInfo.vue +627 -627
  253. package/src/filiale/wensu/pc/DefectListNew.vue +735 -735
  254. package/src/filiale/wenxi/android/AddPlanItem.vue +431 -431
  255. package/src/filiale/wenxi/android/PaperFeedback.vue +3 -3
  256. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2671 -2671
  257. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +673 -673
  258. package/src/filiale/wenxi/pc/DefectList.vue +653 -653
  259. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1358 -1358
  260. package/src/filiale/wuan/android/PaperFeedback.vue +2 -2
  261. package/src/filiale/wuan/android/SafecheckOrderV.vue +2241 -2241
  262. package/src/filiale/wuan/android/SafecheckUserInfo.vue +596 -596
  263. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  264. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  265. package/src/filiale/wuhai/android/PaperFeedback.vue +2 -2
  266. package/src/filiale/wuhai/android/SafecheckOrderV.vue +2456 -2456
  267. package/src/filiale/wuhai/android/SafecheckUserInfo.vue +573 -573
  268. package/src/filiale/wuhai/pc/NewCheckpaper.vue +1281 -1281
  269. package/src/filiale/xiangyuanzhongai/android/SafecheckDevices.vue +20 -1
  270. package/src/filiale/xiangyuanzhongai/android/SafecheckOrderV.vue +2282 -0
  271. package/src/filiale/xiangyuanzhongai/android/SafecheckUserInfo.vue +786 -0
  272. package/src/filiale/xiangyuanzhongai/android.js +2 -0
  273. package/src/filiale/xiangyuanzhongai/pc/DefectListNew.vue +663 -0
  274. package/src/filiale/xiangyuanzhongai/pc/PaperList.vue +795 -0
  275. package/src/filiale/xiangyuanzhongai/pc.js +2 -0
  276. package/src/filiale/xinkang/android/SafecheckOrderV.vue +2732 -2732
  277. package/src/filiale/xinkang/android/SafecheckUserInfo.vue +747 -747
  278. package/src/filiale/xinkang/pc/DefectListWeixiu.vue +475 -475
  279. package/src/filiale/xinkang/pc/NewCheckpaper.vue +1498 -1498
  280. package/src/filiale/yangchunboneng/android/AddPlanItem.vue +496 -496
  281. package/src/filiale/yangchunboneng/android/PaperFeedback.vue +2 -2
  282. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2865 -2865
  283. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +887 -887
  284. package/src/filiale/yangchunboneng/pc/DefectListNew.vue +576 -576
  285. package/src/filiale/yongzhou/android/PaperFeedback.vue +2 -2
  286. package/src/filiale/yongzhou/android/SafecheckOrderV.vue +2774 -2774
  287. package/src/filiale/yongzhou/android/SafecheckUserInfo.vue +776 -776
  288. package/src/filiale/yuansheng/android/AndroidDefectDeal.vue +1 -1
  289. package/src/filiale/yuansheng/android/PaperFeedback.vue +2 -2
  290. package/src/filiale/yuansheng/android/SafecheckOrderV.vue +2758 -2758
  291. package/src/filiale/yuansheng/android/SafecheckUserInfo.vue +797 -797
  292. package/src/filiale/yuansheng/pc/DefectListNew.vue +524 -524
  293. package/src/filiale/yuansheng/pc/NewCheckpaper.vue +1371 -1371
  294. package/src/filiale/yuansheng/pc/checkmsg.vue +464 -464
  295. package/src/filiale/yunchengminsheng/android/DailyworkloadQuery.vue +491 -491
  296. package/src/filiale/yunchengminsheng/android/PhoneSellInfo.vue +113 -0
  297. package/src/filiale/yunchengminsheng/android/SafecheckOrderV.vue +2848 -2846
  298. package/src/filiale/yunchengminsheng/android/SafecheckUserInfo.vue +785 -785
  299. package/src/filiale/yunchengminsheng/android.js +15 -14
  300. package/src/filiale/yunchengminsheng/pc/NewCheckpaper.vue +16 -5
  301. package/src/filiale/zhongsheng/android/BuyRecords.vue +122 -122
  302. package/src/filiale/zhongsheng/android/PaperFeedback.vue +2 -2
  303. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2461 -2461
  304. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +690 -690
  305. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  306. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1322 -1322
  307. package/src/filiale/zhongyi/android/SafecheckOrderV.vue +2431 -2431
  308. package/src/filiale/zhongyi/pc/DefectListNew.vue +514 -514
  309. package/src/filiale/zhoukou/android/PaperFeedback.vue +2 -2
  310. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  311. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  312. package/src/main.js +32 -33
  313. package/src/safecheck-android.js +3 -0
@@ -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>