safecheck-client 4.0.0-6 → 4.0.0-60

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (313) hide show
  1. package/package.json +1 -1
  2. package/src/App.vue +31 -31
  3. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  4. package/src/components/DefectDealMain/DefectListNew.vue +642 -642
  5. package/src/components/Util/ImgSelfSafePlus.vue +13 -3
  6. package/src/components/android/AddPlanItem.vue +447 -447
  7. package/src/components/android/AddPlanItemYy.vue +451 -451
  8. package/src/components/android/AddSpecialPlanItem.vue +426 -426
  9. package/src/components/android/AndroidDefectDeal.vue +1 -1
  10. package/src/components/android/AndroidDefectDealBeforeSafe.vue +1 -1
  11. package/src/components/android/AndroidDefectDetails.vue +725 -0
  12. package/src/components/android/BlackUserOnLine.vue +2 -2
  13. package/src/components/android/CurrentCreateYy.vue +1051 -1051
  14. package/src/components/android/Devices.vue +327 -327
  15. package/src/components/android/Devicesm.vue +327 -327
  16. package/src/components/android/Insurance/PhoneInsurancePurchase.vue +1 -1
  17. package/src/components/android/PaperFeedback.vue +14 -12
  18. package/src/components/android/PaperFeedbackTemp.vue +2 -2
  19. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  20. package/src/components/android/PhoneRecordInfo.vue +113 -113
  21. package/src/components/android/PhoneSellInfo.vue +113 -113
  22. package/src/components/android/PhoneUpDetail.vue +1040 -1040
  23. package/src/components/android/PhoneUpUserinfo.vue +20 -0
  24. package/src/components/android/QRCode/QRCodeBinding.vue +300 -300
  25. package/src/components/android/QRCode/QRCodePage.vue +212 -212
  26. package/src/components/android/RelieveRestrict.vue +1 -1
  27. package/src/components/android/Restriction.vue +1 -1
  28. package/src/components/android/SafePlanItem.vue +509 -509
  29. package/src/components/android/SafecheckDevices.vue +47 -2
  30. package/src/components/android/SafecheckOrderV.vue +2 -2
  31. package/src/components/android/SealBind.vue +392 -0
  32. package/src/components/android/SealManage.vue +250 -0
  33. package/src/components/android/UserinfoSelect.vue +714 -714
  34. package/src/components/android/examples/SafeListExamples.vue +296 -296
  35. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  36. package/src/components/android/recheck/Recheck.vue +402 -402
  37. package/src/components/android/userinfo/SafecheckUserInfo.vue +776 -776
  38. package/src/components/checkplan/checkmsg.vue +459 -459
  39. package/src/components/defect/DefectList.vue +507 -507
  40. package/src/components/defect/DefectListWeixiu.vue +484 -484
  41. package/src/components/filialCircle/CircleList.vue +139 -139
  42. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  43. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  44. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  45. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  46. package/src/components/inspections/inspectionFeedback.vue +2 -2
  47. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  48. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  49. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  50. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  51. package/src/components/paper/PaperList.vue +34 -6
  52. package/src/components/pc/AddToCheckBook.vue +100 -23
  53. package/src/components/pc/AnnouncementPC.vue +524 -524
  54. package/src/components/pc/CheckBook.vue +2 -0
  55. package/src/components/pc/CheckBookDetails.vue +6 -39
  56. package/src/components/pc/CheckBookEntry.vue +6 -7
  57. package/src/components/pc/CheckBookList.vue +60 -71
  58. package/src/components/pc/CheckBookSearchArea.vue +20 -24
  59. package/src/components/pc/CheckBookSearchUser.vue +139 -84
  60. package/src/components/pc/CheckBookSearchUserList.vue +1 -2
  61. package/src/components/pc/CheckBookUser.vue +276 -44
  62. package/src/components/pc/DefectList.vue +742 -742
  63. package/src/components/pc/DeviceChange.vue +1068 -1068
  64. package/src/components/pc/NewCheckpaper.vue +14 -8
  65. package/src/components/pc/NewCheckpaperTemp.vue +5 -5
  66. package/src/components/pc/PaperDefectMain.vue +1 -0
  67. package/src/components/pc/SafeVisitInfo.vue +261 -261
  68. package/src/components/planmanage/PlanManage.vue +886 -888
  69. package/src/components/planmanage/checkPlanList.vue +368 -368
  70. package/src/components/querycheckpaper/CheckPaperList.vue +130 -130
  71. package/src/components/report/HiddenSituation.vue +165 -165
  72. package/src/components/rongcheng/AspPaperFeedback.vue +1 -1
  73. package/src/components/rongcheng/AspiratedOrderV.vue +2377 -2377
  74. package/src/components/rongcheng/CurrentCreateOnline.vue +906 -906
  75. package/src/components/rongcheng/DefectList.vue +560 -560
  76. package/src/components/rongcheng/PaperFeedback.vue +2 -2
  77. package/src/components/rongcheng/SafecheckOrderVCli.vue +2641 -2641
  78. package/src/components/safecheck/queryManage/CheckBookAll.vue +2 -2
  79. package/src/components/safecheckNew/android/AddPlanItem.vue +419 -419
  80. package/src/components/safecheckNew/android/CurrentCreate.vue +1050 -1050
  81. package/src/components/safecheckNew/android/Recheck.vue +379 -379
  82. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  83. package/src/components/shaoguan/DefectList.vue +473 -473
  84. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  85. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  86. package/src/components/userfile/SecurityAudit.vue +243 -243
  87. package/src/components/userfileNew/UserInfoAuditNew.vue +274 -274
  88. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +476 -476
  89. package/src/filiale/ancheng/android/PaperFeedback.vue +2 -2
  90. package/src/filiale/ancheng/android/SafecheckOrderV.vue +2703 -2703
  91. package/src/filiale/ancheng/android/SafecheckUserInfo.vue +737 -737
  92. package/src/filiale/ancheng/pc/checkScreen.vue +923 -923
  93. package/src/filiale/ankangyihua/android/AddPlanItem.vue +446 -446
  94. package/src/filiale/ankangyihua/android/AndroidDefectDeal.vue +1 -1
  95. package/src/filiale/ankangyihua/android/SafecheckOrderV.vue +2908 -2908
  96. package/src/filiale/ankangyihua/pc/DefectListWeixiu.vue +491 -491
  97. package/src/filiale/baiyin/android/AndroidDefectDeal.vue +1 -1
  98. package/src/filiale/baiyin/android/SafecheckOrderV.vue +2785 -2785
  99. package/src/filiale/baiyin/pc/DefectListNew.vue +597 -597
  100. package/src/filiale/bayan/android/Edit.vue +132 -132
  101. package/src/filiale/bayan/android/PaperFeedback.vue +2 -2
  102. package/src/filiale/bayan/pc/DefectListNew.vue +597 -597
  103. package/src/filiale/bayan/pc/DeviceChange.vue +1838 -1838
  104. package/src/filiale/bayan/pc/HiddenSituation.vue +295 -295
  105. package/src/filiale/dexin/android/CasualSave.vue +1050 -1050
  106. package/src/filiale/dexin/android/SafecheckOrderV.vue +2950 -2950
  107. package/src/filiale/fugou/android/AddPlanItem.vue +413 -413
  108. package/src/filiale/fugou/android/SafecheckOrderV.vue +2796 -2796
  109. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +830 -830
  110. package/src/filiale/fugou/pc/PaperDefectMain.vue +1 -1
  111. package/src/filiale/fugu/android/SafecheckOrderV.vue +2484 -2484
  112. package/src/filiale/fugu/pc/NewCheckpaper.vue +1287 -1287
  113. package/src/filiale/ganquan/android/AddPlanItem.vue +444 -444
  114. package/src/filiale/ganquan/android/SafecheckOrderV.vue +2485 -2485
  115. package/src/filiale/ganquan/pc/NewCheckpaper.vue +1354 -1354
  116. package/src/filiale/guangxi/pc/DefectListNew.vue +518 -518
  117. package/src/filiale/hanzhong/android/PaperFeedback.vue +2 -2
  118. package/src/filiale/hanzhong/android/SafecheckOrderV.vue +2683 -2683
  119. package/src/filiale/hanzhong/android/SafecheckUserInfo.vue +786 -786
  120. package/src/filiale/huaran/android/SafecheckOrderV.vue +2803 -2803
  121. package/src/filiale/huatong/android/PaperFeedback.vue +2 -2
  122. package/src/filiale/huatong/android/SafecheckOrderV.vue +2426 -2426
  123. package/src/filiale/huatong/android/SafecheckUserInfo.vue +749 -749
  124. package/src/filiale/huayin/android/PaperFeedback.vue +2 -2
  125. package/src/filiale/huayin/android/SafecheckOrderV.vue +1 -1
  126. package/src/filiale/huayin/pc/NewCheckpaper.vue +1307 -1307
  127. package/src/filiale/jiaocheng/android/AddPlanItem.vue +435 -435
  128. package/src/filiale/jiaocheng/android/PaperFeedback.vue +2 -2
  129. package/src/filiale/jiaocheng/android/SafecheckUserInfo.vue +737 -737
  130. package/src/filiale/jiaocheng/pc/DefectListNew.vue +576 -576
  131. package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -447
  132. package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2807 -2807
  133. package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -784
  134. package/src/filiale/jinbin/pc/DefectListWeixiu.vue +478 -478
  135. package/src/filiale/jingyang/android/AddPlanItem.vue +458 -458
  136. package/src/filiale/jingyang/android/PaperFeedback.vue +2 -2
  137. package/src/filiale/jingyang/android/SafecheckOrderV.vue +2734 -2734
  138. package/src/filiale/jingyang/android/SafecheckUserInfo.vue +781 -781
  139. package/src/filiale/jinhong/android/PhoneInsurancePurchaseDetail.vue +171 -100
  140. package/src/filiale/jinhong/android/PhoneInsuranceRecordList.vue +346 -0
  141. package/src/filiale/jinhong/android.js +1 -0
  142. package/src/filiale/kelai/android/AddPlanItem.vue +488 -488
  143. package/src/filiale/kelai/android/AndroidDefectDeal.vue +2 -2
  144. package/src/filiale/kelai/android/PaperFeedback.vue +2 -2
  145. package/src/filiale/kelai/android/RelieveRestrict.vue +1 -1
  146. package/src/filiale/kelai/android/SafecheckOrderV.vue +1 -1
  147. package/src/filiale/kelai/android/SafecheckUserInfo.vue +774 -774
  148. package/src/filiale/kelai/android/SafecheckUserInfo1.vue +618 -618
  149. package/src/filiale/kelai/pc/DefectListNew.vue +688 -688
  150. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasList.vue +518 -518
  151. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasPaper.vue +1 -1
  152. package/src/filiale/kelai/pc/NewCheckpaper.vue +1454 -1454
  153. package/src/filiale/liaoyuan/android/AddPlanItem.vue +412 -412
  154. package/src/filiale/liaoyuan/android/CurrentCreate.vue +1066 -1066
  155. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2388 -2388
  156. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +557 -557
  157. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +489 -489
  158. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  159. package/src/filiale/lixian/android/SafecheckOrderV.vue +2404 -2404
  160. package/src/filiale/lixian/android/SafecheckUserInfo.vue +578 -578
  161. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  162. package/src/filiale/meihekou/android/AreaPlan.vue +569 -0
  163. package/src/filiale/meihekou/android/CheckPlanList.vue +198 -0
  164. package/src/filiale/meihekou/android/CheckPlanListArea.vue +190 -0
  165. package/src/filiale/meihekou/android/CurrentCreate.vue +1087 -0
  166. package/src/filiale/meihekou/android/MeterReading.vue +106 -0
  167. package/src/filiale/meihekou/android/PhoneUpUserinfo.vue +1276 -0
  168. package/src/filiale/meihekou/android/SafecheckOrderV.vue +2398 -0
  169. package/src/filiale/meihekou/android/SafecheckUserInfo.vue +787 -0
  170. package/src/filiale/meihekou/android.js +19 -0
  171. package/src/filiale/meihekou/pc.js +12 -0
  172. package/src/filiale/minsheng/android/SafecheckUserInfo.vue +754 -754
  173. package/src/filiale/minsheng/pc/DefectListNew.vue +535 -535
  174. package/src/filiale/pingxiang/android/PaperFeedback.vue +2 -2
  175. package/src/filiale/pingxiang/android/SafecheckOrderV.vue +2424 -2424
  176. package/src/filiale/pingxiang/android/SafecheckUserInfo.vue +600 -600
  177. package/src/filiale/pingxiang/pc/DefectListNew.vue +519 -519
  178. package/src/filiale/pingxiang/pc/NewCheckpaper.vue +1294 -1294
  179. package/src/filiale/qianneng/android/AddPlanItem.vue +482 -482
  180. package/src/filiale/qianneng/android/PaperFeedback.vue +2 -2
  181. package/src/filiale/qianneng/android/SafecheckOrderV.vue +2785 -2785
  182. package/src/filiale/qianneng/android/SafecheckUserInfo.vue +775 -775
  183. package/src/filiale/qianneng/pc/DefectListNew.vue +576 -576
  184. package/src/filiale/qianneng/pc/NewCheckpaper.vue +1546 -1546
  185. package/src/filiale/qingjian/android/SafecheckOrderV.vue +2844 -2844
  186. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +800 -800
  187. package/src/filiale/qingtongxia/android/AddPlanItem.vue +450 -450
  188. package/src/filiale/qingtongxia/android/SafecheckOrderV.vue +2726 -2726
  189. package/src/filiale/qingtongxia/android/SafecheckUserInfo.vue +782 -782
  190. package/src/filiale/qingtongxia/pc/DefectListNew.vue +594 -594
  191. package/src/filiale/rizhao/android/AddPlanItem.vue +446 -446
  192. package/src/filiale/rizhao/android/PaperFeedback.vue +2 -2
  193. package/src/filiale/rizhao/android/SafecheckOrderV.vue +2430 -2430
  194. package/src/filiale/rizhao/android/SafecheckUserInfo.vue +640 -640
  195. package/src/filiale/rizhao/pc/DefectList.vue +489 -489
  196. package/src/filiale/rongchuang/android/PaperFeedback.vue +2 -2
  197. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +2696 -2696
  198. package/src/filiale/rongchuang/android/checkpapermsg.vue +209 -209
  199. package/src/filiale/ruihua/android/SafecheckOrderV.vue +2747 -2747
  200. package/src/filiale/ruihua/android/SafecheckUserInfo.vue +804 -804
  201. package/src/filiale/shanggao/android/PaperFeedback.vue +2 -2
  202. package/src/filiale/shanggao/android/SafecheckOrderV.vue +2426 -2426
  203. package/src/filiale/shanxian/android/AndroidDefectDeal.vue +1 -1
  204. package/src/filiale/shanxian/android/PaperFeedback.vue +2 -2
  205. package/src/filiale/shanxian/android/SafecheckUserInfo.vue +749 -749
  206. package/src/filiale/shanxian/pc/HiddenSituation.vue +121 -121
  207. package/src/filiale/shanxian/pc/NewCheckpaper.vue +1526 -1526
  208. package/src/filiale/shexian/android/AddPlanItem.vue +444 -444
  209. package/src/filiale/shexian/android/AndroidDefectDeal.vue +1 -1
  210. package/src/filiale/shexian/android/PaperFeedback.vue +2 -2
  211. package/src/filiale/shexian/android/SafecheckOrderV.vue +2879 -2879
  212. package/src/filiale/shexian/pc/DefectListNew.vue +593 -593
  213. package/src/filiale/shexian/pc/NewCheckpaper.vue +1469 -1469
  214. package/src/filiale/shimen/android/PaperFeedback.vue +2 -2
  215. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  216. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  217. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  218. package/src/filiale/siyang/android/AddPlanItem.vue +450 -450
  219. package/src/filiale/siyang/android/CurrentCreate.vue +1051 -1051
  220. package/src/filiale/siyang/android/PhoneRecordInfo.vue +214 -214
  221. package/src/filiale/siyang/android/SafecheckOrderV.vue +2796 -2796
  222. package/src/filiale/siyang/android/SafecheckUserInfo.vue +789 -789
  223. package/src/filiale/siyang/pc/HiddenSituation.vue +167 -167
  224. package/src/filiale/tianke/android/AddPlanItem.vue +455 -455
  225. package/src/filiale/tianke/android/SafecheckOrderV.vue +2431 -2431
  226. package/src/filiale/tianke/android/SafecheckUserInfo.vue +744 -744
  227. package/src/filiale/tongchuan/android/AddPlanItem.vue +483 -483
  228. package/src/filiale/tongchuan/android/AndroidDefectDeal.vue +1 -1
  229. package/src/filiale/tongchuan/android/PaperFeedback.vue +2 -2
  230. package/src/filiale/tongchuan/android/PhoneRecordInfo.vue +191 -191
  231. package/src/filiale/tongchuan/android/PhoneSellInfo.vue +113 -113
  232. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +720 -720
  233. package/src/filiale/tongchuan/pc/CheckBookDetails.vue +209 -209
  234. package/src/filiale/tongchuan/pc/DefectListWeixiu.vue +484 -484
  235. package/src/filiale/tongchuan/pc/HiddenSituation.vue +166 -166
  236. package/src/filiale/weinan/android/AddPlanItem.vue +438 -438
  237. package/src/filiale/weinan/android/CurrentCreate.vue +1171 -1171
  238. package/src/filiale/weinan/android/CurrentCreateOnline.vue +911 -911
  239. package/src/filiale/weinan/android/SafePlanItem.vue +440 -440
  240. package/src/filiale/weinan/android/SafecheckOrderV.vue +3 -3
  241. package/src/filiale/weinan/android/SafecheckUserInfo.vue +778 -778
  242. package/src/filiale/weinan/pc/DefectListNew.vue +617 -617
  243. package/src/filiale/weinan/pc/DeviceChange.vue +1088 -1088
  244. package/src/filiale/weinan/pc/HiddenSituation.vue +167 -167
  245. package/src/filiale/weinan/pc/checkScreen.vue +1094 -1094
  246. package/src/filiale/weinanct/android/SafecheckOrderV.vue +2730 -2730
  247. package/src/filiale/weinanct/pc/NewCheckpaper.vue +1315 -1315
  248. package/src/filiale/wensu/android/AddPlanItem.vue +495 -495
  249. package/src/filiale/wensu/android/AndroidDefectDeal.vue +464 -464
  250. package/src/filiale/wensu/android/PaperFeedback.vue +1358 -1358
  251. package/src/filiale/wensu/android/SafecheckOrderV.vue +2430 -2430
  252. package/src/filiale/wensu/android/SafecheckUserInfo.vue +627 -627
  253. package/src/filiale/wensu/pc/DefectListNew.vue +735 -735
  254. package/src/filiale/wenxi/android/AddPlanItem.vue +431 -431
  255. package/src/filiale/wenxi/android/PaperFeedback.vue +3 -3
  256. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2671 -2671
  257. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +673 -673
  258. package/src/filiale/wenxi/pc/DefectList.vue +653 -653
  259. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1358 -1358
  260. package/src/filiale/wuan/android/PaperFeedback.vue +2 -2
  261. package/src/filiale/wuan/android/SafecheckOrderV.vue +2241 -2241
  262. package/src/filiale/wuan/android/SafecheckUserInfo.vue +596 -596
  263. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  264. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  265. package/src/filiale/wuhai/android/PaperFeedback.vue +2 -2
  266. package/src/filiale/wuhai/android/SafecheckOrderV.vue +2456 -2456
  267. package/src/filiale/wuhai/android/SafecheckUserInfo.vue +573 -573
  268. package/src/filiale/wuhai/pc/NewCheckpaper.vue +1281 -1281
  269. package/src/filiale/xiangyuanzhongai/android/SafecheckDevices.vue +20 -1
  270. package/src/filiale/xiangyuanzhongai/android/SafecheckOrderV.vue +2282 -0
  271. package/src/filiale/xiangyuanzhongai/android/SafecheckUserInfo.vue +786 -0
  272. package/src/filiale/xiangyuanzhongai/android.js +2 -0
  273. package/src/filiale/xiangyuanzhongai/pc/DefectListNew.vue +663 -0
  274. package/src/filiale/xiangyuanzhongai/pc/PaperList.vue +795 -0
  275. package/src/filiale/xiangyuanzhongai/pc.js +2 -0
  276. package/src/filiale/xinkang/android/SafecheckOrderV.vue +2732 -2732
  277. package/src/filiale/xinkang/android/SafecheckUserInfo.vue +747 -747
  278. package/src/filiale/xinkang/pc/DefectListWeixiu.vue +475 -475
  279. package/src/filiale/xinkang/pc/NewCheckpaper.vue +1498 -1498
  280. package/src/filiale/yangchunboneng/android/AddPlanItem.vue +496 -496
  281. package/src/filiale/yangchunboneng/android/PaperFeedback.vue +2 -2
  282. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2865 -2865
  283. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +887 -887
  284. package/src/filiale/yangchunboneng/pc/DefectListNew.vue +576 -576
  285. package/src/filiale/yongzhou/android/PaperFeedback.vue +2 -2
  286. package/src/filiale/yongzhou/android/SafecheckOrderV.vue +2774 -2774
  287. package/src/filiale/yongzhou/android/SafecheckUserInfo.vue +776 -776
  288. package/src/filiale/yuansheng/android/AndroidDefectDeal.vue +1 -1
  289. package/src/filiale/yuansheng/android/PaperFeedback.vue +2 -2
  290. package/src/filiale/yuansheng/android/SafecheckOrderV.vue +2758 -2758
  291. package/src/filiale/yuansheng/android/SafecheckUserInfo.vue +797 -797
  292. package/src/filiale/yuansheng/pc/DefectListNew.vue +524 -524
  293. package/src/filiale/yuansheng/pc/NewCheckpaper.vue +1371 -1371
  294. package/src/filiale/yuansheng/pc/checkmsg.vue +464 -464
  295. package/src/filiale/yunchengminsheng/android/DailyworkloadQuery.vue +491 -491
  296. package/src/filiale/yunchengminsheng/android/PhoneSellInfo.vue +113 -0
  297. package/src/filiale/yunchengminsheng/android/SafecheckOrderV.vue +2848 -2846
  298. package/src/filiale/yunchengminsheng/android/SafecheckUserInfo.vue +785 -785
  299. package/src/filiale/yunchengminsheng/android.js +15 -14
  300. package/src/filiale/yunchengminsheng/pc/NewCheckpaper.vue +16 -5
  301. package/src/filiale/zhongsheng/android/BuyRecords.vue +122 -122
  302. package/src/filiale/zhongsheng/android/PaperFeedback.vue +2 -2
  303. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2461 -2461
  304. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +690 -690
  305. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  306. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1322 -1322
  307. package/src/filiale/zhongyi/android/SafecheckOrderV.vue +2431 -2431
  308. package/src/filiale/zhongyi/pc/DefectListNew.vue +514 -514
  309. package/src/filiale/zhoukou/android/PaperFeedback.vue +2 -2
  310. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  311. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  312. package/src/main.js +32 -33
  313. package/src/safecheck-android.js +3 -0
@@ -1,617 +1,617 @@
1
- <template>
2
- <div>
3
- <div :style="{'height':needRepair?'60%':'100%'}">
4
- <criteria-paged :model="model" :pager="false" v-ref:paged>
5
- <criteria partial='criteria'>
6
- <div partial>
7
- <ul class="nav nav-tabs">
8
- <li role="presentation" class="active"><a style=" color: #5ac0d9 !important;">隐患明细</a></li>
9
- </ul>
10
- </div>
11
- </criteria>
12
- <data-grid :model="model" partial='list' class="table_sy">
13
- <template partial='head'>
14
- <tr>
15
- <!-- <th>-->
16
- <!-- <nobr>隐患设备</nobr>-->
17
- <!-- </th>-->
18
- <th>
19
- <nobr>隐患项</nobr>
20
- </th>
21
- <th>
22
- <nobr>隐患原因</nobr>
23
- </th>
24
- <th>
25
- <nobr>隐患处理方式</nobr>
26
- </th>
27
- <th>
28
- <nobr>处理结果</nobr>
29
- </th>
30
- <th v-if="$parent.$parent.$parent.checkDefect=='是'">
31
- <nobr>审核结果</nobr>
32
- </th>
33
- <th>
34
- <nobr>操作</nobr>
35
- </th>
36
- </tr>
37
- </template>
38
- <template partial='body'>
39
- <!-- <td style="text-align: center">-->
40
- <!-- <nobr>{{row.f_device_type}}</nobr>-->
41
- <!-- </td>-->
42
- <td style="text-align: center">
43
- <nobr>{{row.f_item_name}}</nobr>
44
- </td>
45
- <td style="text-align: center">
46
- <nobr>{{row.f_item_value}}</nobr>
47
- </td>
48
- <td style="text-align: center">
49
- <nobr>{{row.f_repaire_type}}</nobr>
50
- </td>
51
- <td style="text-align: center">
52
- <nobr>{{row.f_repaire_state}}</nobr>
53
- </td>
54
- <td style="text-align: center" v-if="$parent.$parent.$parent.checkDefect=='是'">
55
- <nobr>{{row.f_audit_results?row.f_audit_results:'暂无审核结果'}}</nobr>
56
- </td>
57
- <td style="text-align: center">
58
- <div>
59
- <!-- <img-button v-if="row.f_repaire_type != '无隐患' && row.f_repaire_type != '维修已处理' && row.f_path" :src="'/rs/image/file/'+row.f_path" :value="'隐患图片'"></img-button>-->
60
- <!-- <button style="margin-top: 3px" v-if="row.f_repaire_type == '维修已处理'" class="button_new-1 button_spacing" @click="$parent.$parent.$parent.solveDefect( row, 'view')">处理详情</button>-->
61
- <button style="margin-top: 3px" class="button_new-1 button_spacing" @click="$parent.$parent.$parent.solveDefect(row, row.f_repaire_type)">处理详情</button>
62
- <button style="margin-top: 3px" v-if="row.f_repaire_type == '隐患未处理' && $parent.$parent.$parent.showHandleDefectButton === '是'" class="button_spacing button_search-1" @click="$parent.$parent.$parent.solveDefect(row, 'solve')">处理隐患</button>
63
- </div>
64
- </td>
65
- </template>
66
- </data-grid>
67
- </criteria-paged>
68
- </div>
69
-
70
- <div style="overflow-y: scroll;height: 40%" v-if="needRepair">
71
- <div class="form-horizontal auto">
72
- <ul class="nav nav-tabs">
73
- <li role="presentation" class="active"><a style=" color: #000 !important;font-size: 14px">转维修</a></li>
74
- </ul>
75
- <validator name='v' @valid="valid = true" @invalid="valid = false">
76
- <div class="row">
77
- <div class="col-sm-4" :class="[$v.dispatchtype.required ? 'select-error' : '']">
78
- <label for="dispatchtype" class="font_normal_body">派发类型</label>
79
- <input id="dispatchtype" type="text" v-show="false" v-model="$refs.dispatchtype.selectedItems" v-validate:dispatchtype='{required: true }'>
80
- <v-select :value.sync="toRepairModal.preData.dispatchType" v-model="toRepairModal.preData.dispatchType"
81
- :options='toRepairModal.preData.dispatchTypeOptions' placeholder='派发类型'
82
- close-on-select v-ref:dispatchtype>
83
- </v-select>
84
- </div>
85
- <div class="col-sm-4 " v-if="toRepairModal.preData.dispatchType == '派发给站点'">
86
- <label class="font_normal_body">站&nbsp;&nbsp;点</label>
87
- <right-tree
88
- islist
89
- :userid="$login.f.id"
90
- :source="'dep=this.getParentByType($organization$).getSpecialResByType($department$),tool.getFullTree(dep.where(row.hasSpecialRole($派单员$)))'"
91
- @re-res="getSiteRes">
92
- </right-tree>
93
- </div>
94
- <div class="col-sm-4 " v-if="toRepairModal.preData.dispatchType == '派发给维修员'" :class="[$v.f_repairman.required ? 'select-error' : '']">
95
- <input type="text" v-show="false" v-model="toRepairModal.preData.f_repairman" v-validate:f_repairman='{required: true }'>
96
- <label class="font_normal_body">维修员</label>
97
- <v-select
98
- :value.sync="toRepairModal.preData.f_repairman"
99
- :value-single="true"
100
- :options='toRepairModal.preData.repairers'
101
- placeholder='请选择维修员'
102
- close-on-select></v-select>
103
- </div>
104
- <div class="col-sm-4" :class="[$v.f_repairtype.required ? 'select-error' : '']">
105
- <input type="text" v-show="false" v-model="toRepairModal.preData.f_repairtype" v-validate:f_repairtype='{required: true }'>
106
- <label class="font_normal_body">报修类型</label>
107
- <v-select :value.sync="toRepairModal.preData.f_repairtype" style="width:60%"
108
- class="select select_list"
109
- :value-single="true"
110
- :options='toRepairModal.preData.repairTypeOptions'
111
- close-on-select>
112
- </v-select>
113
- </div>
114
- </div>
115
- <div class="row">
116
- <div class="col-sm-8 form-group">
117
- <label class="font_normal_body" >备&emsp;&emsp;注</label>
118
- <input class="input_search" style="width: 60%" type="text" v-model="toRepairModal.preData.f_remarks" placeholder="备注">
119
-
120
- </div>
121
- <div class="col-sm-4" style="margin-top: 1%">
122
- <button class="button_search" :disabled="!valid" @click="confirm">转维修</button>
123
- </div>
124
- </div>
125
- </validator>
126
- </div>
127
- </div>
128
- <modal :show.sync="showSolveModal" v-ref:solveModal>
129
- <div slot="modal-header" class="modal-header">
130
- <h4 class="modal-title">
131
- {{solveModal.preData.type == 'view'?'处理详情':'处理隐患'}}
132
- </h4>
133
- </div>
134
- <div slot="modal-body" class="modal-body">
135
- <div style="width: 100%;height: 36px;background-color: #f1f8ff;float: left">
136
- <div style="width: 8px;height: 100%;background-color: #6aa6e2;margin-right: 20px;float: left"></div>
137
- <div style="width: auto;height:100%;float: left;"><p class="title-font" style="margin-top: 5px">处理前</p></div>
138
- </div>
139
-
140
- <div class="col-sm-6" style="margin-top: 10px">
141
- <label class="font_normal_body">安&nbsp;检&nbsp;员</label>
142
- <input class="input_search" style="width: 60%" type="text" disabled="true" v-model="check.f_checker_name" placeholder="安检员">
143
- </div>
144
- <div class="col-sm-6" style="margin-top: 10px">
145
- <label class="font_normal_body">安检时间</label>
146
- <input class="input_search" style="width: 60%" type="text" disabled="true" v-model="check.f_offsite_time" placeholder="安检时间">
147
- </div>
148
- <div class="col-sm-12" style="margin-bottom: 10px" v-if="solveModal.preData.defectImg">
149
- <label class="font_normal_body">隐患图片</label>
150
- <img-self :width="200" :height="200" :src="solveModal.preData.defectImg"></img-self>
151
- </div>
152
- <div class="col-sm-12" style="margin-bottom: 10px" v-show="solveModal.preData.defectImg1">
153
- <label class="font_normal_body">隐患图片</label>
154
- <img-self :width="200" :height="200" :src="solveModal.preData.defectImg1"></img-self>
155
- </div>
156
- <div class="col-sm-12" style="margin-bottom: 10px" v-show="solveModal.preData.defectImg2">
157
- <label class="font_normal_body">隐患图片</label>
158
- <img-self :width="200" :height="200" :src="solveModal.preData.defectImg2"></img-self>
159
- </div>
160
- <div class="col-sm-12" style="margin-bottom: 10px" v-show="solveModal.preData.defectImg3">
161
- <label class="font_normal_body">隐患图片</label>
162
- <img-self :width="200" :height="200" :src="solveModal.preData.defectImg3"></img-self>
163
- </div>
164
-
165
- <div style="width: 100%;height: 36px;background-color: #f1f8ff;float: left" v-show="solveModal.preData.state == '已处理' || solveModal.preData.type != 'solve'">
166
- <div style="width: 8px;height: 100%;background-color: #6aa6e2;margin-right: 20px;float: left"></div>
167
- <div style="width: auto;height:100%;float: left;"><p class="title-font" style="margin-top: 5px">处理后</p></div>
168
- </div>
169
- <div class="col-sm-6" style="margin-top: 10px" v-show="solveModal.preData.state == '已处理'">
170
- <label class="font_normal_body">处&nbsp;理&nbsp;人</label>
171
- <input v-if="solveModal.preData.type != 'solve'" class="input_search" style="width: 60%" disabled="true" type="text" v-model="solveModal.uploadData.f_repairman" placeholder="处理人">
172
- <v-select
173
- v-if="solveModal.preData.type == 'solve'"
174
- :value.sync="solveModal.uploadData.f_repairman"
175
- :value-single="true"
176
- :options='toRepairModal.preData.repairers'
177
- placeholder='请选择维修员'
178
- close-on-select></v-select>
179
- </div>
180
- <div class="col-sm-6" style="margin-top: 10px" v-show="solveModal.preData.state == '已处理'">
181
- <label class="font_normal_body">处理时间</label>
182
- <datepicker
183
- :disabled="solveModal.preData.type == 'view'"
184
- placeholder='处理时间' style="width:60%"
185
- :disabled-days-of-week="[]"
186
- :format="'yyyy-MM-dd'"
187
- :show-rest-button="reset"
188
- :value.sync="solveModal.uploadData.f_repair_date">
189
- </datepicker>
190
- </div>
191
- <div v-if="solveModal.preData.type == 'solve'" class="col-sm-12" style="margin-bottom: 10px">
192
- <label class="font_normal_body">处理后图片</label>
193
- <avatar-upload :width="200" :height="200" :img-src.sync="solveModal.uploadData.imgSrc" :filename.sync="solveModal.uploadData.filename" v-ref:imginfo></avatar-upload>
194
- </div>
195
- <div v-if="solveModal.preData.state == '已处理'" class="col-sm-12" style="margin-bottom: 10px">
196
- <p> <label class="font_normal_body">处理后图片</label></p>
197
- <P></P>
198
- <div class="col-sm-12">
199
- <div class="col-sm-6" v-if="solveModal.preData.repairedImg">
200
- <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg" style="margin-left: 10px"></img-self>
201
- </div>
202
- <div class="col-sm-6" v-if="solveModal.preData.repairedImg1">
203
- <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg1" style="margin-left: 10px"></img-self>
204
- </div>
205
- <div class="col-sm-6" v-if="solveModal.preData.repairedImg2">
206
- <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg2" style="margin-left: 10px"></img-self>
207
- </div>
208
- <div class="col-sm-6" v-if="solveModal.preData.repairedImg2">
209
- <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg2" style="margin-left: 10px"></img-self>
210
- </div>
211
- <div class="col-sm-6" v-if="solveModal.preData.repairedImg3">
212
- <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg3" style="margin-left: 10px"></img-self>
213
- </div>
214
- <div class="col-sm-6" v-if="solveModal.preData.repairedImg4">
215
- <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg4" style="margin-left: 10px"></img-self>
216
- </div>
217
- <div class="col-sm-6" v-if="solveModal.preData.repairedImg5">
218
- <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg5" style="margin-left: 10px"></img-self>
219
- </div>
220
-
221
- </div>
222
- </div>
223
- </div>
224
- <div slot="modal-footer" class="modal-footer" style="text-align: center">
225
- <button class="button_search" v-if="checkDefect=='是' && solveModal.preData.type == 'view'" @click="auditsure('通过')" v-if="solveModal.preData.type == 'view' && !solveModal.f_audit_results">审核通过</button>
226
- <button class="button_search" v-if="checkDefect=='是' && solveModal.preData.type == 'view'" @click="auditsure('不通过')" v-if="solveModal.preData.type == 'view' && !solveModal.f_audit_results">审核不通过</button>
227
- <button class="button_search" v-if="solveModal.preData.type == 'solve'" @click="ok">确认</button>
228
- <button class="button_search" @click="cancel">取消</button>
229
- </div>
230
- </modal>
231
-
232
- </div>
233
- </template>
234
-
235
- <script>
236
- import {PagedList, HttpResetClass} from 'vue-client'
237
- import * as Util from '../../../components/Util'
238
- import co from 'co'
239
- import Vue from "vue";
240
-
241
- const upSolveDefect = function * (self) {
242
- let uploadData = self.solveModal.uploadData
243
- //tag)
244
- self.$resetpost('/api/af-safecheck/logic/pcRepairDefectNew', self.solveModal.uploadData, {resolveMsg: null, rejectMsg: null})
245
- .then(res => {
246
- if (res.data.code === 200) {
247
- self.$showMessage('隐患已处理。')
248
- self.showSolveModal = false
249
- self.model.search('f_repaire_type != \'无隐患\'', {})
250
- self.solveModal.uploadData={
251
- id: '',
252
- f_repairman: self.$login.f.name,
253
- f_repair_date: Util.getNowDate().substr(0, 10),
254
- f_repair_path: '',
255
- imgSrc: '',
256
- filename: '',
257
- f_defect_remark:''
258
- }
259
- }
260
- })
261
- }
262
-
263
- const sendRepair = function* (self) {
264
- let preData = self.toRepairModal.preData
265
- let uploadData = self.toRepairModal.uploadData
266
-
267
- if (preData.dispatchType == '派发给站点') {
268
- uploadData.model.serviceacitivity[0].f_meetunit = preData.f_meetunit
269
- uploadData.model.serviceacitivity[0].f_reciever = preData.f_reciever
270
- uploadData.model.f_meetunit = preData.f_meetunit
271
- uploadData.model.f_orgstr = preData.f_reciever
272
- uploadData.model.f_outlets = preData.f_outlets
273
- uploadData.toRepair = '转站点'
274
- } else if (preData.dispatchType == '派发给维修员') {
275
- uploadData.model.serviceacitivity[0].f_reciever = preData.f_repairman
276
- // uploadData.model.f_meetunit = self.$login.f.orgpathnames
277
- // uploadData.model.f_orgstr = self.$login.f.orgpathstr
278
- // uploadData.model.f_outlets = self.$login.f.f_parentname
279
- uploadData.model.f_meetunit = self.$login.f.deps
280
- uploadData.model.f_orgid = self.$login.f.orgid
281
- uploadData.model.f_filiale = self.$login.f.org
282
- uploadData.model.f_outlets = self.$login.f.deps
283
- uploadData.model.f_filiale_id = self.$login.f.orgid
284
- uploadData.toRepair = '一级派单'
285
- }
286
- let res = yield self.$resetpost('/api/af-safecheck/sql/GetUserForRepaireNew', {data: {f_userinfo_id: self.check.f_userinfo_id}})
287
- preData.userInfo = res.data[0]
288
- uploadData.model = Object.assign(uploadData.model, preData.userInfo)
289
- uploadData.user.f_userinfo_id = preData.userInfo.f_userinfo_id
290
- uploadData.model.f_repair_date = Util.getNowDate()
291
- uploadData.model.f_repairtype = preData.f_repairtype
292
- uploadData.model.f_remarks = preData.f_remarks
293
- // 拼接failure
294
- let failure = []
295
- self.model.rows.forEach(row => {
296
- if (row.f_repaire_type == '隐患未处理') {
297
- failure.push({
298
- f_failure_type: row.f_item_name,
299
- failurecase: row.f_item_value?row.f_item_value.split(','):''
300
- })
301
- }
302
- })
303
- uploadData.model.failure = failure
304
- // 拼接repairitems
305
- let rows = JSON.parse(JSON.stringify(self.model.rows))
306
- let repairitems = {
307
- data: []
308
- }
309
- let safecheckOptions = [{"data": "已处理"}, {"data": "未处理"}]
310
- // 取隐患未处理的
311
- rows = rows.filter(row => row.f_repaire_type == '隐患未处理')
312
- //tag)
313
- // 开始拼接
314
- rows.forEach(row => {
315
- let existIndex = -1
316
- // 判断该设备是否已经存在
317
- for (let i = 0; i < repairitems.data.length; i++) {
318
- if (repairitems.data[i].f_type == row.f_device_type) {
319
- existIndex = i
320
- break
321
- }
322
- }
323
- if (existIndex == -1) {
324
- // 不存在则新建
325
- let newItem = {
326
- f_type: row.f_device_type,
327
- details: [{
328
- f_defect_id: row.id,
329
- f_project: `${row.f_item_name}:${row.f_item_value}`,
330
- type: 'selector',
331
- options: safecheckOptions
332
- }]
333
- }
334
- repairitems.data.push(newItem)
335
- } else {
336
- // 存在则追加
337
- repairitems.data[existIndex].details.push({
338
- f_defect_id: row.id,
339
- f_project: `${row.f_item_name}:${row.f_item_value}`,
340
- type: 'selector',
341
- options: safecheckOptions
342
- })
343
- }
344
- })
345
- uploadData.model.f_repairitems = repairitems
346
- //tag)
347
- // 调工单接口
348
- let result = yield self.$resetpost('/api/af-safecheck/logic/callerSend', uploadData)
349
- //tag)
350
- if (result.data.f_service_id) {
351
- const data = {
352
- f_paper_id: rows[0].f_paper_id,
353
- f_service_id: result.data.f_service_id,
354
- itemsId: self.$login.convertToIn(rows.map(row => row.id))
355
- }
356
- //tag
357
- let updateRes = yield self.$resetpost('/api/af-safecheck/logic/updateDefectStateNew', data)
358
- if (updateRes.data.code == 200) {
359
- self.$showMessage('隐患已转维修。')
360
- self.model.search(`f_repaire_type != '无隐患'`, {})
361
- }
362
- }
363
- }
364
-
365
- export default {
366
- title: '隐患项列表',
367
- data() {
368
- return {
369
- model: new PagedList('api/af-safecheck/sql/GetDefectByPaperIdNew', 100, {
370
- f_paper_id: 'this.f_paper_id',f_item_value: 'this.f_item_value'
371
- }),
372
- showSolveModal: false,
373
- showToRepairModal: false,
374
- showDefectModal: false,
375
- valid: false,
376
- checkDefect:null,
377
- needRepair: false,
378
- solveModal: {
379
- preData: {
380
- type: '',
381
- defectImg: '',
382
- defectImg1:'',
383
- defectImg2:'',
384
- defectImg3:'',
385
- repairedImg: '',
386
- repairedImg1: '',
387
- repairedImg2: '',
388
- repairedImg3: '',
389
- repairedImg4: '',
390
- repairedImg5: '',
391
- state: ''
392
- },
393
- uploadData: {
394
- id: '',
395
- f_repairman: this.$login.f.name,
396
- f_repair_date: Util.getNowDate().substr(0, 10),
397
- f_repair_path: '',
398
- imgSrc: '',
399
- filename: ''
400
- }
401
- },
402
- toRepairModal: {
403
- preData: {
404
- dispatchTypeOptions: [{label: '派发给站点', value: '派发给站点'}, {label: '派发给维修员', value: '派发给维修员'}],
405
- repairTypeOptions: this.$appdata.getParam('报修类型'),
406
- dispatchType: '',
407
- f_repairman: '',
408
- f_repairtype: '',
409
- f_remarks: '',
410
- f_meetunit: '',
411
- f_reciever: '',
412
- f_outlets: '',
413
- userInfo: {},
414
- repairers: []
415
- },
416
- uploadData: {
417
- model: {
418
- serviceacitivity: [{
419
- f_service_acitivity_type: '派单'
420
- }],
421
- f_repairitems: {},
422
- failure: '',
423
- f_source: '安检',
424
- f_service_id: '',
425
- f_contact_phone: '',
426
- f_meetunit: '',
427
- f_phone: '',
428
- f_user_name: '',
429
- f_address: '',
430
- f_repair_date: '',
431
- f_reciever: '',
432
- f_remarks: '',
433
- f_user_type: '',
434
- f_area: '',
435
- f_unit_name: '',
436
- f_street: '',
437
- f_residential_area: '',
438
- f_building: '',
439
- f_unit: '',
440
- f_floor: '',
441
- f_room: '',
442
- aState: '',
443
- f_repairtype: '',
444
- f_userinfo_id: '',
445
- f_userinfo_code: '',
446
- f_orgstr: '',
447
- f_outlets: '',
448
- f_attendant: this.$login.f.name
449
- },
450
- loginUser: {
451
- name: this.$login.f.name,
452
- ename: this.$login.f.ename
453
- },
454
- user: {
455
- f_userinfo_id: ''
456
- },
457
- callObj: null
458
- }
459
- },
460
- showHandleDefectButton: null
461
- }
462
- },
463
- props: ['check'],
464
- ready() {
465
- this.checkDefect=Vue.$appdata.getSingleValue('安检隐患维修后审核')
466
- this.showHandleDefectButton = Vue.$appdata.getSingleValue('隐患查看处理隐患')
467
- this.model.f_item_value = `(SELECT stuff(( SELECT ',' + f_item_value FROM t_devices_items_lists WHERE ( f_is_defect = 'true' OR di.f_is_defect = 'true') AND f_item_id = di.id FOR xml path ( '' ) ),1,1,'' ) )`
468
- if (this.check) {
469
- this.model.f_paper_id = this.check.id
470
- this.model.search(`f_repaire_type != '无隐患'`, {})
471
- }
472
- this.getEmp()
473
- },
474
- methods: {
475
- //审核通过
476
- auditsure(info){
477
- // 拿到t_devices_items 的ID,给f_audit_results中存入通过 如果未通过,需要可以再次派单,对隐患进行处理
478
- var data = {
479
- id: this.solveModal.uploadData.id,
480
- info:info
481
- }
482
- let http = new HttpResetClass()
483
- http.load('POST', 'api/af-safecheck/logic/DefectAuditUpdate', data, {resolveMsg: null, rejectMsg: null}).then((res) => {
484
- if(res.data.code == 200){
485
- this.model.search(`f_repaire_type != '无隐患'`, {})
486
- this.showSolveModal = false
487
- this.showToRepairModal = false
488
- this.$showMessage('提交成功')
489
- }else{
490
- this.$showMessage('提交失败,请重试')
491
- }
492
- })
493
- },
494
- solveDefect(row, type) {
495
- console.log(row)
496
- this.solveModal.preData.defectImg = ''
497
- this.solveModal.preData.f_repair_path = ''
498
- this.solveModal.preData.repairedImg = ''
499
- this.solveModal.preData.repairedImg1 = ''
500
- this.solveModal.preData.repairedImg2 = ''
501
- this.solveModal.preData.repairedImg3 = ''
502
- this.solveModal.preData.repairedImg4 = ''
503
- this.solveModal.preData.repairedImg5 = ''
504
- this.solveModal.preData.defectImg = row.f_path?'/rs/image/file/' + row.f_path:''
505
- this.solveModal.preData.defectImg1 = row.f_p1_path?'/rs/image/file/' + row.f_p1_path:''
506
- this.solveModal.preData.defectImg2 = row.f_p2_path?'/rs/image/file/' + row.f_p2_path:''
507
- this.solveModal.preData.defectImg3 = row.f_p3_path?'/rs/image/file/' + row.f_p3_path:''
508
- this.solveModal.uploadData.id = row.id
509
- this.solveModal.preData.type = type
510
- this.solveModal.preData.state = row.f_repaire_state
511
- this.solveModal.preData.source = row.f_repair_path_source
512
- if (row.f_repaire_state === '已处理') {
513
- if (row.f_repair_path_source === '微信') {
514
- this.solveModal.preData.f_repair_path = row.f_repair_path
515
- this.solveModal.preData.repairedImg = row.f_repair_path
516
- this.solveModal.preData.repairedImg1 = row.f_repair1_path
517
- } else {
518
- this.solveModal.preData.f_repair_path = row.f_repair_path? '/rs/image/file/' + row.f_repair_path:null
519
- this.solveModal.preData.repairedImg = row.f_repair_path? '/rs/image/file/' + row.f_repair_path:null
520
- this.solveModal.preData.repairedImg1 = row.f_other_dealpath1? '/rs/image/file/' + row.f_other_dealpath1:null
521
- this.solveModal.preData.repairedImg2 = row.f_other_dealpath2? '/rs/image/file/' + row.f_other_dealpath2:null
522
- this.solveModal.preData.repairedImg3 = row.f_repair2_path ? ('/rs/image/file/' + row.f_repair2_path) : ''
523
- this.solveModal.preData.repairedImg4 = row.f_repair3_path ? ('/rs/image/file/' + row.f_repair3_path) : ''
524
- this.solveModal.preData.repairedImg5 = row.f_repair4_path ? ('/rs/image/file/' + row.f_repair4_path) : ''
525
- }
526
- if (type === '现场已处理') {
527
- this.solveModal.uploadData.f_repairman = this.check.f_checker_name
528
- this.solveModal.uploadData.f_repair_date = this.check.f_offsite_time
529
- } else {
530
- this.solveModal.uploadData.f_repairman = row.f_repairman
531
- this.solveModal.uploadData.f_repair_date = row.f_repair_date
532
- this.$set('solveModal.f_audit_results',row.f_audit_results)
533
- }
534
- } else {
535
- this.solveModal.uploadData.f_repairman = this.$login.f.name
536
- this.solveModal.uploadData.f_repair_date = Util.getNowDate().substr(0, 10)
537
- }
538
- this.showSolveModal = !this.showSolveModal
539
- },
540
- ok() {
541
- if (!(this.solveModal.uploadData.filename && this.solveModal.uploadData.filename.length > 0)) {
542
- this.$showMessage('请录入处理后照片')
543
- return
544
- }
545
- co(upSolveDefect(this))
546
- },
547
- cancel() {
548
- this.showSolveModal = false
549
- this.showToRepairModal = false
550
- },
551
- toRepair() {
552
- this.showToRepairModal = !this.showToRepairModal
553
- },
554
- getSiteRes(obj) {
555
- //tag
556
- //tag
557
- if(obj.resids[0]){
558
- this.toRepairModal.preData.f_meetunit = obj.res.join('.')
559
- this.toRepairModal.preData.f_reciever = obj.resids.join('.')
560
- }else {
561
- this.toRepairModal.preData.f_meetunit = ''
562
- this.toRepairModal.preData.f_reciever = ''
563
- this.toRepairModal.preData.f_outlets = ''
564
- }
565
- },
566
- // 获取维修员
567
- getEmp() {
568
- let val = {source: 'this.getParentByType($organization$).getChildByName($维修员$).getUsers()', userid: `${this.$login.f.id}`}
569
- let http = new HttpResetClass()
570
- http.load('POST', '/rs/search', {data: val}, {resolveMsg: null, rejectMsg: null}).then((res) => {
571
- res.data.forEach((item) => {
572
- let http1 = new HttpResetClass()
573
- http1.load('POST', 'api/af-safecheck/sql/safe_singleTable_OrderBy', {
574
- data: {
575
- items: 'f_user_telephone',
576
- tablename: 't_user',
577
- condition: `id = ${item.id}`,
578
- orderitem: 'id'
579
- }
580
- }, {resolveMsg: null, rejectMsg: null}).then((ress) => {
581
- this.toRepairModal.preData.repairers.push({label: `${item.name}:${ress.data[0].f_user_telephone}`, value: item.name})
582
- })
583
- })
584
- })
585
- },
586
- confirm() {
587
- if (this.toRepairModal.preData.dispatchType == '派发给站点' && !this.toRepairModal.preData.f_meetunit) {
588
- this.$showMessage('请选择站点。')
589
- return
590
- }
591
- co(sendRepair(this))
592
- }
593
- },
594
- watch: {
595
- 'check'() {
596
- this.model.f_paper_id = this.check.id
597
- this.model.search(`f_repaire_type != '无隐患'`, {})
598
- },
599
- 'model.rows'() {
600
- if (this.model.rows.length > 0) {
601
- if (this.model.rows[0].f_repaire_type == '隐患未处理') {
602
- this.needRepair = true
603
- return
604
- }
605
- }
606
- this.needRepair = false
607
- }
608
- }
609
- }
610
- </script>
611
- <style lang="less" scoped>
612
- .select-error {
613
- button {
614
- border-bottom: 1px solid #a94442 !important;
615
- }
616
- }
617
- </style>
1
+ <template>
2
+ <div>
3
+ <div :style="{'height':needRepair?'60%':'100%'}">
4
+ <criteria-paged :model="model" :pager="false" v-ref:paged>
5
+ <criteria partial='criteria'>
6
+ <div partial>
7
+ <ul class="nav nav-tabs">
8
+ <li role="presentation" class="active"><a style=" color: #5ac0d9 !important;">隐患明细</a></li>
9
+ </ul>
10
+ </div>
11
+ </criteria>
12
+ <data-grid :model="model" partial='list' class="table_sy">
13
+ <template partial='head'>
14
+ <tr>
15
+ <!-- <th>-->
16
+ <!-- <nobr>隐患设备</nobr>-->
17
+ <!-- </th>-->
18
+ <th>
19
+ <nobr>隐患项</nobr>
20
+ </th>
21
+ <th>
22
+ <nobr>隐患原因</nobr>
23
+ </th>
24
+ <th>
25
+ <nobr>隐患处理方式</nobr>
26
+ </th>
27
+ <th>
28
+ <nobr>处理结果</nobr>
29
+ </th>
30
+ <th v-if="$parent.$parent.$parent.checkDefect=='是'">
31
+ <nobr>审核结果</nobr>
32
+ </th>
33
+ <th>
34
+ <nobr>操作</nobr>
35
+ </th>
36
+ </tr>
37
+ </template>
38
+ <template partial='body'>
39
+ <!-- <td style="text-align: center">-->
40
+ <!-- <nobr>{{row.f_device_type}}</nobr>-->
41
+ <!-- </td>-->
42
+ <td style="text-align: center">
43
+ <nobr>{{row.f_item_name}}</nobr>
44
+ </td>
45
+ <td style="text-align: center">
46
+ <nobr>{{row.f_item_value}}</nobr>
47
+ </td>
48
+ <td style="text-align: center">
49
+ <nobr>{{row.f_repaire_type}}</nobr>
50
+ </td>
51
+ <td style="text-align: center">
52
+ <nobr>{{row.f_repaire_state}}</nobr>
53
+ </td>
54
+ <td style="text-align: center" v-if="$parent.$parent.$parent.checkDefect=='是'">
55
+ <nobr>{{row.f_audit_results?row.f_audit_results:'暂无审核结果'}}</nobr>
56
+ </td>
57
+ <td style="text-align: center">
58
+ <div>
59
+ <!-- <img-button v-if="row.f_repaire_type != '无隐患' && row.f_repaire_type != '维修已处理' && row.f_path" :src="'/rs/image/file/'+row.f_path" :value="'隐患图片'"></img-button>-->
60
+ <!-- <button style="margin-top: 3px" v-if="row.f_repaire_type == '维修已处理'" class="button_new-1 button_spacing" @click="$parent.$parent.$parent.solveDefect( row, 'view')">处理详情</button>-->
61
+ <button style="margin-top: 3px" class="button_new-1 button_spacing" @click="$parent.$parent.$parent.solveDefect(row, row.f_repaire_type)">处理详情</button>
62
+ <button style="margin-top: 3px" v-if="row.f_repaire_type == '隐患未处理' && $parent.$parent.$parent.showHandleDefectButton === '是'" class="button_spacing button_search-1" @click="$parent.$parent.$parent.solveDefect(row, 'solve')">处理隐患</button>
63
+ </div>
64
+ </td>
65
+ </template>
66
+ </data-grid>
67
+ </criteria-paged>
68
+ </div>
69
+
70
+ <div style="overflow-y: scroll;height: 40%" v-if="needRepair">
71
+ <div class="form-horizontal auto">
72
+ <ul class="nav nav-tabs">
73
+ <li role="presentation" class="active"><a style=" color: #000 !important;font-size: 14px">转维修</a></li>
74
+ </ul>
75
+ <validator name='v' @valid="valid = true" @invalid="valid = false">
76
+ <div class="row">
77
+ <div class="col-sm-4" :class="[$v.dispatchtype.required ? 'select-error' : '']">
78
+ <label for="dispatchtype" class="font_normal_body">派发类型</label>
79
+ <input id="dispatchtype" type="text" v-show="false" v-model="$refs.dispatchtype.selectedItems" v-validate:dispatchtype='{required: true }'>
80
+ <v-select :value.sync="toRepairModal.preData.dispatchType" v-model="toRepairModal.preData.dispatchType"
81
+ :options='toRepairModal.preData.dispatchTypeOptions' placeholder='派发类型'
82
+ close-on-select v-ref:dispatchtype>
83
+ </v-select>
84
+ </div>
85
+ <div class="col-sm-4 " v-if="toRepairModal.preData.dispatchType == '派发给站点'">
86
+ <label class="font_normal_body">站&nbsp;&nbsp;点</label>
87
+ <right-tree
88
+ islist
89
+ :userid="$login.f.id"
90
+ :source="'dep=this.getParentByType($organization$).getSpecialResByType($department$),tool.getFullTree(dep.where(row.hasSpecialRole($派单员$)))'"
91
+ @re-res="getSiteRes">
92
+ </right-tree>
93
+ </div>
94
+ <div class="col-sm-4 " v-if="toRepairModal.preData.dispatchType == '派发给维修员'" :class="[$v.f_repairman.required ? 'select-error' : '']">
95
+ <input type="text" v-show="false" v-model="toRepairModal.preData.f_repairman" v-validate:f_repairman='{required: true }'>
96
+ <label class="font_normal_body">维修员</label>
97
+ <v-select
98
+ :value.sync="toRepairModal.preData.f_repairman"
99
+ :value-single="true"
100
+ :options='toRepairModal.preData.repairers'
101
+ placeholder='请选择维修员'
102
+ close-on-select></v-select>
103
+ </div>
104
+ <div class="col-sm-4" :class="[$v.f_repairtype.required ? 'select-error' : '']">
105
+ <input type="text" v-show="false" v-model="toRepairModal.preData.f_repairtype" v-validate:f_repairtype='{required: true }'>
106
+ <label class="font_normal_body">报修类型</label>
107
+ <v-select :value.sync="toRepairModal.preData.f_repairtype" style="width:60%"
108
+ class="select select_list"
109
+ :value-single="true"
110
+ :options='toRepairModal.preData.repairTypeOptions'
111
+ close-on-select>
112
+ </v-select>
113
+ </div>
114
+ </div>
115
+ <div class="row">
116
+ <div class="col-sm-8 form-group">
117
+ <label class="font_normal_body" >备&emsp;&emsp;注</label>
118
+ <input class="input_search" style="width: 60%" type="text" v-model="toRepairModal.preData.f_remarks" placeholder="备注">
119
+
120
+ </div>
121
+ <div class="col-sm-4" style="margin-top: 1%">
122
+ <button class="button_search" :disabled="!valid" @click="confirm">转维修</button>
123
+ </div>
124
+ </div>
125
+ </validator>
126
+ </div>
127
+ </div>
128
+ <modal :show.sync="showSolveModal" v-ref:solveModal>
129
+ <div slot="modal-header" class="modal-header">
130
+ <h4 class="modal-title">
131
+ {{solveModal.preData.type == 'view'?'处理详情':'处理隐患'}}
132
+ </h4>
133
+ </div>
134
+ <div slot="modal-body" class="modal-body">
135
+ <div style="width: 100%;height: 36px;background-color: #f1f8ff;float: left">
136
+ <div style="width: 8px;height: 100%;background-color: #6aa6e2;margin-right: 20px;float: left"></div>
137
+ <div style="width: auto;height:100%;float: left;"><p class="title-font" style="margin-top: 5px">处理前</p></div>
138
+ </div>
139
+
140
+ <div class="col-sm-6" style="margin-top: 10px">
141
+ <label class="font_normal_body">安&nbsp;检&nbsp;员</label>
142
+ <input class="input_search" style="width: 60%" type="text" disabled="true" v-model="check.f_checker_name" placeholder="安检员">
143
+ </div>
144
+ <div class="col-sm-6" style="margin-top: 10px">
145
+ <label class="font_normal_body">安检时间</label>
146
+ <input class="input_search" style="width: 60%" type="text" disabled="true" v-model="check.f_offsite_time" placeholder="安检时间">
147
+ </div>
148
+ <div class="col-sm-12" style="margin-bottom: 10px" v-if="solveModal.preData.defectImg">
149
+ <label class="font_normal_body">隐患图片</label>
150
+ <img-self :width="200" :height="200" :src="solveModal.preData.defectImg"></img-self>
151
+ </div>
152
+ <div class="col-sm-12" style="margin-bottom: 10px" v-show="solveModal.preData.defectImg1">
153
+ <label class="font_normal_body">隐患图片</label>
154
+ <img-self :width="200" :height="200" :src="solveModal.preData.defectImg1"></img-self>
155
+ </div>
156
+ <div class="col-sm-12" style="margin-bottom: 10px" v-show="solveModal.preData.defectImg2">
157
+ <label class="font_normal_body">隐患图片</label>
158
+ <img-self :width="200" :height="200" :src="solveModal.preData.defectImg2"></img-self>
159
+ </div>
160
+ <div class="col-sm-12" style="margin-bottom: 10px" v-show="solveModal.preData.defectImg3">
161
+ <label class="font_normal_body">隐患图片</label>
162
+ <img-self :width="200" :height="200" :src="solveModal.preData.defectImg3"></img-self>
163
+ </div>
164
+
165
+ <div style="width: 100%;height: 36px;background-color: #f1f8ff;float: left" v-show="solveModal.preData.state == '已处理' || solveModal.preData.type != 'solve'">
166
+ <div style="width: 8px;height: 100%;background-color: #6aa6e2;margin-right: 20px;float: left"></div>
167
+ <div style="width: auto;height:100%;float: left;"><p class="title-font" style="margin-top: 5px">处理后</p></div>
168
+ </div>
169
+ <div class="col-sm-6" style="margin-top: 10px" v-show="solveModal.preData.state == '已处理'">
170
+ <label class="font_normal_body">处&nbsp;理&nbsp;人</label>
171
+ <input v-if="solveModal.preData.type != 'solve'" class="input_search" style="width: 60%" disabled="true" type="text" v-model="solveModal.uploadData.f_repairman" placeholder="处理人">
172
+ <v-select
173
+ v-if="solveModal.preData.type == 'solve'"
174
+ :value.sync="solveModal.uploadData.f_repairman"
175
+ :value-single="true"
176
+ :options='toRepairModal.preData.repairers'
177
+ placeholder='请选择维修员'
178
+ close-on-select></v-select>
179
+ </div>
180
+ <div class="col-sm-6" style="margin-top: 10px" v-show="solveModal.preData.state == '已处理'">
181
+ <label class="font_normal_body">处理时间</label>
182
+ <datepicker
183
+ :disabled="solveModal.preData.type == 'view'"
184
+ placeholder='处理时间' style="width:60%"
185
+ :disabled-days-of-week="[]"
186
+ :format="'yyyy-MM-dd'"
187
+ :show-rest-button="reset"
188
+ :value.sync="solveModal.uploadData.f_repair_date">
189
+ </datepicker>
190
+ </div>
191
+ <div v-if="solveModal.preData.type == 'solve'" class="col-sm-12" style="margin-bottom: 10px">
192
+ <label class="font_normal_body">处理后图片</label>
193
+ <avatar-upload :width="200" :height="200" :img-src.sync="solveModal.uploadData.imgSrc" :filename.sync="solveModal.uploadData.filename" v-ref:imginfo></avatar-upload>
194
+ </div>
195
+ <div v-if="solveModal.preData.state == '已处理'" class="col-sm-12" style="margin-bottom: 10px">
196
+ <p> <label class="font_normal_body">处理后图片</label></p>
197
+ <P></P>
198
+ <div class="col-sm-12">
199
+ <div class="col-sm-6" v-if="solveModal.preData.repairedImg">
200
+ <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg" style="margin-left: 10px"></img-self>
201
+ </div>
202
+ <div class="col-sm-6" v-if="solveModal.preData.repairedImg1">
203
+ <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg1" style="margin-left: 10px"></img-self>
204
+ </div>
205
+ <div class="col-sm-6" v-if="solveModal.preData.repairedImg2">
206
+ <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg2" style="margin-left: 10px"></img-self>
207
+ </div>
208
+ <div class="col-sm-6" v-if="solveModal.preData.repairedImg2">
209
+ <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg2" style="margin-left: 10px"></img-self>
210
+ </div>
211
+ <div class="col-sm-6" v-if="solveModal.preData.repairedImg3">
212
+ <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg3" style="margin-left: 10px"></img-self>
213
+ </div>
214
+ <div class="col-sm-6" v-if="solveModal.preData.repairedImg4">
215
+ <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg4" style="margin-left: 10px"></img-self>
216
+ </div>
217
+ <div class="col-sm-6" v-if="solveModal.preData.repairedImg5">
218
+ <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg5" style="margin-left: 10px"></img-self>
219
+ </div>
220
+
221
+ </div>
222
+ </div>
223
+ </div>
224
+ <div slot="modal-footer" class="modal-footer" style="text-align: center">
225
+ <button class="button_search" v-if="checkDefect=='是' && solveModal.preData.type == 'view'" @click="auditsure('通过')" v-if="solveModal.preData.type == 'view' && !solveModal.f_audit_results">审核通过</button>
226
+ <button class="button_search" v-if="checkDefect=='是' && solveModal.preData.type == 'view'" @click="auditsure('不通过')" v-if="solveModal.preData.type == 'view' && !solveModal.f_audit_results">审核不通过</button>
227
+ <button class="button_search" v-if="solveModal.preData.type == 'solve'" @click="ok">确认</button>
228
+ <button class="button_search" @click="cancel">取消</button>
229
+ </div>
230
+ </modal>
231
+
232
+ </div>
233
+ </template>
234
+
235
+ <script>
236
+ import {PagedList, HttpResetClass} from 'vue-client'
237
+ import * as Util from '../../../components/Util'
238
+ import co from 'co'
239
+ import Vue from "vue";
240
+
241
+ const upSolveDefect = function * (self) {
242
+ let uploadData = self.solveModal.uploadData
243
+ //tag)
244
+ self.$resetpost('/api/af-safecheck/logic/pcRepairDefectNew', self.solveModal.uploadData, {resolveMsg: null, rejectMsg: null})
245
+ .then(res => {
246
+ if (res.data.code === 200) {
247
+ self.$showMessage('隐患已处理。')
248
+ self.showSolveModal = false
249
+ self.model.search('f_repaire_type != \'无隐患\'', {})
250
+ self.solveModal.uploadData={
251
+ id: '',
252
+ f_repairman: self.$login.f.name,
253
+ f_repair_date: Util.getNowDate().substr(0, 10),
254
+ f_repair_path: '',
255
+ imgSrc: '',
256
+ filename: '',
257
+ f_defect_remark:''
258
+ }
259
+ }
260
+ })
261
+ }
262
+
263
+ const sendRepair = function* (self) {
264
+ let preData = self.toRepairModal.preData
265
+ let uploadData = self.toRepairModal.uploadData
266
+
267
+ if (preData.dispatchType == '派发给站点') {
268
+ uploadData.model.serviceacitivity[0].f_meetunit = preData.f_meetunit
269
+ uploadData.model.serviceacitivity[0].f_reciever = preData.f_reciever
270
+ uploadData.model.f_meetunit = preData.f_meetunit
271
+ uploadData.model.f_orgstr = preData.f_reciever
272
+ uploadData.model.f_outlets = preData.f_outlets
273
+ uploadData.toRepair = '转站点'
274
+ } else if (preData.dispatchType == '派发给维修员') {
275
+ uploadData.model.serviceacitivity[0].f_reciever = preData.f_repairman
276
+ // uploadData.model.f_meetunit = self.$login.f.orgpathnames
277
+ // uploadData.model.f_orgstr = self.$login.f.orgpathstr
278
+ // uploadData.model.f_outlets = self.$login.f.f_parentname
279
+ uploadData.model.f_meetunit = self.$login.f.deps
280
+ uploadData.model.f_orgid = self.$login.f.orgid
281
+ uploadData.model.f_filiale = self.$login.f.org
282
+ uploadData.model.f_outlets = self.$login.f.deps
283
+ uploadData.model.f_filiale_id = self.$login.f.orgid
284
+ uploadData.toRepair = '一级派单'
285
+ }
286
+ let res = yield self.$resetpost('/api/af-safecheck/sql/GetUserForRepaireNew', {data: {f_userinfo_id: self.check.f_userinfo_id}})
287
+ preData.userInfo = res.data[0]
288
+ uploadData.model = Object.assign(uploadData.model, preData.userInfo)
289
+ uploadData.user.f_userinfo_id = preData.userInfo.f_userinfo_id
290
+ uploadData.model.f_repair_date = Util.getNowDate()
291
+ uploadData.model.f_repairtype = preData.f_repairtype
292
+ uploadData.model.f_remarks = preData.f_remarks
293
+ // 拼接failure
294
+ let failure = []
295
+ self.model.rows.forEach(row => {
296
+ if (row.f_repaire_type == '隐患未处理') {
297
+ failure.push({
298
+ f_failure_type: row.f_item_name,
299
+ failurecase: row.f_item_value?row.f_item_value.split(','):''
300
+ })
301
+ }
302
+ })
303
+ uploadData.model.failure = failure
304
+ // 拼接repairitems
305
+ let rows = JSON.parse(JSON.stringify(self.model.rows))
306
+ let repairitems = {
307
+ data: []
308
+ }
309
+ let safecheckOptions = [{"data": "已处理"}, {"data": "未处理"}]
310
+ // 取隐患未处理的
311
+ rows = rows.filter(row => row.f_repaire_type == '隐患未处理')
312
+ //tag)
313
+ // 开始拼接
314
+ rows.forEach(row => {
315
+ let existIndex = -1
316
+ // 判断该设备是否已经存在
317
+ for (let i = 0; i < repairitems.data.length; i++) {
318
+ if (repairitems.data[i].f_type == row.f_device_type) {
319
+ existIndex = i
320
+ break
321
+ }
322
+ }
323
+ if (existIndex == -1) {
324
+ // 不存在则新建
325
+ let newItem = {
326
+ f_type: row.f_device_type,
327
+ details: [{
328
+ f_defect_id: row.id,
329
+ f_project: `${row.f_item_name}:${row.f_item_value}`,
330
+ type: 'selector',
331
+ options: safecheckOptions
332
+ }]
333
+ }
334
+ repairitems.data.push(newItem)
335
+ } else {
336
+ // 存在则追加
337
+ repairitems.data[existIndex].details.push({
338
+ f_defect_id: row.id,
339
+ f_project: `${row.f_item_name}:${row.f_item_value}`,
340
+ type: 'selector',
341
+ options: safecheckOptions
342
+ })
343
+ }
344
+ })
345
+ uploadData.model.f_repairitems = repairitems
346
+ //tag)
347
+ // 调工单接口
348
+ let result = yield self.$resetpost('/api/af-safecheck/logic/callerSend', uploadData)
349
+ //tag)
350
+ if (result.data.f_service_id) {
351
+ const data = {
352
+ f_paper_id: rows[0].f_paper_id,
353
+ f_service_id: result.data.f_service_id,
354
+ itemsId: self.$login.convertToIn(rows.map(row => row.id))
355
+ }
356
+ //tag
357
+ let updateRes = yield self.$resetpost('/api/af-safecheck/logic/updateDefectStateNew', data)
358
+ if (updateRes.data.code == 200) {
359
+ self.$showMessage('隐患已转维修。')
360
+ self.model.search(`f_repaire_type != '无隐患'`, {})
361
+ }
362
+ }
363
+ }
364
+
365
+ export default {
366
+ title: '隐患项列表',
367
+ data() {
368
+ return {
369
+ model: new PagedList('api/af-safecheck/sql/GetDefectByPaperIdNew', 100, {
370
+ f_paper_id: 'this.f_paper_id',f_item_value: 'this.f_item_value'
371
+ }),
372
+ showSolveModal: false,
373
+ showToRepairModal: false,
374
+ showDefectModal: false,
375
+ valid: false,
376
+ checkDefect:null,
377
+ needRepair: false,
378
+ solveModal: {
379
+ preData: {
380
+ type: '',
381
+ defectImg: '',
382
+ defectImg1:'',
383
+ defectImg2:'',
384
+ defectImg3:'',
385
+ repairedImg: '',
386
+ repairedImg1: '',
387
+ repairedImg2: '',
388
+ repairedImg3: '',
389
+ repairedImg4: '',
390
+ repairedImg5: '',
391
+ state: ''
392
+ },
393
+ uploadData: {
394
+ id: '',
395
+ f_repairman: this.$login.f.name,
396
+ f_repair_date: Util.getNowDate().substr(0, 10),
397
+ f_repair_path: '',
398
+ imgSrc: '',
399
+ filename: ''
400
+ }
401
+ },
402
+ toRepairModal: {
403
+ preData: {
404
+ dispatchTypeOptions: [{label: '派发给站点', value: '派发给站点'}, {label: '派发给维修员', value: '派发给维修员'}],
405
+ repairTypeOptions: this.$appdata.getParam('报修类型'),
406
+ dispatchType: '',
407
+ f_repairman: '',
408
+ f_repairtype: '',
409
+ f_remarks: '',
410
+ f_meetunit: '',
411
+ f_reciever: '',
412
+ f_outlets: '',
413
+ userInfo: {},
414
+ repairers: []
415
+ },
416
+ uploadData: {
417
+ model: {
418
+ serviceacitivity: [{
419
+ f_service_acitivity_type: '派单'
420
+ }],
421
+ f_repairitems: {},
422
+ failure: '',
423
+ f_source: '安检',
424
+ f_service_id: '',
425
+ f_contact_phone: '',
426
+ f_meetunit: '',
427
+ f_phone: '',
428
+ f_user_name: '',
429
+ f_address: '',
430
+ f_repair_date: '',
431
+ f_reciever: '',
432
+ f_remarks: '',
433
+ f_user_type: '',
434
+ f_area: '',
435
+ f_unit_name: '',
436
+ f_street: '',
437
+ f_residential_area: '',
438
+ f_building: '',
439
+ f_unit: '',
440
+ f_floor: '',
441
+ f_room: '',
442
+ aState: '',
443
+ f_repairtype: '',
444
+ f_userinfo_id: '',
445
+ f_userinfo_code: '',
446
+ f_orgstr: '',
447
+ f_outlets: '',
448
+ f_attendant: this.$login.f.name
449
+ },
450
+ loginUser: {
451
+ name: this.$login.f.name,
452
+ ename: this.$login.f.ename
453
+ },
454
+ user: {
455
+ f_userinfo_id: ''
456
+ },
457
+ callObj: null
458
+ }
459
+ },
460
+ showHandleDefectButton: null
461
+ }
462
+ },
463
+ props: ['check'],
464
+ ready() {
465
+ this.checkDefect=Vue.$appdata.getSingleValue('安检隐患维修后审核')
466
+ this.showHandleDefectButton = Vue.$appdata.getSingleValue('隐患查看处理隐患')
467
+ this.model.f_item_value = `(SELECT stuff(( SELECT ',' + f_item_value FROM t_devices_items_lists WHERE ( f_is_defect = 'true' OR di.f_is_defect = 'true') AND f_item_id = di.id FOR xml path ( '' ) ),1,1,'' ) )`
468
+ if (this.check) {
469
+ this.model.f_paper_id = this.check.id
470
+ this.model.search(`f_repaire_type != '无隐患'`, {})
471
+ }
472
+ this.getEmp()
473
+ },
474
+ methods: {
475
+ //审核通过
476
+ auditsure(info){
477
+ // 拿到t_devices_items 的ID,给f_audit_results中存入通过 如果未通过,需要可以再次派单,对隐患进行处理
478
+ var data = {
479
+ id: this.solveModal.uploadData.id,
480
+ info:info
481
+ }
482
+ let http = new HttpResetClass()
483
+ http.load('POST', 'api/af-safecheck/logic/DefectAuditUpdate', data, {resolveMsg: null, rejectMsg: null}).then((res) => {
484
+ if(res.data.code == 200){
485
+ this.model.search(`f_repaire_type != '无隐患'`, {})
486
+ this.showSolveModal = false
487
+ this.showToRepairModal = false
488
+ this.$showMessage('提交成功')
489
+ }else{
490
+ this.$showMessage('提交失败,请重试')
491
+ }
492
+ })
493
+ },
494
+ solveDefect(row, type) {
495
+ console.log(row)
496
+ this.solveModal.preData.defectImg = ''
497
+ this.solveModal.preData.f_repair_path = ''
498
+ this.solveModal.preData.repairedImg = ''
499
+ this.solveModal.preData.repairedImg1 = ''
500
+ this.solveModal.preData.repairedImg2 = ''
501
+ this.solveModal.preData.repairedImg3 = ''
502
+ this.solveModal.preData.repairedImg4 = ''
503
+ this.solveModal.preData.repairedImg5 = ''
504
+ this.solveModal.preData.defectImg = row.f_path?'/rs/image/file/' + row.f_path:''
505
+ this.solveModal.preData.defectImg1 = row.f_p1_path?'/rs/image/file/' + row.f_p1_path:''
506
+ this.solveModal.preData.defectImg2 = row.f_p2_path?'/rs/image/file/' + row.f_p2_path:''
507
+ this.solveModal.preData.defectImg3 = row.f_p3_path?'/rs/image/file/' + row.f_p3_path:''
508
+ this.solveModal.uploadData.id = row.id
509
+ this.solveModal.preData.type = type
510
+ this.solveModal.preData.state = row.f_repaire_state
511
+ this.solveModal.preData.source = row.f_repair_path_source
512
+ if (row.f_repaire_state === '已处理') {
513
+ if (row.f_repair_path_source === '微信') {
514
+ this.solveModal.preData.f_repair_path = row.f_repair_path
515
+ this.solveModal.preData.repairedImg = row.f_repair_path
516
+ this.solveModal.preData.repairedImg1 = row.f_repair1_path
517
+ } else {
518
+ this.solveModal.preData.f_repair_path = row.f_repair_path? '/rs/image/file/' + row.f_repair_path:null
519
+ this.solveModal.preData.repairedImg = row.f_repair_path? '/rs/image/file/' + row.f_repair_path:null
520
+ this.solveModal.preData.repairedImg1 = row.f_other_dealpath1? '/rs/image/file/' + row.f_other_dealpath1:null
521
+ this.solveModal.preData.repairedImg2 = row.f_other_dealpath2? '/rs/image/file/' + row.f_other_dealpath2:null
522
+ this.solveModal.preData.repairedImg3 = row.f_repair2_path ? ('/rs/image/file/' + row.f_repair2_path) : ''
523
+ this.solveModal.preData.repairedImg4 = row.f_repair3_path ? ('/rs/image/file/' + row.f_repair3_path) : ''
524
+ this.solveModal.preData.repairedImg5 = row.f_repair4_path ? ('/rs/image/file/' + row.f_repair4_path) : ''
525
+ }
526
+ if (type === '现场已处理') {
527
+ this.solveModal.uploadData.f_repairman = this.check.f_checker_name
528
+ this.solveModal.uploadData.f_repair_date = this.check.f_offsite_time
529
+ } else {
530
+ this.solveModal.uploadData.f_repairman = row.f_repairman
531
+ this.solveModal.uploadData.f_repair_date = row.f_repair_date
532
+ this.$set('solveModal.f_audit_results',row.f_audit_results)
533
+ }
534
+ } else {
535
+ this.solveModal.uploadData.f_repairman = this.$login.f.name
536
+ this.solveModal.uploadData.f_repair_date = Util.getNowDate().substr(0, 10)
537
+ }
538
+ this.showSolveModal = !this.showSolveModal
539
+ },
540
+ ok() {
541
+ if (!(this.solveModal.uploadData.filename && this.solveModal.uploadData.filename.length > 0)) {
542
+ this.$showMessage('请录入处理后照片')
543
+ return
544
+ }
545
+ co(upSolveDefect(this))
546
+ },
547
+ cancel() {
548
+ this.showSolveModal = false
549
+ this.showToRepairModal = false
550
+ },
551
+ toRepair() {
552
+ this.showToRepairModal = !this.showToRepairModal
553
+ },
554
+ getSiteRes(obj) {
555
+ //tag
556
+ //tag
557
+ if(obj.resids[0]){
558
+ this.toRepairModal.preData.f_meetunit = obj.res.join('.')
559
+ this.toRepairModal.preData.f_reciever = obj.resids.join('.')
560
+ }else {
561
+ this.toRepairModal.preData.f_meetunit = ''
562
+ this.toRepairModal.preData.f_reciever = ''
563
+ this.toRepairModal.preData.f_outlets = ''
564
+ }
565
+ },
566
+ // 获取维修员
567
+ getEmp() {
568
+ let val = {source: 'this.getParentByType($organization$).getChildByName($维修员$).getUsers()', userid: `${this.$login.f.id}`}
569
+ let http = new HttpResetClass()
570
+ http.load('POST', '/rs/search', {data: val}, {resolveMsg: null, rejectMsg: null}).then((res) => {
571
+ res.data.forEach((item) => {
572
+ let http1 = new HttpResetClass()
573
+ http1.load('POST', 'api/af-safecheck/sql/safe_singleTable_OrderBy', {
574
+ data: {
575
+ items: 'f_user_telephone',
576
+ tablename: 't_user',
577
+ condition: `id = ${item.id}`,
578
+ orderitem: 'id'
579
+ }
580
+ }, {resolveMsg: null, rejectMsg: null}).then((ress) => {
581
+ this.toRepairModal.preData.repairers.push({label: `${item.name}:${ress.data[0].f_user_telephone}`, value: item.name})
582
+ })
583
+ })
584
+ })
585
+ },
586
+ confirm() {
587
+ if (this.toRepairModal.preData.dispatchType == '派发给站点' && !this.toRepairModal.preData.f_meetunit) {
588
+ this.$showMessage('请选择站点。')
589
+ return
590
+ }
591
+ co(sendRepair(this))
592
+ }
593
+ },
594
+ watch: {
595
+ 'check'() {
596
+ this.model.f_paper_id = this.check.id
597
+ this.model.search(`f_repaire_type != '无隐患'`, {})
598
+ },
599
+ 'model.rows'() {
600
+ if (this.model.rows.length > 0) {
601
+ if (this.model.rows[0].f_repaire_type == '隐患未处理') {
602
+ this.needRepair = true
603
+ return
604
+ }
605
+ }
606
+ this.needRepair = false
607
+ }
608
+ }
609
+ }
610
+ </script>
611
+ <style lang="less" scoped>
612
+ .select-error {
613
+ button {
614
+ border-bottom: 1px solid #a94442 !important;
615
+ }
616
+ }
617
+ </style>