safecheck-client 4.0.1-65 → 4.0.1-67

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 (242) hide show
  1. package/.trae/.ignore +0 -0
  2. package/.vscode/settings.json +3 -0
  3. package/package.json +132 -132
  4. package/src/App.vue +31 -31
  5. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  6. package/src/components/DefectDealMain/DefectListNew.vue +642 -642
  7. package/src/components/NewDefectList/DefectListNew.vue +682 -682
  8. package/src/components/android/AddPlanItem.vue +447 -447
  9. package/src/components/android/AddPlanItemYy.vue +451 -451
  10. package/src/components/android/AddSpecialPlanItem.vue +426 -426
  11. package/src/components/android/AndroidDefectDeal.vue +667 -667
  12. package/src/components/android/CurrentCreateYy.vue +1051 -1051
  13. package/src/components/android/DailyworkloadQuery.vue +473 -473
  14. package/src/components/android/Devices.vue +327 -327
  15. package/src/components/android/Devicesm.vue +327 -327
  16. package/src/components/android/NewCheckpaperAndroid.vue +1343 -1343
  17. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  18. package/src/components/android/PhoneRecordInfo.vue +113 -113
  19. package/src/components/android/PhoneSellInfo.vue +113 -113
  20. package/src/components/android/PhoneUpDetail.vue +1040 -1040
  21. package/src/components/android/QRCode/QRCodeBinding.vue +300 -300
  22. package/src/components/android/QRCode/QRCodePage.vue +212 -212
  23. package/src/components/android/SafePlanItem.vue +509 -509
  24. package/src/components/android/examples/SafeListExamples.vue +296 -296
  25. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  26. package/src/components/android/recheck/Recheck.vue +402 -402
  27. package/src/components/android/userinfo/SafecheckUserInfo.vue +776 -776
  28. package/src/components/checkplan/checkmsg.vue +459 -459
  29. package/src/components/defect/DefectList.vue +507 -507
  30. package/src/components/defect/DefectListWeixiu.vue +484 -484
  31. package/src/components/filialCircle/CircleList.vue +139 -139
  32. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  33. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  34. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  35. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  36. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  37. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  38. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  39. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  40. package/src/components/map/PersonTrack.vue +226 -226
  41. package/src/components/map/SecurityCheckCoordinates.vue +361 -361
  42. package/src/components/paper/RegionalList.vue +220 -220
  43. package/src/components/pc/AnnouncementPC.vue +524 -524
  44. package/src/components/pc/DefectList.vue +742 -742
  45. package/src/components/pc/DefectMaterialLook.vue +98 -98
  46. package/src/components/pc/DeviceChange.vue +1068 -1068
  47. package/src/components/pc/PaperDefectMain.vue +905 -905
  48. package/src/components/pc/SafeVisitInfo.vue +261 -261
  49. package/src/components/report/HiddenSituation.vue +165 -165
  50. package/src/components/rongcheng/AspiratedOrderV.vue +2377 -2377
  51. package/src/components/rongcheng/CurrentCreateOnline.vue +906 -906
  52. package/src/components/rongcheng/DefectList.vue +560 -560
  53. package/src/components/rongcheng/SafecheckOrderVCli.vue +2641 -2641
  54. package/src/components/safecheckNew/android/AddPlanItem.vue +419 -419
  55. package/src/components/safecheckNew/android/CurrentCreate.vue +1050 -1050
  56. package/src/components/safecheckNew/android/Recheck.vue +379 -379
  57. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  58. package/src/components/shaoguan/DefectList.vue +473 -473
  59. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  60. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  61. package/src/components/userfile/SecurityAudit.vue +243 -243
  62. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +476 -476
  63. package/src/filiale/ancheng/android/SafecheckOrderV.vue +2703 -2703
  64. package/src/filiale/ancheng/android/SafecheckUserInfo.vue +737 -737
  65. package/src/filiale/ancheng/pc/checkScreen.vue +923 -923
  66. package/src/filiale/ankangyihua/android/AddPlanItem.vue +446 -446
  67. package/src/filiale/ankangyihua/android/SafecheckOrderV.vue +2908 -2908
  68. package/src/filiale/ankangyihua/pc/DefectListWeixiu.vue +491 -491
  69. package/src/filiale/baiyin/android/SafecheckOrderV.vue +2785 -2785
  70. package/src/filiale/baiyin/pc/DefectListNew.vue +597 -597
  71. package/src/filiale/bayan/android/Edit.vue +132 -132
  72. package/src/filiale/bayan/pc/DefectListNew.vue +597 -597
  73. package/src/filiale/bayan/pc/DeviceChange.vue +1838 -1838
  74. package/src/filiale/bayan/pc/HiddenSituation.vue +295 -295
  75. package/src/filiale/dexin/android/CasualSave.vue +1050 -1050
  76. package/src/filiale/dexin/android/SafecheckOrderV.vue +2950 -2950
  77. package/src/filiale/fugou/android/AddPlanItem.vue +413 -413
  78. package/src/filiale/fugou/android/SafecheckOrderV.vue +2796 -2796
  79. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +830 -830
  80. package/src/filiale/fugu/android/SafecheckOrderV.vue +2484 -2484
  81. package/src/filiale/fugu/pc/NewCheckpaper.vue +1287 -1287
  82. package/src/filiale/ganquan/android/AddPlanItem.vue +444 -444
  83. package/src/filiale/ganquan/android/SafecheckOrderV.vue +2485 -2485
  84. package/src/filiale/ganquan/pc/NewCheckpaper.vue +1354 -1354
  85. package/src/filiale/guangxi/pc/DefectListNew.vue +518 -518
  86. package/src/filiale/hanzhong/android/SafecheckOrderV.vue +2683 -2683
  87. package/src/filiale/hanzhong/android/SafecheckUserInfo.vue +786 -786
  88. package/src/filiale/huaran/android/SafecheckOrderV.vue +2803 -2803
  89. package/src/filiale/huatong/android/SafecheckOrderV.vue +2426 -2426
  90. package/src/filiale/huatong/android/SafecheckUserInfo.vue +749 -749
  91. package/src/filiale/huayin/pc/NewCheckpaper.vue +1307 -1307
  92. package/src/filiale/jiaocheng/android/AddPlanItem.vue +435 -435
  93. package/src/filiale/jiaocheng/android/SafecheckUserInfo.vue +737 -737
  94. package/src/filiale/jiaocheng/pc/DefectListNew.vue +576 -576
  95. package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -447
  96. package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2807 -2807
  97. package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -784
  98. package/src/filiale/jinbin/pc/DefectListWeixiu.vue +478 -478
  99. package/src/filiale/jingyang/android/AddPlanItem.vue +458 -458
  100. package/src/filiale/jingyang/android/SafecheckOrderV.vue +2734 -2734
  101. package/src/filiale/jingyang/android/SafecheckUserInfo.vue +781 -781
  102. package/src/filiale/kelai/android/AddPlanItem.vue +488 -488
  103. package/src/filiale/kelai/android/SafecheckUserInfo.vue +774 -774
  104. package/src/filiale/kelai/android/SafecheckUserInfo1.vue +618 -618
  105. package/src/filiale/kelai/pc/DefectListNew.vue +688 -688
  106. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasList.vue +518 -518
  107. package/src/filiale/kelai/pc/NewCheckpaper.vue +1454 -1454
  108. package/src/filiale/liaoyuan/android/AddPlanItem.vue +412 -412
  109. package/src/filiale/liaoyuan/android/CurrentCreate.vue +1066 -1066
  110. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2388 -2388
  111. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +557 -557
  112. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +489 -489
  113. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  114. package/src/filiale/lixian/android/SafecheckOrderV.vue +2404 -2404
  115. package/src/filiale/lixian/android/SafecheckUserInfo.vue +578 -578
  116. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  117. package/src/filiale/meihekou/android/AreaPlan.vue +577 -577
  118. package/src/filiale/meihekou/android/MeterReading.vue +110 -110
  119. package/src/filiale/meihekou/android/PhoneUpUserinfo.vue +1307 -1307
  120. package/src/filiale/meihekou/android/SafecheckUserInfo.vue +785 -785
  121. package/src/filiale/meihekou/pc/NewCheckpaperTemp.vue +1288 -1288
  122. package/src/filiale/minsheng/android/SafecheckUserInfo.vue +754 -754
  123. package/src/filiale/minsheng/pc/DefectListNew.vue +535 -535
  124. package/src/filiale/pingxiang/android/SafecheckOrderV.vue +2424 -2424
  125. package/src/filiale/pingxiang/android/SafecheckUserInfo.vue +600 -600
  126. package/src/filiale/pingxiang/pc/DefectListNew.vue +519 -519
  127. package/src/filiale/pingxiang/pc/NewCheckpaper.vue +1294 -1294
  128. package/src/filiale/qianneng/android/AddPlanItem.vue +482 -482
  129. package/src/filiale/qianneng/android/SafecheckOrderV.vue +2785 -2785
  130. package/src/filiale/qianneng/android/SafecheckUserInfo.vue +775 -775
  131. package/src/filiale/qianneng/pc/DefectListNew.vue +576 -576
  132. package/src/filiale/qianneng/pc/NewCheckpaper.vue +1546 -1546
  133. package/src/filiale/qingjian/android/SafecheckOrderV.vue +2844 -2844
  134. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +800 -800
  135. package/src/filiale/qingjian/pc/NewCheckpaper.vue +1871 -1871
  136. package/src/filiale/qingjian/pc.js +15 -15
  137. package/src/filiale/qingtongxia/android/AddPlanItem.vue +450 -450
  138. package/src/filiale/qingtongxia/android/SafecheckOrderV.vue +2726 -2726
  139. package/src/filiale/qingtongxia/android/SafecheckUserInfo.vue +782 -782
  140. package/src/filiale/qingtongxia/pc/DefectListNew.vue +594 -594
  141. package/src/filiale/rizhao/android/AddPlanItem.vue +446 -446
  142. package/src/filiale/rizhao/android/SafecheckOrderV.vue +2430 -2430
  143. package/src/filiale/rizhao/android/SafecheckUserInfo.vue +640 -640
  144. package/src/filiale/rizhao/pc/DefectList.vue +489 -489
  145. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +2696 -2696
  146. package/src/filiale/rongchuang/android/checkpapermsg.vue +209 -209
  147. package/src/filiale/ruihua/android/SafecheckOrderV.vue +2747 -2747
  148. package/src/filiale/ruihua/android/SafecheckUserInfo.vue +804 -804
  149. package/src/filiale/shanggao/android/SafecheckOrderV.vue +2426 -2426
  150. package/src/filiale/shanxian/android/SafecheckUserInfo.vue +749 -749
  151. package/src/filiale/shanxian/pc/HiddenSituation.vue +121 -121
  152. package/src/filiale/shanxian/pc/NewCheckpaper.vue +1526 -1526
  153. package/src/filiale/shexian/android/AddPlanItem.vue +444 -444
  154. package/src/filiale/shexian/android/SafecheckOrderV.vue +2879 -2879
  155. package/src/filiale/shexian/pc/DefectListNew.vue +593 -593
  156. package/src/filiale/shexian/pc/NewCheckpaper.vue +1469 -1469
  157. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  158. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  159. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  160. package/src/filiale/siyang/android/AddPlanItem.vue +450 -450
  161. package/src/filiale/siyang/android/CurrentCreate.vue +1051 -1051
  162. package/src/filiale/siyang/android/PhoneRecordInfo.vue +214 -214
  163. package/src/filiale/siyang/android/SafecheckOrderV.vue +2796 -2796
  164. package/src/filiale/siyang/android/SafecheckUserInfo.vue +789 -789
  165. package/src/filiale/siyang/pc/HiddenSituation.vue +167 -167
  166. package/src/filiale/taiyuan/pc/NewCheckpaper.vue +1976 -1976
  167. package/src/filiale/taiyuan/pc/PlanManage.vue +891 -891
  168. package/src/filiale/taiyuan/pc/checkUserList.vue +798 -798
  169. package/src/filiale/taiyuan/pc.js +15 -15
  170. package/src/filiale/tianke/android/AddPlanItem.vue +455 -455
  171. package/src/filiale/tianke/android/SafecheckOrderV.vue +2431 -2431
  172. package/src/filiale/tianke/android/SafecheckUserInfo.vue +744 -744
  173. package/src/filiale/tongchuan/android/AddPlanItem.vue +483 -483
  174. package/src/filiale/tongchuan/android/PhoneRecordInfo.vue +191 -191
  175. package/src/filiale/tongchuan/android/PhoneSellInfo.vue +113 -113
  176. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +720 -720
  177. package/src/filiale/tongchuan/pc/CheckBookDetails.vue +209 -209
  178. package/src/filiale/tongchuan/pc/DefectListWeixiu.vue +484 -484
  179. package/src/filiale/tongchuan/pc/HiddenSituation.vue +166 -166
  180. package/src/filiale/weinan/android/AddPlanItem.vue +438 -438
  181. package/src/filiale/weinan/android/CurrentCreate.vue +1171 -1171
  182. package/src/filiale/weinan/android/CurrentCreateOnline.vue +911 -911
  183. package/src/filiale/weinan/android/SafePlanItem.vue +440 -440
  184. package/src/filiale/weinan/android/SafecheckUserInfo.vue +778 -778
  185. package/src/filiale/weinan/pc/DefectListNew.vue +617 -617
  186. package/src/filiale/weinan/pc/DeviceChange.vue +1088 -1088
  187. package/src/filiale/weinan/pc/HiddenSituation.vue +167 -167
  188. package/src/filiale/weinan/pc/checkScreen.vue +1094 -1094
  189. package/src/filiale/weinanct/android/SafecheckOrderV.vue +2730 -2730
  190. package/src/filiale/weinanct/pc/NewCheckpaper.vue +1315 -1315
  191. package/src/filiale/wensu/android/AddPlanItem.vue +495 -495
  192. package/src/filiale/wensu/android/AndroidDefectDeal.vue +464 -464
  193. package/src/filiale/wensu/android/PaperFeedback.vue +1358 -1358
  194. package/src/filiale/wensu/android/SafecheckOrderV.vue +2430 -2430
  195. package/src/filiale/wensu/android/SafecheckUserInfo.vue +627 -627
  196. package/src/filiale/wensu/pc/DefectListNew.vue +735 -735
  197. package/src/filiale/wenxi/android/AddPlanItem.vue +431 -431
  198. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2671 -2671
  199. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +673 -673
  200. package/src/filiale/wenxi/pc/DefectList.vue +653 -653
  201. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1358 -1358
  202. package/src/filiale/wuan/android/SafecheckOrderV.vue +2241 -2241
  203. package/src/filiale/wuan/android/SafecheckUserInfo.vue +596 -596
  204. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  205. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  206. package/src/filiale/wuhai/android/SafecheckOrderV.vue +2456 -2456
  207. package/src/filiale/wuhai/android/SafecheckUserInfo.vue +573 -573
  208. package/src/filiale/wuhai/pc/NewCheckpaper.vue +1281 -1281
  209. package/src/filiale/xiangyuanzhongai/android/PhoneUpUserinfo.vue +1251 -1251
  210. package/src/filiale/xinkang/android/AddPlanItem.vue +461 -447
  211. package/src/filiale/xinkang/pc/CheckSearchUser.vue +1026 -1026
  212. package/src/filiale/xinkang/pc/DefectListWeixiu.vue +475 -475
  213. package/src/filiale/yangchunboneng/android/AddPlanItem.vue +496 -496
  214. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2865 -2865
  215. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +887 -887
  216. package/src/filiale/yangchunboneng/pc/DefectListNew.vue +576 -576
  217. package/src/filiale/yongzhou/android/SafecheckOrderV.vue +2774 -2774
  218. package/src/filiale/yongzhou/android/SafecheckUserInfo.vue +776 -776
  219. package/src/filiale/yuansheng/android/SafecheckOrderV.vue +2758 -2758
  220. package/src/filiale/yuansheng/android/SafecheckUserInfo.vue +797 -797
  221. package/src/filiale/yuansheng/pc/DefectListNew.vue +524 -524
  222. package/src/filiale/yuansheng/pc/NewCheckpaper.vue +1371 -1371
  223. package/src/filiale/yuansheng/pc/checkmsg.vue +464 -464
  224. package/src/filiale/yunchengminsheng/android/DailyworkloadQuery.vue +491 -491
  225. package/src/filiale/yunchengminsheng/android/PaperFeedback.vue +1509 -1509
  226. package/src/filiale/yunchengminsheng/android/PhoneSellInfo.vue +113 -113
  227. package/src/filiale/yunchengminsheng/android/SafecheckDevices.vue +1270 -1270
  228. package/src/filiale/yunchengminsheng/android/SafecheckUserInfo.vue +785 -785
  229. package/src/filiale/yunchengminsheng/android.js +15 -15
  230. package/src/filiale/yunchengminsheng/pc/PaperList.vue +811 -811
  231. package/src/filiale/yunchengminsheng/pc.js +15 -15
  232. package/src/filiale/zhongsheng/android/BuyRecords.vue +122 -122
  233. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2461 -2461
  234. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +690 -690
  235. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  236. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1322 -1322
  237. package/src/filiale/zhongyi/android/SafecheckOrderV.vue +2431 -2431
  238. package/src/filiale/zhongyi/pc/DefectListNew.vue +514 -514
  239. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  240. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  241. package/src/main.js +33 -32
  242. package/src/safecheck.js +924 -924
@@ -1,464 +1,464 @@
1
- <style scoped>
2
- .bg {
3
- background-color: blue;
4
- height: 1px;
5
- border: 0;
6
- }
7
- .app-row {
8
- background-color: white;
9
- padding: 10px 10px 0 10px;
10
- border-bottom: 1px solid rgba(235, 235, 235, 0.5);
11
- }
12
- .search_input {
13
- border: 0;
14
- outline: none;
15
- }
16
- .font{
17
- font: 15px PingFang-SC-Medium;
18
- color: #666666;
19
- }
20
- .input-font{
21
- font: 15px PingFang-SC-Medium;
22
- color: #333333;
23
- }
24
- .btn-font{
25
- font:600 16px PingFang-SC-Bold;
26
- color: #499EDF;
27
- }
28
- .btn-color{
29
- background-color: #FFFFFF;
30
- border-radius: 10px ;
31
- border: 1px solid #499EDF;
32
- }
33
- .app-text {
34
- font-size: 12px;
35
- }
36
- .panel-self{
37
- border-radius: 10px;
38
- border:1px solid #499EDF;
39
- background-color: #F8F8F8;
40
- }
41
- .yybtn-color{
42
- background-color:#499edf;
43
- border-radius: 4px ;
44
- border: 1px solid #499EDF;
45
- color: #FFFFFF;
46
- font: 14px PingFang-SC-Bold;
47
- }
48
- .qxbtn-color{
49
- background-color: #FFFFFF;
50
- border-radius: 4px ;
51
- color: #499edf;
52
- font: 14px PingFang-SC-Bold;
53
- border: 1px solid #499EDF;
54
- }
55
-
56
- .button_shrink_top {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_top.png")}
57
- .button_shrink_bottom {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_bottom.png")}
58
- .button_shrink_left {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_left.png")}
59
- .button_shrink_right {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_right.png")}
60
- </style>
61
- <template>
62
- <div style="height: auto;width: 100%">
63
- <work-busy :is-busy="workBusy"></work-busy>
64
- <criteria-paged :model="model" v-ref:paged>
65
- <criteria partial='criteria' @condition-changed='search' v-ref:cri>
66
- <div partial>
67
- <form>
68
- <div class="row app-row">
69
- <div class="col-xs-4">
70
- <img src="../../../assets/用户姓名.png" style="width: 20px;margin-bottom: 5px" alt="">
71
- <label class="font text-left">用户姓名:</label>
72
- </div>
73
- <div class="col-xs-8" >
74
- <input class="search_input input-font" v-model=model.f_user_name></input>
75
- </div>
76
- </div>
77
- <div class="row app-row">
78
- <div class="col-xs-4">
79
- <img src="../../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
80
- <label for="f_userinfo_code" class="font text-left">用户编号:</label>
81
- </div>
82
- <div class="col-xs-8" >
83
- <input id="f_userinfo_code" class="search_input input-font"
84
- v-model=model.f_userinfo_code></input>
85
- </div>
86
- </div>
87
- <div class="row app-row">
88
- <div class="col-xs-4">
89
- <img src="../../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
90
- <label for="f_meternumber" class="font text-left">用户表号:</label>
91
- </div>
92
- <div class="col-xs-8" >
93
- <input id="f_meternumber" class="search_input input-font"
94
- v-model=model.f_meternumber></input>
95
- </div>
96
- </div>
97
- <div class="row app-row">
98
- <div class="col-xs-4">
99
- <img src="../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
100
- <label class="font text-left">用户地址:</label>
101
- </div>
102
- <div class="col-xs-8">
103
- <input class="search_input input-font"
104
- v-model=model.f_address></input>
105
- </div>
106
- </div>
107
- <div class="row app-row">
108
- <div class="col-xs-4">
109
- <img src="../../../assets/是否已检.png" style="width: 20px;margin-bottom: 5px" alt="">
110
- <label for="f_state" class="font text-left">起始时间:</label>
111
- </div>
112
- <datepicker id="f_start_date"
113
- placeholder= '起始时间'
114
- :value.sync="model.f_start_date"
115
- :disabled-days-of-Week="[]"
116
- v-model="model.f_start_date"
117
- class="input-font"
118
- :format="'yyyy-MM-dd 00:00:00'"
119
- :show-reset-button="reset" readonly="readonly">
120
- </datepicker>
121
- </div>
122
- <div class="row app-row">
123
- <div class="col-xs-4">
124
- <img src="../../../assets/是否已检.png" style="width: 20px;margin-bottom: 5px" alt="">
125
- <label for="f_state" class="font text-left">结束时间:</label>
126
- </div>
127
- <datepicker id="f_end_date"
128
- placeholder= '结束时间'
129
- :value.sync="model.f_end_date"
130
- :disabled-days-of-Week="[]"
131
- v-model="model.f_end_date"
132
- class="input-font"
133
- :format="'yyyy-MM-dd 23:59:59'"
134
- :show-reset-button="reset" readonly="readonly">
135
- </datepicker>
136
- </div>
137
- <div class="row text-center" style="margin-top: 20px;">
138
- <button type="button" class="btn btn-lg btn-font btn-color" style="width: 25%;" @click="$parent.$parent.selfSearch">查询</button>
139
- <!-- <div style="float: right;margin-right: 3% " class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.hidden()"></div>-->
140
- </div>
141
- <div style="height:30px;"></div>
142
- </form>
143
- </div>
144
- </criteria>
145
- <list :model="model" partial='list'>
146
- <div partial>
147
- <div class="auto app-text" style="margin-top: 5px;">
148
- <div class="panel" style="padding: 10px 10px 5px 10px;">
149
- <div class="panel-body panel-self">
150
- <div class="col-xs-12">
151
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户编号:</b></p>
152
- <p class="panel-title col-xs-5 text-left input-font" style="width: 74%">{{ row.f_userinfo_code }}</p>
153
- </div>
154
- <div class="col-xs-12">
155
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户表号:</b></p>
156
- <p class="panel-title col-xs-5 text-left input-font" style="width: 74%">{{ row.f_meternumber }}</p>
157
- </div>
158
- <div class="col-xs-12">
159
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户名称:</b></p>
160
- <p class="panel-title col-xs-7 text-left input-font" style="width: 79%">{{ row.f_user_name }}</p>
161
- </div>
162
- <div class="col-xs-12">
163
- <p class="panel-title text-left font" style="width: 23%;float: left"><b>用户电话:</b></p>
164
- <p class="panel-title text-left input-font" style="width: 77%">{{ row.f_user_phone }}</p>
165
- </div>
166
-
167
- <div class="col-xs-12">
168
- <p class="panel-title text-left font" style="width: 21%;float: left"><b>用户地址:</b></p>
169
- <p class="panel-title text-left input-font" style="width: 79%">{{ row.f_address }}</p>
170
- </div>
171
- <div class="col-xs-12">
172
- <p class="panel-title text-left font" style="width: 21%;float: left"><b>隐患内容:</b></p>
173
- <p class="panel-title text-left input-font" style="width: 79%">{{ $parent.$parent.$parent.trouble(row.f_defect_content) }}</p>
174
- </div>
175
- <div class="col-xs-12">
176
- <button type="button" name="button" class="btn btn-primary" style="background-color:#499edf;float: right;margin-right:10px;" @click="$parent.$parent.$parent.openshowModal1(row)">处理</button>
177
- </div>
178
- </div>
179
- </div>
180
- </div>
181
- </div>
182
- </list>
183
- </criteria-paged>
184
- </div>
185
- </template>
186
-
187
- <script>
188
-
189
- import Vue from 'vue'
190
- import { PagedList,HttpResetClass } from 'vue-client'
191
- import * as Util from '../../Util'
192
-
193
- export default {
194
- title: '无计划安检查询',
195
- data() {
196
- return {
197
- showModal:false,
198
- showModal1:false,
199
- showimg:'',
200
- deletecause:'',
201
- deletecauseBooble: false,
202
- workBusy:false,
203
- deal:{
204
- result:{},
205
- f_deal_path:'',
206
- f_deal_remark:'',
207
- f_dealsign_path:'', //签名
208
- f_dealer:Vue.user.name,
209
- f_dealer_id:Vue.user.id
210
- },
211
- f_filialeids:'',
212
- model: new PagedList(`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, 50, {items: '"tcp.*,uf.f_meternumber"', tablename: '"t_check_paper tcp left join t_userfiles uf on tcp.f_userinfoid = uf.f_userinfo_id left join (select tcp.id from t_check_paper tcp' +
213
- ` LEFT JOIN t_paper_devices tpd ON tcp.id= tpd.f_paper_id ` +
214
- ` LEFT JOIN t_devices_items tdi ON tpd.id= tdi.f_device_id` +
215
- ` LEFT JOIN t_devices_items_lists tdl ON tdi.id= tdl.f_item_id ` +
216
- ` where 1=1 AND tdi.f_is_defect= 'true' AND tdl.f_dealwith IS NULL AND tdi.f_deal_dispose = '未处理' AND tdi.f_is_repaired IS NULL group by tcp.id ) tcp2 on tcp.id = tcp2.id` +
217
- ' "', orderitem: '"tcp.f_upload_date desc"'}),
218
- criteriaShow: false,
219
- isNeedDealSign: this.$appdata.getSingleValue('隐患处理是否需要签名') == 'true',
220
- }
221
- },
222
- ready(){
223
- // this.selfSearch()
224
- },
225
- methods: {
226
- trouble(val) {
227
- const defect_content = JSON.parse(val)
228
- let result = ''
229
- if (defect_content.data) {
230
- const jsonData = defect_content.data
231
- for (const itemdata of jsonData) {
232
- const keys = Object.keys(itemdata)
233
- for (const itm of keys) {
234
- const value = itemdata[itm]
235
- result += itm + ':' + value +';'
236
- }
237
- }
238
- }
239
- return result
240
- },
241
- // 签名回调
242
- signCallback(prop, fileName) {
243
- console.log("签名回调地址" + fileName)
244
- // HostApp.alert('绑定属性:' + prop + ' 文件全路径如file:///storage/sdcard0/safecheck/abc.jpg:' + fullFileName)
245
- HostApp.__this__.$set('deal.f_dealsign_path', fileName)
246
- HostApp.__callback__ = null
247
- HostApp.__this__ = null
248
- },
249
- // 用户签名
250
- sign() {
251
- if (!this.deal.f_deal_path) {
252
- this.$showMessage('请先拍摄处理后照片!!!')
253
- return
254
- }
255
- this.delAudioFile('f_dealsign_path', this.deal.f_dealsign_path)
256
- let prop = 'f_dealsign_path'
257
- let idx = 'aofeng'
258
- let fileName
259
- if (!this.deal.f_dealsign_path) {
260
- fileName = Util.guid() + '-valve-' + idx + '-' + prop + '.jpg'
261
- } else {
262
- fileName = Util.getFileName(this.deal.f_dealsign_path)
263
- }
264
- HostApp.__callback__ = this.signCallback
265
- HostApp.__this__ = this
266
- HostApp.getSignature({
267
- file: fileName,
268
- requestCode: 111,
269
- callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");'
270
- })
271
- },
272
- delAudioFile(prop, fileName) {
273
- if (!fileName)
274
- return
275
- else {
276
- HostApp.delfile(fileName)
277
- this.deal[prop] = null
278
- }
279
- },
280
- commitDealDefect(){
281
- if (this.deletecauseBooble && !this.deletecause) {
282
- this.$showMessage("请填写取消拉黑原因!")
283
- return;
284
- }
285
- if (!this.deal.f_deal_path){
286
- this.$showMessage('处理后照片必须上传')
287
- return
288
- }
289
- if (this.isNeedDealSign && !this.deal.f_dealsign_path){
290
- this.$showMessage('签名必须上传')
291
- return
292
- }
293
- if (this.deletecauseBooble) {
294
- let http = new HttpResetClass()
295
- http.load('POST', 'http://36.108.175.152:8000/API/Secheck/SetBlackList', {
296
- data: {
297
- "id": this.deal.result.f_userinfo_code,
298
- "bh": this.deal.result.f_meternumber,
299
- "black": false,
300
- "blackMemo": this.deletecause
301
- }
302
- }, {resolveMsg: null, rejectMsg: null})
303
- .then((res)=>{
304
- if (res.data.Success) {
305
- HostApp.__this__ = this
306
- HostApp.logicWithHint({'logic': 'safe_dealWithDefect', 'callback': 'javascript: HostApp.__this__.commitCallBack()',
307
- 'data': this.deal, 'backresult':1
308
- })
309
- } else {
310
- this.$showMessage("取消拉黑失败,请稍后再试!")
311
- }
312
- })
313
- } else {
314
- HostApp.__this__ = this
315
- HostApp.logicWithHint({'logic': 'safe_dealWithDefect', 'callback': 'javascript: HostApp.__this__.commitCallBack()',
316
- 'data': this.deal, 'backresult':1
317
- })
318
- }
319
- },
320
- commitCallBack(jo){
321
- //tag
322
- //tag)
323
- if (jo.state =='ok'){
324
- let ress = JSON.parse(jo.result)
325
- if (ress.code == 200 ) {
326
- this.$showMessage(ress.msg)
327
- this.closeshowModal1()
328
- } else {
329
- this.$showMessage(ress.msg)
330
- }
331
- }else{
332
- this.$showMessage('本地服务调用失败')
333
- }
334
- },
335
- delfile(prop, fileName) {
336
- if (fileName == Vue.nopic)
337
- return
338
- else {
339
- HostApp.delfile(fileName)
340
- this.deal[prop] = Vue.nopic
341
- }
342
- },
343
- openshowModal(val){
344
- //tag
345
- //tag
346
- this.showimg=`${this.$androidUtil.getProxyUrl()}/rs/image/file/`+val
347
- this.showModal=true
348
- },
349
- closeshowModal(){
350
- this.showimg=''
351
- this.showModal=false
352
- },
353
- openshowModal1(val){
354
- var _this = this
355
- var pardate = {
356
- _this:_this,
357
- title:'安全检查',
358
- safe:true
359
- }
360
- _this.$dispatch('gotoson',pardate)
361
- _this.$goto('android-defect-deal-items', {id: val.id}, 'self',_this.callback)
362
- },
363
- callback(){
364
- let id = this.$androidUtil.getPreference('paper_id')
365
- if(!id){
366
- return
367
- }
368
- this.selfSearch()
369
- this.workBusy = true
370
- new HttpResetClass().load('post',`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/AndroidDealWith`,{
371
- data:{
372
- condition:`tcp.id = '${id}'`,
373
- f_filialeids:`${Vue.user.orgid}`
374
- }
375
- }).then(resp=>{
376
- this.workBusy = false
377
- if (resp.data.length>0){
378
- return this.$showMessage('隐患未全部处理')
379
- }
380
- }).catch(()=>{
381
- this.workBusy = false
382
- })
383
- },
384
- closeshowModal1(){
385
- this.deal={
386
- result: {},
387
- f_deal_path:'',
388
- f_deal_remark:'',
389
- f_dealsign_path:'', //签名
390
- f_dealer:Vue.user.name,
391
- f_dealer_id:Vue.user.id
392
- }
393
- this.showModal1=false
394
- // this.selfSearch()
395
- },
396
- cameraCallBack(prop, fileName) {
397
- HostApp.__this__.deal.f_deal_path = fileName
398
- HostApp.__callback__ = null
399
- HostApp.__this__ = null
400
- },
401
- takePic(prop, title) {
402
- HostApp.__callback__ = this.cameraCallBack
403
- HostApp.__this__ = this
404
- let fileName
405
- if (!this.deal.f_deal_path || this.deal.f_deal_path.includes("nopic.png")) {
406
- fileName = Util.guid() + '-' + prop + '.jpg'
407
- } else {
408
- fileName = Util.getFileName(this.deal.f_deal_path)
409
- }
410
- HostApp._open_a_page({
411
- type: 'boomerang',
412
- page: 'com.aofeng.hybrid.android.peripheral.CameraActivity',
413
- param: {
414
- file: fileName,
415
- requestCode: 111,
416
- callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");',
417
- watermark: title + '时间:' + Util.toStandardTimeString() + '' + Vue.user.name
418
- }
419
- })
420
- },
421
- selfSearch () {
422
-
423
- let condition = "1=1 "
424
- if(this.$refs.paged.$refs.cri.model.f_user_name){
425
- if(this.$refs.paged.$refs.cri.model.f_user_name.toString().trim()){
426
- condition += " and tcp.f_user_name like '"+this.$refs.paged.$refs.cri.model.f_user_name+"%'"
427
- }
428
- }
429
- if(this.$refs.paged.$refs.cri.model.f_userinfo_code){
430
- if(this.$refs.paged.$refs.cri.model.f_userinfo_code.toString().trim()){
431
- condition += " and tcp.f_userinfo_code = '"+this.$refs.paged.$refs.cri.model.f_userinfo_code+"'"
432
- }
433
- }
434
- if(this.$refs.paged.$refs.cri.model.f_address){
435
- if(this.$refs.paged.$refs.cri.model.f_address.toString().trim()){
436
- condition += " and tcp.f_address like '%"+this.$refs.paged.$refs.cri.model.f_address+"%'"
437
- }
438
- }
439
- if(this.$refs.paged.$refs.cri.model.f_start_date){
440
- if(this.$refs.paged.$refs.cri.model.f_start_date.toString().trim()){
441
- condition += " and tcp.f_upload_date >= '"+this.$refs.paged.$refs.cri.model.f_start_date +"'"
442
- }
443
- }
444
- if(this.$refs.paged.$refs.cri.model.f_end_date){
445
- if(this.$refs.paged.$refs.cri.model.f_end_date.toString().trim()){
446
- condition += " and tcp.f_upload_date <= '"+this.$refs.paged.$refs.cri.model.f_end_date +"'"
447
- }
448
- }
449
-
450
- if(this.$refs.paged.$refs.cri.model.f_meternumber){
451
- if(this.$refs.paged.$refs.cri.model.f_meternumber){
452
- condition += " and uf.f_meternumber = '"+this.$refs.paged.$refs.cri.model.f_meternumber +"'"
453
- }
454
- }
455
- condition += ` and tcp.f_repaired = '未修' and tcp.f_defect_content like '%有隐患%' and tcp2.id is not null`
456
- this.model.search(condition)
457
- },
458
-
459
- hidden() {
460
- this.criteriaShow = !this.criteriaShow
461
- },
462
- }
463
- }
464
- </script>
1
+ <style scoped>
2
+ .bg {
3
+ background-color: blue;
4
+ height: 1px;
5
+ border: 0;
6
+ }
7
+ .app-row {
8
+ background-color: white;
9
+ padding: 10px 10px 0 10px;
10
+ border-bottom: 1px solid rgba(235, 235, 235, 0.5);
11
+ }
12
+ .search_input {
13
+ border: 0;
14
+ outline: none;
15
+ }
16
+ .font{
17
+ font: 15px PingFang-SC-Medium;
18
+ color: #666666;
19
+ }
20
+ .input-font{
21
+ font: 15px PingFang-SC-Medium;
22
+ color: #333333;
23
+ }
24
+ .btn-font{
25
+ font:600 16px PingFang-SC-Bold;
26
+ color: #499EDF;
27
+ }
28
+ .btn-color{
29
+ background-color: #FFFFFF;
30
+ border-radius: 10px ;
31
+ border: 1px solid #499EDF;
32
+ }
33
+ .app-text {
34
+ font-size: 12px;
35
+ }
36
+ .panel-self{
37
+ border-radius: 10px;
38
+ border:1px solid #499EDF;
39
+ background-color: #F8F8F8;
40
+ }
41
+ .yybtn-color{
42
+ background-color:#499edf;
43
+ border-radius: 4px ;
44
+ border: 1px solid #499EDF;
45
+ color: #FFFFFF;
46
+ font: 14px PingFang-SC-Bold;
47
+ }
48
+ .qxbtn-color{
49
+ background-color: #FFFFFF;
50
+ border-radius: 4px ;
51
+ color: #499edf;
52
+ font: 14px PingFang-SC-Bold;
53
+ border: 1px solid #499EDF;
54
+ }
55
+
56
+ .button_shrink_top {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_top.png")}
57
+ .button_shrink_bottom {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_bottom.png")}
58
+ .button_shrink_left {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_left.png")}
59
+ .button_shrink_right {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_right.png")}
60
+ </style>
61
+ <template>
62
+ <div style="height: auto;width: 100%">
63
+ <work-busy :is-busy="workBusy"></work-busy>
64
+ <criteria-paged :model="model" v-ref:paged>
65
+ <criteria partial='criteria' @condition-changed='search' v-ref:cri>
66
+ <div partial>
67
+ <form>
68
+ <div class="row app-row">
69
+ <div class="col-xs-4">
70
+ <img src="../../../assets/用户姓名.png" style="width: 20px;margin-bottom: 5px" alt="">
71
+ <label class="font text-left">用户姓名:</label>
72
+ </div>
73
+ <div class="col-xs-8" >
74
+ <input class="search_input input-font" v-model=model.f_user_name></input>
75
+ </div>
76
+ </div>
77
+ <div class="row app-row">
78
+ <div class="col-xs-4">
79
+ <img src="../../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
80
+ <label for="f_userinfo_code" class="font text-left">用户编号:</label>
81
+ </div>
82
+ <div class="col-xs-8" >
83
+ <input id="f_userinfo_code" class="search_input input-font"
84
+ v-model=model.f_userinfo_code></input>
85
+ </div>
86
+ </div>
87
+ <div class="row app-row">
88
+ <div class="col-xs-4">
89
+ <img src="../../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
90
+ <label for="f_meternumber" class="font text-left">用户表号:</label>
91
+ </div>
92
+ <div class="col-xs-8" >
93
+ <input id="f_meternumber" class="search_input input-font"
94
+ v-model=model.f_meternumber></input>
95
+ </div>
96
+ </div>
97
+ <div class="row app-row">
98
+ <div class="col-xs-4">
99
+ <img src="../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
100
+ <label class="font text-left">用户地址:</label>
101
+ </div>
102
+ <div class="col-xs-8">
103
+ <input class="search_input input-font"
104
+ v-model=model.f_address></input>
105
+ </div>
106
+ </div>
107
+ <div class="row app-row">
108
+ <div class="col-xs-4">
109
+ <img src="../../../assets/是否已检.png" style="width: 20px;margin-bottom: 5px" alt="">
110
+ <label for="f_state" class="font text-left">起始时间:</label>
111
+ </div>
112
+ <datepicker id="f_start_date"
113
+ placeholder= '起始时间'
114
+ :value.sync="model.f_start_date"
115
+ :disabled-days-of-Week="[]"
116
+ v-model="model.f_start_date"
117
+ class="input-font"
118
+ :format="'yyyy-MM-dd 00:00:00'"
119
+ :show-reset-button="reset" readonly="readonly">
120
+ </datepicker>
121
+ </div>
122
+ <div class="row app-row">
123
+ <div class="col-xs-4">
124
+ <img src="../../../assets/是否已检.png" style="width: 20px;margin-bottom: 5px" alt="">
125
+ <label for="f_state" class="font text-left">结束时间:</label>
126
+ </div>
127
+ <datepicker id="f_end_date"
128
+ placeholder= '结束时间'
129
+ :value.sync="model.f_end_date"
130
+ :disabled-days-of-Week="[]"
131
+ v-model="model.f_end_date"
132
+ class="input-font"
133
+ :format="'yyyy-MM-dd 23:59:59'"
134
+ :show-reset-button="reset" readonly="readonly">
135
+ </datepicker>
136
+ </div>
137
+ <div class="row text-center" style="margin-top: 20px;">
138
+ <button type="button" class="btn btn-lg btn-font btn-color" style="width: 25%;" @click="$parent.$parent.selfSearch">查询</button>
139
+ <!-- <div style="float: right;margin-right: 3% " class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.hidden()"></div>-->
140
+ </div>
141
+ <div style="height:30px;"></div>
142
+ </form>
143
+ </div>
144
+ </criteria>
145
+ <list :model="model" partial='list'>
146
+ <div partial>
147
+ <div class="auto app-text" style="margin-top: 5px;">
148
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
149
+ <div class="panel-body panel-self">
150
+ <div class="col-xs-12">
151
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户编号:</b></p>
152
+ <p class="panel-title col-xs-5 text-left input-font" style="width: 74%">{{ row.f_userinfo_code }}</p>
153
+ </div>
154
+ <div class="col-xs-12">
155
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户表号:</b></p>
156
+ <p class="panel-title col-xs-5 text-left input-font" style="width: 74%">{{ row.f_meternumber }}</p>
157
+ </div>
158
+ <div class="col-xs-12">
159
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户名称:</b></p>
160
+ <p class="panel-title col-xs-7 text-left input-font" style="width: 79%">{{ row.f_user_name }}</p>
161
+ </div>
162
+ <div class="col-xs-12">
163
+ <p class="panel-title text-left font" style="width: 23%;float: left"><b>用户电话:</b></p>
164
+ <p class="panel-title text-left input-font" style="width: 77%">{{ row.f_user_phone }}</p>
165
+ </div>
166
+
167
+ <div class="col-xs-12">
168
+ <p class="panel-title text-left font" style="width: 21%;float: left"><b>用户地址:</b></p>
169
+ <p class="panel-title text-left input-font" style="width: 79%">{{ row.f_address }}</p>
170
+ </div>
171
+ <div class="col-xs-12">
172
+ <p class="panel-title text-left font" style="width: 21%;float: left"><b>隐患内容:</b></p>
173
+ <p class="panel-title text-left input-font" style="width: 79%">{{ $parent.$parent.$parent.trouble(row.f_defect_content) }}</p>
174
+ </div>
175
+ <div class="col-xs-12">
176
+ <button type="button" name="button" class="btn btn-primary" style="background-color:#499edf;float: right;margin-right:10px;" @click="$parent.$parent.$parent.openshowModal1(row)">处理</button>
177
+ </div>
178
+ </div>
179
+ </div>
180
+ </div>
181
+ </div>
182
+ </list>
183
+ </criteria-paged>
184
+ </div>
185
+ </template>
186
+
187
+ <script>
188
+
189
+ import Vue from 'vue'
190
+ import { PagedList,HttpResetClass } from 'vue-client'
191
+ import * as Util from '../../Util'
192
+
193
+ export default {
194
+ title: '无计划安检查询',
195
+ data() {
196
+ return {
197
+ showModal:false,
198
+ showModal1:false,
199
+ showimg:'',
200
+ deletecause:'',
201
+ deletecauseBooble: false,
202
+ workBusy:false,
203
+ deal:{
204
+ result:{},
205
+ f_deal_path:'',
206
+ f_deal_remark:'',
207
+ f_dealsign_path:'', //签名
208
+ f_dealer:Vue.user.name,
209
+ f_dealer_id:Vue.user.id
210
+ },
211
+ f_filialeids:'',
212
+ model: new PagedList(`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, 50, {items: '"tcp.*,uf.f_meternumber"', tablename: '"t_check_paper tcp left join t_userfiles uf on tcp.f_userinfoid = uf.f_userinfo_id left join (select tcp.id from t_check_paper tcp' +
213
+ ` LEFT JOIN t_paper_devices tpd ON tcp.id= tpd.f_paper_id ` +
214
+ ` LEFT JOIN t_devices_items tdi ON tpd.id= tdi.f_device_id` +
215
+ ` LEFT JOIN t_devices_items_lists tdl ON tdi.id= tdl.f_item_id ` +
216
+ ` where 1=1 AND tdi.f_is_defect= 'true' AND tdl.f_dealwith IS NULL AND tdi.f_deal_dispose = '未处理' AND tdi.f_is_repaired IS NULL group by tcp.id ) tcp2 on tcp.id = tcp2.id` +
217
+ ' "', orderitem: '"tcp.f_upload_date desc"'}),
218
+ criteriaShow: false,
219
+ isNeedDealSign: this.$appdata.getSingleValue('隐患处理是否需要签名') == 'true',
220
+ }
221
+ },
222
+ ready(){
223
+ // this.selfSearch()
224
+ },
225
+ methods: {
226
+ trouble(val) {
227
+ const defect_content = JSON.parse(val)
228
+ let result = ''
229
+ if (defect_content.data) {
230
+ const jsonData = defect_content.data
231
+ for (const itemdata of jsonData) {
232
+ const keys = Object.keys(itemdata)
233
+ for (const itm of keys) {
234
+ const value = itemdata[itm]
235
+ result += itm + ':' + value +';'
236
+ }
237
+ }
238
+ }
239
+ return result
240
+ },
241
+ // 签名回调
242
+ signCallback(prop, fileName) {
243
+ console.log("签名回调地址" + fileName)
244
+ // HostApp.alert('绑定属性:' + prop + ' 文件全路径如file:///storage/sdcard0/safecheck/abc.jpg:' + fullFileName)
245
+ HostApp.__this__.$set('deal.f_dealsign_path', fileName)
246
+ HostApp.__callback__ = null
247
+ HostApp.__this__ = null
248
+ },
249
+ // 用户签名
250
+ sign() {
251
+ if (!this.deal.f_deal_path) {
252
+ this.$showMessage('请先拍摄处理后照片!!!')
253
+ return
254
+ }
255
+ this.delAudioFile('f_dealsign_path', this.deal.f_dealsign_path)
256
+ let prop = 'f_dealsign_path'
257
+ let idx = 'aofeng'
258
+ let fileName
259
+ if (!this.deal.f_dealsign_path) {
260
+ fileName = Util.guid() + '-valve-' + idx + '-' + prop + '.jpg'
261
+ } else {
262
+ fileName = Util.getFileName(this.deal.f_dealsign_path)
263
+ }
264
+ HostApp.__callback__ = this.signCallback
265
+ HostApp.__this__ = this
266
+ HostApp.getSignature({
267
+ file: fileName,
268
+ requestCode: 111,
269
+ callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");'
270
+ })
271
+ },
272
+ delAudioFile(prop, fileName) {
273
+ if (!fileName)
274
+ return
275
+ else {
276
+ HostApp.delfile(fileName)
277
+ this.deal[prop] = null
278
+ }
279
+ },
280
+ commitDealDefect(){
281
+ if (this.deletecauseBooble && !this.deletecause) {
282
+ this.$showMessage("请填写取消拉黑原因!")
283
+ return;
284
+ }
285
+ if (!this.deal.f_deal_path){
286
+ this.$showMessage('处理后照片必须上传')
287
+ return
288
+ }
289
+ if (this.isNeedDealSign && !this.deal.f_dealsign_path){
290
+ this.$showMessage('签名必须上传')
291
+ return
292
+ }
293
+ if (this.deletecauseBooble) {
294
+ let http = new HttpResetClass()
295
+ http.load('POST', 'http://36.108.175.152:8000/API/Secheck/SetBlackList', {
296
+ data: {
297
+ "id": this.deal.result.f_userinfo_code,
298
+ "bh": this.deal.result.f_meternumber,
299
+ "black": false,
300
+ "blackMemo": this.deletecause
301
+ }
302
+ }, {resolveMsg: null, rejectMsg: null})
303
+ .then((res)=>{
304
+ if (res.data.Success) {
305
+ HostApp.__this__ = this
306
+ HostApp.logicWithHint({'logic': 'safe_dealWithDefect', 'callback': 'javascript: HostApp.__this__.commitCallBack()',
307
+ 'data': this.deal, 'backresult':1
308
+ })
309
+ } else {
310
+ this.$showMessage("取消拉黑失败,请稍后再试!")
311
+ }
312
+ })
313
+ } else {
314
+ HostApp.__this__ = this
315
+ HostApp.logicWithHint({'logic': 'safe_dealWithDefect', 'callback': 'javascript: HostApp.__this__.commitCallBack()',
316
+ 'data': this.deal, 'backresult':1
317
+ })
318
+ }
319
+ },
320
+ commitCallBack(jo){
321
+ //tag
322
+ //tag)
323
+ if (jo.state =='ok'){
324
+ let ress = JSON.parse(jo.result)
325
+ if (ress.code == 200 ) {
326
+ this.$showMessage(ress.msg)
327
+ this.closeshowModal1()
328
+ } else {
329
+ this.$showMessage(ress.msg)
330
+ }
331
+ }else{
332
+ this.$showMessage('本地服务调用失败')
333
+ }
334
+ },
335
+ delfile(prop, fileName) {
336
+ if (fileName == Vue.nopic)
337
+ return
338
+ else {
339
+ HostApp.delfile(fileName)
340
+ this.deal[prop] = Vue.nopic
341
+ }
342
+ },
343
+ openshowModal(val){
344
+ //tag
345
+ //tag
346
+ this.showimg=`${this.$androidUtil.getProxyUrl()}/rs/image/file/`+val
347
+ this.showModal=true
348
+ },
349
+ closeshowModal(){
350
+ this.showimg=''
351
+ this.showModal=false
352
+ },
353
+ openshowModal1(val){
354
+ var _this = this
355
+ var pardate = {
356
+ _this:_this,
357
+ title:'安全检查',
358
+ safe:true
359
+ }
360
+ _this.$dispatch('gotoson',pardate)
361
+ _this.$goto('android-defect-deal-items', {id: val.id}, 'self',_this.callback)
362
+ },
363
+ callback(){
364
+ let id = this.$androidUtil.getPreference('paper_id')
365
+ if(!id){
366
+ return
367
+ }
368
+ this.selfSearch()
369
+ this.workBusy = true
370
+ new HttpResetClass().load('post',`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/AndroidDealWith`,{
371
+ data:{
372
+ condition:`tcp.id = '${id}'`,
373
+ f_filialeids:`${Vue.user.orgid}`
374
+ }
375
+ }).then(resp=>{
376
+ this.workBusy = false
377
+ if (resp.data.length>0){
378
+ return this.$showMessage('隐患未全部处理')
379
+ }
380
+ }).catch(()=>{
381
+ this.workBusy = false
382
+ })
383
+ },
384
+ closeshowModal1(){
385
+ this.deal={
386
+ result: {},
387
+ f_deal_path:'',
388
+ f_deal_remark:'',
389
+ f_dealsign_path:'', //签名
390
+ f_dealer:Vue.user.name,
391
+ f_dealer_id:Vue.user.id
392
+ }
393
+ this.showModal1=false
394
+ // this.selfSearch()
395
+ },
396
+ cameraCallBack(prop, fileName) {
397
+ HostApp.__this__.deal.f_deal_path = fileName
398
+ HostApp.__callback__ = null
399
+ HostApp.__this__ = null
400
+ },
401
+ takePic(prop, title) {
402
+ HostApp.__callback__ = this.cameraCallBack
403
+ HostApp.__this__ = this
404
+ let fileName
405
+ if (!this.deal.f_deal_path || this.deal.f_deal_path.includes("nopic.png")) {
406
+ fileName = Util.guid() + '-' + prop + '.jpg'
407
+ } else {
408
+ fileName = Util.getFileName(this.deal.f_deal_path)
409
+ }
410
+ HostApp._open_a_page({
411
+ type: 'boomerang',
412
+ page: 'com.aofeng.hybrid.android.peripheral.CameraActivity',
413
+ param: {
414
+ file: fileName,
415
+ requestCode: 111,
416
+ callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");',
417
+ watermark: title + '时间:' + Util.toStandardTimeString() + '' + Vue.user.name
418
+ }
419
+ })
420
+ },
421
+ selfSearch () {
422
+
423
+ let condition = "1=1 "
424
+ if(this.$refs.paged.$refs.cri.model.f_user_name){
425
+ if(this.$refs.paged.$refs.cri.model.f_user_name.toString().trim()){
426
+ condition += " and tcp.f_user_name like '"+this.$refs.paged.$refs.cri.model.f_user_name+"%'"
427
+ }
428
+ }
429
+ if(this.$refs.paged.$refs.cri.model.f_userinfo_code){
430
+ if(this.$refs.paged.$refs.cri.model.f_userinfo_code.toString().trim()){
431
+ condition += " and tcp.f_userinfo_code = '"+this.$refs.paged.$refs.cri.model.f_userinfo_code+"'"
432
+ }
433
+ }
434
+ if(this.$refs.paged.$refs.cri.model.f_address){
435
+ if(this.$refs.paged.$refs.cri.model.f_address.toString().trim()){
436
+ condition += " and tcp.f_address like '%"+this.$refs.paged.$refs.cri.model.f_address+"%'"
437
+ }
438
+ }
439
+ if(this.$refs.paged.$refs.cri.model.f_start_date){
440
+ if(this.$refs.paged.$refs.cri.model.f_start_date.toString().trim()){
441
+ condition += " and tcp.f_upload_date >= '"+this.$refs.paged.$refs.cri.model.f_start_date +"'"
442
+ }
443
+ }
444
+ if(this.$refs.paged.$refs.cri.model.f_end_date){
445
+ if(this.$refs.paged.$refs.cri.model.f_end_date.toString().trim()){
446
+ condition += " and tcp.f_upload_date <= '"+this.$refs.paged.$refs.cri.model.f_end_date +"'"
447
+ }
448
+ }
449
+
450
+ if(this.$refs.paged.$refs.cri.model.f_meternumber){
451
+ if(this.$refs.paged.$refs.cri.model.f_meternumber){
452
+ condition += " and uf.f_meternumber = '"+this.$refs.paged.$refs.cri.model.f_meternumber +"'"
453
+ }
454
+ }
455
+ condition += ` and tcp.f_repaired = '未修' and tcp.f_defect_content like '%有隐患%' and tcp2.id is not null`
456
+ this.model.search(condition)
457
+ },
458
+
459
+ hidden() {
460
+ this.criteriaShow = !this.criteriaShow
461
+ },
462
+ }
463
+ }
464
+ </script>