safecheck-client 4.0.1-8 → 4.0.1-81

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 (300) hide show
  1. package/package.json +5 -5
  2. package/src/App.vue +31 -31
  3. package/src/assets//350/255/246/345/221/212 (3).png +0 -0
  4. package/src/assets//350/255/246/345/221/212 (4).png +0 -0
  5. package/src/assets//350/255/246/345/221/212 (5).png +0 -0
  6. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  7. package/src/components/DefectDealMain/DefectListNew.vue +642 -642
  8. package/src/components/NewDefectList/DefectListNew.vue +682 -663
  9. package/src/components/Util/RightTreeSafeDep.vue +362 -350
  10. package/src/components/Util/SafecheckUpload.vue +3 -4
  11. package/src/components/android/AddPlanItem.vue +447 -447
  12. package/src/components/android/AddPlanItemYy.vue +451 -451
  13. package/src/components/android/AddSpecialPlanItem.vue +426 -426
  14. package/src/components/android/AndroidDefectDeal.vue +389 -323
  15. package/src/components/android/AndroidDefectDetails.vue +3 -3
  16. package/src/components/android/AppInstallationMaterial.vue +865 -0
  17. package/src/components/android/CurrentCreateYy.vue +1051 -1051
  18. package/src/components/android/DailyworkloadQuery.vue +473 -472
  19. package/src/components/android/Devices.vue +327 -327
  20. package/src/components/android/Devicesm.vue +327 -327
  21. package/src/components/android/NewCheckpaperAndroid.vue +1343 -1369
  22. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  23. package/src/components/android/PhoneRecordInfo.vue +113 -113
  24. package/src/components/android/PhoneSellInfo.vue +113 -113
  25. package/src/components/android/PhoneUpDetail.vue +1040 -1040
  26. package/src/components/android/QRCode/QRCodeBinding.vue +300 -300
  27. package/src/components/android/QRCode/QRCodePage.vue +212 -212
  28. package/src/components/android/SafePlanItem.vue +509 -509
  29. package/src/components/android/SafecheckOrderV.vue +6 -0
  30. package/src/components/android/SwitchValve.vue +1 -1
  31. package/src/components/android/examples/SafeListExamples.vue +296 -296
  32. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  33. package/src/components/android/recheck/Recheck.vue +402 -402
  34. package/src/components/android/userinfo/SafecheckUserInfo.vue +776 -776
  35. package/src/components/checkplan/CheckDetail.vue +1 -1
  36. package/src/components/checkplan/checkmsg.vue +459 -459
  37. package/src/components/defect/DefectList.vue +507 -507
  38. package/src/components/defect/DefectListWeixiu.vue +484 -484
  39. package/src/components/filialCircle/CircleList.vue +139 -139
  40. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  41. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  42. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  43. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  44. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  45. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  46. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  47. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  48. package/src/components/map/PersonTrack.vue +226 -226
  49. package/src/components/map/SecurityCheckCoordinates.vue +361 -0
  50. package/src/components/paper/PaperList.vue +5 -0
  51. package/src/components/paper/RegionalList.vue +220 -220
  52. package/src/components/pc/AnnouncementPC.vue +524 -524
  53. package/src/components/pc/DefectDeal.vue +7 -6
  54. package/src/components/pc/DefectList.vue +742 -742
  55. package/src/components/pc/DefectMaterialLook.vue +98 -0
  56. package/src/components/pc/DeviceChange.vue +1068 -1068
  57. package/src/components/pc/PaperDefectMain.vue +905 -880
  58. package/src/components/pc/RoleSelectorDep.vue +166 -159
  59. package/src/components/pc/SafeVisitInfo.vue +261 -261
  60. package/src/components/planmanage/PlanManage.vue +1 -0
  61. package/src/components/querycheckpaper/CheckPaperList.vue +6 -4
  62. package/src/components/querycheckpaper/CheckPaperSearchUser.vue +30 -4
  63. package/src/components/querycheckpaper/CheckSearchUser.vue +6 -1
  64. package/src/components/report/HiddenSituation.vue +165 -165
  65. package/src/components/rongcheng/AspiratedOrderV.vue +2377 -2377
  66. package/src/components/rongcheng/CurrentCreateOnline.vue +906 -906
  67. package/src/components/rongcheng/DefectList.vue +560 -560
  68. package/src/components/rongcheng/SafecheckOrderVCli.vue +2641 -2641
  69. package/src/components/safecheckNew/android/AddPlanItem.vue +419 -419
  70. package/src/components/safecheckNew/android/CurrentCreate.vue +1050 -1050
  71. package/src/components/safecheckNew/android/Recheck.vue +379 -379
  72. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  73. package/src/components/shaoguan/DefectList.vue +473 -473
  74. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  75. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  76. package/src/components/userfile/SecurityAudit.vue +243 -243
  77. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +476 -476
  78. package/src/filiale/ancheng/android/SafecheckOrderV.vue +2703 -2703
  79. package/src/filiale/ancheng/android/SafecheckUserInfo.vue +737 -737
  80. package/src/filiale/ancheng/pc/checkScreen.vue +923 -923
  81. package/src/filiale/ankangyihua/android/AddPlanItem.vue +446 -446
  82. package/src/filiale/ankangyihua/android/SafecheckOrderV.vue +2908 -2908
  83. package/src/filiale/ankangyihua/pc/DefectListWeixiu.vue +491 -491
  84. package/src/filiale/baiyin/android/SafecheckOrderV.vue +2785 -2785
  85. package/src/filiale/baiyin/pc/DefectListNew.vue +597 -597
  86. package/src/filiale/bayan/android/Edit.vue +132 -132
  87. package/src/filiale/bayan/pc/DefectListNew.vue +597 -597
  88. package/src/filiale/bayan/pc/DeviceChange.vue +1838 -1838
  89. package/src/filiale/bayan/pc/HiddenSituation.vue +295 -295
  90. package/src/filiale/dexin/android/CasualSave.vue +1050 -1050
  91. package/src/filiale/dexin/android/SafecheckOrderV.vue +2950 -2950
  92. package/src/filiale/fugou/android/AddPlanItem.vue +413 -413
  93. package/src/filiale/fugou/android/SafecheckOrderV.vue +2796 -2796
  94. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +830 -830
  95. package/src/filiale/fugu/android/SafecheckOrderV.vue +2484 -2484
  96. package/src/filiale/fugu/pc/NewCheckpaper.vue +1287 -1287
  97. package/src/filiale/ganquan/android/AddPlanItem.vue +444 -444
  98. package/src/filiale/ganquan/android/SafecheckOrderV.vue +2485 -2485
  99. package/src/filiale/ganquan/pc/NewCheckpaper.vue +1354 -1354
  100. package/src/filiale/guangxi/pc/DefectListNew.vue +518 -518
  101. package/src/filiale/hanzhong/android/SafecheckOrderV.vue +2683 -2683
  102. package/src/filiale/hanzhong/android/SafecheckUserInfo.vue +786 -786
  103. package/src/filiale/huaran/android/SafecheckOrderV.vue +2803 -2803
  104. package/src/filiale/huatong/android/SafecheckOrderV.vue +2426 -2426
  105. package/src/filiale/huatong/android/SafecheckUserInfo.vue +749 -749
  106. package/src/filiale/huayin/pc/NewCheckpaper.vue +1307 -1307
  107. package/src/filiale/jiaocheng/android/AddPlanItem.vue +435 -435
  108. package/src/filiale/jiaocheng/android/SafecheckUserInfo.vue +737 -737
  109. package/src/filiale/jiaocheng/pc/DefectListNew.vue +576 -576
  110. package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -447
  111. package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2807 -2807
  112. package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -784
  113. package/src/filiale/jinbin/pc/DefectListWeixiu.vue +478 -478
  114. package/src/filiale/jingyang/android/AddPlanItem.vue +458 -458
  115. package/src/filiale/jingyang/android/SafecheckOrderV.vue +2734 -2734
  116. package/src/filiale/jingyang/android/SafecheckUserInfo.vue +781 -781
  117. package/src/filiale/jinhong/android/CurrentCreate.vue +66 -22
  118. package/src/filiale/jinhong/pc/CheckBookList.vue +393 -388
  119. package/src/filiale/jinhong/pc/DefectPaperNew.vue +10 -10
  120. package/src/filiale/jinhong/pc/PaperList.vue +853 -844
  121. package/src/filiale/jinhong/pc/PlanManage.vue +927 -925
  122. package/src/filiale/jinhong/pc/checkPlanList.vue +420 -418
  123. package/src/filiale/jinhong/pc/checkUserList.vue +766 -742
  124. package/src/filiale/kelai/android/AddPlanItem.vue +488 -488
  125. package/src/filiale/kelai/android/SafecheckUserInfo.vue +774 -774
  126. package/src/filiale/kelai/android/SafecheckUserInfo1.vue +618 -618
  127. package/src/filiale/kelai/pc/DefectListNew.vue +688 -688
  128. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasList.vue +518 -518
  129. package/src/filiale/kelai/pc/NewCheckpaper.vue +1454 -1454
  130. package/src/filiale/liaoyuan/android/AddPlanItem.vue +412 -412
  131. package/src/filiale/liaoyuan/android/CurrentCreate.vue +1066 -1066
  132. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2388 -2388
  133. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +557 -557
  134. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +489 -489
  135. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  136. package/src/filiale/libo/android/PaperFeedback.vue +1579 -0
  137. package/src/filiale/libo/android/PhoneUpUserinfo.vue +1249 -0
  138. package/src/filiale/libo/android/SafecheckOrderV.vue +2302 -0
  139. package/src/filiale/libo/android.js +14 -0
  140. package/src/filiale/libo/pc/NewCheckpaper.vue +1987 -0
  141. package/src/filiale/libo/pc.js +12 -0
  142. package/src/filiale/lixian/android/SafecheckOrderV.vue +2404 -2404
  143. package/src/filiale/lixian/android/SafecheckUserInfo.vue +578 -578
  144. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  145. package/src/filiale/meihekou/android/AreaPlan.vue +577 -577
  146. package/src/filiale/meihekou/android/CurrentCreate.vue +1 -1
  147. package/src/filiale/meihekou/android/MeterReading.vue +110 -106
  148. package/src/filiale/meihekou/android/PhoneUpUserinfo.vue +1307 -1306
  149. package/src/filiale/meihekou/android/SafecheckDevices.vue +5 -5
  150. package/src/filiale/meihekou/android/SafecheckOrderV.vue +2446 -2427
  151. package/src/filiale/meihekou/android/SafecheckUserInfo.vue +785 -785
  152. package/src/filiale/meihekou/pc/NewCheckpaper.vue +2 -2
  153. package/src/filiale/meihekou/pc/NewCheckpaperNew.vue +2050 -0
  154. package/src/filiale/meihekou/pc/NewCheckpaperTemp.vue +1288 -1288
  155. package/src/filiale/meihekou/pc/PaperList.vue +1205 -0
  156. package/src/filiale/meihekou/pc.js +2 -0
  157. package/src/filiale/minsheng/android/SafecheckUserInfo.vue +754 -754
  158. package/src/filiale/minsheng/android/SwitchValve.vue +1 -1
  159. package/src/filiale/minsheng/pc/DefectListNew.vue +535 -535
  160. package/src/filiale/pingxiang/android/SafecheckOrderV.vue +2424 -2424
  161. package/src/filiale/pingxiang/android/SafecheckUserInfo.vue +600 -600
  162. package/src/filiale/pingxiang/pc/DefectListNew.vue +519 -519
  163. package/src/filiale/pingxiang/pc/NewCheckpaper.vue +1294 -1294
  164. package/src/filiale/qianneng/android/AddPlanItem.vue +482 -482
  165. package/src/filiale/qianneng/android/SafecheckOrderV.vue +2785 -2785
  166. package/src/filiale/qianneng/android/SafecheckUserInfo.vue +775 -775
  167. package/src/filiale/qianneng/android/SwitchValve.vue +1 -1
  168. package/src/filiale/qianneng/pc/DefectListNew.vue +576 -576
  169. package/src/filiale/qianneng/pc/NewCheckpaper.vue +1546 -1546
  170. package/src/filiale/qingjian/android/SafecheckOrderV.vue +2844 -2844
  171. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +800 -800
  172. package/src/filiale/qingjian/pc/NewCheckpaper.vue +1871 -1871
  173. package/src/filiale/qingjian/pc/SecurityCheckCoordinates.vue +359 -0
  174. package/src/filiale/qingjian/pc/checkUserList.vue +35 -0
  175. package/src/filiale/qingjian/pc.js +15 -15
  176. package/src/filiale/qingtongxia/android/AddPlanItem.vue +450 -450
  177. package/src/filiale/qingtongxia/android/SafecheckOrderV.vue +2726 -2726
  178. package/src/filiale/qingtongxia/android/SafecheckUserInfo.vue +782 -782
  179. package/src/filiale/qingtongxia/pc/DefectListNew.vue +594 -594
  180. package/src/filiale/rizhao/android/AddPlanItem.vue +446 -446
  181. package/src/filiale/rizhao/android/SafecheckOrderV.vue +2430 -2430
  182. package/src/filiale/rizhao/android/SafecheckUserInfo.vue +640 -640
  183. package/src/filiale/rizhao/pc/DefectList.vue +489 -489
  184. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +2696 -2696
  185. package/src/filiale/rongchuang/android/checkpapermsg.vue +209 -209
  186. package/src/filiale/ruihua/android/SafecheckOrderV.vue +2747 -2747
  187. package/src/filiale/ruihua/android/SafecheckUserInfo.vue +804 -804
  188. package/src/filiale/shanggao/android/SafecheckOrderV.vue +2426 -2426
  189. package/src/filiale/shanxian/android/SafecheckUserInfo.vue +749 -749
  190. package/src/filiale/shanxian/pc/HiddenSituation.vue +121 -121
  191. package/src/filiale/shanxian/pc/NewCheckpaper.vue +1526 -1526
  192. package/src/filiale/shexian/android/AddPlanItem.vue +444 -444
  193. package/src/filiale/shexian/android/SafecheckOrderV.vue +2879 -2879
  194. package/src/filiale/shexian/pc/DefectListNew.vue +593 -593
  195. package/src/filiale/shexian/pc/NewCheckpaper.vue +1469 -1469
  196. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  197. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  198. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  199. package/src/filiale/siyang/android/AddPlanItem.vue +450 -450
  200. package/src/filiale/siyang/android/CurrentCreate.vue +1051 -1051
  201. package/src/filiale/siyang/android/PhoneRecordInfo.vue +214 -214
  202. package/src/filiale/siyang/android/SafecheckOrderV.vue +2796 -2796
  203. package/src/filiale/siyang/android/SafecheckUserInfo.vue +789 -789
  204. package/src/filiale/siyang/pc/HiddenSituation.vue +167 -167
  205. package/src/filiale/taiyuan/android/AddPlanItem.vue +456 -0
  206. package/src/filiale/taiyuan/android/AreaPlan.vue +565 -0
  207. package/src/filiale/taiyuan/android/CurrentCreate.vue +1016 -0
  208. package/src/filiale/taiyuan/android/PhoneUpUserinfo.vue +1253 -0
  209. package/src/filiale/taiyuan/android/SafecheckOrderV.vue +2347 -0
  210. package/src/filiale/taiyuan/android/SafecheckUserInfo.vue +784 -0
  211. package/src/filiale/taiyuan/android.js +15 -0
  212. package/src/filiale/taiyuan/pc/DefectDeal.vue +1034 -0
  213. package/src/filiale/taiyuan/pc/NewCheckpaper.vue +1976 -0
  214. package/src/filiale/taiyuan/pc/PaperList.vue +795 -0
  215. package/src/filiale/taiyuan/pc/PlanManage.vue +891 -0
  216. package/src/filiale/taiyuan/pc/checkUserList.vue +798 -0
  217. package/src/filiale/taiyuan/pc.js +16 -0
  218. package/src/filiale/tianke/android/AddPlanItem.vue +455 -455
  219. package/src/filiale/tianke/android/CurrentCreate.vue +3 -3
  220. package/src/filiale/tianke/android/SafecheckOrderV.vue +2431 -2431
  221. package/src/filiale/tianke/android/SafecheckUserInfo.vue +744 -744
  222. package/src/filiale/tongchuan/android/AddPlanItem.vue +483 -483
  223. package/src/filiale/tongchuan/android/PhoneRecordInfo.vue +191 -191
  224. package/src/filiale/tongchuan/android/PhoneSellInfo.vue +113 -113
  225. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +720 -720
  226. package/src/filiale/tongchuan/android/SwitchValve.vue +1 -1
  227. package/src/filiale/tongchuan/pc/CheckBookDetails.vue +209 -209
  228. package/src/filiale/tongchuan/pc/DefectListWeixiu.vue +484 -484
  229. package/src/filiale/tongchuan/pc/HiddenSituation.vue +166 -166
  230. package/src/filiale/weinan/android/AddPlanItem.vue +438 -438
  231. package/src/filiale/weinan/android/CurrentCreate.vue +1171 -1171
  232. package/src/filiale/weinan/android/CurrentCreateOnline.vue +911 -911
  233. package/src/filiale/weinan/android/SafePlanItem.vue +440 -440
  234. package/src/filiale/weinan/android/SafecheckUserInfo.vue +778 -778
  235. package/src/filiale/weinan/pc/DefectListNew.vue +617 -617
  236. package/src/filiale/weinan/pc/DeviceChange.vue +1088 -1088
  237. package/src/filiale/weinan/pc/HiddenSituation.vue +167 -167
  238. package/src/filiale/weinan/pc/checkScreen.vue +1094 -1094
  239. package/src/filiale/weinanct/android/SafecheckOrderV.vue +2730 -2730
  240. package/src/filiale/weinanct/pc/NewCheckpaper.vue +1315 -1315
  241. package/src/filiale/wensu/android/AddPlanItem.vue +495 -495
  242. package/src/filiale/wensu/android/AndroidDefectDeal.vue +464 -464
  243. package/src/filiale/wensu/android/PaperFeedback.vue +1358 -1358
  244. package/src/filiale/wensu/android/SafecheckOrderV.vue +2430 -2430
  245. package/src/filiale/wensu/android/SafecheckUserInfo.vue +627 -627
  246. package/src/filiale/wensu/pc/DefectListNew.vue +735 -735
  247. package/src/filiale/wenxi/android/AddPlanItem.vue +431 -431
  248. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2671 -2671
  249. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +673 -673
  250. package/src/filiale/wenxi/pc/DefectList.vue +653 -653
  251. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1358 -1358
  252. package/src/filiale/wuan/android/SafecheckOrderV.vue +2241 -2241
  253. package/src/filiale/wuan/android/SafecheckUserInfo.vue +596 -596
  254. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  255. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  256. package/src/filiale/wuhai/android/SafecheckOrderV.vue +2456 -2456
  257. package/src/filiale/wuhai/android/SafecheckUserInfo.vue +573 -573
  258. package/src/filiale/wuhai/pc/NewCheckpaper.vue +1281 -1281
  259. package/src/filiale/xiangyuanzhongai/android/PhoneUpUserinfo.vue +1251 -1251
  260. package/src/filiale/xinkang/android/AddPlanItem.vue +244 -196
  261. package/src/filiale/xinkang/android/AndroidDefectDeal.vue +1 -0
  262. package/src/filiale/xinkang/android/SafecheckDevices.vue +52 -22
  263. package/src/filiale/xinkang/android/SafecheckOrderV.vue +24 -80
  264. package/src/filiale/xinkang/android/SafecheckUserInfo.vue +1 -1
  265. package/src/filiale/xinkang/pc/CheckSearchUser.vue +1026 -1026
  266. package/src/filiale/xinkang/pc/DefectListWeixiu.vue +475 -475
  267. package/src/filiale/xinkang/pc/NewCheckpaper.vue +57 -72
  268. package/src/filiale/xinkang/pc/PaperList.vue +25 -10
  269. package/src/filiale/yangchunboneng/android/AddPlanItem.vue +496 -496
  270. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2865 -2865
  271. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +887 -887
  272. package/src/filiale/yangchunboneng/pc/DefectListNew.vue +576 -576
  273. package/src/filiale/yongzhou/android/SafecheckOrderV.vue +2774 -2774
  274. package/src/filiale/yongzhou/android/SafecheckUserInfo.vue +776 -776
  275. package/src/filiale/yuansheng/android/SafecheckOrderV.vue +2758 -2758
  276. package/src/filiale/yuansheng/android/SafecheckUserInfo.vue +797 -797
  277. package/src/filiale/yuansheng/android/SwitchValve.vue +1 -1
  278. package/src/filiale/yuansheng/pc/DefectListNew.vue +524 -524
  279. package/src/filiale/yuansheng/pc/NewCheckpaper.vue +1371 -1371
  280. package/src/filiale/yuansheng/pc/checkmsg.vue +464 -464
  281. package/src/filiale/yunchengminsheng/android/DailyworkloadQuery.vue +491 -491
  282. package/src/filiale/yunchengminsheng/android/PaperFeedback.vue +1509 -1509
  283. package/src/filiale/yunchengminsheng/android/PhoneSellInfo.vue +113 -113
  284. package/src/filiale/yunchengminsheng/android/SafecheckDevices.vue +1270 -1270
  285. package/src/filiale/yunchengminsheng/android/SafecheckUserInfo.vue +785 -785
  286. package/src/filiale/yunchengminsheng/android.js +15 -15
  287. package/src/filiale/yunchengminsheng/pc/PaperList.vue +811 -0
  288. package/src/filiale/yunchengminsheng/pc.js +15 -14
  289. package/src/filiale/zhongsheng/android/BuyRecords.vue +122 -122
  290. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2461 -2461
  291. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +690 -690
  292. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  293. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1322 -1322
  294. package/src/filiale/zhongyi/android/SafecheckOrderV.vue +2431 -2431
  295. package/src/filiale/zhongyi/pc/DefectListNew.vue +514 -514
  296. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  297. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  298. package/src/main.js +32 -33
  299. package/src/safecheck-android.js +4 -0
  300. package/src/safecheck.js +924 -918
@@ -1,797 +1,797 @@
1
- <template>
2
- <div class="auto app-text">
3
- <div class="panel" style="padding: 10px 10px 5px 10px;">
4
- <div class="panel-body panel-self">
5
- <div class="col-xs-12" style="padding: 2px 0">
6
- <!-- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户编号:</b></p>-->
7
- <!--<a class="panel-title col-xs-7 text-left input-font" style="width: 79%;color: blue;text-decoration:underline" @click="searchHistory(userinfo.f_userinfoid)">{{ userinfo.f_userinfo_code }}</a>-->
8
- <label
9
- v-if="upUserinfoSta=='是'" style="color: #00b3ee;text-decoration:none;"
10
- @click="upuserinfo(userinfo.f_userinfoid)">信息变更</label>
11
- </div>
12
- <div class="col-xs-12" style="padding: 2px 0">
13
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户名称:</b></p>
14
- <p class="panel-title col-xs-7 text-left input-font">{{ userinfo.f_user_name }}</p>
15
- </div>
16
- <!-- <div class="col-xs-12" style="padding: 2px 0">-->
17
- <!-- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户类型:</b></p>-->
18
- <!-- <p class="panel-title col-xs-7 text-left input-font">{{ userinfo.f_check_type }}-->
19
- <!-- </p>-->
20
- <!-- </div>-->
21
-
22
- <div class="col-xs-12" style="padding: 2px 0">
23
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>联系电话:</b></p>
24
- <input class="panel-title text-left input-font" style="width: 53%"
25
- value="{{ userinfo.f_user_phone2 ? userinfo.f_user_phone2 : userinfo.f_user_phone }}"
26
- v-model="userinfo.f_user_phone"/>
27
- </div>
28
- <div class="col-xs-12" style="padding: 2px 0" v-if="userinfo.f_check_type == '非民用'">
29
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>联系人:</b></p>
30
- <input class="panel-title text-left input-font" style="width: 53%"
31
- value="{{ userinfo.f_principal_name }}"
32
- v-model="userinfo.f_principal_name"/>
33
- </div>
34
- <div class="col-xs-12" style="padding: 2px 0" v-if="userinfo.f_check_type == '民用'">
35
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>租房户:</b></p>
36
- <input type="radio" name="yes" id="yes" value="是">是
37
- <input type="radio" name="yes" id="no" value="否">否
38
- </p>
39
- </div>
40
- <!-- <div class="col-xs-12" style="padding: 2px 0" v-if="updateuserphone&&(userinfo.planmeterss.f_aliasname=='机表')">-->
41
- <!-- <p class="panel-title text-left font" style="width: 23%;float: left"><b>机表表号:</b></p>-->
42
- <!-- <input class="panel-title text-left input-font" style="width: 53%" value="{{ userinfo.f_meter_no }}" v-model="userinfo.f_meter_no"/>-->
43
-
44
- <!-- </div>-->
45
- <!-- <div class="col-xs-12" style="padding: 2px 0">-->
46
- <!-- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户小区:</b></p>-->
47
- <!-- <p class="panel-title text-left input-font" style="width: 79%">{{ userinfo.f_residential_area }}</p>-->
48
- <!-- </div>-->
49
- <div class="col-xs-12" style="padding: 2px 0">
50
- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户地址:</b></p>
51
- <p class="panel-title text-left input-font" style="width: 79%">{{ userinfo.f_address }}</p>
52
- </div>
53
-
54
- <!-- <div class="form-group col-md-12 col-sm-12 col-xs-12" v-if="this.$parent.$parent.data.isRecodr=='false'">
55
- <div class="col-md-12 col-sm-12 col-xs-12">
56
- <button type="button" name="button" class="btn btn-primary btn-voice" @click="record">
57
- <img src="../../../assets/录音.png" style="width: 14%;">
58
- <span v-if="!this.$parent.$parent.data.f_recording1_path">开始录音</span>
59
- <span v-if="this.$parent.$parent.data.f_recording1_path">已录音</span>
60
- </button>
61
- <img src="../../../assets/remove.png" style="width: 15px;" :class="style__" @click="delAudioFile('f_recording1_path', this.$parent.$parent.data.f_recording1_path)"></img>
62
- </div>
63
- </div>-->
64
-
65
- <!-- <div class="col-xs-12" style="padding: 2px 0">-->
66
- <!-- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>安检状态:</b></p>-->
67
- <!-- <p class="panel-title col-xs-7 text-left input-font">{{ userinfo.f_state }}</p>-->
68
- <!-- </div>-->
69
-
70
- <div class="col-xs-12">
71
- <button type="button" style="width: 45%;float: left" class="btn btn-primary" v-if="updateuserphone"
72
- @click="updatePhone(userinfo.f_user_phone,userinfo.f_userinfoid)">电话修改
73
- </button>
74
- <button type="button" style="width: 45%;float: right" class="btn btn-primary" v-if="updatemetermodel"
75
- @click="showbiaoxinghao()">表型号修改
76
- </button>
77
- </div>
78
- <div class="col-xs-12">
79
- <button type="button" style="width: 45%;float: left" class="btn btn-primary"
80
- v-if="updatemeternumber&&(userinfo.planmeterss.f_aliasname=='机表')"
81
- @click="updatebiaohao(userinfo.f_meter_no,userinfo.f_userinfoid)">表号修改
82
- </button>
83
- <!-- <button type="button" style="width: 45%;float: right" class="btn btn-primary" v-if="updateuserphone" @click="showbiaoxinghao()">表型号修改</button>-->
84
- </div>
85
- </div>
86
- <div class="panel-body">
87
- <div v-show="false" class="row repair-info-content auto">
88
- <div class="col-xs-12 col-sm-12 col-md-12 form-input-group">
89
- <label class="control-label">
90
- <nobr>到达时间:</nobr>
91
- </label>
92
- <span>{{ f_onsite_time }}</span>
93
- </div>
94
- <div class="col-xs-12 col-sm-12 col-md-12 form-input-group" v-if="data.f_date_leave">
95
- <label class="control-label">
96
- <nobr>离开时间:</nobr>
97
- </label>
98
- <span>{{ f_offsite_time }}</span>
99
- </div>
100
- </div>
101
-
102
-
103
- <div class="form-group" :class="style__">
104
- <span class="col-md-3 col-sm-4 col-xs-4 text-left"><img src="../../../assets/housestyle.png"
105
- style="width: 20px;margin-bottom: 5px;text-align: left"
106
- alt="">入户状态:</span>
107
- <div :class="style__" class="col-md-9 col-sm-8 col-xs-8 text-center">
108
- <input type="radio" name="enterstatus" v-model="f_entry_status" id="nopeople" value="到访不遇">到访不遇
109
- <input type="radio" name="enterstatus" v-model="f_entry_status" id="rejectchecck" value="拒检">拒检
110
- <input type="radio" name="enterstatus" v-model="f_entry_status" id="enterhouse" value="入户">入户
111
- </div>
112
- <div class="form-group col-sm-12 col-xs-12" :class="style__" v-show="f_entry_status=='到访不遇'">
113
- <label class="text-left font">到访不遇照片:</label>
114
- <div class="auto">
115
- <div class="panel" style="padding: 10px 10px 5px 10px;">
116
- <div class="panel-body panel-self"
117
- style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
118
- <div class="row" style="height: 240px;overflow: scroll;top: 1px">
119
- <div class="col-xs-4 col-sm-3 col-md-2" style="margin-bottom: 35px"
120
- v-for="(index,img) in f_noanswers_path">
121
- <img-self :src="img.f_noanswer_path" alt="到访不遇照片" :width="130" :height="160"></img-self>
122
- <img src="../../../assets/删除.png" @click="delfile('f_noanswers_path', img.f_noanswer_path,index)"
123
- style="width: 15px;margin-top: -80px" alt="">
124
- </div>
125
- </div>
126
- <div class="row text-right div-photo" :class="style__">
127
- <button type="button" name="button" class="btn btn-primary btn-photo"
128
- @click="takePic('拍照','f_noanswers_path', '到访不遇照片')">拍照
129
- </button>
130
- <!-- <button type="button" name="button" class="btn btn-primary btn-photo"-->
131
- <!-- @click="takePic('相册','f_noanswers_path', '到访不遇照片')">相册-->
132
- <!-- </button>-->
133
- </div>
134
- </div>
135
- </div>
136
- </div>
137
- </div>
138
- </div>
139
- </div>
140
- <div class="form-group col-sm-12 col-xs-12" :class="style__" v-show="f_entry_status=='拒检'">
141
- <label class="text-left font">拒检照片:</label>
142
- <div class="auto">
143
- <div class="panel" style="padding: 10px 10px 5px 10px;">
144
- <div class="panel-body panel-self"
145
- style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
146
- <div class="row" style="height: 240px;overflow: scroll;top: 1px">
147
- <div class="col-xs-4 col-sm-3 col-md-2" style="margin-bottom: 35px"
148
- v-for="(index,img) in f_rejectchecks_path">
149
- <img-self :src="img.f_rejectcheck_path" alt="拒检照片" :width="130" :height="160"></img-self>
150
- <img src="../../../assets/删除.png" @click="delfile('f_rejectchecks_path', img.f_rejectcheck_path,index)"
151
- style="width: 15px;margin-top: -80px" alt="">
152
- </div>
153
- </div>
154
- <div class="row text-right div-photo" :class="style__">
155
- <button type="button" name="button" class="btn btn-primary btn-photo"
156
- @click="takePic('拍照','f_rejectchecks_path', '拒检照片')">拍照
157
- </button>
158
- </div>
159
- </div>
160
- </div>
161
- </div>
162
- </div>
163
- </div>
164
- <div :class="style__" class="form-group" v-show="f_usegas == '未使用'">
165
- <sapn class="text-left col-md-12 col-sm-12 col-xs-12">处置方式:</sapn>
166
- <div class="col-xs-12 col-sm-12 col-md-12">
167
- <input type="checkbox" v-model="f_no_gas_device">无燃气具
168
- <input type="checkbox" v-model="f_close_valve">关闭表前阀
169
- <input type="checkbox" v-model="f_unload_battery">取下表内电池
170
- </div>
171
- </div>
172
- <div class="auto app-text" style="margin-top: 5px;" v-if="this.$parent.$parent.role != 'view'">
173
- <div class="panel" style="padding: 60px 7px 10px 0px;">
174
- <div class="panel-body panel-self">
175
- <div v-show="false" class="row">
176
- <p class="panel-title col-xs-4 text-left font">建档时间</p>
177
- <p class="panel-title col-xs-8 text-left input-font">{{ newfile_date }}</p>
178
- </div>
179
- <div class="row" v-if="last_check_date != null && last_check_date != ''">
180
- <p class="panel-title col-xs-4 text-left font">上次安检时间</p>
181
- <p class="panel-title col-xs-8 text-left input-font">{{ last_check_date }}</p>
182
- </div>
183
- <div class="row">
184
- <p class="panel-title col-xs-4 text-left font">上次安检状态</p>
185
- <p class="panel-title col-xs-8 text-left input-font"
186
- v-if="last_check_date != null && last_check_date != ''">安检完成</p>
187
- <p class="panel-title col-xs-8 text-left input-font"
188
- v-if="last_check_date == null || last_check_date == ''">未安检</p>
189
- </div>
190
- <div class="row" v-if="last_check_date != null && last_check_date != ''">
191
- <p class="panel-title col-xs-4 text-left font">上次安检结果</p>
192
- <p class="panel-title col-xs-8 text-left input-font" :class="last_check_result=='正常'?'':'color-red'">
193
- {{ last_check_result }}</p>
194
- <div v-for="data in last_check_data.data" class="panel-title col-xs-offset-4 col-xs-8 text-left input-font">
195
- <p v-for="(key,item) in data">
196
- {{ key }}:{{ item }}
197
- </p>
198
- </div>
199
- </div>
200
- </div>
201
- </div>
202
- </div>
203
- </div>
204
- <div v-if="showbModal">
205
- <modal :show.sync="showbModal" v-ref:modal backdrop="false">
206
- <div slot="modal-header" class="modal-header">
207
- <h4 class="modal-title">
208
- 选择表型号
209
- </h4>
210
- </div>
211
- <div slot="modal-body" class="modal-body">
212
- <div class="col-xs-12">
213
-
214
- <v-select :value.sync="biaoxinghao" v-model='biaoxinghao'
215
- :value-single="true"
216
- class="select_list select"
217
- :options='gmlist' placeholder='请选择表型号'
218
- close-on-select width="100%"></v-select>
219
- </div>
220
- <div class="col-xs-12" style="height: 10px">
221
-
222
- </div>
223
-
224
- </div>
225
- <div slot="modal-footer" class="modal-footer">
226
- <button class="btn btn-default" @click="biaoxinghaook()">确认</button>
227
- <button class="btn btn-default" @click="biaoxinghaocancel()">取消</button>
228
- </div>
229
- </modal>
230
- </div>
231
- </template>
232
-
233
- <script>
234
- import {HttpResetClass} from 'vue-client'
235
- import * as Util from '../../Util'
236
- import Vue from 'vue'
237
- import RadioGroup from 'vue-client/src/vue-strap/src/radioGroup'
238
- import Radio from 'vue-client/src/vue-strap/src/radioBtn'
239
-
240
- export default {
241
- title: 'SafecheckUserInfo',
242
- props: ['userinfo'],
243
- data () {
244
- return this.$parent.$parent.data
245
- },
246
- created () {
247
- this.$set('showbModal', false)
248
- //tag
249
- this.$set('biaoxinghao', '')
250
- },
251
- ready () {
252
- //tag
253
- //tag)
254
- // //tag)
255
- // this.$set('userinfo.f_meter_no',this.userinfo.planmeterss.f_meter_no)
256
- // //tag)
257
- this.$set('beforephone', this.userinfo.f_user_phone)
258
- this.$set('gmlist', [])
259
- //
260
- this.$parent.$parent.data.isRecodr = "false", //单值参数,为true则是开启全程录音
261
- console.log("aaaaaaaaaaaaa"+this.$parent.$parent.data.isRecodr)
262
- //tag
263
- if (Vue.config.safecheck != undefined) {
264
- if (Vue.config.safecheck.SafecheckUserinfo != undefined) {
265
- if (Vue.config.safecheck.SafecheckUserinfo.updateuserphone != undefined) {
266
- this.$set('updateuserphone', Vue.config.safecheck.SafecheckUserinfo.updateuserphone)
267
- }
268
- if (Vue.config.safecheck.SafecheckUserinfo.updatemetermodel != undefined) {
269
- this.$set('updatemetermodel', Vue.config.safecheck.SafecheckUserinfo.updatemetermodel)
270
- }
271
- if (Vue.config.safecheck.SafecheckUserinfo.updatemeternumber != undefined) {
272
- this.$set('updatemeternumber', Vue.config.safecheck.SafecheckUserinfo.updatemeternumber)
273
- }
274
- }
275
- }
276
- for (let i in this.userinfo) {
277
- //tag + ':' + JSON.stringify(this.userinfo[i]))
278
- }
279
- this.safecheckStateReady()
280
- },
281
- methods: {
282
- updatebiaohao (f_meter_no, f_userinfo_id) {
283
- this.$showMessage('将用户 ' + this.userinfo.f_user_name + '的机表表号从' + this.userinfo.planmeterss.f_meter_no + '修改为' + f_meter_no, ['confirm', 'cancel']).then((butt) => {
284
- if (butt == 'confirm') {
285
- let http = new HttpResetClass()
286
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/safecheckUpdateBiaoHao`, {
287
- f_meter_no: f_meter_no,
288
- f_userinfo_id: f_userinfo_id
289
- }, {resolveMsg: null, rejectMsg: null}).then((res) => {
290
- if (res.data.code == 200) {
291
- this.$showMessage('修改成功!')
292
- } else {
293
- this.$showMessage('修改失败!,网络异常')
294
- }
295
- })
296
- }
297
- })
298
- },
299
- biaoxinghaook () {
300
- if (this.biaoxinghao == '') {
301
- this.$showMessage('请选择表型号')
302
- return
303
- }
304
- //tag
305
- //tag
306
- this.$showMessage('是否确定进行修改?', ['confirm', 'cancel']).then((butt) => {
307
- if (butt == 'confirm') {
308
- let http = new HttpResetClass()
309
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/safecheckUpdateBiaoXingHao`, {
310
- biaoxinghao: this.biaoxinghao,
311
- f_userinfo_id: this.userinfo.f_userinfoid
312
- }, {resolveMsg: null, rejectMsg: null}).then((res) => {
313
- if (res.data.code == 200) {
314
- this.$showMessage('修改成功!')
315
- //tag
316
- this.showbModal = false
317
- } else {
318
- this.$showMessage('修改失败!,网络异常')
319
- }
320
- })
321
- }
322
- })
323
- },
324
- biaoxinghaocancel () {
325
- //tag
326
- this.showbModal = false
327
- },
328
- showbiaoxinghao () {
329
- this.gmlist = []
330
- //tag)
331
- //tag
332
- let http1 = new HttpResetClass()
333
- http1.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
334
- data: {
335
- items: 'gm.id,gm.f_meter_style',
336
- tablename: 't_gasbrand gb LEFT JOIN t_gasmodel gm ON gb.id= gm.f_gasbrand_id ',
337
- condition: `f_meter_brand = '${this.userinfo.planmeterss.f_aliasname}'`,
338
- // condition: `f_meter_brand = 'this.userinfo.planmeterss'`,
339
- orderitem: 'gm.id'
340
- }
341
- }, {resolveMsg: null, rejectMsg: null}).then((ress) => {
342
- ress.data.forEach(res => {
343
- this.gmlist.push({
344
- label: res.f_meter_style,
345
- value: res.id
346
- })
347
- })
348
- //tag)
349
- //tag
350
- this.showbModal = true
351
- })
352
- },
353
- updatePhone (f_user_phone, f_userinfo_id) {
354
-
355
- this.$showMessage('将用户 ' + this.userinfo.f_user_name + '的电话号码从' + this.beforephone + '修改为' + f_user_phone, ['confirm', 'cancel']).then((butt) => {
356
- if (butt == 'confirm') {
357
- let http = new HttpResetClass()
358
- http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/safecheckUpdatePhone`, {
359
- f_user_phone: f_user_phone,
360
- f_userinfo_id: f_userinfo_id
361
- }, {resolveMsg: null, rejectMsg: null}).then((res) => {
362
- if (res.data.code == 200) {
363
- this.$showMessage('修改成功!')
364
- } else {
365
- this.$showMessage('修改失败!,网络异常')
366
- }
367
- })
368
- }
369
- })
370
- },
371
- upuserinfo (f_userinfo_id) {
372
- this.$dispatch('gotoson', {
373
- _this: this.$parent.$parent,
374
- title: '档案信息变更',
375
- safe: false
376
- })
377
- this.$parent.$parent.$goto('PhoneUpUserinfo', {f_userinfo_id: f_userinfo_id, f_source: '安检'})
378
- },
379
- searchHistory (f_userinfo_id) {
380
- this.$dispatch('gotoson', {
381
- _this: this.$parent.$parent,
382
- title: '购气记录',
383
- safe: false
384
- })
385
- this.$parent.$parent.$goto('phone-sell-info', {f_userinfo_id: f_userinfo_id})
386
- },
387
- cameraCallBack (prop, fileName) {
388
- if (prop == 'f_noanswers_path') {
389
- let f_noanswer_path = fileName + '?' + Math.random()
390
- HostApp.__this__.f_noanswers_path.push({
391
- f_noanswer_path: f_noanswer_path
392
- })
393
- } else if (prop == 'f_rejectchecks_path') {
394
- let f_rejectcheck_path = fileName + '?' + Math.random()
395
- HostApp.__this__.f_rejectchecks_path.push({
396
- f_rejectcheck_path: f_rejectcheck_path
397
- })
398
- }else {
399
- HostApp.__this__.$set(prop, fileName + '?' + Math.random())
400
- }
401
- HostApp.__callback__ = null
402
- HostApp.__this__ = null
403
- },
404
- takePic (type ,prop, title) {
405
- HostApp.__callback__ = this.cameraCallBack
406
- HostApp.__this__ = this
407
- //tag
408
- let fileName
409
- if (prop == 'f_noanswers_path') {
410
- //tag
411
- if (this.f_noanswers_path.length == 3) {
412
- return
413
- }
414
- fileName = Util.guid() + '-' + prop + '.jpg'
415
- } else if (prop == 'f_rejectchecks_path') {
416
- //tag
417
- if (this.f_rejectchecks_path.length == 3) {
418
- return
419
- }
420
- fileName = Util.guid() + '-' + prop + '.jpg'
421
- }else {
422
- if (!this[prop] || this[prop].includes('nopic.png')) {
423
- fileName = Util.guid() + '-' + prop + '.jpg'
424
- } else {
425
- fileName = Util.getFileName(this[prop])
426
- }
427
- }
428
- let page = 'com.aofeng.hybrid.android.peripheral.CameraActivity'
429
- if(type === '相册'){
430
- page ='com.aofeng.hybrid.android.peripheral.ActionPickActivity'
431
- }
432
- HostApp._open_a_page({
433
- type: 'boomerang',
434
- page,
435
- param: {
436
- file: fileName,
437
- requestCode: 111,
438
- callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");',
439
- watermark: title + '\t时间:' + Util.toStandardTimeString() + '\t' + Vue.user.name
440
- }
441
- })
442
- },
443
- delAudioFile(prop, fileName) {
444
- if (!fileName)
445
- return
446
- else {
447
- HostApp.delfile(fileName)
448
- this.paper[prop] = null
449
- }
450
- },
451
- delfile (prop, fileName, index) {
452
- if (fileName == Vue.nopic) {
453
- return
454
- } else {
455
- if (prop == 'f_noanswers_path') {
456
- this.f_noanswers_path.splice(index, 1)
457
- HostApp.delfile(fileName)
458
- }else if (prop == 'f_rejectchecks_path') {
459
- this.f_rejectchecks_path.splice(index, 1)
460
- HostApp.delfile(fileName)
461
- } else {
462
- HostApp.delfile(fileName)
463
- this[prop] = Vue.nopic
464
- }
465
- }
466
- },
467
- setEntryClass (val) {
468
- if (val == '到访不遇') {
469
- this.f_usegas = ''
470
- this.$set('f_entry_class', 'warning')
471
- } else if (val == '拒检') {
472
- this.f_usegas = ''
473
- this.$set('f_entry_class', 'danger')
474
- } else if (val == '入户') {
475
- this.$set('f_entry_class', 'success')
476
- }
477
- },
478
- setUsegas (val) {
479
- if (val == '未使用') {
480
- this.$set('f_useclass', 'default')
481
- }
482
- if (val == '已使用') {
483
- this.$set('f_useclass', 'success')
484
- }
485
- },
486
- start () {
487
- this.$parent.$parent.isStrat = true
488
- this.$set('action', !this.action)
489
- this.$set('f_onsite_time', Util.toStandardTimeString())
490
- },
491
- //录音
492
- record() {
493
- if (this.$parent.$parent.role != 'inspect') {
494
- if (this.$parent.$parent.data.f_recording1_path != '') {
495
- window.location = this.$parent.$parent.data.f_recording1_path
496
- }
497
- } else {
498
- HostApp.__callback__ = this.amrCallBack
499
- HostApp.__this__ = this
500
- let fileName
501
- if (!this.$parent.$parent.data.f_recording1_path) {
502
- fileName = Util.guid() + '.amr'
503
- } else {
504
- fileName = Util.getFileName(this.$parent.$parent.data.f_recording1_path)
505
- }
506
- HostApp._open_a_page({
507
- type: 'boomerang',
508
- page: 'com.aofeng.hybrid.android.peripheral.AudioClipActivity',
509
- param: {file: fileName, requestCode: 111, callback: 'javascript:HostApp.__callback__("%s");'}
510
- })
511
- }
512
- },
513
- safecheckStateReady () {
514
- //tag
515
- //tag
516
- //tag
517
- if (!this.$parent.$parent.showBack) {
518
- this.$parent.$parent.showBack = true
519
- }
520
- //兼容下-如果没有通过外层查询带进来最新安检时间,就拿本地单子里存的上次安检时间
521
- if (this.$parent.$parent.item.f_plan_meters[0].f_last_check_date) {
522
- this.$set('last_check_date', this.$parent.$parent.item.f_plan_meters[0].f_last_check_date)
523
- this.$set('newfile_date', this.$parent.$parent.item.f_plan_meters[0].f_newfile_date)
524
- if (this.$parent.$parent.item.f_plan_meters[0].f_last_check_result) {
525
- let checkResult = JSON.parse(this.$parent.$parent.item.f_plan_meters[0].f_last_check_result)
526
- this.$set('last_check_result', checkResult.result)
527
- this.$set('last_check_data.data', checkResult.data)
528
- } else {
529
- this.$set('last_check_result', '')
530
- this.$set('last_check_data.data', [])
531
- }
532
- } else {
533
- this.$set('last_check_date', this.$parent.$parent.item.f_last_check_date)
534
- if (this.$parent.$parent.item.f_last_check_result) {
535
- let checkResult = JSON.parse(this.$parent.$parent.item.f_last_check_result)
536
- this.$set('last_check_result', checkResult.result)
537
- this.$set('last_check_data.data', checkResult.data)
538
- } else {
539
- this.$set('last_check_result', '')
540
- this.$set('last_check_data.data', [])
541
- }
542
- }
543
-
544
- this.$set('upUserinfoSta', '否')
545
- this.upUserinfoSta = this.$appdata.getSingleValue('安检修改档案信息')
546
-
547
- if (this.$parent.$parent.role == 'inspect' && this.f_complete != '已完成') {
548
- this.start()
549
- }
550
- if (this.$parent.$parent.data.f_onsite_time) {
551
- //tag
552
- this.$parent.$parent.startClick = true
553
- }
554
- this.action = true
555
- //tag
556
- if (this.f_onsite_time) {
557
- this.$parent.$parent.isStrat = true
558
- this.$parent.$parent.data.f_onsite_time = Util.toStandardTimeString()
559
- }
560
- if (this.$parent.$parent.role == 'repair') {
561
- this.$set('style__', 'divmask')
562
- this.$set('style_view_', '')
563
- } else if (this.$parent.$parent.role == 'view') {
564
- this.$set('style__', 'divmask')
565
- this.$set('style_view_', 'divmask')
566
- //tag
567
- } else {
568
- this.$set('style__', '')
569
- this.$set('style_view_', '')
570
- }
571
- if (!this.f_nongasuser_path) {
572
- this.$set('f_nongasuser_path', '')
573
- }
574
- //到访多张照片
575
- this.$set('f_noanswers_path', [])
576
- if (this.f_noanswer_path) {
577
- this.f_noanswers_path.push({f_noanswer_path: this.f_noanswer_path})
578
- } else {
579
- this.$set('f_noanswer_path', '')
580
- }
581
- if (this.f_noanswer1_path) {
582
- this.f_noanswers_path.push({f_noanswer_path: this.f_noanswer1_path})
583
- } else {
584
- this.$set('f_noanswer1_path', '')
585
- }
586
- if (this.f_noanswer2_path) {
587
- this.f_noanswers_path.push({f_noanswer_path: this.f_noanswer2_path})
588
- } else {
589
- this.$set('f_noanswer2_path', '')
590
- }
591
-
592
- if (!this.f_rejectcheck_path) {
593
- this.$set('f_rejectcheck_path', '')
594
- }
595
- //拒检多张照片
596
- this.$set('f_rejectchecks_path', [])
597
- if (this.f_rejectcheck_path) {
598
- this.f_rejectchecks_path.push({f_rejectcheck_path: this.f_rejectcheck_path})
599
- } else {
600
- this.$set('f_rejectcheck_path', '')
601
- }
602
- if (this.f_rejectcheck1_path) {
603
- this.f_rejectchecks_path.push({f_rejectcheck_path: this.f_rejectcheck1_path})
604
- } else {
605
- this.$set('f_rejectcheck1_path', '')
606
- }
607
- if (this.f_rejectcheck2_path) {
608
- this.f_rejectchecks_path.push({f_rejectcheck_path: this.f_rejectcheck2_path})
609
- } else {
610
- this.$set('f_rejectcheck2_path', '')
611
- }
612
-
613
- this.$watch('f_noanswers_path.length', () => {
614
- //tag)
615
- for (let i = 0; i < 3; i++) {
616
-
617
- if (this.f_noanswers_path[i] && this.f_noanswers_path[i].f_noanswer_path) {
618
- //tag)
619
- if (i == 0) {
620
- this.f_noanswer_path = this.f_noanswers_path[i].f_noanswer_path
621
- } else {
622
- this['f_noanswer' + i + '_path'] = this.f_noanswers_path[i].f_noanswer_path
623
- }
624
- } else {
625
- //tag)
626
- if (i == 0) {
627
- this.f_noanswer_path = null
628
- } else {
629
- this['f_noanswer' + i + '_path'] = null
630
- }
631
- }
632
- }
633
- //tag
634
- })
635
- this.$watch('f_rejectchecks_path.length', () => {
636
- //tag)
637
- for (let i = 0; i < 3; i++) {
638
-
639
- if (this.f_rejectchecks_path[i] && this.f_rejectchecks_path[i].f_rejectcheck_path) {
640
- //tag)
641
- if (i == 0) {
642
- this.f_rejectcheck_path = this.f_rejectchecks_path[i].f_rejectcheck_path
643
- } else {
644
- this['f_rejectcheck' + i + '_path'] = this.f_rejectchecks_path[i].f_rejectcheck_path
645
- }
646
- } else {
647
- //tag)
648
- if (i == 0) {
649
- this.f_rejectcheck_path = null
650
- } else {
651
- this['f_rejectcheck' + i + '_path'] = null
652
- }
653
- }
654
- }
655
- //tag
656
- })
657
-
658
- this.$watch('f_usegas', (val) => {
659
- this.setUsegas(val)
660
- })
661
-
662
- this.setEntryClass(this.f_entry_status)
663
- this.$watch('f_entry_status', (val) => {
664
- this.setEntryClass(val)
665
-
666
- if (val == '到访不遇') {
667
- this.f_rejectcheck_path = Vue.nopic
668
- this.f_rejectcheck1_path = Vue.nopic
669
- this.f_rejectcheck2_path = Vue.nopic
670
- this.f_rejectchecks_path = ''
671
- }
672
- if (val == '拒检') {
673
- this.f_noanswer_path = Vue.nopic
674
- this.f_noanswer1_path = Vue.nopic
675
- this.f_noanswer2_path = Vue.nopic
676
- this.f_noanswers_path = ''
677
- }
678
-
679
- if (val != '入户') {
680
- //清理安检概括
681
- this.f_no_gas_device = false
682
- this.f_unload_battery = false
683
- this.f_close_valve = false
684
- //清理全局隐患
685
- this.f_defect_cramped = false
686
- this.f_defect_bedroom = false
687
- this.f_defect_longpipe = false
688
- this.f_defect_firesource = false
689
- this.f_defect_explosive = false
690
- this.f_defect_viacabinet = false
691
- this.f_defect_intermittent = false
692
- this.f_defect_nearfire = false
693
- this.f_defect_openkitchen = false
694
- this.f_defect_hang = false
695
- this.f_cramped_path = Vue.nopic
696
- //用户评价
697
- this.f_client_evaluation = null
698
- //清设备
699
- this.$set('f_meters', [])
700
- this.$set('f_plumbs', [])
701
- this.$set('f_valves', [])
702
- this.$set('f_inner_plumbs', [])
703
- this.$set('f_alarms', [])
704
- this.$set('f_cookers', [])
705
- this.$set('f_heaters', [])
706
- this.$set('f_furnaces', [])
707
- } else {
708
- this.f_rejectcheck_path = Vue.nopic
709
- this.f_noanswer_path = Vue.nopic
710
- this.f_novisit_reason = null
711
- }
712
- })
713
- }
714
- },
715
- components: {
716
- RadioGroup,
717
- Radio
718
- }
719
- }
720
- </script>
721
-
722
- <style scoped>
723
-
724
- .font {
725
- font: 15px PingFang-SC-Medium;
726
- color: #666666;
727
- }
728
-
729
- .input-font {
730
- font: 15px PingFang-SC-Medium;
731
- color: #333333;
732
- }
733
-
734
- .btn-voice{
735
- border-radius: 7px;
736
- border: 1px solid #dedede;
737
- background-color: #f5fbff;
738
- font: 15px PingFang-SC-Bold;
739
- color: #499edf;
740
- }
741
- .app-text {
742
- font-size: 12px;
743
- }
744
-
745
- .panel-self {
746
- border-radius: 10px;
747
- border: 1px solid #499EDF;
748
- background-color: #F8F8F8;
749
- }
750
-
751
- .app-text {
752
- font-size: 12px;
753
- }
754
-
755
- .panel-self {
756
- border-radius: 5px;
757
- border: 1px solid #c5e1f7;
758
- background-color: #F2F6FA;
759
- }
760
-
761
- .font {
762
- font: 15px PingFang-SC-Medium;
763
- color: #333333;
764
- }
765
-
766
- .panel-self {
767
- border-radius: 5px;
768
- border: 1px solid #c5e1f7;
769
- background-color: #F2F6FA;
770
- }
771
-
772
- .text-left {
773
- text-align: left;
774
- }
775
-
776
- .font {
777
- font: 15px PingFang-SC-Medium;
778
- color: #333333;
779
- }
780
-
781
- .btn-photo {
782
- border: 0;
783
- border-radius: 7px;
784
- background-color: #7dc1f4;
785
- font: 15px PingFang-SC-Bold;
786
- height: 20%;
787
- }
788
-
789
- .div-photo {
790
- width: auto;
791
- height: auto;
792
- /* margin-top: 10px; */
793
- position: absolute;
794
- bottom: 10px;
795
- right: 10px;
796
- }
797
- </style>
1
+ <template>
2
+ <div class="auto app-text">
3
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
4
+ <div class="panel-body panel-self">
5
+ <div class="col-xs-12" style="padding: 2px 0">
6
+ <!-- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户编号:</b></p>-->
7
+ <!--<a class="panel-title col-xs-7 text-left input-font" style="width: 79%;color: blue;text-decoration:underline" @click="searchHistory(userinfo.f_userinfoid)">{{ userinfo.f_userinfo_code }}</a>-->
8
+ <label
9
+ v-if="upUserinfoSta=='是'" style="color: #00b3ee;text-decoration:none;"
10
+ @click="upuserinfo(userinfo.f_userinfoid)">信息变更</label>
11
+ </div>
12
+ <div class="col-xs-12" style="padding: 2px 0">
13
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户名称:</b></p>
14
+ <p class="panel-title col-xs-7 text-left input-font">{{ userinfo.f_user_name }}</p>
15
+ </div>
16
+ <!-- <div class="col-xs-12" style="padding: 2px 0">-->
17
+ <!-- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户类型:</b></p>-->
18
+ <!-- <p class="panel-title col-xs-7 text-left input-font">{{ userinfo.f_check_type }}-->
19
+ <!-- </p>-->
20
+ <!-- </div>-->
21
+
22
+ <div class="col-xs-12" style="padding: 2px 0">
23
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>联系电话:</b></p>
24
+ <input class="panel-title text-left input-font" style="width: 53%"
25
+ value="{{ userinfo.f_user_phone2 ? userinfo.f_user_phone2 : userinfo.f_user_phone }}"
26
+ v-model="userinfo.f_user_phone"/>
27
+ </div>
28
+ <div class="col-xs-12" style="padding: 2px 0" v-if="userinfo.f_check_type == '非民用'">
29
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>联系人:</b></p>
30
+ <input class="panel-title text-left input-font" style="width: 53%"
31
+ value="{{ userinfo.f_principal_name }}"
32
+ v-model="userinfo.f_principal_name"/>
33
+ </div>
34
+ <div class="col-xs-12" style="padding: 2px 0" v-if="userinfo.f_check_type == '民用'">
35
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>租房户:</b></p>
36
+ <input type="radio" name="yes" id="yes" value="是">是
37
+ <input type="radio" name="yes" id="no" value="否">否
38
+ </p>
39
+ </div>
40
+ <!-- <div class="col-xs-12" style="padding: 2px 0" v-if="updateuserphone&&(userinfo.planmeterss.f_aliasname=='机表')">-->
41
+ <!-- <p class="panel-title text-left font" style="width: 23%;float: left"><b>机表表号:</b></p>-->
42
+ <!-- <input class="panel-title text-left input-font" style="width: 53%" value="{{ userinfo.f_meter_no }}" v-model="userinfo.f_meter_no"/>-->
43
+
44
+ <!-- </div>-->
45
+ <!-- <div class="col-xs-12" style="padding: 2px 0">-->
46
+ <!-- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户小区:</b></p>-->
47
+ <!-- <p class="panel-title text-left input-font" style="width: 79%">{{ userinfo.f_residential_area }}</p>-->
48
+ <!-- </div>-->
49
+ <div class="col-xs-12" style="padding: 2px 0">
50
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户地址:</b></p>
51
+ <p class="panel-title text-left input-font" style="width: 79%">{{ userinfo.f_address }}</p>
52
+ </div>
53
+
54
+ <!-- <div class="form-group col-md-12 col-sm-12 col-xs-12" v-if="this.$parent.$parent.data.isRecodr=='false'">
55
+ <div class="col-md-12 col-sm-12 col-xs-12">
56
+ <button type="button" name="button" class="btn btn-primary btn-voice" @click="record">
57
+ <img src="../../../assets/录音.png" style="width: 14%;">
58
+ <span v-if="!this.$parent.$parent.data.f_recording1_path">开始录音</span>
59
+ <span v-if="this.$parent.$parent.data.f_recording1_path">已录音</span>
60
+ </button>
61
+ <img src="../../../assets/remove.png" style="width: 15px;" :class="style__" @click="delAudioFile('f_recording1_path', this.$parent.$parent.data.f_recording1_path)"></img>
62
+ </div>
63
+ </div>-->
64
+
65
+ <!-- <div class="col-xs-12" style="padding: 2px 0">-->
66
+ <!-- <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>安检状态:</b></p>-->
67
+ <!-- <p class="panel-title col-xs-7 text-left input-font">{{ userinfo.f_state }}</p>-->
68
+ <!-- </div>-->
69
+
70
+ <div class="col-xs-12">
71
+ <button type="button" style="width: 45%;float: left" class="btn btn-primary" v-if="updateuserphone"
72
+ @click="updatePhone(userinfo.f_user_phone,userinfo.f_userinfoid)">电话修改
73
+ </button>
74
+ <button type="button" style="width: 45%;float: right" class="btn btn-primary" v-if="updatemetermodel"
75
+ @click="showbiaoxinghao()">表型号修改
76
+ </button>
77
+ </div>
78
+ <div class="col-xs-12">
79
+ <button type="button" style="width: 45%;float: left" class="btn btn-primary"
80
+ v-if="updatemeternumber&&(userinfo.planmeterss.f_aliasname=='机表')"
81
+ @click="updatebiaohao(userinfo.f_meter_no,userinfo.f_userinfoid)">表号修改
82
+ </button>
83
+ <!-- <button type="button" style="width: 45%;float: right" class="btn btn-primary" v-if="updateuserphone" @click="showbiaoxinghao()">表型号修改</button>-->
84
+ </div>
85
+ </div>
86
+ <div class="panel-body">
87
+ <div v-show="false" class="row repair-info-content auto">
88
+ <div class="col-xs-12 col-sm-12 col-md-12 form-input-group">
89
+ <label class="control-label">
90
+ <nobr>到达时间:</nobr>
91
+ </label>
92
+ <span>{{ f_onsite_time }}</span>
93
+ </div>
94
+ <div class="col-xs-12 col-sm-12 col-md-12 form-input-group" v-if="data.f_date_leave">
95
+ <label class="control-label">
96
+ <nobr>离开时间:</nobr>
97
+ </label>
98
+ <span>{{ f_offsite_time }}</span>
99
+ </div>
100
+ </div>
101
+
102
+
103
+ <div class="form-group" :class="style__">
104
+ <span class="col-md-3 col-sm-4 col-xs-4 text-left"><img src="../../../assets/housestyle.png"
105
+ style="width: 20px;margin-bottom: 5px;text-align: left"
106
+ alt="">入户状态:</span>
107
+ <div :class="style__" class="col-md-9 col-sm-8 col-xs-8 text-center">
108
+ <input type="radio" name="enterstatus" v-model="f_entry_status" id="nopeople" value="到访不遇">到访不遇
109
+ <input type="radio" name="enterstatus" v-model="f_entry_status" id="rejectchecck" value="拒检">拒检
110
+ <input type="radio" name="enterstatus" v-model="f_entry_status" id="enterhouse" value="入户">入户
111
+ </div>
112
+ <div class="form-group col-sm-12 col-xs-12" :class="style__" v-show="f_entry_status=='到访不遇'">
113
+ <label class="text-left font">到访不遇照片:</label>
114
+ <div class="auto">
115
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
116
+ <div class="panel-body panel-self"
117
+ style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
118
+ <div class="row" style="height: 240px;overflow: scroll;top: 1px">
119
+ <div class="col-xs-4 col-sm-3 col-md-2" style="margin-bottom: 35px"
120
+ v-for="(index,img) in f_noanswers_path">
121
+ <img-self :src="img.f_noanswer_path" alt="到访不遇照片" :width="130" :height="160"></img-self>
122
+ <img src="../../../assets/删除.png" @click="delfile('f_noanswers_path', img.f_noanswer_path,index)"
123
+ style="width: 15px;margin-top: -80px" alt="">
124
+ </div>
125
+ </div>
126
+ <div class="row text-right div-photo" :class="style__">
127
+ <button type="button" name="button" class="btn btn-primary btn-photo"
128
+ @click="takePic('拍照','f_noanswers_path', '到访不遇照片')">拍照
129
+ </button>
130
+ <!-- <button type="button" name="button" class="btn btn-primary btn-photo"-->
131
+ <!-- @click="takePic('相册','f_noanswers_path', '到访不遇照片')">相册-->
132
+ <!-- </button>-->
133
+ </div>
134
+ </div>
135
+ </div>
136
+ </div>
137
+ </div>
138
+ </div>
139
+ </div>
140
+ <div class="form-group col-sm-12 col-xs-12" :class="style__" v-show="f_entry_status=='拒检'">
141
+ <label class="text-left font">拒检照片:</label>
142
+ <div class="auto">
143
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
144
+ <div class="panel-body panel-self"
145
+ style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
146
+ <div class="row" style="height: 240px;overflow: scroll;top: 1px">
147
+ <div class="col-xs-4 col-sm-3 col-md-2" style="margin-bottom: 35px"
148
+ v-for="(index,img) in f_rejectchecks_path">
149
+ <img-self :src="img.f_rejectcheck_path" alt="拒检照片" :width="130" :height="160"></img-self>
150
+ <img src="../../../assets/删除.png" @click="delfile('f_rejectchecks_path', img.f_rejectcheck_path,index)"
151
+ style="width: 15px;margin-top: -80px" alt="">
152
+ </div>
153
+ </div>
154
+ <div class="row text-right div-photo" :class="style__">
155
+ <button type="button" name="button" class="btn btn-primary btn-photo"
156
+ @click="takePic('拍照','f_rejectchecks_path', '拒检照片')">拍照
157
+ </button>
158
+ </div>
159
+ </div>
160
+ </div>
161
+ </div>
162
+ </div>
163
+ </div>
164
+ <div :class="style__" class="form-group" v-show="f_usegas == '未使用'">
165
+ <sapn class="text-left col-md-12 col-sm-12 col-xs-12">处置方式:</sapn>
166
+ <div class="col-xs-12 col-sm-12 col-md-12">
167
+ <input type="checkbox" v-model="f_no_gas_device">无燃气具
168
+ <input type="checkbox" v-model="f_close_valve">关闭表前阀
169
+ <input type="checkbox" v-model="f_unload_battery">取下表内电池
170
+ </div>
171
+ </div>
172
+ <div class="auto app-text" style="margin-top: 5px;" v-if="this.$parent.$parent.role != 'view'">
173
+ <div class="panel" style="padding: 60px 7px 10px 0px;">
174
+ <div class="panel-body panel-self">
175
+ <div v-show="false" class="row">
176
+ <p class="panel-title col-xs-4 text-left font">建档时间</p>
177
+ <p class="panel-title col-xs-8 text-left input-font">{{ newfile_date }}</p>
178
+ </div>
179
+ <div class="row" v-if="last_check_date != null && last_check_date != ''">
180
+ <p class="panel-title col-xs-4 text-left font">上次安检时间</p>
181
+ <p class="panel-title col-xs-8 text-left input-font">{{ last_check_date }}</p>
182
+ </div>
183
+ <div class="row">
184
+ <p class="panel-title col-xs-4 text-left font">上次安检状态</p>
185
+ <p class="panel-title col-xs-8 text-left input-font"
186
+ v-if="last_check_date != null && last_check_date != ''">安检完成</p>
187
+ <p class="panel-title col-xs-8 text-left input-font"
188
+ v-if="last_check_date == null || last_check_date == ''">未安检</p>
189
+ </div>
190
+ <div class="row" v-if="last_check_date != null && last_check_date != ''">
191
+ <p class="panel-title col-xs-4 text-left font">上次安检结果</p>
192
+ <p class="panel-title col-xs-8 text-left input-font" :class="last_check_result=='正常'?'':'color-red'">
193
+ {{ last_check_result }}</p>
194
+ <div v-for="data in last_check_data.data" class="panel-title col-xs-offset-4 col-xs-8 text-left input-font">
195
+ <p v-for="(key,item) in data">
196
+ {{ key }}:{{ item }}
197
+ </p>
198
+ </div>
199
+ </div>
200
+ </div>
201
+ </div>
202
+ </div>
203
+ </div>
204
+ <div v-if="showbModal">
205
+ <modal :show.sync="showbModal" v-ref:modal backdrop="false">
206
+ <div slot="modal-header" class="modal-header">
207
+ <h4 class="modal-title">
208
+ 选择表型号
209
+ </h4>
210
+ </div>
211
+ <div slot="modal-body" class="modal-body">
212
+ <div class="col-xs-12">
213
+
214
+ <v-select :value.sync="biaoxinghao" v-model='biaoxinghao'
215
+ :value-single="true"
216
+ class="select_list select"
217
+ :options='gmlist' placeholder='请选择表型号'
218
+ close-on-select width="100%"></v-select>
219
+ </div>
220
+ <div class="col-xs-12" style="height: 10px">
221
+
222
+ </div>
223
+
224
+ </div>
225
+ <div slot="modal-footer" class="modal-footer">
226
+ <button class="btn btn-default" @click="biaoxinghaook()">确认</button>
227
+ <button class="btn btn-default" @click="biaoxinghaocancel()">取消</button>
228
+ </div>
229
+ </modal>
230
+ </div>
231
+ </template>
232
+
233
+ <script>
234
+ import {HttpResetClass} from 'vue-client'
235
+ import * as Util from '../../Util'
236
+ import Vue from 'vue'
237
+ import RadioGroup from 'vue-client/src/vue-strap/src/radioGroup'
238
+ import Radio from 'vue-client/src/vue-strap/src/radioBtn'
239
+
240
+ export default {
241
+ title: 'SafecheckUserInfo',
242
+ props: ['userinfo'],
243
+ data () {
244
+ return this.$parent.$parent.data
245
+ },
246
+ created () {
247
+ this.$set('showbModal', false)
248
+ //tag
249
+ this.$set('biaoxinghao', '')
250
+ },
251
+ ready () {
252
+ //tag
253
+ //tag)
254
+ // //tag)
255
+ // this.$set('userinfo.f_meter_no',this.userinfo.planmeterss.f_meter_no)
256
+ // //tag)
257
+ this.$set('beforephone', this.userinfo.f_user_phone)
258
+ this.$set('gmlist', [])
259
+ //
260
+ this.$parent.$parent.data.isRecodr = "false", //单值参数,为true则是开启全程录音
261
+ console.log("aaaaaaaaaaaaa"+this.$parent.$parent.data.isRecodr)
262
+ //tag
263
+ if (Vue.config.safecheck != undefined) {
264
+ if (Vue.config.safecheck.SafecheckUserinfo != undefined) {
265
+ if (Vue.config.safecheck.SafecheckUserinfo.updateuserphone != undefined) {
266
+ this.$set('updateuserphone', Vue.config.safecheck.SafecheckUserinfo.updateuserphone)
267
+ }
268
+ if (Vue.config.safecheck.SafecheckUserinfo.updatemetermodel != undefined) {
269
+ this.$set('updatemetermodel', Vue.config.safecheck.SafecheckUserinfo.updatemetermodel)
270
+ }
271
+ if (Vue.config.safecheck.SafecheckUserinfo.updatemeternumber != undefined) {
272
+ this.$set('updatemeternumber', Vue.config.safecheck.SafecheckUserinfo.updatemeternumber)
273
+ }
274
+ }
275
+ }
276
+ for (let i in this.userinfo) {
277
+ //tag + ':' + JSON.stringify(this.userinfo[i]))
278
+ }
279
+ this.safecheckStateReady()
280
+ },
281
+ methods: {
282
+ updatebiaohao (f_meter_no, f_userinfo_id) {
283
+ this.$showMessage('将用户 ' + this.userinfo.f_user_name + '的机表表号从' + this.userinfo.planmeterss.f_meter_no + '修改为' + f_meter_no, ['confirm', 'cancel']).then((butt) => {
284
+ if (butt == 'confirm') {
285
+ let http = new HttpResetClass()
286
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/safecheckUpdateBiaoHao`, {
287
+ f_meter_no: f_meter_no,
288
+ f_userinfo_id: f_userinfo_id
289
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
290
+ if (res.data.code == 200) {
291
+ this.$showMessage('修改成功!')
292
+ } else {
293
+ this.$showMessage('修改失败!,网络异常')
294
+ }
295
+ })
296
+ }
297
+ })
298
+ },
299
+ biaoxinghaook () {
300
+ if (this.biaoxinghao == '') {
301
+ this.$showMessage('请选择表型号')
302
+ return
303
+ }
304
+ //tag
305
+ //tag
306
+ this.$showMessage('是否确定进行修改?', ['confirm', 'cancel']).then((butt) => {
307
+ if (butt == 'confirm') {
308
+ let http = new HttpResetClass()
309
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/safecheckUpdateBiaoXingHao`, {
310
+ biaoxinghao: this.biaoxinghao,
311
+ f_userinfo_id: this.userinfo.f_userinfoid
312
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
313
+ if (res.data.code == 200) {
314
+ this.$showMessage('修改成功!')
315
+ //tag
316
+ this.showbModal = false
317
+ } else {
318
+ this.$showMessage('修改失败!,网络异常')
319
+ }
320
+ })
321
+ }
322
+ })
323
+ },
324
+ biaoxinghaocancel () {
325
+ //tag
326
+ this.showbModal = false
327
+ },
328
+ showbiaoxinghao () {
329
+ this.gmlist = []
330
+ //tag)
331
+ //tag
332
+ let http1 = new HttpResetClass()
333
+ http1.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
334
+ data: {
335
+ items: 'gm.id,gm.f_meter_style',
336
+ tablename: 't_gasbrand gb LEFT JOIN t_gasmodel gm ON gb.id= gm.f_gasbrand_id ',
337
+ condition: `f_meter_brand = '${this.userinfo.planmeterss.f_aliasname}'`,
338
+ // condition: `f_meter_brand = 'this.userinfo.planmeterss'`,
339
+ orderitem: 'gm.id'
340
+ }
341
+ }, {resolveMsg: null, rejectMsg: null}).then((ress) => {
342
+ ress.data.forEach(res => {
343
+ this.gmlist.push({
344
+ label: res.f_meter_style,
345
+ value: res.id
346
+ })
347
+ })
348
+ //tag)
349
+ //tag
350
+ this.showbModal = true
351
+ })
352
+ },
353
+ updatePhone (f_user_phone, f_userinfo_id) {
354
+
355
+ this.$showMessage('将用户 ' + this.userinfo.f_user_name + '的电话号码从' + this.beforephone + '修改为' + f_user_phone, ['confirm', 'cancel']).then((butt) => {
356
+ if (butt == 'confirm') {
357
+ let http = new HttpResetClass()
358
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/safecheckUpdatePhone`, {
359
+ f_user_phone: f_user_phone,
360
+ f_userinfo_id: f_userinfo_id
361
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
362
+ if (res.data.code == 200) {
363
+ this.$showMessage('修改成功!')
364
+ } else {
365
+ this.$showMessage('修改失败!,网络异常')
366
+ }
367
+ })
368
+ }
369
+ })
370
+ },
371
+ upuserinfo (f_userinfo_id) {
372
+ this.$dispatch('gotoson', {
373
+ _this: this.$parent.$parent,
374
+ title: '档案信息变更',
375
+ safe: false
376
+ })
377
+ this.$parent.$parent.$goto('PhoneUpUserinfo', {f_userinfo_id: f_userinfo_id, f_source: '安检'})
378
+ },
379
+ searchHistory (f_userinfo_id) {
380
+ this.$dispatch('gotoson', {
381
+ _this: this.$parent.$parent,
382
+ title: '购气记录',
383
+ safe: false
384
+ })
385
+ this.$parent.$parent.$goto('phone-sell-info', {f_userinfo_id: f_userinfo_id})
386
+ },
387
+ cameraCallBack (prop, fileName) {
388
+ if (prop == 'f_noanswers_path') {
389
+ let f_noanswer_path = fileName + '?' + Math.random()
390
+ HostApp.__this__.f_noanswers_path.push({
391
+ f_noanswer_path: f_noanswer_path
392
+ })
393
+ } else if (prop == 'f_rejectchecks_path') {
394
+ let f_rejectcheck_path = fileName + '?' + Math.random()
395
+ HostApp.__this__.f_rejectchecks_path.push({
396
+ f_rejectcheck_path: f_rejectcheck_path
397
+ })
398
+ }else {
399
+ HostApp.__this__.$set(prop, fileName + '?' + Math.random())
400
+ }
401
+ HostApp.__callback__ = null
402
+ HostApp.__this__ = null
403
+ },
404
+ takePic (type ,prop, title) {
405
+ HostApp.__callback__ = this.cameraCallBack
406
+ HostApp.__this__ = this
407
+ //tag
408
+ let fileName
409
+ if (prop == 'f_noanswers_path') {
410
+ //tag
411
+ if (this.f_noanswers_path.length == 3) {
412
+ return
413
+ }
414
+ fileName = Util.guid() + '-' + prop + '.jpg'
415
+ } else if (prop == 'f_rejectchecks_path') {
416
+ //tag
417
+ if (this.f_rejectchecks_path.length == 3) {
418
+ return
419
+ }
420
+ fileName = Util.guid() + '-' + prop + '.jpg'
421
+ }else {
422
+ if (!this[prop] || this[prop].includes('nopic.png')) {
423
+ fileName = Util.guid() + '-' + prop + '.jpg'
424
+ } else {
425
+ fileName = Util.getFileName(this[prop])
426
+ }
427
+ }
428
+ let page = 'com.aofeng.hybrid.android.peripheral.CameraActivity'
429
+ if(type === '相册'){
430
+ page ='com.aofeng.hybrid.android.peripheral.ActionPickActivity'
431
+ }
432
+ HostApp._open_a_page({
433
+ type: 'boomerang',
434
+ page,
435
+ param: {
436
+ file: fileName,
437
+ requestCode: 111,
438
+ callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");',
439
+ watermark: title + '\t时间:' + Util.toStandardTimeString() + '\t' + Vue.user.name
440
+ }
441
+ })
442
+ },
443
+ delAudioFile(prop, fileName) {
444
+ if (!fileName)
445
+ return
446
+ else {
447
+ HostApp.delfile(fileName)
448
+ this.paper[prop] = null
449
+ }
450
+ },
451
+ delfile (prop, fileName, index) {
452
+ if (fileName == Vue.nopic) {
453
+ return
454
+ } else {
455
+ if (prop == 'f_noanswers_path') {
456
+ this.f_noanswers_path.splice(index, 1)
457
+ HostApp.delfile(fileName)
458
+ }else if (prop == 'f_rejectchecks_path') {
459
+ this.f_rejectchecks_path.splice(index, 1)
460
+ HostApp.delfile(fileName)
461
+ } else {
462
+ HostApp.delfile(fileName)
463
+ this[prop] = Vue.nopic
464
+ }
465
+ }
466
+ },
467
+ setEntryClass (val) {
468
+ if (val == '到访不遇') {
469
+ this.f_usegas = ''
470
+ this.$set('f_entry_class', 'warning')
471
+ } else if (val == '拒检') {
472
+ this.f_usegas = ''
473
+ this.$set('f_entry_class', 'danger')
474
+ } else if (val == '入户') {
475
+ this.$set('f_entry_class', 'success')
476
+ }
477
+ },
478
+ setUsegas (val) {
479
+ if (val == '未使用') {
480
+ this.$set('f_useclass', 'default')
481
+ }
482
+ if (val == '已使用') {
483
+ this.$set('f_useclass', 'success')
484
+ }
485
+ },
486
+ start () {
487
+ this.$parent.$parent.isStrat = true
488
+ this.$set('action', !this.action)
489
+ this.$set('f_onsite_time', Util.toStandardTimeString())
490
+ },
491
+ //录音
492
+ record() {
493
+ if (this.$parent.$parent.role != 'inspect') {
494
+ if (this.$parent.$parent.data.f_recording1_path != '') {
495
+ window.location = this.$parent.$parent.data.f_recording1_path
496
+ }
497
+ } else {
498
+ HostApp.__callback__ = this.amrCallBack
499
+ HostApp.__this__ = this
500
+ let fileName
501
+ if (!this.$parent.$parent.data.f_recording1_path) {
502
+ fileName = Util.guid() + '.amr'
503
+ } else {
504
+ fileName = Util.getFileName(this.$parent.$parent.data.f_recording1_path)
505
+ }
506
+ HostApp._open_a_page({
507
+ type: 'boomerang',
508
+ page: 'com.aofeng.hybrid.android.peripheral.AudioClipActivity',
509
+ param: {file: fileName, requestCode: 111, callback: 'javascript:HostApp.__callback__("%s");'}
510
+ })
511
+ }
512
+ },
513
+ safecheckStateReady () {
514
+ //tag
515
+ //tag
516
+ //tag
517
+ if (!this.$parent.$parent.showBack) {
518
+ this.$parent.$parent.showBack = true
519
+ }
520
+ //兼容下-如果没有通过外层查询带进来最新安检时间,就拿本地单子里存的上次安检时间
521
+ if (this.$parent.$parent.item.f_plan_meters[0].f_last_check_date) {
522
+ this.$set('last_check_date', this.$parent.$parent.item.f_plan_meters[0].f_last_check_date)
523
+ this.$set('newfile_date', this.$parent.$parent.item.f_plan_meters[0].f_newfile_date)
524
+ if (this.$parent.$parent.item.f_plan_meters[0].f_last_check_result) {
525
+ let checkResult = JSON.parse(this.$parent.$parent.item.f_plan_meters[0].f_last_check_result)
526
+ this.$set('last_check_result', checkResult.result)
527
+ this.$set('last_check_data.data', checkResult.data)
528
+ } else {
529
+ this.$set('last_check_result', '')
530
+ this.$set('last_check_data.data', [])
531
+ }
532
+ } else {
533
+ this.$set('last_check_date', this.$parent.$parent.item.f_last_check_date)
534
+ if (this.$parent.$parent.item.f_last_check_result) {
535
+ let checkResult = JSON.parse(this.$parent.$parent.item.f_last_check_result)
536
+ this.$set('last_check_result', checkResult.result)
537
+ this.$set('last_check_data.data', checkResult.data)
538
+ } else {
539
+ this.$set('last_check_result', '')
540
+ this.$set('last_check_data.data', [])
541
+ }
542
+ }
543
+
544
+ this.$set('upUserinfoSta', '否')
545
+ this.upUserinfoSta = this.$appdata.getSingleValue('安检修改档案信息')
546
+
547
+ if (this.$parent.$parent.role == 'inspect' && this.f_complete != '已完成') {
548
+ this.start()
549
+ }
550
+ if (this.$parent.$parent.data.f_onsite_time) {
551
+ //tag
552
+ this.$parent.$parent.startClick = true
553
+ }
554
+ this.action = true
555
+ //tag
556
+ if (this.f_onsite_time) {
557
+ this.$parent.$parent.isStrat = true
558
+ this.$parent.$parent.data.f_onsite_time = Util.toStandardTimeString()
559
+ }
560
+ if (this.$parent.$parent.role == 'repair') {
561
+ this.$set('style__', 'divmask')
562
+ this.$set('style_view_', '')
563
+ } else if (this.$parent.$parent.role == 'view') {
564
+ this.$set('style__', 'divmask')
565
+ this.$set('style_view_', 'divmask')
566
+ //tag
567
+ } else {
568
+ this.$set('style__', '')
569
+ this.$set('style_view_', '')
570
+ }
571
+ if (!this.f_nongasuser_path) {
572
+ this.$set('f_nongasuser_path', '')
573
+ }
574
+ //到访多张照片
575
+ this.$set('f_noanswers_path', [])
576
+ if (this.f_noanswer_path) {
577
+ this.f_noanswers_path.push({f_noanswer_path: this.f_noanswer_path})
578
+ } else {
579
+ this.$set('f_noanswer_path', '')
580
+ }
581
+ if (this.f_noanswer1_path) {
582
+ this.f_noanswers_path.push({f_noanswer_path: this.f_noanswer1_path})
583
+ } else {
584
+ this.$set('f_noanswer1_path', '')
585
+ }
586
+ if (this.f_noanswer2_path) {
587
+ this.f_noanswers_path.push({f_noanswer_path: this.f_noanswer2_path})
588
+ } else {
589
+ this.$set('f_noanswer2_path', '')
590
+ }
591
+
592
+ if (!this.f_rejectcheck_path) {
593
+ this.$set('f_rejectcheck_path', '')
594
+ }
595
+ //拒检多张照片
596
+ this.$set('f_rejectchecks_path', [])
597
+ if (this.f_rejectcheck_path) {
598
+ this.f_rejectchecks_path.push({f_rejectcheck_path: this.f_rejectcheck_path})
599
+ } else {
600
+ this.$set('f_rejectcheck_path', '')
601
+ }
602
+ if (this.f_rejectcheck1_path) {
603
+ this.f_rejectchecks_path.push({f_rejectcheck_path: this.f_rejectcheck1_path})
604
+ } else {
605
+ this.$set('f_rejectcheck1_path', '')
606
+ }
607
+ if (this.f_rejectcheck2_path) {
608
+ this.f_rejectchecks_path.push({f_rejectcheck_path: this.f_rejectcheck2_path})
609
+ } else {
610
+ this.$set('f_rejectcheck2_path', '')
611
+ }
612
+
613
+ this.$watch('f_noanswers_path.length', () => {
614
+ //tag)
615
+ for (let i = 0; i < 3; i++) {
616
+
617
+ if (this.f_noanswers_path[i] && this.f_noanswers_path[i].f_noanswer_path) {
618
+ //tag)
619
+ if (i == 0) {
620
+ this.f_noanswer_path = this.f_noanswers_path[i].f_noanswer_path
621
+ } else {
622
+ this['f_noanswer' + i + '_path'] = this.f_noanswers_path[i].f_noanswer_path
623
+ }
624
+ } else {
625
+ //tag)
626
+ if (i == 0) {
627
+ this.f_noanswer_path = null
628
+ } else {
629
+ this['f_noanswer' + i + '_path'] = null
630
+ }
631
+ }
632
+ }
633
+ //tag
634
+ })
635
+ this.$watch('f_rejectchecks_path.length', () => {
636
+ //tag)
637
+ for (let i = 0; i < 3; i++) {
638
+
639
+ if (this.f_rejectchecks_path[i] && this.f_rejectchecks_path[i].f_rejectcheck_path) {
640
+ //tag)
641
+ if (i == 0) {
642
+ this.f_rejectcheck_path = this.f_rejectchecks_path[i].f_rejectcheck_path
643
+ } else {
644
+ this['f_rejectcheck' + i + '_path'] = this.f_rejectchecks_path[i].f_rejectcheck_path
645
+ }
646
+ } else {
647
+ //tag)
648
+ if (i == 0) {
649
+ this.f_rejectcheck_path = null
650
+ } else {
651
+ this['f_rejectcheck' + i + '_path'] = null
652
+ }
653
+ }
654
+ }
655
+ //tag
656
+ })
657
+
658
+ this.$watch('f_usegas', (val) => {
659
+ this.setUsegas(val)
660
+ })
661
+
662
+ this.setEntryClass(this.f_entry_status)
663
+ this.$watch('f_entry_status', (val) => {
664
+ this.setEntryClass(val)
665
+
666
+ if (val == '到访不遇') {
667
+ this.f_rejectcheck_path = Vue.nopic
668
+ this.f_rejectcheck1_path = Vue.nopic
669
+ this.f_rejectcheck2_path = Vue.nopic
670
+ this.f_rejectchecks_path = ''
671
+ }
672
+ if (val == '拒检') {
673
+ this.f_noanswer_path = Vue.nopic
674
+ this.f_noanswer1_path = Vue.nopic
675
+ this.f_noanswer2_path = Vue.nopic
676
+ this.f_noanswers_path = ''
677
+ }
678
+
679
+ if (val != '入户') {
680
+ //清理安检概括
681
+ this.f_no_gas_device = false
682
+ this.f_unload_battery = false
683
+ this.f_close_valve = false
684
+ //清理全局隐患
685
+ this.f_defect_cramped = false
686
+ this.f_defect_bedroom = false
687
+ this.f_defect_longpipe = false
688
+ this.f_defect_firesource = false
689
+ this.f_defect_explosive = false
690
+ this.f_defect_viacabinet = false
691
+ this.f_defect_intermittent = false
692
+ this.f_defect_nearfire = false
693
+ this.f_defect_openkitchen = false
694
+ this.f_defect_hang = false
695
+ this.f_cramped_path = Vue.nopic
696
+ //用户评价
697
+ this.f_client_evaluation = null
698
+ //清设备
699
+ this.$set('f_meters', [])
700
+ this.$set('f_plumbs', [])
701
+ this.$set('f_valves', [])
702
+ this.$set('f_inner_plumbs', [])
703
+ this.$set('f_alarms', [])
704
+ this.$set('f_cookers', [])
705
+ this.$set('f_heaters', [])
706
+ this.$set('f_furnaces', [])
707
+ } else {
708
+ this.f_rejectcheck_path = Vue.nopic
709
+ this.f_noanswer_path = Vue.nopic
710
+ this.f_novisit_reason = null
711
+ }
712
+ })
713
+ }
714
+ },
715
+ components: {
716
+ RadioGroup,
717
+ Radio
718
+ }
719
+ }
720
+ </script>
721
+
722
+ <style scoped>
723
+
724
+ .font {
725
+ font: 15px PingFang-SC-Medium;
726
+ color: #666666;
727
+ }
728
+
729
+ .input-font {
730
+ font: 15px PingFang-SC-Medium;
731
+ color: #333333;
732
+ }
733
+
734
+ .btn-voice{
735
+ border-radius: 7px;
736
+ border: 1px solid #dedede;
737
+ background-color: #f5fbff;
738
+ font: 15px PingFang-SC-Bold;
739
+ color: #499edf;
740
+ }
741
+ .app-text {
742
+ font-size: 12px;
743
+ }
744
+
745
+ .panel-self {
746
+ border-radius: 10px;
747
+ border: 1px solid #499EDF;
748
+ background-color: #F8F8F8;
749
+ }
750
+
751
+ .app-text {
752
+ font-size: 12px;
753
+ }
754
+
755
+ .panel-self {
756
+ border-radius: 5px;
757
+ border: 1px solid #c5e1f7;
758
+ background-color: #F2F6FA;
759
+ }
760
+
761
+ .font {
762
+ font: 15px PingFang-SC-Medium;
763
+ color: #333333;
764
+ }
765
+
766
+ .panel-self {
767
+ border-radius: 5px;
768
+ border: 1px solid #c5e1f7;
769
+ background-color: #F2F6FA;
770
+ }
771
+
772
+ .text-left {
773
+ text-align: left;
774
+ }
775
+
776
+ .font {
777
+ font: 15px PingFang-SC-Medium;
778
+ color: #333333;
779
+ }
780
+
781
+ .btn-photo {
782
+ border: 0;
783
+ border-radius: 7px;
784
+ background-color: #7dc1f4;
785
+ font: 15px PingFang-SC-Bold;
786
+ height: 20%;
787
+ }
788
+
789
+ .div-photo {
790
+ width: auto;
791
+ height: auto;
792
+ /* margin-top: 10px; */
793
+ position: absolute;
794
+ bottom: 10px;
795
+ right: 10px;
796
+ }
797
+ </style>