safecheck-client 4.0.1-7 → 4.0.1-71

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 (524) hide show
  1. package/.babelrc +5 -5
  2. package/.editorconfig +9 -9
  3. package/android.html +18 -18
  4. package/config/dev.env.js +6 -6
  5. package/config/index.js +38 -38
  6. package/config/prod.env.js +3 -3
  7. package/config/test.env.js +6 -6
  8. package/docs/AppBase.md +22 -22
  9. package/docs/Busy.md +14 -14
  10. package/docs/CriteriaPaged.md +47 -47
  11. package/docs/DataGrid.md +54 -54
  12. package/docs/DataModel.md +22 -22
  13. package/docs/Dynamic.md +42 -42
  14. package/docs/GetParams.md +11 -11
  15. package/docs/HttpBusy.md +13 -13
  16. package/docs/HttpStore.md +29 -29
  17. package/docs/MessageBox.md +28 -28
  18. package/docs/PagedList.md +29 -29
  19. package/docs/Pager.md +21 -21
  20. package/docs/Project.md +23 -23
  21. package/docs/Route.md +105 -105
  22. package/docs/SafetyCheck/AdjustPlan.md +13 -13
  23. package/docs/SafetyCheck/CheckerPlan.md +12 -12
  24. package/docs/Task.md +46 -46
  25. package/docs/TreeList.md +28 -28
  26. package/docs/TreeMixin.md +18 -18
  27. package/docs/all.md +10 -10
  28. package/docs/list.md +42 -42
  29. package/docs/partial.md +75 -75
  30. package/docs/selector.md +82 -82
  31. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/Snippets.md +28 -28
  32. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue-strap/345/217/230/346/233/264/350/256/260/345/275/225.md +7 -7
  33. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue/345/217/230/346/233/264/350/256/260/345/275/225.md +13 -13
  34. package/docs//345/274/200/345/217/221/346/226/207/346/241/243//345/274/200/345/217/221/347/216/257/345/242/203/350/256/276/347/275/256.md +77 -77
  35. package/docs//347/225/214/351/235/242/345/210/266/344/275/234/350/247/204/350/214/203.md +54 -54
  36. package/examples/AddressList/App.vue +13 -13
  37. package/examples/AddressList/index.html +11 -11
  38. package/examples/DispatchList/App.vue +10 -10
  39. package/examples/DispatchList/BaseTree.vue +13 -13
  40. package/examples/DispatchList/Init.vue +22 -22
  41. package/examples/DispatchList/Test.vue +20 -20
  42. package/examples/DispatchList/index.html +11 -11
  43. package/examples/DispatchList/main.js +18 -18
  44. package/home.html +16 -16
  45. package/package.json +5 -5
  46. package/publish.bat +7 -7
  47. package/release.bat +5 -5
  48. package/src/App.vue +31 -31
  49. package/src/Widget.vue +13 -13
  50. package/src/android-bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  51. package/src/android-bootstrap/less/.csscomb.json +304 -304
  52. package/src/android-bootstrap/less/.csslintrc +19 -19
  53. package/src/android-bootstrap/less/alerts.less +73 -73
  54. package/src/android-bootstrap/less/badges.less +66 -66
  55. package/src/android-bootstrap/less/bootstrap.less +56 -56
  56. package/src/android-bootstrap/less/breadcrumbs.less +26 -26
  57. package/src/android-bootstrap/less/button-groups.less +247 -247
  58. package/src/android-bootstrap/less/buttons.less +173 -173
  59. package/src/android-bootstrap/less/carousel.less +269 -269
  60. package/src/android-bootstrap/less/close.less +34 -34
  61. package/src/android-bootstrap/less/code.less +69 -69
  62. package/src/android-bootstrap/less/component-animations.less +33 -33
  63. package/src/android-bootstrap/less/grid.less +84 -84
  64. package/src/android-bootstrap/less/input-groups.less +167 -167
  65. package/src/android-bootstrap/less/jumbotron.less +52 -52
  66. package/src/android-bootstrap/less/labels.less +64 -64
  67. package/src/android-bootstrap/less/list-group.less +141 -141
  68. package/src/android-bootstrap/less/media.less +66 -66
  69. package/src/android-bootstrap/less/mixins/alerts.less +14 -14
  70. package/src/android-bootstrap/less/mixins/background-variant.less +9 -9
  71. package/src/android-bootstrap/less/mixins/border-radius.less +18 -18
  72. package/src/android-bootstrap/less/mixins/buttons.less +69 -69
  73. package/src/android-bootstrap/less/mixins/center-block.less +7 -7
  74. package/src/android-bootstrap/less/mixins/clearfix.less +22 -22
  75. package/src/android-bootstrap/less/mixins/forms.less +90 -90
  76. package/src/android-bootstrap/less/mixins/gradients.less +59 -59
  77. package/src/android-bootstrap/less/mixins/grid-framework.less +92 -92
  78. package/src/android-bootstrap/less/mixins/grid.less +122 -122
  79. package/src/android-bootstrap/less/mixins/hide-text.less +21 -21
  80. package/src/android-bootstrap/less/mixins/image.less +33 -33
  81. package/src/android-bootstrap/less/mixins/labels.less +12 -12
  82. package/src/android-bootstrap/less/mixins/list-group.less +30 -30
  83. package/src/android-bootstrap/less/mixins/nav-divider.less +10 -10
  84. package/src/android-bootstrap/less/mixins/nav-vertical-align.less +9 -9
  85. package/src/android-bootstrap/less/mixins/opacity.less +8 -8
  86. package/src/android-bootstrap/less/mixins/pagination.less +24 -24
  87. package/src/android-bootstrap/less/mixins/panels.less +24 -24
  88. package/src/android-bootstrap/less/mixins/progress-bar.less +10 -10
  89. package/src/android-bootstrap/less/mixins/reset-filter.less +8 -8
  90. package/src/android-bootstrap/less/mixins/reset-text.less +18 -18
  91. package/src/android-bootstrap/less/mixins/resize.less +6 -6
  92. package/src/android-bootstrap/less/mixins/responsive-visibility.less +15 -15
  93. package/src/android-bootstrap/less/mixins/size.less +10 -10
  94. package/src/android-bootstrap/less/mixins/tab-focus.less +9 -9
  95. package/src/android-bootstrap/less/mixins/table-row.less +44 -44
  96. package/src/android-bootstrap/less/mixins/text-emphasis.less +9 -9
  97. package/src/android-bootstrap/less/mixins/text-overflow.less +8 -8
  98. package/src/android-bootstrap/less/mixins/vendor-prefixes.less +227 -227
  99. package/src/android-bootstrap/less/mixins.less +40 -40
  100. package/src/android-bootstrap/less/modals.less +151 -151
  101. package/src/android-bootstrap/less/navbar.less +660 -660
  102. package/src/android-bootstrap/less/navs.less +290 -290
  103. package/src/android-bootstrap/less/normalize.less +424 -424
  104. package/src/android-bootstrap/less/pager.less +76 -76
  105. package/src/android-bootstrap/less/pagination.less +89 -89
  106. package/src/android-bootstrap/less/panels.less +274 -274
  107. package/src/android-bootstrap/less/popovers.less +131 -131
  108. package/src/android-bootstrap/less/print.less +101 -101
  109. package/src/android-bootstrap/less/progress-bars.less +87 -87
  110. package/src/android-bootstrap/less/responsive-embed.less +35 -35
  111. package/src/android-bootstrap/less/responsive-utilities.less +194 -194
  112. package/src/android-bootstrap/less/scaffolding.less +161 -161
  113. package/src/android-bootstrap/less/tables.less +262 -262
  114. package/src/android-bootstrap/less/theme.less +291 -291
  115. package/src/android-bootstrap/less/thumbnails.less +36 -36
  116. package/src/android-bootstrap/less/tooltip.less +102 -102
  117. package/src/android-bootstrap/less/type.less +303 -303
  118. package/src/android-bootstrap/less/utilities.less +55 -55
  119. package/src/android-bootstrap/less/variables.less +896 -896
  120. package/src/android-bootstrap/less/wells.less +29 -29
  121. package/src/assets//350/255/246/345/221/212 (3).png +0 -0
  122. package/src/assets//350/255/246/345/221/212 (4).png +0 -0
  123. package/src/assets//350/255/246/345/221/212 (5).png +0 -0
  124. package/src/bootstrap/less/.csscomb.json +304 -304
  125. package/src/bootstrap/less/.csslintrc +19 -19
  126. package/src/bootstrap/less/alerts.less +73 -73
  127. package/src/bootstrap/less/badges.less +66 -66
  128. package/src/bootstrap/less/breadcrumbs.less +26 -26
  129. package/src/bootstrap/less/button-groups.less +247 -247
  130. package/src/bootstrap/less/buttons.less +172 -172
  131. package/src/bootstrap/less/carousel.less +269 -269
  132. package/src/bootstrap/less/close.less +34 -34
  133. package/src/bootstrap/less/code.less +69 -69
  134. package/src/bootstrap/less/component-animations.less +33 -33
  135. package/src/bootstrap/less/dropdowns.less +216 -216
  136. package/src/bootstrap/less/grid.less +84 -84
  137. package/src/bootstrap/less/input-groups.less +167 -167
  138. package/src/bootstrap/less/jumbotron.less +52 -52
  139. package/src/bootstrap/less/labels.less +64 -64
  140. package/src/bootstrap/less/list-group.less +141 -141
  141. package/src/bootstrap/less/media.less +66 -66
  142. package/src/bootstrap/less/mixins/alerts.less +14 -14
  143. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  144. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  145. package/src/bootstrap/less/mixins/buttons.less +69 -69
  146. package/src/bootstrap/less/mixins/center-block.less +7 -7
  147. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  148. package/src/bootstrap/less/mixins/forms.less +90 -90
  149. package/src/bootstrap/less/mixins/gradients.less +59 -59
  150. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  151. package/src/bootstrap/less/mixins/grid.less +122 -122
  152. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  153. package/src/bootstrap/less/mixins/image.less +33 -33
  154. package/src/bootstrap/less/mixins/labels.less +12 -12
  155. package/src/bootstrap/less/mixins/list-group.less +30 -30
  156. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  157. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  158. package/src/bootstrap/less/mixins/opacity.less +8 -8
  159. package/src/bootstrap/less/mixins/pagination.less +24 -24
  160. package/src/bootstrap/less/mixins/panels.less +24 -24
  161. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  162. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  163. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  164. package/src/bootstrap/less/mixins/resize.less +6 -6
  165. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  166. package/src/bootstrap/less/mixins/size.less +10 -10
  167. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  168. package/src/bootstrap/less/mixins/table-row.less +44 -44
  169. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  170. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  171. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  172. package/src/bootstrap/less/mixins.less +40 -40
  173. package/src/bootstrap/less/modals.less +151 -151
  174. package/src/bootstrap/less/navbar.less +660 -660
  175. package/src/bootstrap/less/normalize.less +424 -424
  176. package/src/bootstrap/less/pagination.less +89 -89
  177. package/src/bootstrap/less/panels.less +275 -275
  178. package/src/bootstrap/less/popovers.less +131 -131
  179. package/src/bootstrap/less/print.less +101 -101
  180. package/src/bootstrap/less/progress-bars.less +87 -87
  181. package/src/bootstrap/less/responsive-embed.less +35 -35
  182. package/src/bootstrap/less/responsive-utilities.less +194 -194
  183. package/src/bootstrap/less/scaffolding.less +161 -161
  184. package/src/bootstrap/less/theme.less +291 -291
  185. package/src/bootstrap/less/thumbnails.less +36 -36
  186. package/src/bootstrap/less/tooltip.less +102 -102
  187. package/src/bootstrap/less/type.less +303 -303
  188. package/src/bootstrap/less/utilities.less +55 -55
  189. package/src/bootstrap/less/wells.less +29 -29
  190. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  191. package/src/components/DefectDealMain/DefectListNew.vue +642 -642
  192. package/src/components/FileUpload.vue +696 -696
  193. package/src/components/Hello.vue +39 -39
  194. package/src/components/LeftTree.vue +27 -27
  195. package/src/components/NewDefectList/DefectListNew.vue +682 -663
  196. package/src/components/android/AddPlanItem.vue +447 -447
  197. package/src/components/android/AddPlanItemYy.vue +451 -451
  198. package/src/components/android/AddSpecialPlanItem.vue +426 -426
  199. package/src/components/android/AndroidDefectDeal.vue +667 -634
  200. package/src/components/android/AndroidDefectDetails.vue +3 -3
  201. package/src/components/android/AppInstallationMaterial.vue +865 -0
  202. package/src/components/android/AttendanceTally.vue +116 -116
  203. package/src/components/android/Blank.vue +10 -10
  204. package/src/components/android/CheckUnplanPage.vue +56 -56
  205. package/src/components/android/Checker.vue +12 -12
  206. package/src/components/android/CheckerAnnual.vue +81 -81
  207. package/src/components/android/CheckerAvarta.vue +82 -82
  208. package/src/components/android/CurrentCreateYy.vue +1051 -1051
  209. package/src/components/android/DailyworkloadQuery.vue +473 -472
  210. package/src/components/android/Devices.vue +327 -327
  211. package/src/components/android/Devicesm.vue +327 -327
  212. package/src/components/android/EquipmentInspection.vue +348 -348
  213. package/src/components/android/FootprintMap.vue +120 -120
  214. package/src/components/android/HiddentroubleInvestigation.vue +192 -192
  215. package/src/components/android/MasterMain.vue +77 -77
  216. package/src/components/android/Menu.vue +132 -132
  217. package/src/components/android/NewCheckpaperAndroid.vue +1343 -1369
  218. package/src/components/android/PaperAlarm.vue +85 -85
  219. package/src/components/android/PaperDeviceNoncivil.vue +214 -214
  220. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  221. package/src/components/android/PhoneRecordInfo.vue +113 -113
  222. package/src/components/android/PhoneSellInfo.vue +113 -113
  223. package/src/components/android/PhoneUpDetail.vue +1040 -1040
  224. package/src/components/android/PlumberAnnual.vue +83 -83
  225. package/src/components/android/PlumberAnnualDetail.vue +65 -65
  226. package/src/components/android/PlumberMonthly.vue +84 -84
  227. package/src/components/android/PostMap.vue +83 -83
  228. package/src/components/android/QRCode/QRCodeBinding.vue +300 -300
  229. package/src/components/android/QRCode/QRCodePage.vue +212 -212
  230. package/src/components/android/QueryCheckHistory.vue +122 -122
  231. package/src/components/android/QueryCheckHistoryItem.vue +62 -62
  232. package/src/components/android/RepairMain.vue +60 -60
  233. package/src/components/android/Repairman.vue +12 -12
  234. package/src/components/android/SafePlanItem.vue +509 -509
  235. package/src/components/android/StationMaster.vue +12 -12
  236. package/src/components/android/SwitchValve.vue +1 -1
  237. package/src/components/android/examples/SafeListExamples.vue +296 -296
  238. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  239. package/src/components/android/recheck/Recheck.vue +402 -402
  240. package/src/components/android/userinfo/SafecheckUserInfo.vue +776 -776
  241. package/src/components/checkplan/CheckDetail.vue +1 -1
  242. package/src/components/checkplan/checkmsg.vue +459 -459
  243. package/src/components/defect/DefectList.vue +507 -507
  244. package/src/components/defect/DefectListWeixiu.vue +484 -484
  245. package/src/components/defects/DefectModal.vue +101 -101
  246. package/src/components/defects/DevicesAndItem.vue +39 -39
  247. package/src/components/filialCircle/CircleList.vue +139 -139
  248. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  249. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  250. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  251. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  252. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  253. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  254. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  255. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  256. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  257. package/src/components/map/PersonTrack.vue +226 -226
  258. package/src/components/map/SecurityCheckCoordinates.vue +361 -0
  259. package/src/components/notice/NoticeForm.vue +100 -100
  260. package/src/components/notice/NoticeIssue.vue +20 -20
  261. package/src/components/paper/PicViewer.vue +18 -18
  262. package/src/components/paper/RegionalList.vue +220 -220
  263. package/src/components/pc/AnnouncementPC.vue +524 -524
  264. package/src/components/pc/CheckBookUser.vue +337 -337
  265. package/src/components/pc/DefectDeal.vue +1 -0
  266. package/src/components/pc/DefectList.vue +742 -742
  267. package/src/components/pc/DefectMaterialLook.vue +98 -0
  268. package/src/components/pc/DeviceChange.vue +1068 -1068
  269. package/src/components/pc/PaperDefectMain.vue +905 -880
  270. package/src/components/pc/SafeVisitInfo.vue +261 -261
  271. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  272. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  273. package/src/components/phonestate/PostMap.vue +82 -82
  274. package/src/components/planmanage/PlanManage.vue +1 -0
  275. package/src/components/querycheckpaper/CheckPaperList.vue +6 -4
  276. package/src/components/querycheckpaper/CheckPaperSearchUser.vue +30 -4
  277. package/src/components/querycheckpaper/CheckSearchUser.vue +6 -1
  278. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  279. package/src/components/report/HiddenSituation.vue +165 -165
  280. package/src/components/rongcheng/AspiratedOrderV.vue +2377 -2377
  281. package/src/components/rongcheng/CurrentCreateOnline.vue +906 -906
  282. package/src/components/rongcheng/DefectList.vue +560 -560
  283. package/src/components/rongcheng/SafecheckOrderVCli.vue +2641 -2641
  284. package/src/components/safecheckNew/android/AddPlanItem.vue +419 -419
  285. package/src/components/safecheckNew/android/CurrentCreate.vue +1050 -1050
  286. package/src/components/safecheckNew/android/Recheck.vue +379 -379
  287. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  288. package/src/components/shaoguan/DefectList.vue +473 -473
  289. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  290. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  291. package/src/components/userfile/MeterFile.vue +145 -145
  292. package/src/components/userfile/MeterModify.vue +46 -46
  293. package/src/components/userfile/SecurityAudit.vue +243 -243
  294. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  295. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +476 -476
  296. package/src/filiale/ancheng/android/SafecheckOrderV.vue +2703 -2703
  297. package/src/filiale/ancheng/android/SafecheckUserInfo.vue +737 -737
  298. package/src/filiale/ancheng/pc/checkScreen.vue +923 -923
  299. package/src/filiale/ankangyihua/android/AddPlanItem.vue +446 -446
  300. package/src/filiale/ankangyihua/android/SafecheckOrderV.vue +2908 -2908
  301. package/src/filiale/ankangyihua/pc/DefectListWeixiu.vue +491 -491
  302. package/src/filiale/baiyin/android/SafecheckOrderV.vue +2785 -2785
  303. package/src/filiale/baiyin/pc/DefectListNew.vue +597 -597
  304. package/src/filiale/bayan/android/Edit.vue +132 -132
  305. package/src/filiale/bayan/pc/DefectListNew.vue +597 -597
  306. package/src/filiale/bayan/pc/DeviceChange.vue +1838 -1838
  307. package/src/filiale/bayan/pc/HiddenSituation.vue +295 -295
  308. package/src/filiale/dexin/android/CasualSave.vue +1050 -1050
  309. package/src/filiale/dexin/android/SafecheckOrderV.vue +2950 -2950
  310. package/src/filiale/fugou/android/AddPlanItem.vue +413 -413
  311. package/src/filiale/fugou/android/SafecheckOrderV.vue +2796 -2796
  312. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +830 -830
  313. package/src/filiale/fugu/android/SafecheckOrderV.vue +2484 -2484
  314. package/src/filiale/fugu/pc/NewCheckpaper.vue +1287 -1287
  315. package/src/filiale/ganquan/android/AddPlanItem.vue +444 -444
  316. package/src/filiale/ganquan/android/SafecheckOrderV.vue +2485 -2485
  317. package/src/filiale/ganquan/pc/NewCheckpaper.vue +1354 -1354
  318. package/src/filiale/guangxi/pc/DefectListNew.vue +518 -518
  319. package/src/filiale/hanzhong/android/SafecheckOrderV.vue +2683 -2683
  320. package/src/filiale/hanzhong/android/SafecheckUserInfo.vue +786 -786
  321. package/src/filiale/huaran/android/SafecheckOrderV.vue +2803 -2803
  322. package/src/filiale/huatong/android/SafecheckOrderV.vue +2426 -2426
  323. package/src/filiale/huatong/android/SafecheckUserInfo.vue +749 -749
  324. package/src/filiale/huayin/pc/NewCheckpaper.vue +1307 -1307
  325. package/src/filiale/jiaocheng/android/AddPlanItem.vue +435 -435
  326. package/src/filiale/jiaocheng/android/SafecheckUserInfo.vue +737 -737
  327. package/src/filiale/jiaocheng/pc/DefectListNew.vue +576 -576
  328. package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -447
  329. package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2807 -2807
  330. package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -784
  331. package/src/filiale/jinbin/pc/DefectListWeixiu.vue +478 -478
  332. package/src/filiale/jingyang/android/AddPlanItem.vue +458 -458
  333. package/src/filiale/jingyang/android/SafecheckOrderV.vue +2734 -2734
  334. package/src/filiale/jingyang/android/SafecheckUserInfo.vue +781 -781
  335. package/src/filiale/jinhong/android/CurrentCreate.vue +66 -22
  336. package/src/filiale/jinhong/pc/CheckBookList.vue +10 -7
  337. package/src/filiale/jinhong/pc/DefectPaperNew.vue +10 -10
  338. package/src/filiale/jinhong/pc/PaperList.vue +850 -844
  339. package/src/filiale/jinhong/pc/PlanManage.vue +927 -925
  340. package/src/filiale/jinhong/pc/checkUserList.vue +30 -6
  341. package/src/filiale/kelai/android/AddPlanItem.vue +488 -488
  342. package/src/filiale/kelai/android/SafecheckUserInfo.vue +774 -774
  343. package/src/filiale/kelai/android/SafecheckUserInfo1.vue +618 -618
  344. package/src/filiale/kelai/pc/DefectListNew.vue +688 -688
  345. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasList.vue +518 -518
  346. package/src/filiale/kelai/pc/NewCheckpaper.vue +1454 -1454
  347. package/src/filiale/liaoyuan/android/AddPlanItem.vue +412 -412
  348. package/src/filiale/liaoyuan/android/CurrentCreate.vue +1066 -1066
  349. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2388 -2388
  350. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +557 -557
  351. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +489 -489
  352. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  353. package/src/filiale/libo/android/PaperFeedback.vue +1579 -0
  354. package/src/filiale/libo/android/PhoneUpUserinfo.vue +1249 -0
  355. package/src/filiale/libo/android/SafecheckOrderV.vue +2302 -0
  356. package/src/filiale/libo/android.js +14 -0
  357. package/src/filiale/libo/pc/NewCheckpaper.vue +1987 -0
  358. package/src/filiale/libo/pc.js +12 -0
  359. package/src/filiale/lixian/android/SafecheckOrderV.vue +2404 -2404
  360. package/src/filiale/lixian/android/SafecheckUserInfo.vue +578 -578
  361. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  362. package/src/filiale/meihekou/android/AreaPlan.vue +577 -577
  363. package/src/filiale/meihekou/android/CurrentCreate.vue +1 -1
  364. package/src/filiale/meihekou/android/MeterReading.vue +110 -106
  365. package/src/filiale/meihekou/android/PhoneUpUserinfo.vue +1307 -1306
  366. package/src/filiale/meihekou/android/SafecheckDevices.vue +5 -5
  367. package/src/filiale/meihekou/android/SafecheckOrderV.vue +324 -311
  368. package/src/filiale/meihekou/android/SafecheckUserInfo.vue +785 -785
  369. package/src/filiale/meihekou/pc/NewCheckpaper.vue +2 -2
  370. package/src/filiale/meihekou/pc/NewCheckpaperNew.vue +2050 -0
  371. package/src/filiale/meihekou/pc/NewCheckpaperTemp.vue +1288 -1288
  372. package/src/filiale/meihekou/pc/PaperList.vue +1205 -0
  373. package/src/filiale/meihekou/pc.js +2 -0
  374. package/src/filiale/minsheng/android/SafecheckUserInfo.vue +754 -754
  375. package/src/filiale/minsheng/android/SwitchValve.vue +1 -1
  376. package/src/filiale/minsheng/pc/DefectListNew.vue +535 -535
  377. package/src/filiale/pingxiang/android/SafecheckOrderV.vue +2424 -2424
  378. package/src/filiale/pingxiang/android/SafecheckUserInfo.vue +600 -600
  379. package/src/filiale/pingxiang/pc/DefectListNew.vue +519 -519
  380. package/src/filiale/pingxiang/pc/NewCheckpaper.vue +1294 -1294
  381. package/src/filiale/qianneng/android/AddPlanItem.vue +482 -482
  382. package/src/filiale/qianneng/android/SafecheckOrderV.vue +2785 -2785
  383. package/src/filiale/qianneng/android/SafecheckUserInfo.vue +775 -775
  384. package/src/filiale/qianneng/android/SwitchValve.vue +1 -1
  385. package/src/filiale/qianneng/pc/DefectListNew.vue +576 -576
  386. package/src/filiale/qianneng/pc/NewCheckpaper.vue +1546 -1546
  387. package/src/filiale/qingjian/android/SafecheckOrderV.vue +2844 -2844
  388. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +800 -800
  389. package/src/filiale/qingjian/pc/NewCheckpaper.vue +1871 -1871
  390. package/src/filiale/qingjian/pc/checkUserList.vue +35 -0
  391. package/src/filiale/qingjian/pc.js +15 -15
  392. package/src/filiale/qingtongxia/android/AddPlanItem.vue +450 -450
  393. package/src/filiale/qingtongxia/android/SafecheckOrderV.vue +2726 -2726
  394. package/src/filiale/qingtongxia/android/SafecheckUserInfo.vue +782 -782
  395. package/src/filiale/qingtongxia/pc/DefectListNew.vue +594 -594
  396. package/src/filiale/rizhao/android/AddPlanItem.vue +446 -446
  397. package/src/filiale/rizhao/android/SafecheckOrderV.vue +2430 -2430
  398. package/src/filiale/rizhao/android/SafecheckUserInfo.vue +640 -640
  399. package/src/filiale/rizhao/pc/DefectList.vue +489 -489
  400. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +2696 -2696
  401. package/src/filiale/rongchuang/android/checkpapermsg.vue +209 -209
  402. package/src/filiale/ruihua/android/SafecheckOrderV.vue +2747 -2747
  403. package/src/filiale/ruihua/android/SafecheckUserInfo.vue +804 -804
  404. package/src/filiale/shanggao/android/SafecheckOrderV.vue +2426 -2426
  405. package/src/filiale/shanxian/android/SafecheckUserInfo.vue +749 -749
  406. package/src/filiale/shanxian/pc/HiddenSituation.vue +121 -121
  407. package/src/filiale/shanxian/pc/NewCheckpaper.vue +1526 -1526
  408. package/src/filiale/shexian/android/AddPlanItem.vue +444 -444
  409. package/src/filiale/shexian/android/SafecheckOrderV.vue +2879 -2879
  410. package/src/filiale/shexian/pc/DefectListNew.vue +593 -593
  411. package/src/filiale/shexian/pc/NewCheckpaper.vue +1469 -1469
  412. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  413. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  414. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  415. package/src/filiale/siyang/android/AddPlanItem.vue +450 -450
  416. package/src/filiale/siyang/android/CurrentCreate.vue +1051 -1051
  417. package/src/filiale/siyang/android/PhoneRecordInfo.vue +214 -214
  418. package/src/filiale/siyang/android/SafecheckOrderV.vue +2796 -2796
  419. package/src/filiale/siyang/android/SafecheckUserInfo.vue +789 -789
  420. package/src/filiale/siyang/pc/HiddenSituation.vue +167 -167
  421. package/src/filiale/taiyuan/android/CurrentCreate.vue +1016 -0
  422. package/src/filiale/taiyuan/android/PhoneUpUserinfo.vue +1259 -0
  423. package/src/filiale/taiyuan/android/SafecheckOrderV.vue +2341 -0
  424. package/src/filiale/taiyuan/android/SafecheckUserInfo.vue +776 -0
  425. package/src/filiale/taiyuan/android.js +13 -0
  426. package/src/filiale/taiyuan/pc/DefectDeal.vue +1034 -0
  427. package/src/filiale/taiyuan/pc/NewCheckpaper.vue +1976 -0
  428. package/src/filiale/taiyuan/pc/PlanManage.vue +891 -0
  429. package/src/filiale/taiyuan/pc/checkUserList.vue +798 -0
  430. package/src/filiale/taiyuan/pc.js +15 -0
  431. package/src/filiale/tianke/android/AddPlanItem.vue +455 -455
  432. package/src/filiale/tianke/android/SafecheckOrderV.vue +2431 -2431
  433. package/src/filiale/tianke/android/SafecheckUserInfo.vue +744 -744
  434. package/src/filiale/tongchuan/android/AddPlanItem.vue +483 -483
  435. package/src/filiale/tongchuan/android/PhoneRecordInfo.vue +191 -191
  436. package/src/filiale/tongchuan/android/PhoneSellInfo.vue +113 -113
  437. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +720 -720
  438. package/src/filiale/tongchuan/android/SwitchValve.vue +1 -1
  439. package/src/filiale/tongchuan/pc/CheckBookDetails.vue +209 -209
  440. package/src/filiale/tongchuan/pc/DefectListWeixiu.vue +484 -484
  441. package/src/filiale/tongchuan/pc/HiddenSituation.vue +166 -166
  442. package/src/filiale/weinan/android/AddPlanItem.vue +438 -438
  443. package/src/filiale/weinan/android/CurrentCreate.vue +1171 -1171
  444. package/src/filiale/weinan/android/CurrentCreateOnline.vue +911 -911
  445. package/src/filiale/weinan/android/SafePlanItem.vue +440 -440
  446. package/src/filiale/weinan/android/SafecheckUserInfo.vue +778 -778
  447. package/src/filiale/weinan/pc/DefectListNew.vue +617 -617
  448. package/src/filiale/weinan/pc/DeviceChange.vue +1088 -1088
  449. package/src/filiale/weinan/pc/HiddenSituation.vue +167 -167
  450. package/src/filiale/weinan/pc/checkScreen.vue +1094 -1094
  451. package/src/filiale/weinanct/android/SafecheckOrderV.vue +2730 -2730
  452. package/src/filiale/weinanct/pc/NewCheckpaper.vue +1315 -1315
  453. package/src/filiale/wensu/android/AddPlanItem.vue +495 -495
  454. package/src/filiale/wensu/android/AndroidDefectDeal.vue +464 -464
  455. package/src/filiale/wensu/android/PaperFeedback.vue +1358 -1358
  456. package/src/filiale/wensu/android/SafecheckOrderV.vue +2430 -2430
  457. package/src/filiale/wensu/android/SafecheckUserInfo.vue +627 -627
  458. package/src/filiale/wensu/pc/DefectListNew.vue +735 -735
  459. package/src/filiale/wenxi/android/AddPlanItem.vue +431 -431
  460. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2671 -2671
  461. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +673 -673
  462. package/src/filiale/wenxi/pc/DefectList.vue +653 -653
  463. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1358 -1358
  464. package/src/filiale/wuan/android/SafecheckOrderV.vue +2241 -2241
  465. package/src/filiale/wuan/android/SafecheckUserInfo.vue +596 -596
  466. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  467. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  468. package/src/filiale/wuhai/android/SafecheckOrderV.vue +2456 -2456
  469. package/src/filiale/wuhai/android/SafecheckUserInfo.vue +573 -573
  470. package/src/filiale/wuhai/pc/NewCheckpaper.vue +1281 -1281
  471. package/src/filiale/xiangyuanzhongai/android/PhoneUpUserinfo.vue +1251 -1251
  472. package/src/filiale/xinkang/android/AddPlanItem.vue +244 -196
  473. package/src/filiale/xinkang/android/AndroidDefectDeal.vue +1 -0
  474. package/src/filiale/xinkang/android/SafecheckDevices.vue +52 -22
  475. package/src/filiale/xinkang/android/SafecheckOrderV.vue +24 -80
  476. package/src/filiale/xinkang/android/SafecheckUserInfo.vue +1 -1
  477. package/src/filiale/xinkang/pc/CheckSearchUser.vue +1026 -1026
  478. package/src/filiale/xinkang/pc/DefectListWeixiu.vue +475 -475
  479. package/src/filiale/xinkang/pc/NewCheckpaper.vue +20 -44
  480. package/src/filiale/xinkang/pc/PaperList.vue +2 -9
  481. package/src/filiale/yangchunboneng/android/AddPlanItem.vue +496 -496
  482. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2865 -2865
  483. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +887 -887
  484. package/src/filiale/yangchunboneng/pc/DefectListNew.vue +576 -576
  485. package/src/filiale/yongzhou/android/SafecheckOrderV.vue +2774 -2774
  486. package/src/filiale/yongzhou/android/SafecheckUserInfo.vue +776 -776
  487. package/src/filiale/yuansheng/android/SafecheckOrderV.vue +2758 -2758
  488. package/src/filiale/yuansheng/android/SafecheckUserInfo.vue +797 -797
  489. package/src/filiale/yuansheng/android/SwitchValve.vue +1 -1
  490. package/src/filiale/yuansheng/pc/DefectListNew.vue +524 -524
  491. package/src/filiale/yuansheng/pc/NewCheckpaper.vue +1371 -1371
  492. package/src/filiale/yuansheng/pc/checkmsg.vue +464 -464
  493. package/src/filiale/yunchengminsheng/android/DailyworkloadQuery.vue +491 -491
  494. package/src/filiale/yunchengminsheng/android/PaperFeedback.vue +1509 -1509
  495. package/src/filiale/yunchengminsheng/android/PhoneSellInfo.vue +113 -113
  496. package/src/filiale/yunchengminsheng/android/SafecheckDevices.vue +1270 -1270
  497. package/src/filiale/yunchengminsheng/android/SafecheckUserInfo.vue +785 -785
  498. package/src/filiale/yunchengminsheng/android.js +15 -15
  499. package/src/filiale/yunchengminsheng/pc/PaperList.vue +811 -0
  500. package/src/filiale/yunchengminsheng/pc.js +15 -14
  501. package/src/filiale/zhongsheng/android/BuyRecords.vue +122 -122
  502. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2461 -2461
  503. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +690 -690
  504. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  505. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1322 -1322
  506. package/src/filiale/zhongyi/android/SafecheckOrderV.vue +2431 -2431
  507. package/src/filiale/zhongyi/pc/DefectListNew.vue +514 -514
  508. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  509. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  510. package/src/main.js +32 -33
  511. package/src/plugins/LoadData.js +10 -10
  512. package/src/plugins/LoadParams.js +24 -24
  513. package/src/safecheck-android.js +4 -0
  514. package/src/safecheck.js +924 -918
  515. package/src/stores/wxconfig.js +10 -10
  516. package/src/utils/getNowDate.js +33 -33
  517. package/test/e2e/custom-assertions/elementCount.js +26 -26
  518. package/test/e2e/nightwatch.conf.js +40 -40
  519. package/test/e2e/runner.js +30 -30
  520. package/test/e2e/specs/test.js +13 -13
  521. package/test/unit/.eslintrc +5 -5
  522. package/test/unit/TestUtil.js +62 -62
  523. package/test/unit/context.html +20 -20
  524. package/test/unit/index.js +13 -13
@@ -115,13 +115,7 @@
115
115
  v-on:change="daychange" style="width: 60%"></v-select>
116
116
  </div>
117
117
  <div class="row" style="margin-top: 10px">
118
- <label class="font_normal_body">截止时间</label>
119
- <datepicker placeholder="请选择截至时间"
120
- :value.sync="selectData.f_finish_date"
121
- v-model="selectData.f_finish_date"
122
- :format="'yyyy-MM-dd HH:mm:ss'"
123
- style="width: 60%"
124
- :disabled="true"></datepicker>
118
+ <label class="font_normal_body">截止时间&nbsp;&nbsp;&nbsp;&nbsp;{{selectData.f_finish_date}}</label>
125
119
  </div>
126
120
  <div class="row" style="margin-top: 10px">
127
121
  <label class="font_normal_body" >备&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;注</label>
@@ -155,23 +149,6 @@ export default {
155
149
  // props: ['f_plan_id', 'role'],
156
150
  data() {
157
151
  return {
158
- //测试数据
159
- // f_plan_id:'',
160
- // role:'inspect',
161
- // item:{"f_approved_time":null,"f_user_family_remarks":null,"f_street":"测试街道","f_repair_approved_time":null,
162
- // "f_user_type":null,"f_approved_by":null,"f_card_id":null,"f_remark":null,"f_building":"1","f_batch_number":null,
163
- // "f_idnumber":null,"f_state":"未检","id":"0EFE0EE2-B155-46F9-8DE0-38C022664A4D","f_complete":null,"f_check_state":null,"f_last_check_state":"拒检",
164
- // "f_user_inhome_time":null,"f_residential_area":"测试小区1","version":1,"f_processid":null,"f_last_check_result":"{\"result\":\"正常\",\"data\":[]}",
165
- // "f_area":null,"f_usegas":null,"f_user_phone":"16566546548","f_slice_area":"营业大区","f_approved":"未审核","f_upload_state":"未传","f_user_check_time":null,
166
- // "f_unit":"1","f_user_spare_phone":null,"f_last_check_date":null,"f_userproperties":null,"f_userfile_id":null,"f_prearranged_date":null,"f_filialeid":"453",
167
- // "f_branch":null,"f_orgstr":null,"f_plan_year":2020,"f_orgid":null,"f_approval_notified":null,"f_plan_month":4,"f_approved_note":null,"f_filialeids":null,
168
- // "f_floor":"1","f_flag":null,"f_repair_approved_note":null,"f_userinfo_code":"00000002","f_create_time":"2020-05-10 18:56:03","f_meter_no":"","f_station":null,
169
- // "f_repair_approved":"未审核","f_no_checkplan":"有计划安检","f_plan_name":"关于","f_repair_approved_by":null,"f_room":"1","f_office":null,"f_comments":null,
170
- // "f_address":"兰山街道泰盛小区1栋1单元1层1室","id_back":null,"f_userinfoid":"2","f_subcompany":null,"f_addressid":null,"f_user_phone2":null,
171
- // "f_user_equipment_remarks":null,"f_plan_id":"0819ea6707ad4d9dad217c06a87f4227","f_user_name":"用户二",
172
- // "f_plan_meters":[{"f_weizhi":null,"f_flow_direction":"右表","f_metertitles":"","f_prior_reading":0,"f_meter_no":"2119035714","f_collection_type":"按金额","f_aliasname":"先锋系统结算物联网表","f_meter_type":"物联网表","version":3,"f_maker":null,"f_metergasnums":0,"f_total_fee":100,"f_diaphgram_size":"G2.5","f_total_gas":0,"id":18663},{"f_weizhi":null,"f_flow_direction":"右表","f_metertitles":"","f_prior_reading":0,"f_meter_no":"2118999901","f_collection_type":"按金额","f_aliasname":"先锋系统结算物联网表","f_meter_type":"物联网表","version":1,"f_maker":null,"f_metergasnums":0,"f_total_fee":0,"f_diaphgram_size":"G2.5","f_total_gas":0,"id":18663}]
173
- // },
174
-
175
152
  data: {
176
153
  f_devices: [],
177
154
  f_defect_content:'',
@@ -227,6 +204,7 @@ export default {
227
204
  f_meetunit:'维修站',
228
205
  f_outlets:'维修站'
229
206
  },
207
+ serverConfig: undefined,
230
208
  model: { //转维修数据
231
209
  // 一次派单
232
210
  serviceacitivity: [{
@@ -260,49 +238,38 @@ export default {
260
238
  repairitems:[],
261
239
  meading:'转站点',
262
240
  repairTypeOptions:this.$appdata.getParam('报修类型'),
263
- config: {
264
- "燃气表":{
265
- "checkmust":true,
266
- "index":1,
267
- "items":{
268
- //"燃气表照片":{"index":1,"type":"picture","remark":"(拍摄清晰的表具编号、字轮数、剩余气量等)"},
269
- "基表编号":{"index":1,"type":"string","readonly":true},
270
- "气表型号":{"index":2,"type":"string","readonly":true},
271
- "气表品牌":{"index":3,"type":"string","readonly":true},
272
- "表向":{"index":4,"type":"string","readonly":true},
273
- "初始表底":{"index":5,"type":"number","isshow":false,"readonly":true},
274
- "上期表读数":{"index":6,"type":"number","readonly":true,isshow:false},
275
- "累购气量":{"index":7,"type":"number","readonly":true},
276
- "累购金额":{"index":7,"type":"number","readonly":true},
277
- "已用气量":{"index":8,"type":"number","checkmust": false},//基表数
278
- "已用金额":{"index":8,"type":"number","checkmust": false},
279
- "剩余气量":{"index":9,"type":"number","checkmust": false},//累购-已用
280
- //显示屏数 --实际剩余气量
281
- "剩余金额":{"index":9,"type":"number","checkmust": false},
282
- "气量异常差值":{"index":10,"type":"number","readonly": true},
283
- "金额异常差值":{"index":10,"type":"number","readonly": true},
284
- "系统余额":{"index":10,"type":"number","readonly": true},
285
- "表封号":{"index":11,"type":"string","readonly": true},
286
- "燃气表照片":{"index":12,"type":"picture","checkmust": false}
241
+ f_security_check_type_id: '',
242
+ config: [
243
+ {
244
+ "itemname": "燃气表",
245
+ "checkmust": true,
246
+ "index": 1,
247
+ "items": [
248
+ {"itemname": "基表编号", "index": 1, "type": "string", "readonly": true},
249
+ {"itemname": "气表型号", "index": 2, "type": "string", "readonly": true},
250
+ {"itemname": "气表品牌", "index": 3, "type": "string", "readonly": true},
251
+ {"itemname": "表向", "index": 4, "type": "string", "readonly": true},
252
+ {"itemname": "初始表底", "index": 5, "type": "number", "readonly": true},
253
+ {"itemname": "上期表读数", "index": 6, "type": "number", "readonly": true},
254
+
255
+ {"itemname": "累购气量", "index": 7, "type": "number", "readonly": true,unique: true,collectionType:"按气量"},
256
+ {"itemname": "已用气量", "index": 8, "type": "number", "checkmust": false,unique: true,collectionType:"按气量"},
257
+ {"itemname": "剩余气量", "index": 9, "type": "number", "checkmust": false,unique: true,collectionType:"按气量"},
258
+ {"itemname": "气量异常差值", "index": 10, "type": "number", "readonly": true,unique: true,collectionType:"按气量"},
259
+
260
+
261
+ {"itemname": "累购金额", "index": 7, "type": "number", "readonly": true,unique: true,collectionType:"按金额"},
262
+ {"itemname": "已用金额", "index": 8, "type": "number", "checkmust": false,unique: true,collectionType:"按金额"},
263
+ {"itemname": "剩余金额", "index": 9, "type": "number", "checkmust": false,unique: true,collectionType:"按金额"},
264
+ {"itemname": "金额异常差值", "index": 10, "type": "number", "readonly": true,unique: true,collectionType:"按金额"},
265
+
266
+ {"itemname": "系统余额", "index": 10, "type": "number", "readonly": true},
267
+
268
+ {"itemname": "表封号", "index": 11, "type": "string", "readonly": true},
269
+ {"itemname": "燃气表照片", "index": 12, "type": "picture", "checkmust": false}
270
+ ]
287
271
  }
288
- // 注意,配置项的index必须与上面的固定配置保持'顺序'
289
- },
290
- // "燃气表2":{
291
- // "checkmust":true,
292
- // "index":2,src
293
- // "items":{
294
- // "燃气表照片":{"index":1,"type":"picture"},
295
- // "表品牌":{"index":2,"type":"string","readonly":true},
296
- // "表号":{"index":3,"type":"string","readonly":true},
297
- // "表封号":{"index":4,"type":"number","readonly":true},
298
- // "表型号":{"index":5,"type":"string","readonly":true},
299
- // "位置":{"index":6,"type":"string","readonly":true},
300
- // "表底数":{"index":7,"type":"number","readonly":true},
301
- // "累购气量":{"index":8,"type":"number","readonly":true},
302
- // "累购金额":{"index":8,"type":"number","readonly":true}
303
- // }
304
- // }
305
- },
272
+ ],
306
273
  // 维修项
307
274
  isneedDate:'',
308
275
  days: this.$appdata.getParam('截止天数'),
@@ -342,42 +309,45 @@ export default {
342
309
  computed: {
343
310
  actionEnabled: {
344
311
  get() {
345
- return (this.role == 'inspect' && (this.item.f_last_check_state == '到访不遇' || this.item.f_last_check_state == '拒检' || this.item.f_approved == '不通过' )) || (this.role == 'inspect' && this.item.f_complete !='已完成' && this.item.f_complete !='已传' )
312
+ return (this.role == 'inspect' && (this.item.f_last_check_state == '到访不遇' || this.item.f_last_check_state == '拒检' || this.item.f_approved == '不通过' )) || (this.role == 'inspect' && (this.item.f_complete !='已完成' || this.item.f_complete !='已传' ))
346
313
  }
347
314
  }
348
315
  },
349
316
  methods: {
350
317
  getDays(val){
318
+ if (!val){
319
+ return
320
+ }
351
321
  console.log(val)
352
322
  this.days = this.$appdata.getParam(val+'截止天数')
353
323
  this.selectData.day = this.$appdata.getSingleValue(val+'默认截止天数') || 1
354
324
  },
355
325
  daychange(val) {
326
+ if (!val){
327
+ return
328
+ }
356
329
  this.selectData.day = val
357
330
  if (val == '其他') {
358
331
  this.flag = false
359
332
  } else {
360
333
  if(val){
361
334
  this.flag = true
362
- this.selectData.f_finish_date = this.getSecondDay(val)
335
+ this.$set('selectData.f_finish_date',this.getSecondDay(val))
363
336
  }else {
364
- this.selectData.f_finish_date = this.getSecondDay(1)
337
+ this.$set('selectData.f_finish_date',this.getSecondDay(1))
365
338
  }
366
-
367
339
  }
368
340
  },
369
- getSecondDay(val){
370
- let t = new Date();
371
- let t1 = t.getTime()
372
- val = val * 1000
373
- t.setTime(t1 + val * 60 * 60 * 24);
374
- let Y = t.getFullYear() + '-'
375
- let M = (t.getMonth() + 1 < 10 ? '0' + (t.getMonth() + 1) : t.getMonth() + 1) + '-'
376
- let D = (t.getDate() < 10 ? '0' + t.getDate() : t.getDate()) + ' '
377
- let h = (t.getHours() < 10 ? '0' + t.getHours() : t.getHours()) + ':'
378
- let m = (t.getMinutes() < 10 ? '0' + t.getMinutes() : t.getMinutes()) + ':'
379
- let s = t.getSeconds() < 10 ? '0' + t.getSeconds() : t.getSeconds()
380
- return Y + M + D + h + m + s
341
+ getSecondDay(val) {
342
+ const addMs = val * 1000 * 86400; // 86400 = 60*60*24
343
+ const targetDate = new Date(Date.now() + addMs);
344
+ const year = targetDate.getFullYear();
345
+ const month = String(targetDate.getMonth() + 1).padStart(2, '0');
346
+ const day = String(targetDate.getDate()).padStart(2, '0');
347
+ const hours = String(targetDate.getHours()).padStart(2, '0');
348
+ const minutes = String(targetDate.getMinutes()).padStart(2, '0');
349
+ const seconds = String(targetDate.getSeconds()).padStart(2, '0');
350
+ return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
381
351
  },
382
352
  showmod(){
383
353
  // this.saveNoclick()
@@ -419,6 +389,7 @@ export default {
419
389
  f_meetunit:f_meetunit,
420
390
  f_outlets:f_meetunit,
421
391
  }
392
+ this.getDays(f_repairtype)
422
393
  },
423
394
  cancel1(){
424
395
  this.showModal2=false
@@ -755,14 +726,14 @@ export default {
755
726
  for(let device in this.data) {
756
727
  if (device.startsWith("device")) {
757
728
  for (let item in this.data[device]) {
758
- if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
729
+ if (this.data[device].length != 0 && this.data[device][item].f_device_type == this.config[dev].itemname) {
759
730
  error = false
760
731
  }
761
732
  }
762
733
  }
763
734
  }
764
735
  if (error) {
765
- return "请检查" + dev
736
+ return "请检查" + this.config[dev].itemname
766
737
  }
767
738
  }
768
739
  }
@@ -772,23 +743,22 @@ export default {
772
743
  if (device.startsWith("device")) {
773
744
  for (let item in this.data[device]) {
774
745
  //检查每一条安检结果
775
- if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
746
+ if (this.data[device].length != 0 && this.data[device][item].f_device_type == this.config[dev].itemname) {
776
747
  for (let i in this.data[device][item].f_items) {
777
748
  for (let it in this.config[dev].items) {
778
- if (it == this.data[device][item].f_items[i].f_item_name) {
779
- let check=false
780
- if (!this.data[device][item].f_items[i].f_item_value){
781
- check=true
782
- }else if (Array.isArray(this.data[device][item].f_items[i].f_item_value)){
783
- if (this.data[device][item].f_items[i].f_item_value.length==0){
784
- check=true
749
+ if (this.config[dev].items[it].itemname == this.data[device][item].f_items[i].f_item_name) {
750
+ let check = false
751
+ if (!this.data[device][item].f_items[i].f_item_value) {
752
+ check = true
753
+ } else if (Array.isArray(this.data[device][item].f_items[i].f_item_value)) {
754
+ if (this.data[device][item].f_items[i].f_item_value.length == 0) {
755
+ check = true
785
756
  }
786
757
  }
787
-
788
- if(this.config[dev].items[it].type=='picture' && this.config[dev].items[it].checkmust == true && !this.data[device][item].f_items[i].f_path){
758
+ if (this.config[dev].items[it].type == 'picture' && this.config[dev].items[it].checkmust == true && !this.data[device][item].f_items[i].f_path) {
789
759
  return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + "未检查"
790
760
  }
791
- if (this.config[dev].items[it].type !='picture' && this.config[dev].items[it].checkmust == true && check) {
761
+ if (this.config[dev].items[it].type != 'picture' && this.config[dev].items[it].checkmust == true && check) {
792
762
  return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + "未检查"
793
763
  }
794
764
  }
@@ -834,7 +804,7 @@ export default {
834
804
  let hasOther = ''
835
805
  let otherValue = null
836
806
  for (let item in codata[device]) {
837
- if(typeof codata[device][item]=='function'){
807
+ if (typeof codata[device][item] == 'function') {
838
808
  continue
839
809
  }
840
810
  codata[device][item].f_create_time = Util.toStandardTimeString()
@@ -844,17 +814,18 @@ export default {
844
814
  } else {
845
815
  f_device_type = codata[device][item].f_device_type
846
816
  }
847
- if(item == 'sum' || item == 'removeEmpty'){
817
+ if (item == 'sum' || item == 'removeEmpty') {
848
818
  continue
849
819
  }
850
- for (let i = 0; i < codata[device][item].f_items.length ; i++) {
820
+ for (let i = 0; i < codata[device][item].f_items.length; i++) {
851
821
  //tag
852
- if(i == 'sum' || i == 'removeEmpty'){
822
+ if (i == 'sum' || i == 'removeEmpty') {
853
823
  continue
854
824
  }
855
825
  var items = codata[device][item].f_items[i]
856
826
  items.f_create_time = Util.toStandardTimeString()
857
827
  items.f_item_lists = []
828
+
858
829
  if (items.type == 'selector') {
859
830
  items.selected = []
860
831
  } else if (items.type == 'inputSelector') {
@@ -867,62 +838,74 @@ export default {
867
838
  let f_item_value
868
839
  if (items.type == 'selector' || items.type == 'checkbox' || items.type == 'radio') {
869
840
  for (let i in items.f_item_value) {
870
- if(typeof items.f_item_value[i]=='function'){
841
+ if (typeof items.f_item_value[i] == 'function') {
871
842
  continue
872
843
  }
873
- let configItems = this.config[codata[device][item].f_device_type].items[f_item_name]
844
+ // let configItems = this.config[codata[device][item].f_device_type].items[f_item_name]
845
+ let configItems = ''
846
+ this.config.forEach(e => {
847
+ if (e.itemname == f_device_type)
848
+ e.items.forEach(item => {
849
+ if (item.itemname == f_item_name) {
850
+ configItems = item
851
+ }
852
+ })
853
+ })
854
+ items.f_defect_level = configItems.level
874
855
  //tag)
875
856
  for (let k in configItems.options) {
876
- if(typeof configItems.options[k]=='function'){
857
+ if (typeof configItems.options[k] == 'function') {
877
858
  continue
878
859
  }
879
860
  //tag)
880
861
  if (items.f_item_value[i] === configItems.options[k].data) {
881
-
882
862
  f_is_defect = configItems.options[k].isdefect
883
863
  f_item_value = items.f_item_value[i]
884
- f_defect_level = configItems.options[k].level
864
+ f_defect_level = configItems.level
885
865
  if (f_is_defect) {
886
866
  if (checkResults.result !== '有隐患') {
887
867
  checkResults.result = '有隐患'
888
868
  }
889
- console.log('items'+items)
890
- if(items.f_deal_dispose=='报修'){
869
+ console.log('items' + items)
870
+ if (items.f_deal_dispose == '报修') {
891
871
  console.log("检测到需要转维修++++++++++++")
892
- this.repairDefect.result='未处理'
872
+ this.repairDefect.result = '未处理'
893
873
  this.repairDefect.data.push(`${f_item_name} : ${f_item_value}`)
894
874
  }
895
- if (!this.checkResult.hasOwnProperty(f_device_type+'-'+f_item_name)) {
896
- this.checkResult[f_device_type+'-'+f_item_name] = []
875
+ if (!this.checkResult.hasOwnProperty(f_device_type + '-' + f_item_name)) {
876
+ this.checkResult[f_device_type + '-' + f_item_name] = []
897
877
  }
898
- this.checkResult[f_device_type+'-'+f_item_name].push(f_item_value)
878
+ this.checkResult[f_device_type + '-' + f_item_name].push(f_item_value)
899
879
 
900
880
  }
901
881
 
902
- let items_list = {
903
- f_is_defect: f_is_defect,
904
- f_item_value: f_item_value,
905
- f_defect_level: f_defect_level,
906
- f_is_eliminate: null,
907
- f_create_time: Util.toStandardTimeString()
908
- }
909
- if (!items.f_item_lists) {
910
- items.f_item_lists = []
911
- if (JSON.stringify(items_list) !== '{}') {
912
- items.f_item_lists.push(items_list)
913
- }
882
+ let f_selected = f_item_value
883
+ if (!items.f_selected) {
884
+ items.f_selected = []
885
+ items.f_selected.push(f_item_value)
914
886
  } else {
915
- if (JSON.stringify(items_list) !== '{}') {
916
- items.f_item_lists.push(items_list)
917
- }
887
+ items.f_selected.push(f_item_value)
918
888
  }
919
889
  }
920
890
  }
921
891
  }
892
+ //
893
+ items.f_selected = JSON.stringify(items.f_selected);
894
+ items.f_item_value = items.f_item_value ? items.f_item_value.toString() : undefined
922
895
  } else {
923
- let configItems = this.config[codata[device][item].f_device_type].items[items.f_item_name]
896
+ // let configItems = this.config[codata[device][item].f_device_type].items[items.f_item_name]
897
+ let configItems = ''
898
+ this.config.forEach(e => {
899
+ if (e.itemname == f_device_type)
900
+ e.items.forEach(item => {
901
+ if (item.itemname == f_item_name) {
902
+ configItems = item
903
+ }
904
+ })
905
+ })
906
+
924
907
  f_is_defect = items.f_is_defect
925
- f_defect_level = items.level
908
+ f_defect_level = configItems.level
926
909
  f_item_value = items.f_item_value
927
910
  let items_list = {
928
911
  f_is_defect: f_is_defect,
@@ -966,7 +949,7 @@ export default {
966
949
  }
967
950
  if (this.checkResult) {
968
951
  for (let key in this.checkResult) {
969
- if(typeof this.checkResult[key]=='function'){
952
+ if (typeof this.checkResult[key] == 'function') {
970
953
  continue
971
954
  }
972
955
  // 上次安检结果数据组织
@@ -1012,7 +995,6 @@ export default {
1012
995
  return this.$showMessage('有隐患的处理方式为转维修,请点击转维修')
1013
996
  }
1014
997
  this.save()
1015
-
1016
998
  },
1017
999
  //将数据组装提出
1018
1000
  assemblyCodata(){
@@ -1031,21 +1013,21 @@ export default {
1031
1013
  save(type) {
1032
1014
  if (type == 'temp' || type == 'finish') {
1033
1015
  this.assemblyCodata()
1034
- }
1016
+ }
1035
1017
  //禁用事件
1036
1018
  this.saveNoclick()
1037
- if(type == 'temp'){
1019
+ if (type == 'temp') {
1038
1020
  this.data.f_complete = '未完成'
1039
1021
  this.rowCodata.f_complete = '未完成'
1040
1022
  // 关闭录音方法
1041
1023
  this.closely(true) //临时保存,删除录音文件并暂停录音
1042
1024
  this.disableTimer()
1043
- }else {
1025
+ } else {
1044
1026
  // 关闭录音方法
1045
1027
  this.closely(false) // 保存本地,不删除录音文件暂停录音
1046
1028
  let errString = this.errorVerify()
1047
1029
  if (errString) {
1048
- if (Vue.android){
1030
+ if (Vue.android) {
1049
1031
  this.$showMessage(errString)
1050
1032
  }
1051
1033
  return
@@ -1057,7 +1039,7 @@ export default {
1057
1039
  this.disableTimer()
1058
1040
  }
1059
1041
  }
1060
- if(this.data.f_blacklist!='是'){
1042
+ if (this.data.f_blacklist != '是') {
1061
1043
  delete this.data.f_blocking_cause
1062
1044
  }
1063
1045
  if (this.data.f_entry_status == '入户') {
@@ -1065,17 +1047,17 @@ export default {
1065
1047
  this.data.f_rejectcheck_path = null
1066
1048
  this.data.f_rejectcheck1_path = null
1067
1049
  this.data.f_rejectcheck2_path = null
1068
- this.data.f_noanswers_path=[]
1050
+ this.data.f_noanswers_path = []
1069
1051
  this.data.f_noanswer_path = null
1070
1052
  this.data.f_noanswer1_path = null
1071
1053
  this.data.f_noanswer2_path = null
1072
- }else if (this.data.f_entry_status == '到访不遇') {
1054
+ } else if (this.data.f_entry_status == '到访不遇') {
1073
1055
  this.data.f_rejectchecks_path = []
1074
1056
  this.data.f_rejectcheck_path = null
1075
1057
  this.data.f_rejectcheck1_path = null
1076
1058
  this.data.f_rejectcheck2_path = null
1077
- }else if (this.data.f_entry_status == '拒检') {
1078
- this.data.f_noanswers_path=[]
1059
+ } else if (this.data.f_entry_status == '拒检') {
1060
+ this.data.f_noanswers_path = []
1079
1061
  this.data.f_noanswer_path = null
1080
1062
  this.data.f_noanswer1_path = null
1081
1063
  this.data.f_noanswer2_path = null
@@ -1094,8 +1076,8 @@ export default {
1094
1076
  })
1095
1077
  if ((this.item.f_no_checkplan == '无计划安检' || this.item.f_no_checkplan == '复检') && this.item.f_no_checkplan != '打回') {
1096
1078
  codata.f_devices = this.f_devices
1097
- if (this.rowCodata && this.rowCodata.istoRepair=='转维修') {
1098
- this.rowCodata = Object.assign({},this.rowCodata,codata)
1079
+ if (this.rowCodata && this.rowCodata.istoRepair == '转维修') {
1080
+ this.rowCodata = Object.assign({}, this.rowCodata, codata)
1099
1081
  } else {
1100
1082
  this.rowCodata = codata
1101
1083
  }
@@ -1160,8 +1142,8 @@ export default {
1160
1142
  alias: 'getUserinfomation',
1161
1143
  data: {condition: "f_userinfoid = '" + this.item.f_userinfoid + "' and f_no_checkplan in ('无计划安检','复检')"}
1162
1144
  })
1163
- if (this.rowCodata && this.rowCodata.istoRepair=='转维修') {
1164
- this.rowCodata = Object.assign({},this.rowCodata,codata)
1145
+ if (this.rowCodata && this.rowCodata.istoRepair == '转维修') {
1146
+ this.rowCodata = Object.assign({}, this.rowCodata, codata)
1165
1147
  } else {
1166
1148
  this.rowCodata = codata
1167
1149
  }
@@ -1178,6 +1160,7 @@ export default {
1178
1160
  f_check_item_id: this.data.f_check_item_id
1179
1161
  }).then((res) => {
1180
1162
  if (res.data.code == 200) {
1163
+
1181
1164
  let f_paper_id = res.data.data[0].id
1182
1165
  for (let device of this.f_devices) {
1183
1166
  device.f_paper_id = f_paper_id
@@ -1200,8 +1183,7 @@ export default {
1200
1183
  return false
1201
1184
  }
1202
1185
  })
1203
- }
1204
- else {
1186
+ } else {
1205
1187
  this.$androidUtil.bzLogic('保存安检单信息', {
1206
1188
  f_check_item_id: this.data.f_check_item_id,
1207
1189
  f_checker_id: this.data.f_checker_id,
@@ -1318,23 +1300,23 @@ export default {
1318
1300
  // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
1319
1301
  'backresult': 1
1320
1302
  })
1321
- }else{
1303
+ } else {
1322
1304
  this.$showMessage('保存成功!')
1323
- if(this.clickBack){
1305
+ if (this.clickBack) {
1324
1306
  this.isStrat = false
1325
1307
  this.$dispatch('confirm')
1326
1308
  }
1327
1309
  }
1328
- }else{
1310
+ } else {
1329
1311
  this.$showMessage('保存失败!')
1330
1312
  return
1331
1313
  }
1332
- }else{
1314
+ } else {
1333
1315
  this.$showMessage('服务器内部错误,保存失败!')
1334
1316
  return
1335
1317
  }
1336
1318
  },
1337
- uploadCallBack(jo){
1319
+ uploadCallBack(jo) {
1338
1320
  //获取微信推送路径
1339
1321
  let url = ""
1340
1322
  if(Vue.config.safecheck != undefined) {
@@ -1344,13 +1326,13 @@ export default {
1344
1326
  }
1345
1327
  }
1346
1328
  }
1347
- if(jo.state == 'ok'){
1329
+ if (jo.state == 'ok') {
1348
1330
  let res = JSON.parse(jo.result)
1349
- if(res.code == 200){
1331
+ if (res.code == 200) {
1350
1332
  this.$set('data.f_paper_id', res.id)
1351
- this.isStrat=false
1352
- if(url != ""){
1353
- this.$resetpost(`${url}`,{data:WxResult})
1333
+ this.isStrat = false
1334
+ if (url != "") {
1335
+ this.$resetpost(`${url}`, {data: WxResult})
1354
1336
  }
1355
1337
  // 预约安检回更预约安检单
1356
1338
  if(this.data.isupdateplanitem == 'true' && this.data.f_SafeToRepair_id){
@@ -1364,27 +1346,27 @@ export default {
1364
1346
  }
1365
1347
  })
1366
1348
  }
1367
- if(this.isToRepair){
1368
- for (let device in this.data){
1369
- if(device.startsWith("device")){
1349
+ if (this.isToRepair) {
1350
+ for (let device in this.data) {
1351
+ if (device.startsWith("device")) {
1370
1352
  this.data[device] = []
1371
- if(res.data.length > 0){
1372
- for(let i in res.data[0].f_devices){
1373
- if(this.data[device].length > 0){
1374
- if(this.data[device][0].f_device_type == res.data[0].f_devices[i].f_device_type){
1353
+ if (res.data.length > 0) {
1354
+ for (let i in res.data[0].f_devices) {
1355
+ if (this.data[device].length > 0) {
1356
+ if (this.data[device][0].f_device_type == res.data[0].f_devices[i].f_device_type) {
1375
1357
  this.data[device].push(res.data[0].f_devices[i])
1376
- res.data[0].f_devices.splice(i,1)
1358
+ res.data[0].f_devices.splice(i, 1)
1377
1359
  }
1378
- }else{
1360
+ } else {
1379
1361
  this.data[device].push(res.data[0].f_devices[i])
1380
- res.data[0].f_devices.splice(i,1)
1362
+ res.data[0].f_devices.splice(i, 1)
1381
1363
  }
1382
1364
  }
1383
1365
  }
1384
1366
  }
1385
1367
  }
1386
1368
  this.todo()
1387
- }else{
1369
+ } else {
1388
1370
  this.$showMessage('安检上传成功!')
1389
1371
  if (this.data.f_userinfoid){
1390
1372
  let http = new HttpResetClass()
@@ -1409,7 +1391,8 @@ export default {
1409
1391
  let param = {}
1410
1392
  param = res.data[0]
1411
1393
  param.f_new_tablebase = _this.data.f_new_tablebase
1412
- param.tabname="在线抄表"
1394
+ param.tabname="在线抄表",
1395
+ param.f_result_state="安检回量"
1413
1396
  var pardate = {
1414
1397
  _this:this,
1415
1398
  tittle:'抄表单信息',
@@ -1448,8 +1431,7 @@ export default {
1448
1431
  this.$showMessage('网络异常,请缓存后重新尝试上传,多次上传失败请联系管理员!')
1449
1432
  this.onlySave = true
1450
1433
  return
1451
- }
1452
- else{
1434
+ } else {
1453
1435
  this.$showMessage('上传失败!')
1454
1436
  }
1455
1437
  }else {
@@ -1457,31 +1439,31 @@ export default {
1457
1439
  }
1458
1440
  this.onlySave = true
1459
1441
  },
1460
- safecheckToRepairCallBack(jo){
1442
+ safecheckToRepairCallBack(jo) {
1461
1443
  //获取微信推送路径
1462
- if(jo.state == 'ok'){
1444
+ if (jo.state == 'ok') {
1463
1445
  let res = JSON.parse(jo.result)
1464
- if(res.code == 200){
1465
- if(res.data.code == 200){
1446
+ if (res.code == 200) {
1447
+ if (res.data.code == 200) {
1466
1448
  this.$showMessage('上传并转维修成功!')
1467
- }else{
1449
+ } else {
1468
1450
  this.$showMessage('上传并转维修成功,回写安检单失败!')
1469
1451
  }
1470
1452
  this.$dispatch('confirm')
1471
- }else{
1453
+ } else {
1472
1454
  this.$showMessage('上传失败!')
1473
1455
  this.onlySave = true
1474
1456
  }
1475
- }else{
1457
+ } else {
1476
1458
  this.$showMessage('网络异常,上传失败!')
1477
1459
  this.onlySave = true
1478
1460
  }
1479
1461
  },
1480
- todo(){
1462
+ todo() {
1481
1463
  let gen = getRepairParam(this)
1482
1464
  co(gen)
1483
1465
  },
1484
- undo(){
1466
+ undo() {
1485
1467
  this.showCheckToRepair = !this.showCheckToRepair
1486
1468
  this.model.serviceacitivity[0].f_reciever = ''
1487
1469
  this.model.serviceacitivity[0].f_meetunit = ''
@@ -1517,26 +1499,60 @@ export default {
1517
1499
  return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
1518
1500
  },
1519
1501
  extend(initalObj, finalObj) {
1520
- var obj = finalObj || {};
1521
- for (var i in initalObj) {
1522
- var prop = initalObj[i];
1502
+ initalObj.forEach(item2 => {
1503
+ const item1 = finalObj.find(item => item.itemname === item2.itemname);
1523
1504
 
1524
- // 避免相互引用对象导致死循环,如initalObj.a = initalObj的情况
1525
- if (prop === obj) {
1526
- continue;
1505
+ if (!item1) {
1506
+ finalObj.push(item2);
1507
+ } else {
1508
+ // 对 item2 的 items 进行逆序遍历
1509
+ item2.items.slice().forEach(subItem2 => {
1510
+ const subItem1Index = item1.items.findIndex(subItem => subItem.itemname === subItem2.itemname);
1511
+
1512
+ if (subItem1Index > -1) {
1513
+ // 如果找到匹配的 subItem1,用 subItem2 替换它
1514
+ item1.items[subItem1Index] = subItem2;
1515
+ } else {
1516
+ // 如果没有找到,将 subItem2 插入到 item1.items 的前面
1517
+ item1.items.push(subItem2);
1518
+ }
1519
+ });
1527
1520
  }
1521
+ });
1528
1522
 
1529
- if (typeof prop === 'object') {
1530
- if (obj[i]) {
1531
- this.extend(obj[i], prop)
1532
- } else {
1533
- obj[i] = prop;
1534
- }
1523
+ return finalObj;
1524
+ },
1525
+ removeNestedItem(arr, itemname1, itemname2) {
1526
+ // 创建一个新数组以避免修改原始数组
1527
+ const newArr = arr.map(item => {
1528
+ // 复制每个项目以避免直接修改它们
1529
+ const newItem = { ...item };
1530
+
1531
+ // 检查外层itemname是否匹配
1532
+ if (newItem.itemname === itemname1 && Array.isArray(newItem.items)) {
1533
+ // 过滤掉匹配的内层itemname
1534
+ newItem.items = newItem.items.filter(subItem => subItem.itemname !== itemname2);
1535
1535
  }
1536
- }
1537
- return obj;
1536
+ return newItem;
1537
+ });
1538
+ return newArr;
1538
1539
  },
1539
- putDevices() {
1540
+ removeByCollectionType(arr, collectionType) {
1541
+ // 创建一个新数组以避免修改原始数组
1542
+ const newArr = arr.map(item => {
1543
+ // 复制每个项目以避免直接修改它们
1544
+ const newItem = {...item};
1545
+
1546
+ // 检查外层itemname是否匹配
1547
+ if (newItem.itemname === '燃气表' && Array.isArray(newItem.items)) {
1548
+ // 过滤掉匹配的内层itemname
1549
+ newItem.items = newItem.items.filter(subItem => !subItem.unique || subItem.collectionType == collectionType);
1550
+ }
1551
+ return newItem;
1552
+ });
1553
+ return newArr;
1554
+ },
1555
+ async putDevices() {
1540
1556
  this.$set('data.approve', "true")
1541
1557
  this.$set('data.writeback', "false")
1542
1558
  if (Vue.config.safecheck != undefined) {
@@ -1560,46 +1576,60 @@ export default {
1560
1576
  this.refuseinspection = Vue.config.safecheck.ApproveConfig.refuseinspection
1561
1577
  }
1562
1578
  }
1563
- if(this.item.f_user_type == '非民用'){
1564
- // 非民用
1565
- if (Vue.config.safecheck.DevicesSetConfig != undefined){
1566
- if(this.item.f_safecheck_type == undefined || this.item.f_safecheck_type == '' || Vue.config.safecheck.SafecheckType == undefined) {
1567
- this.config = this.extend(this.config, Vue.config.safecheck.DevicesSetConfig)
1568
- }else{
1569
- this.config = this.extend(this.config, Vue.config.safecheck[Vue.config.safecheck.SafecheckType[this.item.f_safecheck_type][this.item.f_user_type]])
1570
- }
1571
- }
1572
1579
 
1573
- }else{
1574
- // 民用户
1575
- if (Vue.config.safecheck.DevicesConfig != undefined){
1576
- if(this.item.f_safecheck_type == undefined || this.item.f_safecheck_type == '' || Vue.config.safecheck.SafecheckType == undefined) {
1577
- this.config = this.extend(this.config, Vue.config.safecheck.DevicesConfig)
1578
- }else{
1579
- this.config = this.extend(this.config, Vue.config.safecheck[Vue.config.safecheck.SafecheckType[this.item.f_safecheck_type][this.item.f_user_type?this.item.f_user_type:'民用']])
1580
- }
1580
+ if (this.item.f_security_check_type_id && this.item.f_security_check_type_id != null) {
1581
+ try {
1582
+ await this.getSecurityCheckType(`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/getSecurityCheckTypeHistoryById`, {id: this.item.f_security_check_type_id})
1583
+ this.f_security_check_type_id = this.serverConfig.data.id
1584
+ } catch (e) {
1585
+ return this.$showMessage('获取配置文件失败,请返回后重新进入!多次失败请联系管理员')
1586
+ }
1587
+ this.config = this.extend(JSON.parse(this.serverConfig.data.f_json), this.config)
1588
+ this.initConfig()
1589
+ } else {
1590
+ try {
1591
+ await this.getSecurityCheckType(`${this.$androidUtil.getProxyUrl()}/api/af-safecheck/logic/getSecurityCheckTypeByType`, {
1592
+ f_safecheck_type: this.item.f_safecheck_type || '年度普检',
1593
+ f_user_type: this.item.f_user_type
1594
+ })
1595
+ this.f_security_check_type_id = this.serverConfig.data[0].id
1596
+ this.config = this.extend(JSON.parse(this.serverConfig.data[0].f_json), this.config)
1597
+ this.initConfig()
1598
+ } catch (e) {
1599
+ return this.$showMessage('获取配置文件失败,请返回后重新进入!多次失败请联系管理员')
1581
1600
  }
1582
1601
  }
1583
-
1584
1602
  }
1585
- // 预留设备项位置
1603
+ },
1604
+ async getSecurityCheckType(url, data) {
1605
+ let res = await new HttpResetClass().http('POST', url,
1606
+ data,
1607
+ {resolveMsg: null, rejectMsg: '网络异常'})
1608
+ if (typeof res === 'object') {
1609
+ this.serverConfig = res
1610
+ } else {
1611
+ this.serverConfig = JSON.parse(res)
1612
+ }
1613
+ },
1614
+ initConfig() {
1586
1615
  for (let i in this.config) {
1587
- this.tabs.splice(1,0,null)
1616
+ this.tabs.splice(1, 0, null)
1588
1617
  }
1589
- //遍历安检项配置
1590
1618
  for (let i in this.config) {
1591
1619
  //取得安检项索引值
1592
- let n = this.config[i].index
1593
- this.devices[n - 1] = {device: i, n: n, checkmust: this.config[i].checkmust}
1620
+ let n = parseInt(i) + 1
1621
+ //tag
1622
+ this.devices[n - 1] = {device: parseInt(i), n: n, checkmust: this.config[i].checkmust}
1594
1623
  this.$set('data.' + 'device' + n, [])
1595
1624
  this.tabs[n] = {
1596
- header: i,
1625
+ header: this.config[i].itemname,
1597
1626
  complete: 'safecheck-devices',
1598
1627
  class: 'repair-details-class',
1599
1628
  number: n
1600
1629
  }
1601
1630
 
1602
- if(this.config[i].quantity && this.config[i].quantity >0){
1631
+ if (this.config[i].quantity && this.config[i].quantity > 0) {
1632
+
1603
1633
  let items = []
1604
1634
  for (let it in this.config[i].items) {
1605
1635
  //赋值下拉选项
@@ -1607,9 +1637,9 @@ export default {
1607
1637
  for (let op in this.config[i].items[it].options) {
1608
1638
  if (this.config[i].items[it].options[op].isdefault == true) {
1609
1639
  items.push({
1610
- f_defect_level: this.config[i].items[it].options[op].level,
1640
+ f_defect_level: this.config[i].items[it].level,
1611
1641
  f_is_defect: this.config[i].items[it].options[op].isdefect,
1612
- f_item_name: it,
1642
+ f_item_name: this.config[i].items[it].itemname,
1613
1643
  f_item_value: this.config[i].items[it].options[op].data,
1614
1644
  f_path: "",
1615
1645
  type: "selector"
@@ -1618,9 +1648,11 @@ export default {
1618
1648
  }
1619
1649
  }
1620
1650
  }
1621
- for(let q =0;q<this.config[i].quantity;q++) {
1651
+ for (let q = 0; q < this.config[i].quantity; q++) {
1622
1652
  this.data['device' + n].push(
1623
- {f_device_type: i, f_items:items}
1653
+ {
1654
+ f_device_type: this.config[i].itemname, f_items: items
1655
+ }
1624
1656
  )
1625
1657
  }
1626
1658
  }
@@ -1708,7 +1740,7 @@ export default {
1708
1740
  if (this.item.f_plan_meters[i].f_meter_type) {
1709
1741
  this.data.f_meter_type=this.item.f_plan_meters[i].f_meter_type
1710
1742
  //tag)
1711
- if (this.devices[de].device == "燃气表" && this.item.f_plan_meters[i].f_meter_type.indexOf('机表') >= 0) {
1743
+ if (this.config[this.devices[de].device].itemname == "燃气表" && this.item.f_plan_meters[i].f_meter_type.indexOf('机表') > 0) {
1712
1744
  this.data['device' + this.devices[de].n].push({
1713
1745
  f_device_type: "燃气表",
1714
1746
  f_items: [
@@ -1768,8 +1800,7 @@ export default {
1768
1800
  }
1769
1801
  ]
1770
1802
  })
1771
- }
1772
- else if (this.devices[de].device == "燃气表") {
1803
+ } else if (this.config[this.devices[de].device].itemname == "燃气表") {
1773
1804
  this.data['device' + this.devices[de].n].push({
1774
1805
  f_device_type: "燃气表",
1775
1806
  f_items: [
@@ -1830,15 +1861,15 @@ export default {
1830
1861
  ]
1831
1862
  })
1832
1863
  }
1833
- if(this.devices[de].device == "燃气表" && this.item.f_plan_meters[i].f_meter_type.indexOf('物联网表') >= 0){
1864
+ if(this.config[this.devices[de].device].itemname == "燃气表" && this.item.f_plan_meters[i].f_meter_type.indexOf('物联网表') >= 0){
1834
1865
  this.data['device' + this.devices[de].n].forEach(device => {
1835
1866
  if (!this.data.f_collection_type) {
1836
1867
  this.data.f_collection_type = this.item.f_plan_meters[i].f_collection_type
1837
- delete this.config['燃气表']['items']['累购气量']
1838
- delete this.config['燃气表']['items']['已用金额']
1839
- delete this.config['燃气表']['items']['剩余气量']
1840
- delete this.config['燃气表']['items']['气量异常差值']
1841
- delete this.config['燃气表']['items']['金额异常差值']
1868
+ this.config = this.removeNestedItem(this.config, '燃气表', '累购气量')
1869
+ this.config = this.removeNestedItem(this.config, '燃气表', '已用金额')
1870
+ this.config = this.removeNestedItem(this.config, '燃气表', '剩余气量')
1871
+ this.config = this.removeNestedItem(this.config, '燃气表', '气量异常差值')
1872
+ this.config = this.removeNestedItem(this.config, '燃气表', '金额异常差值')
1842
1873
  device.f_items.push(
1843
1874
  {
1844
1875
  f_defect_level: null,
@@ -1889,7 +1920,8 @@ export default {
1889
1920
  )
1890
1921
  }
1891
1922
  })
1892
- } else if (this.devices[de].device == "燃气表" && this.item.f_plan_meters[i].f_collection_type) {
1923
+ }
1924
+ else if (this.devices[de].device == "燃气表" && this.item.f_plan_meters[i].f_collection_type) {
1893
1925
  this.data['device' + this.devices[de].n].forEach(device => {
1894
1926
  /*
1895
1927
  "累购气量":{"index":8,"type":"number","readonly":true},
@@ -1904,11 +1936,8 @@ export default {
1904
1936
  if (this.item.f_plan_meters[i].f_collection_type == '按金额') {
1905
1937
  if (!this.data.f_collection_type) {
1906
1938
  this.data.f_collection_type = this.item.f_plan_meters[i].f_collection_type
1907
- delete this.config['燃气表']['items']['累购气量']
1908
- delete this.config['燃气表']['items']['已用气量']
1909
- delete this.config['燃气表']['items']['剩余气量']
1910
- delete this.config['燃气表']['items']['气量异常差值']
1911
- delete this.config['燃气表']['items']['系统余额']
1939
+ this.config = this.removeNestedItem(this.config, '燃气表', '系统余额')
1940
+ this.config = this.removeByCollectionType(this.config, this.data.f_collection_type)
1912
1941
  device.f_items.push(
1913
1942
  {
1914
1943
  f_defect_level: null,
@@ -1957,16 +1986,14 @@ export default {
1957
1986
  type: "number"
1958
1987
  }
1959
1988
  )
1989
+ //tag)
1960
1990
  }
1961
1991
  } else
1962
1992
  if (this.item.f_plan_meters[i].f_collection_type == '按气量') {
1963
1993
  if (!this.data.f_collection_type) {
1964
1994
  this.data.f_collection_type = this.item.f_plan_meters[i].f_collection_type
1965
- delete this.config['燃气表']['items']['累购金额']
1966
- delete this.config['燃气表']['items']['已用金额']
1967
- delete this.config['燃气表']['items']['剩余金额']
1968
- delete this.config['燃气表']['items']['金额异常差值']
1969
- delete this.config['燃气表']['items']['系统余额']
1995
+ this.config = this.removeNestedItem(this.config, '燃气表', '系统余额')
1996
+ this.config = this.removeByCollectionType(this.config, this.data.f_collection_type)
1970
1997
  device.f_items.push(
1971
1998
  {
1972
1999
  f_defect_level: null,
@@ -2018,15 +2045,12 @@ export default {
2018
2045
  }
2019
2046
  }
2020
2047
  })
2021
- } else if(this.devices[de].device == "燃气表"){
2048
+ } else if(this.config[this.devices[de].device].itemname == "燃气表"){
2022
2049
  this.data['device' + this.devices[de].n].forEach(device => {
2023
2050
  if (!this.data.f_collection_type) {
2024
2051
  this.data.f_collection_type = this.item.f_plan_meters[i].f_collection_type
2025
- delete this.config['燃气表']['items']['累购金额']
2026
- delete this.config['燃气表']['items']['已用金额']
2027
- delete this.config['燃气表']['items']['剩余金额']
2028
- delete this.config['燃气表']['items']['金额异常差值']
2029
- delete this.config['燃气表']['items']['系统余额']
2052
+ this.config = this.removeNestedItem(this.config, '燃气表', '系统余额')
2053
+ this.config = this.removeByCollectionType(this.config, this.data.f_collection_type)
2030
2054
  device.f_items.push(
2031
2055
  {
2032
2056
  f_defect_level: null,
@@ -2087,12 +2111,12 @@ export default {
2087
2111
  }
2088
2112
  },
2089
2113
  watch: {
2090
- 'row' () {
2114
+ 'row'() {
2091
2115
  //tag
2092
2116
  this.copy()
2093
2117
  }
2094
2118
  },
2095
- async ready () {
2119
+ async ready() {
2096
2120
  try {
2097
2121
  if (this.item.f_userinfoid){
2098
2122
  let http = new HttpResetClass()
@@ -2118,7 +2142,7 @@ export default {
2118
2142
  }
2119
2143
  //送气超期功能
2120
2144
  //await this.isoverDate()
2121
- this.putDevices()
2145
+ await this.putDevices()
2122
2146
  //如果已检,则提取安检单
2123
2147
  if (this.item.f_state != '未检') {
2124
2148
  if (this.role == 'inspect' || this.role == 'androidview') {
@@ -2138,61 +2162,39 @@ export default {
2138
2162
  Util.replaceFalse(value)
2139
2163
  if (value.data.length != 0) {
2140
2164
  that.$set('data', value.data[0])
2141
- if (this.data.f_collection_type == '按气量') {
2142
- delete this.config['燃气表']['items']['累购金额']
2143
- delete this.config['燃气表']['items']['已用金额']
2144
- delete this.config['燃气表']['items']['剩余金额']
2145
- delete this.config['燃气表']['items']['金额异常差值']
2146
- delete this.config['燃气表']['items']['系统余额']
2147
- } else if (this.data.f_collection_type == '按金额') {
2148
- delete this.config['燃气表']['items']['累购气量']
2149
- delete this.config['燃气表']['items']['已用气量']
2150
- delete this.config['燃气表']['items']['剩余气量']
2151
- delete this.config['燃气表']['items']['气量异常差值']
2152
- delete this.config['燃气表']['items']['系统余额']
2153
- }
2154
- //tag)
2165
+ this.config = this.removeByCollectionType(this.config, this.data.f_collection_type)
2155
2166
  if (value.data[0].f_devices) {
2156
2167
  for (let da in that.devices) {
2157
- if(typeof that.devices[da]=='function'){
2168
+ if (typeof that.devices[da] == 'function') {
2158
2169
  continue
2159
2170
  }
2160
2171
  that.$set('data.device' + that.devices[da].n, [])
2161
2172
  }
2162
2173
  value.data[0].f_devices.forEach((item) => {
2163
2174
  for (let i in item.f_items) {
2164
- if(typeof item.f_items[i]=='function'){
2175
+ if (typeof item.f_items[i] == 'function') {
2165
2176
  continue
2166
2177
  }
2167
- for (let de in that.config[item.f_device_type].items) {
2168
- if(typeof that.config[item.f_device_type].items[de]=='function'){
2178
+ let items = this.config.find(obj => obj.itemname === item.f_device_type).items;
2179
+ for (let de in items) {
2180
+ if (typeof items[de] == 'function') {
2169
2181
  continue
2170
2182
  }
2171
- if (item.f_items[i].f_item_name == de) {
2172
- if (that.config[item.f_device_type].items[de].type == 'selector' || that.config[item.f_device_type].items[de].type == 'checkbox') {
2183
+ if (item.f_items[i].f_item_name == items[de].itemname) {
2184
+ if (items[de].type == 'selector' || items[de].type == 'checkbox') {
2173
2185
  item.f_items[i].f_item_value = []
2174
- } else {
2175
- item.f_items[i].f_item_value = ''
2176
2186
  }
2177
2187
  }
2178
2188
  }
2179
- for (let j in item.f_items[i].f_item_lists) {
2180
- if(typeof item.f_items[i].f_item_lists[j]=='function'){
2181
- continue
2182
- }
2183
- if (item.f_items[i].f_item_value instanceof Array) {
2184
- item.f_items[i].f_item_value.push(item.f_items[i].f_item_lists[j].f_item_value)
2185
- } else {
2186
- item.f_items[i].f_item_value = item.f_items[i].f_item_lists[j].f_item_value
2187
- }
2189
+ if (item.f_items[i].f_item_value instanceof Array) {
2190
+ item.f_items[i].f_item_value = JSON.parse(item.f_items[i].f_selected)
2188
2191
  }
2189
-
2190
2192
  }
2191
2193
  for (let de in that.devices) {
2192
- if(typeof that.devices[de]=='function'){
2194
+ if (typeof that.devices[de] == 'function') {
2193
2195
  continue
2194
2196
  }
2195
- if (that.devices[de].device == item.f_device_type) {
2197
+ if (this.config[that.devices[de].device].itemname == item.f_device_type) {
2196
2198
  that.data['device' + that.devices[de].n].push({
2197
2199
  f_device_type: item.f_device_type,
2198
2200
  f_items: item.f_items
@@ -2212,15 +2214,15 @@ export default {
2212
2214
  this.init()
2213
2215
  }
2214
2216
  if(this.parentPage && this.parentPage=='CurrentCreate'){
2215
- let isRecodr = this.$appdata.getSingleValue('无限制录音'); //单值参数,为true则是开启全程录音
2216
- if (isRecodr) {
2217
- if (isRecodr=='true') {
2217
+ let isRecodr = this.$appdata.getSingleValue('无限制录音'); //单值参数,为true则是开启全程录音
2218
+ if (isRecodr) {
2219
+ if (isRecodr == 'true') {
2218
2220
  this.$showMessage("为了保证服务质量,您的电话将会被全程录音!")
2219
- // 初始化录音
2220
- let resse = this.record()
2221
- }
2221
+ // 初始化录音
2222
+ let resse = this.record()
2222
2223
  }
2223
2224
  }
2225
+ }
2224
2226
  this.$goto('safecheck-userinfo', {userinfo:this.data}, 'repair')
2225
2227
  } else {
2226
2228
  let that = this
@@ -2228,10 +2230,10 @@ export default {
2228
2230
  if (this.role == 'view') {
2229
2231
  id = this.item.id
2230
2232
  }
2231
- this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/path/getUserinfomation`, {data:{condition:`id = '${id}'`}}).then((respanse)=> {
2233
+ this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/path/getUserinfomation`, {data: {condition: `id = '${id}'`}}).then((respanse) => {
2232
2234
  if (respanse.data.length != 0) {
2233
- that.data = Object.assign(that.data,respanse.data[0])
2234
- if(respanse.data[0].f_devices) {
2235
+ that.data = Object.assign(that.data, respanse.data[0])
2236
+ if (respanse.data[0].f_devices) {
2235
2237
  for (let da in that.devices) {
2236
2238
  that.$set('data.device' + that.devices[da].n, [])
2237
2239
  }
@@ -2248,10 +2250,10 @@ export default {
2248
2250
  }
2249
2251
  Util.replaceFalse(that.data)
2250
2252
  Util.booleanFilter(that.data)
2251
- if(this.role == 'view'){
2253
+ if (this.role == 'view') {
2252
2254
  Util.ratifyPics(that.data)
2253
- }else{
2254
- Util.androidRatifyPics(that.data,this.$androidUtil.getProxyUrl())
2255
+ } else {
2256
+ Util.androidRatifyPics(that.data, this.$androidUtil.getProxyUrl())
2255
2257
  }
2256
2258
  } else {
2257
2259
  alert("该安检单可能已不在本地!")
@@ -2292,6 +2294,7 @@ export default {
2292
2294
  .noclickbut {
2293
2295
  pointer-events: none;
2294
2296
  }
2297
+
2295
2298
  .tab-befor-img (@url) {
2296
2299
  content: '';
2297
2300
  background-image: url("@{url}");
@@ -2310,16 +2313,19 @@ export default {
2310
2313
  margin: 0.3em 0;
2311
2314
  }
2312
2315
  }
2313
- .repair-details-class{
2316
+
2317
+ .repair-details-class {
2314
2318
  &::before {
2315
2319
  .tab-befor-img("../../../assets/huneiweixiu1.png");
2316
2320
  }
2317
2321
  }
2322
+
2318
2323
  .repair-info-class {
2319
2324
  &::before {
2320
2325
  .tab-befor-img("../../../assets/baoxiuxinxi1.png");
2321
2326
  }
2322
2327
  }
2328
+
2323
2329
  .repair-user-info-class {
2324
2330
  &::before {
2325
2331
  .tab-befor-img("../../../assets/jibenxinxi1.png")
@@ -2371,11 +2377,13 @@ export default {
2371
2377
  .tab-befor-img("../../../assets/guzhanghuizong1.png")
2372
2378
  }
2373
2379
  }
2380
+
2374
2381
  .photo-write-class {
2375
2382
  &::before {
2376
2383
  .tab-befor-img("../../../assets/zaoju.png")
2377
2384
  }
2378
2385
  }
2386
+
2379
2387
  .delay-apply-class {
2380
2388
  &::before {
2381
2389
  .tab-befor-img("../../../assets/yonghubaoxiu.png")
@@ -2387,44 +2395,49 @@ export default {
2387
2395
  .tab-befor-img("../../../assets/fanhui.png")
2388
2396
  }
2389
2397
  }
2398
+
2390
2399
  .butt2 {
2391
2400
  display: inline;
2392
2401
  float: right;
2393
2402
  width: 10px;
2394
2403
  text-align: center;
2395
- align-items:center;
2404
+ align-items: center;
2396
2405
  position: absolute;
2397
- top:50%;
2406
+ top: 50%;
2398
2407
 
2399
- left:90%;
2400
- transform: translate(-50%,-50%);
2408
+ left: 90%;
2409
+ transform: translate(-50%, -50%);
2401
2410
  }
2402
- .linesty{
2411
+
2412
+ .linesty {
2403
2413
  display: inline-block;
2404
- height:1px;
2405
- width:100%;
2406
- background:#d0d0d0;
2407
- overflow:hidden;
2414
+ height: 1px;
2415
+ width: 100%;
2416
+ background: #d0d0d0;
2417
+ overflow: hidden;
2408
2418
  vertical-align: middle;
2409
2419
  }
2410
- .spanboder{
2411
- border-bottom:2px solid #499edf;
2420
+
2421
+ .spanboder {
2422
+ border-bottom: 2px solid #499edf;
2412
2423
  padding-bottom: 8px
2413
2424
  }
2425
+
2414
2426
  .app-botton {
2415
- position:fixed;
2427
+ position: fixed;
2416
2428
  background: #87b2dd;
2417
- right:8px;
2429
+ right: 8px;
2418
2430
  color: #FFF;
2419
2431
  padding: 8px;
2420
2432
  text-align: center;
2421
2433
  font-size: 1.2em;
2422
2434
  z-index: 10;
2423
- opacity:0.5;
2435
+ opacity: 0.5;
2424
2436
  bottom: 50px;
2425
2437
  margin-top: -10px;
2426
2438
  height: 40px;
2427
2439
  }
2440
+
2428
2441
  .android-repair-order > div > ul a {
2429
2442
  font-size: 12px;
2430
2443
  color: #333333;