safecheck-client 4.0.2-1 → 4.0.2-11

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 (262) hide show
  1. package/package.json +132 -132
  2. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  3. package/src/components/DefectDealMain/DefectListNew.vue +642 -642
  4. package/src/components/Util/RightTreeSafeDep.vue +362 -362
  5. package/src/components/android/AddPlanItem.vue +447 -447
  6. package/src/components/android/AddPlanItemYy.vue +451 -451
  7. package/src/components/android/AddSpecialPlanItem.vue +426 -426
  8. package/src/components/android/CurrentCreateYy.vue +1051 -1051
  9. package/src/components/android/DailyworkloadQuery.vue +473 -473
  10. package/src/components/android/Devices.vue +327 -327
  11. package/src/components/android/Devicesm.vue +327 -327
  12. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  13. package/src/components/android/PhoneRecordInfo.vue +113 -113
  14. package/src/components/android/PhoneSellInfo.vue +113 -113
  15. package/src/components/android/PhoneUpDetail.vue +1040 -1040
  16. package/src/components/android/QRCode/QRCodeBinding.vue +300 -300
  17. package/src/components/android/QRCode/QRCodePage.vue +212 -212
  18. package/src/components/android/SafePlanItem.vue +509 -509
  19. package/src/components/android/UploadPage.vue +232 -232
  20. package/src/components/android/examples/SafeListExamples.vue +296 -296
  21. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  22. package/src/components/android/recheck/Recheck.vue +402 -402
  23. package/src/components/android/userinfo/SafecheckUserInfo.vue +776 -776
  24. package/src/components/checkplan/checkmsg.vue +459 -459
  25. package/src/components/defect/DefectList.vue +507 -507
  26. package/src/components/defect/DefectListWeixiu.vue +484 -484
  27. package/src/components/filialCircle/CircleList.vue +139 -139
  28. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  29. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  30. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  31. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  32. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  33. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  34. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  35. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  36. package/src/components/map/PersonTrack.vue +226 -226
  37. package/src/components/paper/RegionalList.vue +220 -220
  38. package/src/components/paper/safetyledger.vue +194 -0
  39. package/src/components/pc/AnnouncementPC.vue +524 -524
  40. package/src/components/pc/DefectList.vue +742 -742
  41. package/src/components/pc/DefectMaterialLook.vue +98 -98
  42. package/src/components/pc/DeviceChange.vue +1068 -1068
  43. package/src/components/pc/PaperDefectMain.vue +905 -905
  44. package/src/components/pc/RoleSelectorDep.vue +166 -166
  45. package/src/components/pc/SafeVisitInfo.vue +261 -261
  46. package/src/components/planmanage/PlanManage.vue +10 -1
  47. package/src/components/report/CheckByPlan.vue +1 -1
  48. package/src/components/report/HiddenSituation.vue +165 -165
  49. package/src/components/rongcheng/AspiratedOrderV.vue +2377 -2377
  50. package/src/components/rongcheng/CurrentCreateOnline.vue +906 -906
  51. package/src/components/rongcheng/DefectList.vue +560 -560
  52. package/src/components/rongcheng/SafecheckOrderVCli.vue +2641 -2641
  53. package/src/components/safecheckNew/android/AddPlanItem.vue +419 -419
  54. package/src/components/safecheckNew/android/CurrentCreate.vue +1050 -1050
  55. package/src/components/safecheckNew/android/Recheck.vue +379 -379
  56. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  57. package/src/components/shaoguan/DefectList.vue +473 -473
  58. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  59. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  60. package/src/components/userfile/SecurityAudit.vue +243 -243
  61. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +476 -476
  62. package/src/filiale/ancheng/android/SafecheckOrderV.vue +2703 -2703
  63. package/src/filiale/ancheng/android/SafecheckUserInfo.vue +737 -737
  64. package/src/filiale/ancheng/pc/checkScreen.vue +923 -923
  65. package/src/filiale/ankangyihua/android/AddPlanItem.vue +446 -446
  66. package/src/filiale/ankangyihua/android/SafecheckOrderV.vue +2908 -2908
  67. package/src/filiale/ankangyihua/pc/DefectListWeixiu.vue +491 -491
  68. package/src/filiale/baiyin/android/SafecheckOrderV.vue +2785 -2785
  69. package/src/filiale/baiyin/pc/DefectListNew.vue +597 -597
  70. package/src/filiale/bayan/android/Edit.vue +132 -132
  71. package/src/filiale/bayan/pc/DefectListNew.vue +597 -597
  72. package/src/filiale/bayan/pc/DeviceChange.vue +1838 -1838
  73. package/src/filiale/bayan/pc/HiddenSituation.vue +295 -295
  74. package/src/filiale/dexin/android/CasualSave.vue +1050 -1050
  75. package/src/filiale/dexin/android/SafecheckOrderV.vue +2950 -2950
  76. package/src/filiale/fugou/android/AddPlanItem.vue +413 -413
  77. package/src/filiale/fugou/android/SafecheckOrderV.vue +2796 -2796
  78. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +830 -830
  79. package/src/filiale/fugu/android/SafecheckOrderV.vue +2484 -2484
  80. package/src/filiale/fugu/pc/NewCheckpaper.vue +1287 -1287
  81. package/src/filiale/ganquan/android/AddPlanItem.vue +444 -444
  82. package/src/filiale/ganquan/android/SafecheckOrderV.vue +2485 -2485
  83. package/src/filiale/ganquan/pc/NewCheckpaper.vue +1354 -1354
  84. package/src/filiale/guangxi/pc/DefectListNew.vue +518 -518
  85. package/src/filiale/hanzhong/android/SafecheckOrderV.vue +2683 -2683
  86. package/src/filiale/hanzhong/android/SafecheckUserInfo.vue +786 -786
  87. package/src/filiale/huaran/android/SafecheckOrderV.vue +2803 -2803
  88. package/src/filiale/huatong/android/SafecheckOrderV.vue +2426 -2426
  89. package/src/filiale/huatong/android/SafecheckUserInfo.vue +749 -749
  90. package/src/filiale/huayin/pc/NewCheckpaper.vue +1307 -1307
  91. package/src/filiale/jiaocheng/android/AddPlanItem.vue +435 -435
  92. package/src/filiale/jiaocheng/android/SafecheckUserInfo.vue +737 -737
  93. package/src/filiale/jiaocheng/pc/DefectListNew.vue +576 -576
  94. package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -447
  95. package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2807 -2807
  96. package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -784
  97. package/src/filiale/jinbin/pc/DefectListWeixiu.vue +478 -478
  98. package/src/filiale/jingyang/android/AddPlanItem.vue +458 -458
  99. package/src/filiale/jingyang/android/SafecheckOrderV.vue +2734 -2734
  100. package/src/filiale/jingyang/android/SafecheckUserInfo.vue +781 -781
  101. package/src/filiale/jinhong/android/CurrentCreate.vue +8 -4
  102. package/src/filiale/jinhong/pc/CheckBookList.vue +393 -393
  103. package/src/filiale/jinhong/pc/PaperList.vue +853 -853
  104. package/src/filiale/jinhong/pc/PlanManage.vue +927 -927
  105. package/src/filiale/jinhong/pc/checkPlanList.vue +420 -420
  106. package/src/filiale/kelai/android/AddPlanItem.vue +488 -488
  107. package/src/filiale/kelai/android/SafecheckUserInfo.vue +774 -774
  108. package/src/filiale/kelai/android/SafecheckUserInfo1.vue +618 -618
  109. package/src/filiale/kelai/pc/DefectListNew.vue +688 -688
  110. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasList.vue +518 -518
  111. package/src/filiale/kelai/pc/NewCheckpaper.vue +1454 -1454
  112. package/src/filiale/liaoyuan/android/AddPlanItem.vue +412 -412
  113. package/src/filiale/liaoyuan/android/CurrentCreate.vue +1066 -1066
  114. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2388 -2388
  115. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +557 -557
  116. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +489 -489
  117. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  118. package/src/filiale/libo/android/CurrentCreate.vue +1091 -1091
  119. package/src/filiale/libo/android.js +15 -15
  120. package/src/filiale/lixian/android/SafecheckOrderV.vue +2404 -2404
  121. package/src/filiale/lixian/android/SafecheckUserInfo.vue +578 -578
  122. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  123. package/src/filiale/meihekou/android/AreaPlan.vue +577 -577
  124. package/src/filiale/meihekou/android/MeterReading.vue +110 -110
  125. package/src/filiale/meihekou/android/PhoneUpUserinfo.vue +1307 -1307
  126. package/src/filiale/meihekou/android/SafecheckDevices.vue +6 -3
  127. package/src/filiale/meihekou/android/SafecheckOrderV.vue +2448 -2446
  128. package/src/filiale/meihekou/android/SafecheckUserInfo.vue +785 -785
  129. package/src/filiale/meihekou/pc/CheckDetail.vue +208 -0
  130. package/src/filiale/meihekou/pc/CheckPlan.vue +52 -0
  131. package/src/filiale/meihekou/pc/NewCheckpaperTemp.vue +1288 -1288
  132. package/src/filiale/meihekou/pc/SelectCheckPlan.vue +262 -0
  133. package/src/filiale/meihekou/pc.js +17 -15
  134. package/src/filiale/minsheng/android/SafecheckUserInfo.vue +754 -754
  135. package/src/filiale/minsheng/pc/DefectListNew.vue +535 -535
  136. package/src/filiale/pingxiang/android/SafecheckOrderV.vue +2424 -2424
  137. package/src/filiale/pingxiang/android/SafecheckUserInfo.vue +600 -600
  138. package/src/filiale/pingxiang/pc/DefectListNew.vue +519 -519
  139. package/src/filiale/pingxiang/pc/NewCheckpaper.vue +1294 -1294
  140. package/src/filiale/qianneng/android/AddPlanItem.vue +482 -482
  141. package/src/filiale/qianneng/android/SafecheckOrderV.vue +2785 -2785
  142. package/src/filiale/qianneng/android/SafecheckUserInfo.vue +775 -775
  143. package/src/filiale/qianneng/pc/DefectListNew.vue +576 -576
  144. package/src/filiale/qianneng/pc/NewCheckpaper.vue +1546 -1546
  145. package/src/filiale/qingjian/android/SafecheckOrderV.vue +2844 -2844
  146. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +800 -800
  147. package/src/filiale/qingjian/pc/NewCheckpaper.vue +1871 -1871
  148. package/src/filiale/qingjian/pc/SecurityCheckCoordinates.vue +359 -359
  149. package/src/filiale/qingjian/pc.js +15 -15
  150. package/src/filiale/qingtongxia/android/AddPlanItem.vue +450 -450
  151. package/src/filiale/qingtongxia/android/SafecheckOrderV.vue +2726 -2726
  152. package/src/filiale/qingtongxia/android/SafecheckUserInfo.vue +782 -782
  153. package/src/filiale/qingtongxia/pc/DefectListNew.vue +594 -594
  154. package/src/filiale/rizhao/android/AddPlanItem.vue +446 -446
  155. package/src/filiale/rizhao/android/SafecheckOrderV.vue +2430 -2430
  156. package/src/filiale/rizhao/android/SafecheckUserInfo.vue +640 -640
  157. package/src/filiale/rizhao/pc/DefectList.vue +489 -489
  158. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +2696 -2696
  159. package/src/filiale/rongchuang/android/checkpapermsg.vue +209 -209
  160. package/src/filiale/ruihua/android/SafecheckOrderV.vue +2747 -2747
  161. package/src/filiale/ruihua/android/SafecheckUserInfo.vue +804 -804
  162. package/src/filiale/shanggao/android/SafecheckOrderV.vue +2426 -2426
  163. package/src/filiale/shanxian/android/SafecheckUserInfo.vue +749 -749
  164. package/src/filiale/shanxian/pc/HiddenSituation.vue +121 -121
  165. package/src/filiale/shanxian/pc/NewCheckpaper.vue +1526 -1526
  166. package/src/filiale/shexian/android/AddPlanItem.vue +444 -444
  167. package/src/filiale/shexian/android/SafecheckOrderV.vue +2879 -2879
  168. package/src/filiale/shexian/pc/DefectListNew.vue +593 -593
  169. package/src/filiale/shexian/pc/NewCheckpaper.vue +1469 -1469
  170. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  171. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  172. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  173. package/src/filiale/siyang/android/AddPlanItem.vue +450 -450
  174. package/src/filiale/siyang/android/CurrentCreate.vue +1051 -1051
  175. package/src/filiale/siyang/android/PhoneRecordInfo.vue +214 -214
  176. package/src/filiale/siyang/android/SafecheckOrderV.vue +2796 -2796
  177. package/src/filiale/siyang/android/SafecheckUserInfo.vue +789 -789
  178. package/src/filiale/siyang/pc/HiddenSituation.vue +167 -167
  179. package/src/filiale/taiyuan/pc/NewCheckpaper.vue +1976 -1976
  180. package/src/filiale/taiyuan/pc/PlanManage.vue +891 -891
  181. package/src/filiale/taiyuan/pc/checkUserList.vue +798 -798
  182. package/src/filiale/tianke/android/AddPlanItem.vue +455 -455
  183. package/src/filiale/tianke/android/SafecheckOrderV.vue +2431 -2431
  184. package/src/filiale/tianke/android/SafecheckUserInfo.vue +744 -744
  185. package/src/filiale/tongchuan/android/AddPlanItem.vue +483 -483
  186. package/src/filiale/tongchuan/android/PhoneRecordInfo.vue +191 -191
  187. package/src/filiale/tongchuan/android/PhoneSellInfo.vue +113 -113
  188. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +720 -720
  189. package/src/filiale/tongchuan/pc/CheckBookDetails.vue +209 -209
  190. package/src/filiale/tongchuan/pc/DefectListWeixiu.vue +484 -484
  191. package/src/filiale/tongchuan/pc/HiddenSituation.vue +166 -166
  192. package/src/filiale/weinan/android/AddPlanItem.vue +438 -438
  193. package/src/filiale/weinan/android/CurrentCreate.vue +1171 -1171
  194. package/src/filiale/weinan/android/CurrentCreateOnline.vue +911 -911
  195. package/src/filiale/weinan/android/SafePlanItem.vue +440 -440
  196. package/src/filiale/weinan/android/SafecheckUserInfo.vue +778 -778
  197. package/src/filiale/weinan/pc/DefectListNew.vue +617 -617
  198. package/src/filiale/weinan/pc/DeviceChange.vue +1088 -1088
  199. package/src/filiale/weinan/pc/HiddenSituation.vue +167 -167
  200. package/src/filiale/weinan/pc/checkScreen.vue +1094 -1094
  201. package/src/filiale/weinanct/android/SafecheckOrderV.vue +2730 -2730
  202. package/src/filiale/weinanct/pc/NewCheckpaper.vue +1315 -1315
  203. package/src/filiale/wensu/android/AddPlanItem.vue +495 -495
  204. package/src/filiale/wensu/android/AndroidDefectDeal.vue +464 -464
  205. package/src/filiale/wensu/android/PaperFeedback.vue +1358 -1358
  206. package/src/filiale/wensu/android/SafecheckOrderV.vue +2430 -2430
  207. package/src/filiale/wensu/android/SafecheckUserInfo.vue +627 -627
  208. package/src/filiale/wensu/pc/DefectListNew.vue +735 -735
  209. package/src/filiale/wenxi/android/AddPlanItem.vue +431 -431
  210. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2671 -2671
  211. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +673 -673
  212. package/src/filiale/wenxi/pc/DefectList.vue +653 -653
  213. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1358 -1358
  214. package/src/filiale/wuan/android/SafecheckOrderV.vue +2241 -2241
  215. package/src/filiale/wuan/android/SafecheckUserInfo.vue +596 -596
  216. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  217. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  218. package/src/filiale/wuhai/android/SafecheckOrderV.vue +2456 -2456
  219. package/src/filiale/wuhai/android/SafecheckUserInfo.vue +573 -573
  220. package/src/filiale/wuhai/pc/NewCheckpaper.vue +1281 -1281
  221. package/src/filiale/xiangyuanzhongai/android/AreaPlan.vue +570 -570
  222. package/src/filiale/xiangyuanzhongai/android/PhoneUpUserinfo.vue +1251 -1251
  223. package/src/filiale/xiangyuanzhongai/android/safeHistoryLook.vue +478 -478
  224. package/src/filiale/xiangyuanzhongai/android.js +16 -16
  225. package/src/filiale/xinkang/android/SafecheckOrderV.vue +1 -1
  226. package/src/filiale/xinkang/pc/CheckSearchUser.vue +1026 -1026
  227. package/src/filiale/xinkang/pc/DefectListWeixiu.vue +475 -475
  228. package/src/filiale/xinliansihui/pc/PaperList.vue +814 -0
  229. package/src/filiale/xinliansihui/pc/PaperVisitMain.vue +206 -0
  230. package/src/filiale/xinliansihui/pc.js +13 -0
  231. package/src/filiale/yangchunboneng/android/AddPlanItem.vue +496 -496
  232. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2865 -2865
  233. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +887 -887
  234. package/src/filiale/yangchunboneng/pc/DefectListNew.vue +576 -576
  235. package/src/filiale/yongzhou/android/SafecheckOrderV.vue +2774 -2774
  236. package/src/filiale/yongzhou/android/SafecheckUserInfo.vue +776 -776
  237. package/src/filiale/yuansheng/android/SafecheckOrderV.vue +2758 -2758
  238. package/src/filiale/yuansheng/android/SafecheckUserInfo.vue +797 -797
  239. package/src/filiale/yuansheng/pc/DefectListNew.vue +524 -524
  240. package/src/filiale/yuansheng/pc/NewCheckpaper.vue +1371 -1371
  241. package/src/filiale/yuansheng/pc/checkmsg.vue +464 -464
  242. package/src/filiale/yunchengminsheng/android/DailyworkloadQuery.vue +491 -491
  243. package/src/filiale/yunchengminsheng/android/PaperFeedback.vue +1509 -1509
  244. package/src/filiale/yunchengminsheng/android/PhoneSellInfo.vue +113 -113
  245. package/src/filiale/yunchengminsheng/android/SafecheckDevices.vue +1270 -1270
  246. package/src/filiale/yunchengminsheng/android/SafecheckUserInfo.vue +785 -785
  247. package/src/filiale/yunchengminsheng/android.js +15 -15
  248. package/src/filiale/yunchengminsheng/pc/PaperList.vue +811 -811
  249. package/src/filiale/yunchengminsheng/pc.js +15 -15
  250. package/src/filiale/zhongsheng/android/BuyRecords.vue +122 -122
  251. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2461 -2461
  252. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +690 -690
  253. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  254. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1322 -1322
  255. package/src/filiale/zhongyi/android/SafecheckOrderV.vue +2431 -2431
  256. package/src/filiale/zhongyi/pc/DefectListNew.vue +514 -514
  257. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  258. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  259. package/src/main.js +32 -33
  260. package/src/safecheck.js +927 -924
  261. package/.trae/.ignore +0 -0
  262. package/.vscode/settings.json +0 -3
@@ -1,811 +1,811 @@
1
- <template>
2
- <div class="flex-row" v-show="showinfo1">
3
- <div class="basic-main">
4
- <criteria-paged :model="model" v-ref:paged @sort="sort">
5
- <criteria partial='criteria' class="search_area" @condition-changed='$parent.selfSearch' v-ref:criteria>
6
- <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
7
- <div class="row">
8
- <div class="form-group col-sm-2" >
9
- <label class="font_normal_body">客户编号</label>
10
- <input type="text" class="input_search" v-model="model.f_userinfo_code"
11
- style="width: 60%" placeholder="客户编号" condition="f_userinfo_code='{}'">
12
- </div>
13
- <div class="form-group col-sm-2" >
14
- <label class="font_normal_body">客户名称</label>
15
- <input type="text" class="input_search" v-model="model.f_user_name"
16
- style="width: 60%" placeholder="客户名称" condition="f_user_name like '%{}%'">
17
- </div>
18
- <div class="form-group col-sm-2" >
19
- <label class="font_normal_body">客户电话</label>
20
- <input type="text" class="input_search" v-model="model.f_user_phone"
21
- style="width: 60%" placeholder="客户电话" condition="f_user_phone like '%{}%'">
22
- </div>
23
- <div class="form-group col-sm-2" >
24
- <label class="font_normal_body">客户表号</label>
25
- <input type="text" class="input_search" v-model="model.f_meternumber"
26
- style="width: 60%" placeholder="客户表号" condition="f_meternumber like '%{}%'">
27
- </div>
28
- <div class="form-group col-sm-2" >
29
- <label class="font_normal_body">小&emsp;&emsp;区</label>
30
- <input type="text" class="input_search" v-model="model.f_residential_area"
31
- style="width: 60%" placeholder="小区" condition="f_residential_area like '%{}%'">
32
- </div>
33
- <div class="form-group col-sm-2" >
34
- <label class="font_normal_body">详细地址</label>
35
- <input type="text" class="input_search" v-model="model.f_address"
36
- style="width: 60%" placeholder="详细地址" condition="f_address like '%{}%'">
37
- </div>
38
- <div class="form-group col-sm-2" style="width: auto;margin-top:8px;float: right">
39
-
40
- <export-excel :data="$parent.$parent.searchData"
41
- :field="$parent.$parent.excelHeaders"
42
- :choose-col="true"
43
- sqlurl="api/af-safecheck/logic/exportfile" sql-name="查找安检单" template-name='安检记录明细'></export-excel>
44
- <button class="button_spacing button_search" @click="$parent.$parent.showaudio()" v-if="$parent.$parent.audioshow">隐藏</button>
45
-
46
- <button class="button_spacing button_search" @click="search()">查询</button>
47
- <div style="float: right" class="button_spacing"
48
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
49
- @click="$parent.$parent.hidden()"></div>
50
- </div>
51
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
52
- <label class="font_normal_body">安检计划</label>
53
- <input type="text" class="input_search" v-model="$parent.$parent.model.f_check_plan.f_plan_name"
54
- @click="$parent.$parent.showChooser"
55
- style="width: 60%" placeholder="安检计划" readonly="readonly">
56
- </div>
57
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
58
- <label class="font_normal_body">开始时间</label>
59
- <datepicker
60
- :value.sync="model.f_check_start"
61
- placeholder='开始时间' style="width: 60%"
62
- :disabled-days-of-week="[]"
63
- :format="'yyyy-MM-dd'"
64
- :show-rest-button="reset"
65
- v-model="model.f_check_start"
66
- condition="f_offsite_time > ='{} 00:00:00'">
67
- </datepicker>
68
- </div>
69
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
70
- <label class="font_normal_body">结束时间</label>
71
- <datepicker
72
- :value.sync="model.f_check_end"
73
- placeholder='结束时间' style="width: 60%"
74
- :disabled-days-of-week="[]"
75
- :format="'yyyy-MM-dd'"
76
- :show-rest-button="reset"
77
- v-model="model.f_check_end"
78
- condition="f_offsite_time <= '{} 23:59:59'">
79
- </datepicker>
80
- </div>
81
-
82
-
83
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
84
-
85
- <label class="font_normal_body">安检类型</label>
86
- <v-select :value.sync="model.f_safecheck_type" v-model='model.f_safecheck_type'
87
- :value-single="true" style="width: 60%"
88
- class="select_list select"
89
- :options='$parent.$parent.safetype' placeholder='安检类型'
90
- close-on-select
91
- condition="f_safecheck_type = '{}'"></v-select>
92
- </div>
93
-
94
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
95
-
96
- <label class="font_normal_body">客户类型</label>
97
- <v-select :value.sync="model.f_check_type" v-model='model.f_check_type'
98
- :value-single="true" style="width: 60%"
99
- class="select_list select"
100
- :options='$parent.$parent.checktype' placeholder='客户类型'
101
- close-on-select
102
- condition="f_check_type = '{}'"></v-select>
103
- </div>
104
-
105
-
106
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
107
- <label class="font_normal_body">安检状态</label>
108
- <v-select id="f_entry"
109
- class="select_list select"
110
- placeholder='安检状态' style="width: 60%"
111
- v-model='model.f_entry'
112
- :value.sync="$parent.$parent.model.f_entry"
113
- :options='$parent.$parent.f_entry_status'
114
- condition=""
115
- :value-single="true"
116
- close-on-select clear-button></v-select>
117
- </div>
118
- <div class="col-sm-4 form-group" v-show="$parent.$parent.criteriaShow" style="margin: 0">
119
- <role-selector-safe
120
- role-name="安检员"
121
- role-lable="安&nbsp;检&nbsp;员&nbsp;"
122
- @re-res="$parent.$parent.getRes"
123
- :value.sync="model.f_checker_id"
124
- v-model="model.f_checker_id"
125
- condition="f_checker_name = '{}'">
126
- </role-selector-safe>
127
- </div>
128
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
129
- <label class="font_normal_body">片&emsp;&emsp;区</label>
130
- <v-select class="select_list select"
131
- placeholder='片区/管理站' style="width: 60%"
132
- :value.sync="model.f_slice_area" v-model="model.f_slice_area"
133
- :options='$parent.$parent.sliceArea'
134
- filer-key="name"
135
- close-on-select clear-button
136
- condition="f_slice_area='{}'"
137
- @change="$parent.$parent.getmeterbook(model.f_slice_area)"
138
- :value-single="true">
139
- </v-select>
140
- </div>
141
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
142
- <label class="font_normal_body">抄&ensp;表&ensp;册</label>
143
- <v-select class="select_list select"
144
- placeholder='抄表册' style="width: 60%"
145
- :value.sync="model.f_meter_book_num" v-model="model.f_meter_book_num"
146
- :options='$parent.$parent.cbc'
147
- filer-key="name"
148
- close-on-select clear-button
149
- condition="f_meter_book_num={}"
150
- :value-single="true">
151
- </v-select>
152
- </div>
153
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
154
- <label class="font_normal_body">省&ensp;市&ensp;区</label>
155
- <v-select class="select_list select"
156
- placeholder='请选择' style="width: 60%"
157
- :value.sync="model.f_pcd" v-model="model.f_pcd"
158
- :options='$parent.$parent.pcds'
159
- filer-key="name"
160
- close-on-select clear-button
161
- condition="f_pcd='{}'"
162
- :value-single="true">
163
- </v-select>
164
- </div>
165
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
166
- <label class="font_normal_body">开户时间</label>
167
- <datepicker
168
- :value.sync="model.f_check_gasstart"
169
- placeholder='开始时间' style="width: 60%"
170
- :disabled-days-of-week="[]"
171
- :format="'yyyy-MM-dd'"
172
- :show-rest-button="reset"
173
- v-model="model.f_check_gasstart"
174
- condition="f_gas_date > ='{} 00:00:00'">
175
- </datepicker>
176
- </div>
177
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
178
- <label class="font_normal_body">开户时间</label>
179
- <datepicker
180
- :value.sync="model.f_check_gasend"
181
- placeholder='结束时间' style="width: 60%"
182
- :disabled-days-of-week="[]"
183
- :format="'yyyy-MM-dd'"
184
- :show-rest-button="reset"
185
- v-model="model.f_check_gasend"
186
- condition="f_gas_date <= '{} 23:59:59'">
187
- </datepicker>
188
- </div>
189
- <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit && $parent.$parent.criteriaShow ">
190
- <label class="font_normal_body">审&ensp;核&ensp;人</label>
191
- <input type="text" class="input_search" v-model="model.f_approved_by"
192
- style="width: 60%" placeholder="审核人" condition="f_approved_by like '%{}%'">
193
- </div>
194
- <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit && $parent.$parent.criteriaShow ">
195
- <label class="font_normal_body">审核时间</label>
196
- <datepicker
197
- :value.sync="model.f_approved_timestart"
198
- placeholder='开始时间' style="width: 60%"
199
- :disabled-days-of-week="[]"
200
- :format="'yyyy-MM-dd'"
201
- :show-rest-button="reset"
202
- v-model="model.f_approved_timestart"
203
- condition="f_approved_time > ='{} 00:00:00'">
204
- </datepicker>
205
- </div>
206
- <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit && $parent.$parent.criteriaShow ">
207
- <label class="font_normal_body">审核时间</label>
208
- <datepicker
209
- :value.sync="model.f_approved_timeend"
210
- placeholder='结束时间' style="width: 60%"
211
- :disabled-days-of-week="[]"
212
- :format="'yyyy-MM-dd'"
213
- :show-rest-button="reset"
214
- v-model="model.f_approved_timeend"
215
- condition="f_approved_time <= '{} 23:59:59'">
216
- </datepicker>
217
- </div>
218
- <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit &&$parent.$parent.criteriaShow">
219
- <label class="font_normal_body" title="参数管理:安检单审核状态">审核状态</label>
220
- <v-select class="select_list select"
221
- placeholder='请选择' style="width: 60%"
222
- :value.sync="model.f_approved" v-model="model.f_approved"
223
- :options='$parent.$parent.f_approval_states'
224
- filer-key="name"
225
- :multiple="true"
226
- condition="f_approved in {}"
227
- >
228
- </v-select>
229
- </div>
230
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
231
- <label class="font_normal_body">气表品牌</label>
232
- <v-select
233
- class="select_list select"
234
- placeholder='气表品牌' style="width: 60%"
235
- v-model='model.tableBrand'
236
- :value.sync="model.tableBrand"
237
- :options='$parent.$parent.tableBrands'
238
- condition="f_meter_brand = '{}'"
239
- :value-single="true"
240
- close-on-select clear-button></v-select>
241
- </div>
242
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
243
- <label class="font_normal_body">有无计划</label>
244
- <v-select class="select_list select"
245
- placeholder='请选择' style="width: 60%"
246
- :value.sync="model.f_no_checkplan" v-model="model.f_no_checkplan"
247
- :options='$parent.$parent.no_checkplans'
248
- filer-key="name"
249
- close-on-select clear-button
250
- condition="f_no_checkplan='{}'"
251
- :value-single="true">
252
- </v-select>
253
- </div>
254
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
255
- <label class="font_normal_body">未用燃气</label>
256
- <v-select class="select_list select"
257
- placeholder='请选择' style="width: 60%"
258
- :value.sync="model.f_usegas" v-model="model.f_usegas"
259
- :options='$parent.$parent.usegas'
260
- filer-key="name"
261
- close-on-select clear-button
262
- condition="f_usegas='{}'"
263
- :value-single="true">
264
- </v-select>
265
- </div>
266
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
267
- <label class="font_normal_body">客户卡号</label>
268
- <input type="text" class="input_search" v-model="model.f_card_id"
269
- style="width: 60%" placeholder="客户卡号" condition="f_card_id like '%{}%'">
270
- </div>
271
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
272
- <label class="font_normal_body">距上次安检天数</label>
273
- <input type="number" class="input_search" v-model="model.f_check_date"
274
- style="width: 60%" placeholder="距上次安检天数" >
275
- </div>
276
- </div>
277
- <modal :show.sync="$parent.$parent.showModal" v-ref:modal backdrop="false">
278
- <div slot="modal-header" class="modal-header">
279
- <h4 class="modal-title">
280
- 选择计划
281
- </h4>
282
- </div>
283
- <div slot="modal-body" class="modal-body">
284
- <plan-chooser :f.sync="$parent.$parent.fun" v-ref:chooser></plan-chooser>
285
- </div>
286
- <div slot="modal-footer" class="modal-footer" style="text-align: center">
287
- <button class="button_search" @click="$parent.$parent.ok">确认</button>
288
- <button class="button_search" @click="$parent.$parent.cancel">取消</button>
289
- </div>
290
- </modal>
291
- </div>
292
- </criteria>
293
- <data-grid class="list_area table_sy" style="overflow: hidden" :model="model" partial='list' v-ref:grid>
294
- <template partial='head'>
295
- <tr>
296
- <th>
297
- <nobr>客户编号</nobr>
298
- </th>
299
- <th>
300
- <nobr>客户名称</nobr>
301
- </th>
302
- <th>
303
- <nobr>客户表号</nobr>
304
- </th>
305
- <th>
306
- <nobr>气表品牌</nobr>
307
- </th>
308
- <th>
309
- <nobr>累购气量</nobr>
310
- </th>
311
- <th>
312
- <nobr>已用气量</nobr>
313
- </th>
314
- <th>
315
- <nobr>剩余气量</nobr>
316
- </th>
317
- <th>
318
- <nobr>气量异常差值</nobr>
319
- </th>
320
- <th>
321
- <nobr>客户电话</nobr>
322
- </th>
323
- <th>
324
- <nobr>客户类型</nobr>
325
- </th>
326
- <th>
327
- <nobr>客户地址</nobr>
328
- </th>
329
- <th>
330
- <nobr>安检状态</nobr>
331
- </th>
332
- <th>
333
- <nobr>计划名称</nobr>
334
- </th>
335
- <th>
336
- <nobr>用气状态</nobr>
337
- </th>
338
- <th>
339
- <data-order field="f_offsite_time" name="安检时间"></data-order>
340
- </th>
341
- <th>
342
- <nobr>安检员</nobr>
343
- </th>
344
- <th>
345
- <nobr>备注</nobr>
346
- </th>
347
- <th>
348
- <nobr>开户时间</nobr>
349
- </th>
350
- <th v-if="$parent.$parent.$parent.safeAudit">
351
- <nobr>审核人</nobr>
352
- </th>
353
- <th v-if="$parent.$parent.$parent.safeAudit">
354
- <nobr>审核起始</nobr>
355
- </th>
356
- <th v-if="$parent.$parent.$parent.safeAudit">
357
- <nobr>审核结束</nobr>
358
- </th>
359
- <th v-if="$parent.$parent.$parent.safeAudit">
360
- <nobr>审核状态</nobr>
361
- </th>
362
- <th v-if="$parent.$parent.$parent.safeAudit">
363
- <nobr>审核未通过原因</nobr>
364
- </th>
365
- <th>
366
- <nobr>操作</nobr>
367
- </th>
368
- <th v-if="$parent.$parent.$parent.audioshow">
369
- <nobr>录音</nobr>
370
- </th>
371
- </tr>
372
- </template>
373
- <template partial='body'>
374
-
375
- <td style="text-align: center">{{row.f_userinfo_code}}</td>
376
- <td style="text-align: center">{{row.f_user_name}}</td>
377
- <td style="text-align: center">{{row.f_meternumber}}</td>
378
- <td style="text-align: center">{{row.f_meter_brand}}</td>
379
- <td style="text-align: center">{{row.f_leigou}}</td>
380
- <td style="text-align: center">{{row.f_yiyong}}</td>
381
- <td style="text-align: center">{{row.f_shengyu}}</td>
382
- <td style="text-align: center">{{row.f_qlchazhi}}</td>
383
- <td style="text-align: center">{{row.f_user_phone}}</td>
384
- <td style="text-align: center">{{row.f_check_type}}</td>
385
- <td style="text-align: center">{{ row.f_address }}</td>
386
- <td style="text-align: center">{{ row.f_entry_status }}</td>
387
- <td style="text-align: center">{{ row.f_plan_name }}</td>
388
- <td style="text-align: center">{{ row.f_usegas }}</td>
389
- <td style="text-align: center">{{ row.f_offsite_time }}</td>
390
- <td style="text-align: center">{{ row.f_checker_name }}</td>
391
- <td style="text-align: center">{{ row.f_repair_approved_note }}</td>
392
- <td style="text-align: center">{{ row.f_gas_date }}</td>
393
- <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">{{ row.f_approved_by }}</td>
394
- <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">{{ row.f_approvedstart_time }}</td>
395
- <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">{{ row.f_approved_time }}</td>
396
- <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">
397
- {{ row.f_approved ? row.f_approved : '未审核' }}
398
- </td>
399
- <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">
400
- {{row.f_approved_note}}
401
- </td>
402
- <td style="text-align: center">
403
- <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.change(row)'>查看</button>
404
-
405
-
406
- </td>
407
- <td style="text-align: center" v-if="$parent.$parent.$parent.audioshow">
408
- <!-- <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.change(row)'>查看</button>-->
409
- <audio controls="controls" v-if="row.f_recording1_path">
410
- <source type="audio/mpeg" :src="'rs/audio/file/'+row.f_recording1_path">
411
- </audio>
412
- <!--<button type="button" class="button_new-1 button_spacing" data-toggle="dropdown"
413
- @click="$parent.$parent.$parent.print(row)">
414
- 打印
415
- </button>-->
416
- </td>
417
- </template>
418
- </data-grid>
419
- </criteria-paged>
420
- <check-msg v-if="showcheckmsg" :show="showcheckmsg" :data="checkInfo"></check-msg>
421
- </div>
422
- </div>
423
- <new-check-paper v-if="showinfo2" :f_plan_id="shouinfodata.f_check_plan_id" :item="shouinfodata" :role="'view'" v-on:showback="showback1"></new-check-paper>
424
- <new-check-paper-temp v-if="showinfo3" :f_plan_id="shouinfodata.f_check_plan_id" :item="shouinfodata" :role="'view'" v-on:showback="showback2"></new-check-paper-temp>
425
- </template>
426
-
427
- <script>
428
- import {PagedList} from 'vue-client'
429
- import co from 'co'
430
- import * as Util from '../../Util'
431
- import HttpResetClass from "vue-client/src/plugins/HttpResetClass";
432
- let select = function* (self) {
433
- let http = new HttpResetClass()
434
- let getGasman = yield http.load('POST', '/rs/search', {
435
- source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
436
- userid: self.$login.f.id
437
- }, {resolveMsg: null, rejectMsg: null})
438
- ////tag
439
- self.checkersid.push({label: '全部', value: ''})
440
- getGasman.data.forEach((checker) => {
441
- self.checkersid.push({label: checker.name, value: checker.id})
442
- })
443
- }
444
-
445
- export default {
446
- title: '安检结果查看',
447
- data() {
448
- let model = new PagedList('api/af-safecheck/sql/查找安检单', 20, {
449
- f_plan_id: 'this.f_plan_id',
450
- f_approved: 'this.f_approved',
451
- f_entry_status: 'this.f_entry',
452
- f_no_checkplan: 'this.f_no_checkplan',
453
- f_filialeid: 'this.f_filialeid',
454
- orderitem: "'f_offsite_time desc'"
455
- })
456
- model.f_check_type = ''
457
- model.f_plan_id = ''
458
- model.f_approved = ''
459
- model.f_entry = ''
460
- model.f_no_checkplan = ''
461
- model.f_filialeid = `('${this.$login.f.orgid}')`
462
- //model.f_check_type='民用'
463
- // let searchData={
464
- // f_plan_id: this.model.f_checker_id==undefined?"":this.model.f_checker_id,
465
- // f_approved: this.model.f_approved,
466
- // f_entry_status: this.model.f_entry,
467
- // f_no_checkplan:this.model.f_no_checkplan[0],
468
- // f_filialeid: this.model.f_filialeid,
469
- // //orderitem: this.model.f_offsite_time,
470
- // //condition:this.model.condition
471
- // }
472
- // model.f_subcompany = this.$login.f.f_fengongsi
473
- return {
474
- showinfo1:true,
475
- showinfo2:false,
476
- showinfo3:false,
477
- shouinfodata:{},
478
- tableBrands: [{label: '全部', value: ''}],
479
- audioshow: false,
480
- safeAudit: this.$appdata.getSingleValue('安检审核') == '是' ? true : false,
481
- searchData: {
482
- condition: "1=1",
483
- orderitem: "f_offsite_time desc",
484
- f_plan_id: "",
485
- f_approved: '',
486
- f_entry_status: '',
487
- f_no_checkplan: '',
488
- f_filialeid: `('${this.$login.f.orgid}')`
489
- },
490
- model: model,
491
- excelHeaders: {
492
- //searchData:searchData
493
- 'f_userinfo_code': '客户编号',
494
- 'f_user_name': '客户姓名',
495
- 'f_meternumber':'客户表号',
496
- 'f_user_phone':'客户电话',
497
- 'f_check_type': '客户类型',
498
- 'f_residential_area': '小区',
499
- 'f_address': '客户地址',
500
- 'f_entry_status': '安检状态',
501
- 'f_usegas': '用气状态',
502
- 'f_offsite_time': '安检时间',
503
- 'f_checker_name': '安检员',
504
- 'f_safecheck_type':'安检类型',
505
- 'f_repair_approved_note': '备注',
506
- 'f_gas_date': '开户时间',
507
- 'f_approved_by': '审核人',
508
- 'f_approved': '审核状态',
509
- 'f_approved_time': '审核时间',
510
- 'f_plan_name':'计划名称',
511
- 'f_meter_brand':'气表品牌',
512
- 'f_leigou': '累购气量',
513
- 'f_yiyong': '已用气量',
514
- 'f_shengyu': '剩余气量',
515
- 'f_qlchazhi': '气量异常差值'
516
- },
517
- fun: this.$login.f,
518
- pcds:[],
519
- checkersid: [],
520
- safetype: this.$appdata.getParam('安检类型')?[{label: '全部', value: ''}, ...this.$appdata.getParam('安检类型')]:[{label: '全部', value: ''}],
521
- criteriaShow: false,
522
- checktype: this.$appdata.getParam('用户类型')?[{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]:[{label: '全部', value: ''}],
523
- f_check_type:[{label:'全部',value:''},{label:'民用',value:'民用'},{label:'非民用',value:'非民用'}],
524
- showModal: false,
525
- safe_types:this.$appdata.getParam('计划类型')?[{label: '全部', value: ''}, ...this.$appdata.getParam('计划类型')]:[{label: '全部', value: ''}],
526
- f_approval_states: this.$appdata.getParam('安检单审核状态')?[{label: '全部', value: ''}, ...this.$appdata.getParam('安检单审核状态')]:[{label: '全部', value: ''}],
527
- f_entry_status: this.$appdata.getParam('安检状态')?[{label: '全部', value: ''}, ...this.$appdata.getParam('安检状态')]:[{label: '全部', value: ''}],
528
- no_checkplans: this.$appdata.getParam('有无计划')?[{label: '全部', value: ''}, ...this.$appdata.getParam('有无计划')]:[{label: '全部', value: ''}],
529
- usegas: this.$appdata.getParam('用气状态')?[{label: '全部', value: ''}, ...this.$appdata.getParam('用气状态')]:[{label: '全部', value: ''}],
530
- showcheckmsg: false,
531
- checkInfo: {},
532
- orderDefault: "'f_offsite_time'",
533
- orderFields: {
534
- f_offsite_time: 'no'
535
- },
536
- sliceArea: [],
537
- cbc:[]
538
- }
539
- },
540
- created() {
541
- // 使用 $on 监听事件
542
- this.$root.$on('audit-status-changed', () => {
543
- console.log('收到审核状态变更事件')
544
- this.refresh()
545
- })
546
- },
547
- beforeDestroy() {
548
- // 记得在组件销毁前移除事件监听
549
- this.$root.$off('audit-status-changed')
550
- },
551
- methods: {
552
- showback1(){
553
- this.showinfo1 = true
554
- this.showinfo2 = false
555
- },
556
- showback2(){
557
- this.showinfo1 = true
558
- this.showinfo3 = false
559
- },
560
- //气表品牌查询
561
- getTableBrands() {
562
- new HttpResetClass().load("POST", `/api/af-safecheck/sql/safe_singleTable_OrderBy`,
563
- {data: {items: "*", tablename: "t_gasbrand", orderitem: "id", condition: ` 1=1 `}},
564
- {resolveMsg: null, rejectMsg: null}).then((resp) => {
565
- resp.data.forEach((result) => {
566
- this.tableBrands.push({label: result.f_meter_brand, value: result.f_meter_brand})
567
- })
568
- })
569
- },
570
- //获取省市区列表
571
- getPcd(val){
572
- this.pcds = [{label:'全部',value:''}]
573
- new HttpResetClass().load("POST", `/api/af-safecheck/sql/safe_singleTable_OrderBy`,
574
- {data:{items:"*",tablename:"t_pcd",orderitem:"id",condition:`f_orgid in ${val}`}},
575
- {resolveMsg: null, rejectMsg: null}).then((pcdlist)=>{
576
- pcdlist.data.forEach((result)=>{
577
- this.pcds.push({label:result.f_pcd,value:result.f_pcd})
578
- })
579
- })
580
- },
581
- showaudio(){
582
- //tag
583
- this.audioshow=!this.audioshow
584
- //tag
585
- },
586
- getmeterbook(val){
587
- this.cbc=[]
588
- this.cbc.push({
589
- label:'全部',
590
- value:''
591
- })
592
- if (val==''){
593
-
594
- this.cbcs.forEach(res=>{
595
- this.cbc.push({
596
- label:res.f_book_name,
597
- value:res.id
598
- })
599
- })
600
- }else{
601
- this.cbcs.forEach(res=>{
602
- if (res.f_book_slice_area==val){
603
- this.cbc.push({
604
- label:res.f_book_name,
605
- value:res.id
606
- })
607
- }
608
- })
609
- }
610
- },
611
- Mreadibook(val){
612
- ////tag
613
- ////tag
614
- if (val){
615
- new HttpResetClass().load('POST',`/api/af-safecheck/sql/safe_singleTable_OrderBy`, {data: {
616
- items: 'name',
617
- tablename: 't_zone',
618
- condition: `parentid in ${val}`,
619
- orderitem: 'id'
620
- }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
621
- this.sliceArea=[]
622
- this.sliceArea.push({
623
- label:'全部',
624
- value:''
625
- })
626
- res.data.forEach(ress=>{
627
- this.sliceArea.push({
628
- label:ress.name,
629
- value:ress.name
630
- })
631
- })
632
-
633
- })
634
- }
635
- },
636
- getAllMeterBook(val){
637
- ////tag
638
- ////tag
639
- this.cbcs=[]
640
- if (val){
641
- new HttpResetClass().load('POST',`/api/af-safecheck/sql/safe_singleTable_OrderBy`, {data: {
642
- items: 'f_book_name,f_book_slice_area,id',
643
- tablename: 't_meter_book',
644
- condition: `f_filiale_id in ${val}`,
645
- orderitem: 'id'
646
- }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
647
- res.data.forEach(ress=>{
648
- this.cbcs.push({
649
- id:ress.id,
650
- f_book_name:ress.f_book_name,
651
- f_book_slice_area:ress.f_book_slice_area
652
- })
653
- })
654
- this.cbc=[]
655
- this.cbc.push({
656
- label:'全部',
657
- value:''
658
- })
659
- this.cbcs.forEach(res=>{
660
- this.cbc.push({
661
- label:res.f_book_name,
662
- value:res.id
663
- })
664
- })
665
- })
666
- }
667
- },
668
- getRes(obj) {
669
- this.model.f_filialeid = this.$login.convertToIn(obj.resids);
670
- this.searchData.f_filialeid = this.$login.convertToIn(obj.resids);
671
- this.Mreadibook(this.model.f_filialeid)
672
- this.getAllMeterBook(this.model.f_filialeid)
673
- this.getPcd(this.model.f_filialeid)
674
- //this.$refs.paged.$refs.criteria.search()
675
- },
676
-
677
- change(row) {
678
- row.f_upload_state = '已传'
679
- this.shouinfodata = JSON.parse(JSON.stringify(row))
680
- this.showinfo1 = false
681
- if (row.f_safe_type == '已挂表未办卡安检'){
682
- this.showinfo2 = false
683
- this.showinfo3 = true
684
- return
685
- }
686
- this.showinfo2 = true
687
- this.showinfo3 = false
688
- },
689
- showChooser() {
690
- this.showModal = true
691
- },
692
- hidden() {
693
- this.criteriaShow = !this.criteriaShow
694
- },
695
- refresh() {
696
- this.$refs.paged.$refs.criteria.search()
697
- },
698
- ok() {
699
- this.showModal = false
700
- if (this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow.id) {
701
- this.model.f_plan_id = this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow.id
702
- this.model.f_check_plan=this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow
703
- }
704
- },
705
- cancel() {
706
- this.showModal = false
707
- this.model.f_check_plan = {f_plan_name: '', id: ''}
708
- this.model.f_plan_id=''
709
- },
710
- print(row) {
711
- this.showcheckmsg = true
712
- this.checkInfo = row
713
- },
714
-
715
- sort(field, rule) {
716
- // 将所有排序方式设为不排序,实现相互排斥
717
- for (let key in this.orderFields) {
718
- if (key === field) {
719
- this.orderFields[key] = rule
720
- } else {
721
- this.orderFields[key] = 'no'
722
- }
723
- }
724
- // 如果新规则不排序,还原为默认排序
725
- if (rule === 'no') {
726
- this.model.paramSource.orderitem = `'${this.orderDefault}'`
727
- } else {
728
- this.model.paramSource.orderitem = `'${field} ${rule}'`
729
- }
730
- this.search()
731
- },
732
- search() {
733
- console.log('审核通过回调')
734
- this.$refs.paged.$refs.criteria.search()
735
- },
736
- selfSearch(args) {
737
- ////tag
738
- //args.condition+=" and f_check_type='民用'"
739
- if(args.model.f_check_date){
740
- const daysBefore = Number(args.model.f_check_date);
741
- if ( daysBefore > 0) {
742
- // 获取当前日期
743
- const now = new Date();
744
- // 计算三天前的日期
745
- const threeDaysBefore = new Date(now.getTime() - (daysBefore * 24 * 60 * 60 * 1000));
746
- // 如果需要格式化日期,可以使用Date对象的方法
747
- var formattedDate = threeDaysBefore.toISOString().split('T')[0];
748
- args.condition += ` and f_offsite_time <='${formattedDate} 23:59:59'`;
749
- } else {
750
- console.error('f_check_date不是一个有效的正整数');
751
- }
752
- }
753
- this.model.search(args.condition, args.model, args.condValue)
754
- }
755
- },
756
- ready() {
757
- if(this.safeAudit){
758
- let oa = {
759
- 'f_approved_by':'审核人',
760
- 'f_approvedstart_time':'审核开始时间',
761
- 'f_approved_time':'审核结束时间',
762
- 'f_approved':'审核状态',
763
- 'f_approved_note': '审核备注'
764
- }
765
- this.excelHeaders = Object.assign({}, this.excelHeaders, oa)
766
- }
767
- this.function = this.f
768
- //获取气表品牌
769
- this.getTableBrands()
770
- let gen = select(this)
771
- //this.pianqu()
772
- this.Mreadibook(`('${this.$login.f.orgid}')`)
773
- co(gen)
774
- this.$refs.paged.$refs.criteria.model.f_check_start = Util.toStartDateString() + ' 00:00:00'
775
- this.$refs.paged.$refs.criteria.model.f_check_end = Util.toEndDateString() + ' 23:59:59'
776
- },
777
- watch: {
778
- 'model.f_no_checkplan'(val) {
779
- if (this.model.f_no_checkplan){
780
- this.searchData.f_no_checkplan = val
781
- }
782
- if (this.model.f_no_checkplan == '有计划安检') {
783
-
784
- this.showChooser()
785
- }
786
- },
787
- 'model.condition'(val) {
788
- if (val) {
789
- this.searchData.condition = val
790
- }
791
-
792
- },
793
- 'model.f_entry'(val) {
794
- this.searchData.f_entry_status = val
795
- },
796
- 'model.f_plan_id'(val) {
797
- if (val) {
798
- this.searchData.f_plan_id = val
799
- }
800
- },
801
- 'model.f_slice_area'(val) {
802
- },
803
- 'model.f_approved'(val) {
804
- if (val) {
805
- this.searchData.f_approved = val
806
- }
807
- }
808
- }
809
-
810
- }
811
- </script>
1
+ <template>
2
+ <div class="flex-row" v-show="showinfo1">
3
+ <div class="basic-main">
4
+ <criteria-paged :model="model" v-ref:paged @sort="sort">
5
+ <criteria partial='criteria' class="search_area" @condition-changed='$parent.selfSearch' v-ref:criteria>
6
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
7
+ <div class="row">
8
+ <div class="form-group col-sm-2" >
9
+ <label class="font_normal_body">客户编号</label>
10
+ <input type="text" class="input_search" v-model="model.f_userinfo_code"
11
+ style="width: 60%" placeholder="客户编号" condition="f_userinfo_code='{}'">
12
+ </div>
13
+ <div class="form-group col-sm-2" >
14
+ <label class="font_normal_body">客户名称</label>
15
+ <input type="text" class="input_search" v-model="model.f_user_name"
16
+ style="width: 60%" placeholder="客户名称" condition="f_user_name like '%{}%'">
17
+ </div>
18
+ <div class="form-group col-sm-2" >
19
+ <label class="font_normal_body">客户电话</label>
20
+ <input type="text" class="input_search" v-model="model.f_user_phone"
21
+ style="width: 60%" placeholder="客户电话" condition="f_user_phone like '%{}%'">
22
+ </div>
23
+ <div class="form-group col-sm-2" >
24
+ <label class="font_normal_body">客户表号</label>
25
+ <input type="text" class="input_search" v-model="model.f_meternumber"
26
+ style="width: 60%" placeholder="客户表号" condition="f_meternumber like '%{}%'">
27
+ </div>
28
+ <div class="form-group col-sm-2" >
29
+ <label class="font_normal_body">小&emsp;&emsp;区</label>
30
+ <input type="text" class="input_search" v-model="model.f_residential_area"
31
+ style="width: 60%" placeholder="小区" condition="f_residential_area like '%{}%'">
32
+ </div>
33
+ <div class="form-group col-sm-2" >
34
+ <label class="font_normal_body">详细地址</label>
35
+ <input type="text" class="input_search" v-model="model.f_address"
36
+ style="width: 60%" placeholder="详细地址" condition="f_address like '%{}%'">
37
+ </div>
38
+ <div class="form-group col-sm-2" style="width: auto;margin-top:8px;float: right">
39
+
40
+ <export-excel :data="$parent.$parent.searchData"
41
+ :field="$parent.$parent.excelHeaders"
42
+ :choose-col="true"
43
+ sqlurl="api/af-safecheck/logic/exportfile" sql-name="查找安检单" template-name='安检记录明细'></export-excel>
44
+ <button class="button_spacing button_search" @click="$parent.$parent.showaudio()" v-if="$parent.$parent.audioshow">隐藏</button>
45
+
46
+ <button class="button_spacing button_search" @click="search()">查询</button>
47
+ <div style="float: right" class="button_spacing"
48
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
49
+ @click="$parent.$parent.hidden()"></div>
50
+ </div>
51
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
52
+ <label class="font_normal_body">安检计划</label>
53
+ <input type="text" class="input_search" v-model="$parent.$parent.model.f_check_plan.f_plan_name"
54
+ @click="$parent.$parent.showChooser"
55
+ style="width: 60%" placeholder="安检计划" readonly="readonly">
56
+ </div>
57
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
58
+ <label class="font_normal_body">开始时间</label>
59
+ <datepicker
60
+ :value.sync="model.f_check_start"
61
+ placeholder='开始时间' style="width: 60%"
62
+ :disabled-days-of-week="[]"
63
+ :format="'yyyy-MM-dd'"
64
+ :show-rest-button="reset"
65
+ v-model="model.f_check_start"
66
+ condition="f_offsite_time > ='{} 00:00:00'">
67
+ </datepicker>
68
+ </div>
69
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
70
+ <label class="font_normal_body">结束时间</label>
71
+ <datepicker
72
+ :value.sync="model.f_check_end"
73
+ placeholder='结束时间' style="width: 60%"
74
+ :disabled-days-of-week="[]"
75
+ :format="'yyyy-MM-dd'"
76
+ :show-rest-button="reset"
77
+ v-model="model.f_check_end"
78
+ condition="f_offsite_time <= '{} 23:59:59'">
79
+ </datepicker>
80
+ </div>
81
+
82
+
83
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
84
+
85
+ <label class="font_normal_body">安检类型</label>
86
+ <v-select :value.sync="model.f_safecheck_type" v-model='model.f_safecheck_type'
87
+ :value-single="true" style="width: 60%"
88
+ class="select_list select"
89
+ :options='$parent.$parent.safetype' placeholder='安检类型'
90
+ close-on-select
91
+ condition="f_safecheck_type = '{}'"></v-select>
92
+ </div>
93
+
94
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
95
+
96
+ <label class="font_normal_body">客户类型</label>
97
+ <v-select :value.sync="model.f_check_type" v-model='model.f_check_type'
98
+ :value-single="true" style="width: 60%"
99
+ class="select_list select"
100
+ :options='$parent.$parent.checktype' placeholder='客户类型'
101
+ close-on-select
102
+ condition="f_check_type = '{}'"></v-select>
103
+ </div>
104
+
105
+
106
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
107
+ <label class="font_normal_body">安检状态</label>
108
+ <v-select id="f_entry"
109
+ class="select_list select"
110
+ placeholder='安检状态' style="width: 60%"
111
+ v-model='model.f_entry'
112
+ :value.sync="$parent.$parent.model.f_entry"
113
+ :options='$parent.$parent.f_entry_status'
114
+ condition=""
115
+ :value-single="true"
116
+ close-on-select clear-button></v-select>
117
+ </div>
118
+ <div class="col-sm-4 form-group" v-show="$parent.$parent.criteriaShow" style="margin: 0">
119
+ <role-selector-safe
120
+ role-name="安检员"
121
+ role-lable="安&nbsp;检&nbsp;员&nbsp;"
122
+ @re-res="$parent.$parent.getRes"
123
+ :value.sync="model.f_checker_id"
124
+ v-model="model.f_checker_id"
125
+ condition="f_checker_name = '{}'">
126
+ </role-selector-safe>
127
+ </div>
128
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
129
+ <label class="font_normal_body">片&emsp;&emsp;区</label>
130
+ <v-select class="select_list select"
131
+ placeholder='片区/管理站' style="width: 60%"
132
+ :value.sync="model.f_slice_area" v-model="model.f_slice_area"
133
+ :options='$parent.$parent.sliceArea'
134
+ filer-key="name"
135
+ close-on-select clear-button
136
+ condition="f_slice_area='{}'"
137
+ @change="$parent.$parent.getmeterbook(model.f_slice_area)"
138
+ :value-single="true">
139
+ </v-select>
140
+ </div>
141
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
142
+ <label class="font_normal_body">抄&ensp;表&ensp;册</label>
143
+ <v-select class="select_list select"
144
+ placeholder='抄表册' style="width: 60%"
145
+ :value.sync="model.f_meter_book_num" v-model="model.f_meter_book_num"
146
+ :options='$parent.$parent.cbc'
147
+ filer-key="name"
148
+ close-on-select clear-button
149
+ condition="f_meter_book_num={}"
150
+ :value-single="true">
151
+ </v-select>
152
+ </div>
153
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
154
+ <label class="font_normal_body">省&ensp;市&ensp;区</label>
155
+ <v-select class="select_list select"
156
+ placeholder='请选择' style="width: 60%"
157
+ :value.sync="model.f_pcd" v-model="model.f_pcd"
158
+ :options='$parent.$parent.pcds'
159
+ filer-key="name"
160
+ close-on-select clear-button
161
+ condition="f_pcd='{}'"
162
+ :value-single="true">
163
+ </v-select>
164
+ </div>
165
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
166
+ <label class="font_normal_body">开户时间</label>
167
+ <datepicker
168
+ :value.sync="model.f_check_gasstart"
169
+ placeholder='开始时间' style="width: 60%"
170
+ :disabled-days-of-week="[]"
171
+ :format="'yyyy-MM-dd'"
172
+ :show-rest-button="reset"
173
+ v-model="model.f_check_gasstart"
174
+ condition="f_gas_date > ='{} 00:00:00'">
175
+ </datepicker>
176
+ </div>
177
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
178
+ <label class="font_normal_body">开户时间</label>
179
+ <datepicker
180
+ :value.sync="model.f_check_gasend"
181
+ placeholder='结束时间' style="width: 60%"
182
+ :disabled-days-of-week="[]"
183
+ :format="'yyyy-MM-dd'"
184
+ :show-rest-button="reset"
185
+ v-model="model.f_check_gasend"
186
+ condition="f_gas_date <= '{} 23:59:59'">
187
+ </datepicker>
188
+ </div>
189
+ <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit && $parent.$parent.criteriaShow ">
190
+ <label class="font_normal_body">审&ensp;核&ensp;人</label>
191
+ <input type="text" class="input_search" v-model="model.f_approved_by"
192
+ style="width: 60%" placeholder="审核人" condition="f_approved_by like '%{}%'">
193
+ </div>
194
+ <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit && $parent.$parent.criteriaShow ">
195
+ <label class="font_normal_body">审核时间</label>
196
+ <datepicker
197
+ :value.sync="model.f_approved_timestart"
198
+ placeholder='开始时间' style="width: 60%"
199
+ :disabled-days-of-week="[]"
200
+ :format="'yyyy-MM-dd'"
201
+ :show-rest-button="reset"
202
+ v-model="model.f_approved_timestart"
203
+ condition="f_approved_time > ='{} 00:00:00'">
204
+ </datepicker>
205
+ </div>
206
+ <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit && $parent.$parent.criteriaShow ">
207
+ <label class="font_normal_body">审核时间</label>
208
+ <datepicker
209
+ :value.sync="model.f_approved_timeend"
210
+ placeholder='结束时间' style="width: 60%"
211
+ :disabled-days-of-week="[]"
212
+ :format="'yyyy-MM-dd'"
213
+ :show-rest-button="reset"
214
+ v-model="model.f_approved_timeend"
215
+ condition="f_approved_time <= '{} 23:59:59'">
216
+ </datepicker>
217
+ </div>
218
+ <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit &&$parent.$parent.criteriaShow">
219
+ <label class="font_normal_body" title="参数管理:安检单审核状态">审核状态</label>
220
+ <v-select class="select_list select"
221
+ placeholder='请选择' style="width: 60%"
222
+ :value.sync="model.f_approved" v-model="model.f_approved"
223
+ :options='$parent.$parent.f_approval_states'
224
+ filer-key="name"
225
+ :multiple="true"
226
+ condition="f_approved in {}"
227
+ >
228
+ </v-select>
229
+ </div>
230
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow" >
231
+ <label class="font_normal_body">气表品牌</label>
232
+ <v-select
233
+ class="select_list select"
234
+ placeholder='气表品牌' style="width: 60%"
235
+ v-model='model.tableBrand'
236
+ :value.sync="model.tableBrand"
237
+ :options='$parent.$parent.tableBrands'
238
+ condition="f_meter_brand = '{}'"
239
+ :value-single="true"
240
+ close-on-select clear-button></v-select>
241
+ </div>
242
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
243
+ <label class="font_normal_body">有无计划</label>
244
+ <v-select class="select_list select"
245
+ placeholder='请选择' style="width: 60%"
246
+ :value.sync="model.f_no_checkplan" v-model="model.f_no_checkplan"
247
+ :options='$parent.$parent.no_checkplans'
248
+ filer-key="name"
249
+ close-on-select clear-button
250
+ condition="f_no_checkplan='{}'"
251
+ :value-single="true">
252
+ </v-select>
253
+ </div>
254
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
255
+ <label class="font_normal_body">未用燃气</label>
256
+ <v-select class="select_list select"
257
+ placeholder='请选择' style="width: 60%"
258
+ :value.sync="model.f_usegas" v-model="model.f_usegas"
259
+ :options='$parent.$parent.usegas'
260
+ filer-key="name"
261
+ close-on-select clear-button
262
+ condition="f_usegas='{}'"
263
+ :value-single="true">
264
+ </v-select>
265
+ </div>
266
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
267
+ <label class="font_normal_body">客户卡号</label>
268
+ <input type="text" class="input_search" v-model="model.f_card_id"
269
+ style="width: 60%" placeholder="客户卡号" condition="f_card_id like '%{}%'">
270
+ </div>
271
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
272
+ <label class="font_normal_body">距上次安检天数</label>
273
+ <input type="number" class="input_search" v-model="model.f_check_date"
274
+ style="width: 60%" placeholder="距上次安检天数" >
275
+ </div>
276
+ </div>
277
+ <modal :show.sync="$parent.$parent.showModal" v-ref:modal backdrop="false">
278
+ <div slot="modal-header" class="modal-header">
279
+ <h4 class="modal-title">
280
+ 选择计划
281
+ </h4>
282
+ </div>
283
+ <div slot="modal-body" class="modal-body">
284
+ <plan-chooser :f.sync="$parent.$parent.fun" v-ref:chooser></plan-chooser>
285
+ </div>
286
+ <div slot="modal-footer" class="modal-footer" style="text-align: center">
287
+ <button class="button_search" @click="$parent.$parent.ok">确认</button>
288
+ <button class="button_search" @click="$parent.$parent.cancel">取消</button>
289
+ </div>
290
+ </modal>
291
+ </div>
292
+ </criteria>
293
+ <data-grid class="list_area table_sy" style="overflow: hidden" :model="model" partial='list' v-ref:grid>
294
+ <template partial='head'>
295
+ <tr>
296
+ <th>
297
+ <nobr>客户编号</nobr>
298
+ </th>
299
+ <th>
300
+ <nobr>客户名称</nobr>
301
+ </th>
302
+ <th>
303
+ <nobr>客户表号</nobr>
304
+ </th>
305
+ <th>
306
+ <nobr>气表品牌</nobr>
307
+ </th>
308
+ <th>
309
+ <nobr>累购气量</nobr>
310
+ </th>
311
+ <th>
312
+ <nobr>已用气量</nobr>
313
+ </th>
314
+ <th>
315
+ <nobr>剩余气量</nobr>
316
+ </th>
317
+ <th>
318
+ <nobr>气量异常差值</nobr>
319
+ </th>
320
+ <th>
321
+ <nobr>客户电话</nobr>
322
+ </th>
323
+ <th>
324
+ <nobr>客户类型</nobr>
325
+ </th>
326
+ <th>
327
+ <nobr>客户地址</nobr>
328
+ </th>
329
+ <th>
330
+ <nobr>安检状态</nobr>
331
+ </th>
332
+ <th>
333
+ <nobr>计划名称</nobr>
334
+ </th>
335
+ <th>
336
+ <nobr>用气状态</nobr>
337
+ </th>
338
+ <th>
339
+ <data-order field="f_offsite_time" name="安检时间"></data-order>
340
+ </th>
341
+ <th>
342
+ <nobr>安检员</nobr>
343
+ </th>
344
+ <th>
345
+ <nobr>备注</nobr>
346
+ </th>
347
+ <th>
348
+ <nobr>开户时间</nobr>
349
+ </th>
350
+ <th v-if="$parent.$parent.$parent.safeAudit">
351
+ <nobr>审核人</nobr>
352
+ </th>
353
+ <th v-if="$parent.$parent.$parent.safeAudit">
354
+ <nobr>审核起始</nobr>
355
+ </th>
356
+ <th v-if="$parent.$parent.$parent.safeAudit">
357
+ <nobr>审核结束</nobr>
358
+ </th>
359
+ <th v-if="$parent.$parent.$parent.safeAudit">
360
+ <nobr>审核状态</nobr>
361
+ </th>
362
+ <th v-if="$parent.$parent.$parent.safeAudit">
363
+ <nobr>审核未通过原因</nobr>
364
+ </th>
365
+ <th>
366
+ <nobr>操作</nobr>
367
+ </th>
368
+ <th v-if="$parent.$parent.$parent.audioshow">
369
+ <nobr>录音</nobr>
370
+ </th>
371
+ </tr>
372
+ </template>
373
+ <template partial='body'>
374
+
375
+ <td style="text-align: center">{{row.f_userinfo_code}}</td>
376
+ <td style="text-align: center">{{row.f_user_name}}</td>
377
+ <td style="text-align: center">{{row.f_meternumber}}</td>
378
+ <td style="text-align: center">{{row.f_meter_brand}}</td>
379
+ <td style="text-align: center">{{row.f_leigou}}</td>
380
+ <td style="text-align: center">{{row.f_yiyong}}</td>
381
+ <td style="text-align: center">{{row.f_shengyu}}</td>
382
+ <td style="text-align: center">{{row.f_qlchazhi}}</td>
383
+ <td style="text-align: center">{{row.f_user_phone}}</td>
384
+ <td style="text-align: center">{{row.f_check_type}}</td>
385
+ <td style="text-align: center">{{ row.f_address }}</td>
386
+ <td style="text-align: center">{{ row.f_entry_status }}</td>
387
+ <td style="text-align: center">{{ row.f_plan_name }}</td>
388
+ <td style="text-align: center">{{ row.f_usegas }}</td>
389
+ <td style="text-align: center">{{ row.f_offsite_time }}</td>
390
+ <td style="text-align: center">{{ row.f_checker_name }}</td>
391
+ <td style="text-align: center">{{ row.f_repair_approved_note }}</td>
392
+ <td style="text-align: center">{{ row.f_gas_date }}</td>
393
+ <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">{{ row.f_approved_by }}</td>
394
+ <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">{{ row.f_approvedstart_time }}</td>
395
+ <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">{{ row.f_approved_time }}</td>
396
+ <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">
397
+ {{ row.f_approved ? row.f_approved : '未审核' }}
398
+ </td>
399
+ <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">
400
+ {{row.f_approved_note}}
401
+ </td>
402
+ <td style="text-align: center">
403
+ <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.change(row)'>查看</button>
404
+
405
+
406
+ </td>
407
+ <td style="text-align: center" v-if="$parent.$parent.$parent.audioshow">
408
+ <!-- <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.change(row)'>查看</button>-->
409
+ <audio controls="controls" v-if="row.f_recording1_path">
410
+ <source type="audio/mpeg" :src="'rs/audio/file/'+row.f_recording1_path">
411
+ </audio>
412
+ <!--<button type="button" class="button_new-1 button_spacing" data-toggle="dropdown"
413
+ @click="$parent.$parent.$parent.print(row)">
414
+ 打印
415
+ </button>-->
416
+ </td>
417
+ </template>
418
+ </data-grid>
419
+ </criteria-paged>
420
+ <check-msg v-if="showcheckmsg" :show="showcheckmsg" :data="checkInfo"></check-msg>
421
+ </div>
422
+ </div>
423
+ <new-check-paper v-if="showinfo2" :f_plan_id="shouinfodata.f_check_plan_id" :item="shouinfodata" :role="'view'" v-on:showback="showback1"></new-check-paper>
424
+ <new-check-paper-temp v-if="showinfo3" :f_plan_id="shouinfodata.f_check_plan_id" :item="shouinfodata" :role="'view'" v-on:showback="showback2"></new-check-paper-temp>
425
+ </template>
426
+
427
+ <script>
428
+ import {PagedList} from 'vue-client'
429
+ import co from 'co'
430
+ import * as Util from '../../Util'
431
+ import HttpResetClass from "vue-client/src/plugins/HttpResetClass";
432
+ let select = function* (self) {
433
+ let http = new HttpResetClass()
434
+ let getGasman = yield http.load('POST', '/rs/search', {
435
+ source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
436
+ userid: self.$login.f.id
437
+ }, {resolveMsg: null, rejectMsg: null})
438
+ ////tag
439
+ self.checkersid.push({label: '全部', value: ''})
440
+ getGasman.data.forEach((checker) => {
441
+ self.checkersid.push({label: checker.name, value: checker.id})
442
+ })
443
+ }
444
+
445
+ export default {
446
+ title: '安检结果查看',
447
+ data() {
448
+ let model = new PagedList('api/af-safecheck/sql/查找安检单', 20, {
449
+ f_plan_id: 'this.f_plan_id',
450
+ f_approved: 'this.f_approved',
451
+ f_entry_status: 'this.f_entry',
452
+ f_no_checkplan: 'this.f_no_checkplan',
453
+ f_filialeid: 'this.f_filialeid',
454
+ orderitem: "'f_offsite_time desc'"
455
+ })
456
+ model.f_check_type = ''
457
+ model.f_plan_id = ''
458
+ model.f_approved = ''
459
+ model.f_entry = ''
460
+ model.f_no_checkplan = ''
461
+ model.f_filialeid = `('${this.$login.f.orgid}')`
462
+ //model.f_check_type='民用'
463
+ // let searchData={
464
+ // f_plan_id: this.model.f_checker_id==undefined?"":this.model.f_checker_id,
465
+ // f_approved: this.model.f_approved,
466
+ // f_entry_status: this.model.f_entry,
467
+ // f_no_checkplan:this.model.f_no_checkplan[0],
468
+ // f_filialeid: this.model.f_filialeid,
469
+ // //orderitem: this.model.f_offsite_time,
470
+ // //condition:this.model.condition
471
+ // }
472
+ // model.f_subcompany = this.$login.f.f_fengongsi
473
+ return {
474
+ showinfo1:true,
475
+ showinfo2:false,
476
+ showinfo3:false,
477
+ shouinfodata:{},
478
+ tableBrands: [{label: '全部', value: ''}],
479
+ audioshow: false,
480
+ safeAudit: this.$appdata.getSingleValue('安检审核') == '是' ? true : false,
481
+ searchData: {
482
+ condition: "1=1",
483
+ orderitem: "f_offsite_time desc",
484
+ f_plan_id: "",
485
+ f_approved: '',
486
+ f_entry_status: '',
487
+ f_no_checkplan: '',
488
+ f_filialeid: `('${this.$login.f.orgid}')`
489
+ },
490
+ model: model,
491
+ excelHeaders: {
492
+ //searchData:searchData
493
+ 'f_userinfo_code': '客户编号',
494
+ 'f_user_name': '客户姓名',
495
+ 'f_meternumber':'客户表号',
496
+ 'f_user_phone':'客户电话',
497
+ 'f_check_type': '客户类型',
498
+ 'f_residential_area': '小区',
499
+ 'f_address': '客户地址',
500
+ 'f_entry_status': '安检状态',
501
+ 'f_usegas': '用气状态',
502
+ 'f_offsite_time': '安检时间',
503
+ 'f_checker_name': '安检员',
504
+ 'f_safecheck_type':'安检类型',
505
+ 'f_repair_approved_note': '备注',
506
+ 'f_gas_date': '开户时间',
507
+ 'f_approved_by': '审核人',
508
+ 'f_approved': '审核状态',
509
+ 'f_approved_time': '审核时间',
510
+ 'f_plan_name':'计划名称',
511
+ 'f_meter_brand':'气表品牌',
512
+ 'f_leigou': '累购气量',
513
+ 'f_yiyong': '已用气量',
514
+ 'f_shengyu': '剩余气量',
515
+ 'f_qlchazhi': '气量异常差值'
516
+ },
517
+ fun: this.$login.f,
518
+ pcds:[],
519
+ checkersid: [],
520
+ safetype: this.$appdata.getParam('安检类型')?[{label: '全部', value: ''}, ...this.$appdata.getParam('安检类型')]:[{label: '全部', value: ''}],
521
+ criteriaShow: false,
522
+ checktype: this.$appdata.getParam('用户类型')?[{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]:[{label: '全部', value: ''}],
523
+ f_check_type:[{label:'全部',value:''},{label:'民用',value:'民用'},{label:'非民用',value:'非民用'}],
524
+ showModal: false,
525
+ safe_types:this.$appdata.getParam('计划类型')?[{label: '全部', value: ''}, ...this.$appdata.getParam('计划类型')]:[{label: '全部', value: ''}],
526
+ f_approval_states: this.$appdata.getParam('安检单审核状态')?[{label: '全部', value: ''}, ...this.$appdata.getParam('安检单审核状态')]:[{label: '全部', value: ''}],
527
+ f_entry_status: this.$appdata.getParam('安检状态')?[{label: '全部', value: ''}, ...this.$appdata.getParam('安检状态')]:[{label: '全部', value: ''}],
528
+ no_checkplans: this.$appdata.getParam('有无计划')?[{label: '全部', value: ''}, ...this.$appdata.getParam('有无计划')]:[{label: '全部', value: ''}],
529
+ usegas: this.$appdata.getParam('用气状态')?[{label: '全部', value: ''}, ...this.$appdata.getParam('用气状态')]:[{label: '全部', value: ''}],
530
+ showcheckmsg: false,
531
+ checkInfo: {},
532
+ orderDefault: "'f_offsite_time'",
533
+ orderFields: {
534
+ f_offsite_time: 'no'
535
+ },
536
+ sliceArea: [],
537
+ cbc:[]
538
+ }
539
+ },
540
+ created() {
541
+ // 使用 $on 监听事件
542
+ this.$root.$on('audit-status-changed', () => {
543
+ console.log('收到审核状态变更事件')
544
+ this.refresh()
545
+ })
546
+ },
547
+ beforeDestroy() {
548
+ // 记得在组件销毁前移除事件监听
549
+ this.$root.$off('audit-status-changed')
550
+ },
551
+ methods: {
552
+ showback1(){
553
+ this.showinfo1 = true
554
+ this.showinfo2 = false
555
+ },
556
+ showback2(){
557
+ this.showinfo1 = true
558
+ this.showinfo3 = false
559
+ },
560
+ //气表品牌查询
561
+ getTableBrands() {
562
+ new HttpResetClass().load("POST", `/api/af-safecheck/sql/safe_singleTable_OrderBy`,
563
+ {data: {items: "*", tablename: "t_gasbrand", orderitem: "id", condition: ` 1=1 `}},
564
+ {resolveMsg: null, rejectMsg: null}).then((resp) => {
565
+ resp.data.forEach((result) => {
566
+ this.tableBrands.push({label: result.f_meter_brand, value: result.f_meter_brand})
567
+ })
568
+ })
569
+ },
570
+ //获取省市区列表
571
+ getPcd(val){
572
+ this.pcds = [{label:'全部',value:''}]
573
+ new HttpResetClass().load("POST", `/api/af-safecheck/sql/safe_singleTable_OrderBy`,
574
+ {data:{items:"*",tablename:"t_pcd",orderitem:"id",condition:`f_orgid in ${val}`}},
575
+ {resolveMsg: null, rejectMsg: null}).then((pcdlist)=>{
576
+ pcdlist.data.forEach((result)=>{
577
+ this.pcds.push({label:result.f_pcd,value:result.f_pcd})
578
+ })
579
+ })
580
+ },
581
+ showaudio(){
582
+ //tag
583
+ this.audioshow=!this.audioshow
584
+ //tag
585
+ },
586
+ getmeterbook(val){
587
+ this.cbc=[]
588
+ this.cbc.push({
589
+ label:'全部',
590
+ value:''
591
+ })
592
+ if (val==''){
593
+
594
+ this.cbcs.forEach(res=>{
595
+ this.cbc.push({
596
+ label:res.f_book_name,
597
+ value:res.id
598
+ })
599
+ })
600
+ }else{
601
+ this.cbcs.forEach(res=>{
602
+ if (res.f_book_slice_area==val){
603
+ this.cbc.push({
604
+ label:res.f_book_name,
605
+ value:res.id
606
+ })
607
+ }
608
+ })
609
+ }
610
+ },
611
+ Mreadibook(val){
612
+ ////tag
613
+ ////tag
614
+ if (val){
615
+ new HttpResetClass().load('POST',`/api/af-safecheck/sql/safe_singleTable_OrderBy`, {data: {
616
+ items: 'name',
617
+ tablename: 't_zone',
618
+ condition: `parentid in ${val}`,
619
+ orderitem: 'id'
620
+ }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
621
+ this.sliceArea=[]
622
+ this.sliceArea.push({
623
+ label:'全部',
624
+ value:''
625
+ })
626
+ res.data.forEach(ress=>{
627
+ this.sliceArea.push({
628
+ label:ress.name,
629
+ value:ress.name
630
+ })
631
+ })
632
+
633
+ })
634
+ }
635
+ },
636
+ getAllMeterBook(val){
637
+ ////tag
638
+ ////tag
639
+ this.cbcs=[]
640
+ if (val){
641
+ new HttpResetClass().load('POST',`/api/af-safecheck/sql/safe_singleTable_OrderBy`, {data: {
642
+ items: 'f_book_name,f_book_slice_area,id',
643
+ tablename: 't_meter_book',
644
+ condition: `f_filiale_id in ${val}`,
645
+ orderitem: 'id'
646
+ }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
647
+ res.data.forEach(ress=>{
648
+ this.cbcs.push({
649
+ id:ress.id,
650
+ f_book_name:ress.f_book_name,
651
+ f_book_slice_area:ress.f_book_slice_area
652
+ })
653
+ })
654
+ this.cbc=[]
655
+ this.cbc.push({
656
+ label:'全部',
657
+ value:''
658
+ })
659
+ this.cbcs.forEach(res=>{
660
+ this.cbc.push({
661
+ label:res.f_book_name,
662
+ value:res.id
663
+ })
664
+ })
665
+ })
666
+ }
667
+ },
668
+ getRes(obj) {
669
+ this.model.f_filialeid = this.$login.convertToIn(obj.resids);
670
+ this.searchData.f_filialeid = this.$login.convertToIn(obj.resids);
671
+ this.Mreadibook(this.model.f_filialeid)
672
+ this.getAllMeterBook(this.model.f_filialeid)
673
+ this.getPcd(this.model.f_filialeid)
674
+ //this.$refs.paged.$refs.criteria.search()
675
+ },
676
+
677
+ change(row) {
678
+ row.f_upload_state = '已传'
679
+ this.shouinfodata = JSON.parse(JSON.stringify(row))
680
+ this.showinfo1 = false
681
+ if (row.f_safe_type == '已挂表未办卡安检'){
682
+ this.showinfo2 = false
683
+ this.showinfo3 = true
684
+ return
685
+ }
686
+ this.showinfo2 = true
687
+ this.showinfo3 = false
688
+ },
689
+ showChooser() {
690
+ this.showModal = true
691
+ },
692
+ hidden() {
693
+ this.criteriaShow = !this.criteriaShow
694
+ },
695
+ refresh() {
696
+ this.$refs.paged.$refs.criteria.search()
697
+ },
698
+ ok() {
699
+ this.showModal = false
700
+ if (this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow.id) {
701
+ this.model.f_plan_id = this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow.id
702
+ this.model.f_check_plan=this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow
703
+ }
704
+ },
705
+ cancel() {
706
+ this.showModal = false
707
+ this.model.f_check_plan = {f_plan_name: '', id: ''}
708
+ this.model.f_plan_id=''
709
+ },
710
+ print(row) {
711
+ this.showcheckmsg = true
712
+ this.checkInfo = row
713
+ },
714
+
715
+ sort(field, rule) {
716
+ // 将所有排序方式设为不排序,实现相互排斥
717
+ for (let key in this.orderFields) {
718
+ if (key === field) {
719
+ this.orderFields[key] = rule
720
+ } else {
721
+ this.orderFields[key] = 'no'
722
+ }
723
+ }
724
+ // 如果新规则不排序,还原为默认排序
725
+ if (rule === 'no') {
726
+ this.model.paramSource.orderitem = `'${this.orderDefault}'`
727
+ } else {
728
+ this.model.paramSource.orderitem = `'${field} ${rule}'`
729
+ }
730
+ this.search()
731
+ },
732
+ search() {
733
+ console.log('审核通过回调')
734
+ this.$refs.paged.$refs.criteria.search()
735
+ },
736
+ selfSearch(args) {
737
+ ////tag
738
+ //args.condition+=" and f_check_type='民用'"
739
+ if(args.model.f_check_date){
740
+ const daysBefore = Number(args.model.f_check_date);
741
+ if ( daysBefore > 0) {
742
+ // 获取当前日期
743
+ const now = new Date();
744
+ // 计算三天前的日期
745
+ const threeDaysBefore = new Date(now.getTime() - (daysBefore * 24 * 60 * 60 * 1000));
746
+ // 如果需要格式化日期,可以使用Date对象的方法
747
+ var formattedDate = threeDaysBefore.toISOString().split('T')[0];
748
+ args.condition += ` and f_offsite_time <='${formattedDate} 23:59:59'`;
749
+ } else {
750
+ console.error('f_check_date不是一个有效的正整数');
751
+ }
752
+ }
753
+ this.model.search(args.condition, args.model, args.condValue)
754
+ }
755
+ },
756
+ ready() {
757
+ if(this.safeAudit){
758
+ let oa = {
759
+ 'f_approved_by':'审核人',
760
+ 'f_approvedstart_time':'审核开始时间',
761
+ 'f_approved_time':'审核结束时间',
762
+ 'f_approved':'审核状态',
763
+ 'f_approved_note': '审核备注'
764
+ }
765
+ this.excelHeaders = Object.assign({}, this.excelHeaders, oa)
766
+ }
767
+ this.function = this.f
768
+ //获取气表品牌
769
+ this.getTableBrands()
770
+ let gen = select(this)
771
+ //this.pianqu()
772
+ this.Mreadibook(`('${this.$login.f.orgid}')`)
773
+ co(gen)
774
+ this.$refs.paged.$refs.criteria.model.f_check_start = Util.toStartDateString() + ' 00:00:00'
775
+ this.$refs.paged.$refs.criteria.model.f_check_end = Util.toEndDateString() + ' 23:59:59'
776
+ },
777
+ watch: {
778
+ 'model.f_no_checkplan'(val) {
779
+ if (this.model.f_no_checkplan){
780
+ this.searchData.f_no_checkplan = val
781
+ }
782
+ if (this.model.f_no_checkplan == '有计划安检') {
783
+
784
+ this.showChooser()
785
+ }
786
+ },
787
+ 'model.condition'(val) {
788
+ if (val) {
789
+ this.searchData.condition = val
790
+ }
791
+
792
+ },
793
+ 'model.f_entry'(val) {
794
+ this.searchData.f_entry_status = val
795
+ },
796
+ 'model.f_plan_id'(val) {
797
+ if (val) {
798
+ this.searchData.f_plan_id = val
799
+ }
800
+ },
801
+ 'model.f_slice_area'(val) {
802
+ },
803
+ 'model.f_approved'(val) {
804
+ if (val) {
805
+ this.searchData.f_approved = val
806
+ }
807
+ }
808
+ }
809
+
810
+ }
811
+ </script>