safecheck-client 3.0.35-gongyi-9 → 3.0.35-gongyi-11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (843) hide show
  1. package/.babelrc +5 -5
  2. package/.editorconfig +9 -9
  3. package/.eslintrc.js +16 -16
  4. package/.project +11 -11
  5. package/CHANGELOG.md +27 -27
  6. package/README.md +38 -38
  7. package/android.html +18 -18
  8. package/build/css-loaders.js +34 -34
  9. package/build/dev-android.js +151 -151
  10. package/build/dev-client.js +8 -8
  11. package/build/example-server.js +157 -157
  12. package/build/release.sh +28 -28
  13. package/build/utils.js +71 -71
  14. package/build/webpack.base.conf.js +88 -88
  15. package/build/webpack.baseandroid.conf.js +83 -83
  16. package/build/webpack.dev.conf.js +40 -40
  17. package/build/webpack.devandroid.conf.js +33 -33
  18. package/build/webpack.example.conf.js +49 -49
  19. package/build/webpack.hanwei.conf.js +57 -57
  20. package/build/webpack.hwbase.conf.js +78 -78
  21. package/build/webpack.prod.conf.js +80 -80
  22. package/build/webpack.prodandroid.conf.js +60 -60
  23. package/build/webpack.test.conf.js +31 -31
  24. package/build.gradle +14 -14
  25. package/config/dev.env.js +6 -6
  26. package/config/index.js +38 -38
  27. package/config/prod.env.js +3 -3
  28. package/config/test.env.js +6 -6
  29. package/docs/AppBase.md +22 -22
  30. package/docs/Busy.md +14 -14
  31. package/docs/Criteria.md +47 -47
  32. package/docs/CriteriaPaged.md +47 -47
  33. package/docs/DataGrid.md +54 -54
  34. package/docs/DataModel.md +22 -22
  35. package/docs/Dynamic.md +42 -42
  36. package/docs/FormPrint.md +18 -18
  37. package/docs/GetParams.md +11 -11
  38. package/docs/GridTree.md +47 -47
  39. package/docs/HttpBusy.md +13 -13
  40. package/docs/HttpStore.md +29 -29
  41. package/docs/MessageBox.md +28 -28
  42. package/docs/PagedList.md +29 -29
  43. package/docs/Pager.md +21 -21
  44. package/docs/PrintFile.md +38 -38
  45. package/docs/Project.md +23 -23
  46. package/docs/Route.md +105 -105
  47. package/docs/SafetyCheck/AdjustPlan.md +13 -13
  48. package/docs/SafetyCheck/CheckerPlan.md +12 -12
  49. package/docs/Task.md +46 -46
  50. package/docs/TreeList.md +28 -28
  51. package/docs/TreeMixin.md +18 -18
  52. package/docs/all.md +10 -10
  53. package/docs/list.md +42 -42
  54. package/docs/partial.md +75 -75
  55. package/docs/selector.md +82 -82
  56. package/docs/tree.md +40 -40
  57. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/Snippets.md +28 -28
  58. 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
  59. 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
  60. 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
  61. package/docs//347/225/214/351/235/242/345/210/266/344/275/234/350/247/204/350/214/203.md +54 -54
  62. package/examples/AddressList/App.vue +13 -13
  63. package/examples/AddressList/index.html +11 -11
  64. package/examples/AddressList/main.js +13 -13
  65. package/examples/ChangeConfig/App.vue +54 -54
  66. package/examples/ChangeConfig/comp.js +548 -548
  67. package/examples/ChangeConfig/index.html +17 -17
  68. package/examples/ChangeConfig/main.js +13 -13
  69. package/examples/CheckAdvise/App.vue +24 -24
  70. package/examples/CheckAdvise/comp.js +9 -9
  71. package/examples/CheckAdvise/index.html +18 -18
  72. package/examples/CheckAdvise/main.js +13 -13
  73. package/examples/CreatePlan/App.vue +13 -13
  74. package/examples/CreatePlan/index.html +11 -11
  75. package/examples/CreatePlan/main.js +13 -13
  76. package/examples/DispatchList/App.vue +10 -10
  77. package/examples/DispatchList/BaseTree.vue +13 -13
  78. package/examples/DispatchList/Init.vue +22 -22
  79. package/examples/DispatchList/Test.vue +20 -20
  80. package/examples/DispatchList/index.html +11 -11
  81. package/examples/DispatchList/main.js +18 -18
  82. package/examples/PhoneSafePlan/App.vue +36 -36
  83. package/examples/PhoneSafePlan/TestData.js +448 -448
  84. package/examples/PhoneSafePlan/comp.js +33 -33
  85. package/examples/PhoneSafePlan/index.html +17 -17
  86. package/examples/PhoneSafePlan/main.js +13 -13
  87. package/examples/SafePlan/App.vue +83 -83
  88. package/examples/SafePlan/TestData.js +448 -448
  89. package/examples/SafePlan/comp.js +1521 -1521
  90. package/examples/SafePlan/index.html +18 -18
  91. package/examples/SafePlan/main.js +13 -13
  92. package/examples/SafePlan-aode/App.vue +39 -39
  93. package/examples/SafePlan-aode/TestData.js +448 -448
  94. package/examples/SafePlan-aode/comp.js +1132 -1132
  95. package/examples/SafePlan-aode/index.html +17 -17
  96. package/examples/SafePlan-aode/main.js +13 -13
  97. package/examples/SafePlan-liaoyuan/App.vue +53 -53
  98. package/examples/SafePlan-liaoyuan/TestData.js +448 -448
  99. package/examples/SafePlan-liaoyuan/comp.js +1419 -1419
  100. package/examples/SafePlan-liaoyuan/index.html +18 -18
  101. package/examples/SafePlan-liaoyuan/main.js +13 -13
  102. package/examples/SafePlan-shaoguan/App.vue +52 -52
  103. package/examples/SafePlan-shaoguan/TestData.js +448 -448
  104. package/examples/SafePlan-shaoguan/comp.js +1190 -1190
  105. package/examples/SafePlan-shaoguan/index.html +18 -18
  106. package/examples/SafePlan-shaoguan/main.js +13 -13
  107. package/examples/SafePlan-tongchuan/App.vue +81 -81
  108. package/examples/SafePlan-tongchuan/TestData.js +448 -448
  109. package/examples/SafePlan-tongchuan/comp.js +1480 -1480
  110. package/examples/SafePlan-tongchuan/index.html +18 -18
  111. package/examples/SafePlan-tongchuan/main.js +13 -13
  112. package/examples/SafePlan-wenxi/App.vue +80 -80
  113. package/examples/SafePlan-wenxi/TestData.js +448 -448
  114. package/examples/SafePlan-wenxi/comp.js +1545 -1545
  115. package/examples/SafePlan-wenxi/index.html +18 -18
  116. package/examples/SafePlan-wenxi/main.js +13 -13
  117. package/examples/SafePlan-zhoukou/App.vue +81 -81
  118. package/examples/SafePlan-zhoukou/TestData.js +448 -448
  119. package/examples/SafePlan-zhoukou/comp.js +1525 -1525
  120. package/examples/SafePlan-zhoukou/index.html +18 -18
  121. package/examples/SafePlan-zhoukou/main.js +13 -13
  122. package/examples/SafePlanItem/App.vue +33 -33
  123. package/examples/SafePlanItem/TestData.js +448 -448
  124. package/examples/SafePlanItem/comp.js +69 -69
  125. package/examples/SafePlanItem/index.html +17 -17
  126. package/examples/SafePlanItem/main.js +15 -15
  127. package/examples/SafePlanrongcheng/App.vue +52 -52
  128. package/examples/SafePlanrongcheng/TestData.js +448 -448
  129. package/examples/SafePlanrongcheng/comp.js +1133 -1133
  130. package/examples/SafePlanrongcheng/index.html +18 -18
  131. package/examples/SafePlanrongcheng/main.js +13 -13
  132. package/examples/SafePlanrongcheng-gs/App.vue +52 -52
  133. package/examples/SafePlanrongcheng-gs/TestData.js +448 -448
  134. package/examples/SafePlanrongcheng-gs/comp.js +1132 -1132
  135. package/examples/SafePlanrongcheng-gs/index.html +18 -18
  136. package/examples/SafePlanrongcheng-gs/main.js +13 -13
  137. package/examples/SafePlanrongcheng-gssq/App.vue +52 -52
  138. package/examples/SafePlanrongcheng-gssq/TestData.js +448 -448
  139. package/examples/SafePlanrongcheng-gssq/comp.js +1135 -1135
  140. package/examples/SafePlanrongcheng-gssq/index.html +18 -18
  141. package/examples/SafePlanrongcheng-gssq/main.js +13 -13
  142. package/examples/SafePlanrongcheng-mysq/App.vue +52 -52
  143. package/examples/SafePlanrongcheng-mysq/TestData.js +448 -448
  144. package/examples/SafePlanrongcheng-mysq/comp.js +1136 -1136
  145. package/examples/SafePlanrongcheng-mysq/index.html +18 -18
  146. package/examples/SafePlanrongcheng-mysq/main.js +13 -13
  147. package/examples/Test/App.vue +35 -35
  148. package/examples/Test/TestData.js +489 -489
  149. package/examples/Test/index.html +17 -17
  150. package/examples/Test/main.js +13 -13
  151. package/examples/Test//350/216/267/345/217/226/345/217/230/351/207/217 +2 -2
  152. package/examples/UserFiles/App.vue +47 -47
  153. package/examples/UserFiles/TestData.js +448 -448
  154. package/examples/UserFiles/comp.js +227 -227
  155. package/examples/UserFiles/index.html +19 -19
  156. package/examples/UserFiles/main.js +13 -13
  157. package/home.html +16 -16
  158. package/index.html +23 -23
  159. package/oa.iml +8 -8
  160. package/package.json +1 -1
  161. package/publish.bat +7 -7
  162. package/release.bat +5 -5
  163. package/src/AndroidApp.vue +26 -26
  164. package/src/App.vue +27 -27
  165. package/src/Widget.vue +13 -13
  166. package/src/android-bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  167. package/src/android-bootstrap/less/.csscomb.json +304 -304
  168. package/src/android-bootstrap/less/.csslintrc +19 -19
  169. package/src/android-bootstrap/less/alerts.less +73 -73
  170. package/src/android-bootstrap/less/badges.less +66 -66
  171. package/src/android-bootstrap/less/bootstrap.less +56 -56
  172. package/src/android-bootstrap/less/breadcrumbs.less +26 -26
  173. package/src/android-bootstrap/less/button-groups.less +247 -247
  174. package/src/android-bootstrap/less/buttons.less +173 -173
  175. package/src/android-bootstrap/less/carousel.less +269 -269
  176. package/src/android-bootstrap/less/close.less +34 -34
  177. package/src/android-bootstrap/less/code.less +69 -69
  178. package/src/android-bootstrap/less/component-animations.less +33 -33
  179. package/src/android-bootstrap/less/dropdowns.less +216 -216
  180. package/src/android-bootstrap/less/forms.less +626 -626
  181. package/src/android-bootstrap/less/glyphicons.less +305 -305
  182. package/src/android-bootstrap/less/grid.less +84 -84
  183. package/src/android-bootstrap/less/input-groups.less +167 -167
  184. package/src/android-bootstrap/less/jumbotron.less +52 -52
  185. package/src/android-bootstrap/less/labels.less +64 -64
  186. package/src/android-bootstrap/less/list-group.less +141 -141
  187. package/src/android-bootstrap/less/media.less +66 -66
  188. package/src/android-bootstrap/less/mixins/alerts.less +14 -14
  189. package/src/android-bootstrap/less/mixins/background-variant.less +9 -9
  190. package/src/android-bootstrap/less/mixins/border-radius.less +18 -18
  191. package/src/android-bootstrap/less/mixins/buttons.less +69 -69
  192. package/src/android-bootstrap/less/mixins/center-block.less +7 -7
  193. package/src/android-bootstrap/less/mixins/clearfix.less +22 -22
  194. package/src/android-bootstrap/less/mixins/forms.less +90 -90
  195. package/src/android-bootstrap/less/mixins/gradients.less +59 -59
  196. package/src/android-bootstrap/less/mixins/grid-framework.less +92 -92
  197. package/src/android-bootstrap/less/mixins/grid.less +122 -122
  198. package/src/android-bootstrap/less/mixins/hide-text.less +21 -21
  199. package/src/android-bootstrap/less/mixins/image.less +33 -33
  200. package/src/android-bootstrap/less/mixins/labels.less +12 -12
  201. package/src/android-bootstrap/less/mixins/list-group.less +30 -30
  202. package/src/android-bootstrap/less/mixins/nav-divider.less +10 -10
  203. package/src/android-bootstrap/less/mixins/nav-vertical-align.less +9 -9
  204. package/src/android-bootstrap/less/mixins/opacity.less +8 -8
  205. package/src/android-bootstrap/less/mixins/pagination.less +24 -24
  206. package/src/android-bootstrap/less/mixins/panels.less +24 -24
  207. package/src/android-bootstrap/less/mixins/progress-bar.less +10 -10
  208. package/src/android-bootstrap/less/mixins/reset-filter.less +8 -8
  209. package/src/android-bootstrap/less/mixins/reset-text.less +18 -18
  210. package/src/android-bootstrap/less/mixins/resize.less +6 -6
  211. package/src/android-bootstrap/less/mixins/responsive-visibility.less +15 -15
  212. package/src/android-bootstrap/less/mixins/size.less +10 -10
  213. package/src/android-bootstrap/less/mixins/tab-focus.less +9 -9
  214. package/src/android-bootstrap/less/mixins/table-row.less +44 -44
  215. package/src/android-bootstrap/less/mixins/text-emphasis.less +9 -9
  216. package/src/android-bootstrap/less/mixins/text-overflow.less +8 -8
  217. package/src/android-bootstrap/less/mixins/vendor-prefixes.less +227 -227
  218. package/src/android-bootstrap/less/mixins.less +40 -40
  219. package/src/android-bootstrap/less/modals.less +151 -151
  220. package/src/android-bootstrap/less/navbar.less +660 -660
  221. package/src/android-bootstrap/less/navs.less +290 -290
  222. package/src/android-bootstrap/less/normalize.less +424 -424
  223. package/src/android-bootstrap/less/pager.less +76 -76
  224. package/src/android-bootstrap/less/pagination.less +89 -89
  225. package/src/android-bootstrap/less/panels.less +274 -274
  226. package/src/android-bootstrap/less/popovers.less +131 -131
  227. package/src/android-bootstrap/less/print.less +101 -101
  228. package/src/android-bootstrap/less/progress-bars.less +87 -87
  229. package/src/android-bootstrap/less/responsive-embed.less +35 -35
  230. package/src/android-bootstrap/less/responsive-utilities.less +194 -194
  231. package/src/android-bootstrap/less/scaffolding.less +161 -161
  232. package/src/android-bootstrap/less/tables.less +262 -262
  233. package/src/android-bootstrap/less/theme.less +291 -291
  234. package/src/android-bootstrap/less/thumbnails.less +36 -36
  235. package/src/android-bootstrap/less/tooltip.less +102 -102
  236. package/src/android-bootstrap/less/type.less +303 -303
  237. package/src/android-bootstrap/less/utilities.less +55 -55
  238. package/src/android-bootstrap/less/variables.less +896 -896
  239. package/src/android-bootstrap/less/wells.less +29 -29
  240. package/src/android.js +16 -16
  241. package/src/androidBase.js +177 -177
  242. package/src/androidTest.js +20 -20
  243. package/src/bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  244. package/src/bootstrap/less/.csscomb.json +304 -304
  245. package/src/bootstrap/less/.csslintrc +19 -19
  246. package/src/bootstrap/less/alerts.less +73 -73
  247. package/src/bootstrap/less/aofeng/animate.min.css +10 -10
  248. package/src/bootstrap/less/aofeng/standard.less +2121 -2121
  249. package/src/bootstrap/less/aofeng/themeOne/BinaryTemplate.less +686 -686
  250. package/src/bootstrap/less/aofeng/themeOne/loginStyle.less +1586 -1586
  251. package/src/bootstrap/less/aofeng/themeOne/systemStyle.less +2650 -2650
  252. package/src/bootstrap/less/aofeng/themeOne.less +14 -14
  253. package/src/bootstrap/less/aofeng/themeTwo/newStyle1.less +415 -415
  254. package/src/bootstrap/less/aofeng/themeTwo.less +3 -3
  255. package/src/bootstrap/less/badges.less +66 -66
  256. package/src/bootstrap/less/bootstrap.less +65 -65
  257. package/src/bootstrap/less/breadcrumbs.less +26 -26
  258. package/src/bootstrap/less/button-groups.less +247 -247
  259. package/src/bootstrap/less/buttons.less +172 -172
  260. package/src/bootstrap/less/carousel.less +269 -269
  261. package/src/bootstrap/less/close.less +34 -34
  262. package/src/bootstrap/less/code.less +69 -69
  263. package/src/bootstrap/less/component-animations.less +33 -33
  264. package/src/bootstrap/less/dropdowns.less +216 -216
  265. package/src/bootstrap/less/forms.less +626 -626
  266. package/src/bootstrap/less/glyphicons.less +305 -305
  267. package/src/bootstrap/less/grid.less +84 -84
  268. package/src/bootstrap/less/input-groups.less +167 -167
  269. package/src/bootstrap/less/jumbotron.less +52 -52
  270. package/src/bootstrap/less/labels.less +64 -64
  271. package/src/bootstrap/less/list-group.less +141 -141
  272. package/src/bootstrap/less/manageStyle/manageChile.less +180 -180
  273. package/src/bootstrap/less/manageStyle/manageStyle.less +1102 -1102
  274. package/src/bootstrap/less/manageStyle/safeStyle.less +498 -498
  275. package/src/bootstrap/less/media.less +66 -66
  276. package/src/bootstrap/less/mixins/alerts.less +14 -14
  277. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  278. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  279. package/src/bootstrap/less/mixins/buttons.less +69 -69
  280. package/src/bootstrap/less/mixins/center-block.less +7 -7
  281. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  282. package/src/bootstrap/less/mixins/forms.less +90 -90
  283. package/src/bootstrap/less/mixins/gradients.less +59 -59
  284. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  285. package/src/bootstrap/less/mixins/grid.less +122 -122
  286. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  287. package/src/bootstrap/less/mixins/image.less +33 -33
  288. package/src/bootstrap/less/mixins/labels.less +12 -12
  289. package/src/bootstrap/less/mixins/list-group.less +30 -30
  290. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  291. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  292. package/src/bootstrap/less/mixins/opacity.less +8 -8
  293. package/src/bootstrap/less/mixins/pagination.less +24 -24
  294. package/src/bootstrap/less/mixins/panels.less +24 -24
  295. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  296. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  297. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  298. package/src/bootstrap/less/mixins/resize.less +6 -6
  299. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  300. package/src/bootstrap/less/mixins/size.less +10 -10
  301. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  302. package/src/bootstrap/less/mixins/table-row.less +44 -44
  303. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  304. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  305. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  306. package/src/bootstrap/less/mixins.less +40 -40
  307. package/src/bootstrap/less/modals.less +151 -151
  308. package/src/bootstrap/less/navbar.less +660 -660
  309. package/src/bootstrap/less/navs.less +285 -285
  310. package/src/bootstrap/less/normalize.less +424 -424
  311. package/src/bootstrap/less/pager.less +76 -76
  312. package/src/bootstrap/less/pagination.less +89 -89
  313. package/src/bootstrap/less/panels.less +275 -275
  314. package/src/bootstrap/less/popovers.less +131 -131
  315. package/src/bootstrap/less/print.less +101 -101
  316. package/src/bootstrap/less/progress-bars.less +87 -87
  317. package/src/bootstrap/less/responsive-embed.less +35 -35
  318. package/src/bootstrap/less/responsive-utilities.less +194 -194
  319. package/src/bootstrap/less/scaffolding.less +161 -161
  320. package/src/bootstrap/less/stand.less +207 -207
  321. package/src/bootstrap/less/standard.less +503 -503
  322. package/src/bootstrap/less/systemStyle.less +860 -860
  323. package/src/bootstrap/less/tables.less +262 -262
  324. package/src/bootstrap/less/theme.less +291 -291
  325. package/src/bootstrap/less/themeOne.less +36 -36
  326. package/src/bootstrap/less/themeTwo.less +29 -29
  327. package/src/bootstrap/less/thumbnails.less +36 -36
  328. package/src/bootstrap/less/tooltip.less +102 -102
  329. package/src/bootstrap/less/type.less +303 -303
  330. package/src/bootstrap/less/utilities.less +55 -55
  331. package/src/bootstrap/less/variables.less +896 -896
  332. package/src/bootstrap/less/wells.less +29 -29
  333. package/src/components/AloneLoadParams.vue +25 -25
  334. package/src/components/CheckerCount/CheckCountAreaList.vue +306 -306
  335. package/src/components/CheckerCount/CheckCountAreaManage.vue +112 -112
  336. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  337. package/src/components/CheckerCount/ZhouKouCheckCount.vue +272 -272
  338. package/src/components/ExportExcel.vue +334 -334
  339. package/src/components/FileUpload.vue +696 -696
  340. package/src/components/Hello.vue +39 -39
  341. package/src/components/LeftTree.vue +27 -27
  342. package/src/components/Login.vue +459 -459
  343. package/src/components/Main.vue +393 -393
  344. package/src/components/Test.vue +1478 -1478
  345. package/src/components/Util/FileUpload.vue +138 -138
  346. package/src/components/Util/ImgSelfSafe.vue +126 -126
  347. package/src/components/Util/RightTreeSafe.vue +348 -348
  348. package/src/components/Util/SafecheckUpload.vue +265 -265
  349. package/src/components/Util.js +376 -376
  350. package/src/components/android/AddGas.vue +147 -147
  351. package/src/components/android/AddPlanItem.vue +412 -412
  352. package/src/components/android/AddressList.vue +61 -61
  353. package/src/components/android/AdviseCommit.vue +59 -59
  354. package/src/components/android/AndroidCheckResult.vue +181 -181
  355. package/src/components/android/AndroidDefectDeal.vue +397 -397
  356. package/src/components/android/Announcement.vue +167 -167
  357. package/src/components/android/AreaPlan.vue +503 -503
  358. package/src/components/android/AttendanceTally.vue +116 -116
  359. package/src/components/android/Blank.vue +10 -10
  360. package/src/components/android/CheckNotice.vue +89 -89
  361. package/src/components/android/CheckPlan.vue +257 -257
  362. package/src/components/android/CheckPlanDown.vue +216 -216
  363. package/src/components/android/CheckPlanItems.vue +423 -423
  364. package/src/components/android/CheckUnplanPage.vue +56 -56
  365. package/src/components/android/Checker.vue +12 -12
  366. package/src/components/android/CheckerAnnual.vue +81 -81
  367. package/src/components/android/CheckerAnnualDetail.vue +63 -63
  368. package/src/components/android/CheckerAvarta.vue +82 -82
  369. package/src/components/android/CheckerMonthly.vue +84 -84
  370. package/src/components/android/Checkpage.vue +102 -102
  371. package/src/components/android/CurrentCreate.vue +972 -972
  372. package/src/components/android/DailyworkloadQuery.vue +396 -396
  373. package/src/components/android/Defect.vue +119 -119
  374. package/src/components/android/DeviceDefect.vue +187 -187
  375. package/src/components/android/Devices.vue +327 -327
  376. package/src/components/android/DevicesItem.vue +495 -495
  377. package/src/components/android/DevicesItemm.vue +445 -445
  378. package/src/components/android/DevicesNoncivil.vue +214 -214
  379. package/src/components/android/Devicesm.vue +327 -327
  380. package/src/components/android/DoorService.vue +501 -501
  381. package/src/components/android/EquipmentInspection.vue +348 -348
  382. package/src/components/android/ExtractCheckPlan.vue +268 -268
  383. package/src/components/android/ExtractPlanItem.vue +516 -516
  384. package/src/components/android/FootprintMap.vue +120 -120
  385. package/src/components/android/HiddentroubleInvestigation.vue +192 -192
  386. package/src/components/android/LcheckUnplan.vue +108 -108
  387. package/src/components/android/LocalPagedList.js +108 -108
  388. package/src/components/android/LocalPathList.js +109 -109
  389. package/src/components/android/Login.vue +222 -222
  390. package/src/components/android/MasterMain.vue +77 -77
  391. package/src/components/android/Menu.vue +132 -132
  392. package/src/components/android/NavBottom.vue +157 -157
  393. package/src/components/android/PaperAlarm.vue +85 -85
  394. package/src/components/android/PaperAlarmNoncivil.vue +286 -286
  395. package/src/components/android/PaperCooker.vue +325 -325
  396. package/src/components/android/PaperDefect.vue +230 -230
  397. package/src/components/android/PaperDevice.vue +279 -279
  398. package/src/components/android/PaperDeviceNoncivil.vue +214 -214
  399. package/src/components/android/PaperFeedback.vue +1444 -1444
  400. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  401. package/src/components/android/PaperFurnace.vue +274 -274
  402. package/src/components/android/PaperFurnaceNoncivil.vue +203 -203
  403. package/src/components/android/PaperHeater.vue +287 -287
  404. package/src/components/android/PaperInnerPlumb.vue +171 -171
  405. package/src/components/android/PaperMessage.vue +1323 -1323
  406. package/src/components/android/PaperMessageNocivil.vue +1288 -1288
  407. package/src/components/android/PaperMeter.vue +351 -351
  408. package/src/components/android/PaperMeterNoncivil.vue +481 -481
  409. package/src/components/android/PaperPieceNoncivil.vue +142 -142
  410. package/src/components/android/PaperPlumb.vue +141 -141
  411. package/src/components/android/PaperPlumbNoncivil.vue +253 -253
  412. package/src/components/android/PaperSet.vue +1956 -1956
  413. package/src/components/android/PaperSetNoncivil.vue +1760 -1760
  414. package/src/components/android/PaperState.vue +390 -390
  415. package/src/components/android/PaperStateNoncivil.vue +383 -383
  416. package/src/components/android/PaperStateNoncivilm.vue +377 -377
  417. package/src/components/android/PaperStatem.vue +346 -346
  418. package/src/components/android/PaperUser.vue +606 -606
  419. package/src/components/android/PaperUserNoncivil.vue +424 -424
  420. package/src/components/android/PaperUserm.vue +356 -356
  421. package/src/components/android/PaperValve.vue +178 -178
  422. package/src/components/android/PaperValveNoncivil.vue +180 -180
  423. package/src/components/android/PhoneChangemeterInfo.vue +107 -107
  424. package/src/components/android/PhoneInfoTable.vue +40 -40
  425. package/src/components/android/PhoneSellInfo.vue +113 -113
  426. package/src/components/android/PhoneState.vue +157 -157
  427. package/src/components/android/PhoneUpUserinfo.vue +929 -929
  428. package/src/components/android/PhoneUserFind.vue +111 -111
  429. package/src/components/android/PlumberAnnual.vue +83 -83
  430. package/src/components/android/PlumberAnnualDetail.vue +65 -65
  431. package/src/components/android/PlumberMonthly.vue +84 -84
  432. package/src/components/android/PostMap.vue +83 -83
  433. package/src/components/android/PrearrangedPlan.vue +247 -247
  434. package/src/components/android/QueryCheckHistory.vue +122 -122
  435. package/src/components/android/QueryCheckHistoryItem.vue +62 -62
  436. package/src/components/android/RepairAreaList.vue +71 -71
  437. package/src/components/android/RepairList.vue +206 -206
  438. package/src/components/android/RepairMain.vue +60 -60
  439. package/src/components/android/RepairQuery.vue +262 -262
  440. package/src/components/android/Repairman.vue +12 -12
  441. package/src/components/android/ResAreaList.vue +158 -158
  442. package/src/components/android/RightTree.vue +174 -174
  443. package/src/components/android/SafecheckDevices.vue +1143 -1143
  444. package/src/components/android/SafecheckOrderV.vue +2408 -2408
  445. package/src/components/android/SafecheckState.vue +437 -437
  446. package/src/components/android/SafecheckUser.vue +580 -580
  447. package/src/components/android/ShebeiDevices.vue +980 -980
  448. package/src/components/android/StationMaster.vue +12 -12
  449. package/src/components/android/SwitchValve.vue +230 -230
  450. package/src/components/android/SystemSetting.vue +84 -84
  451. package/src/components/android/ToolsPage.vue +51 -51
  452. package/src/components/android/TrackState.vue +134 -134
  453. package/src/components/android/UploadPage.vue +338 -338
  454. package/src/components/android/checkPlanResult.vue +302 -302
  455. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  456. package/src/components/android/userinfo/SafecheckUserInfo.vue +611 -611
  457. package/src/components/android/wasm/PhoneSafePlan.vue +39 -39
  458. package/src/components/android/wasm/TestData.js +448 -448
  459. package/src/components/android/wasm/comp.js +33 -33
  460. package/src/components/attendance/DailyAttendance.vue +99 -99
  461. package/src/components/attendance/MonthlyAttendance.vue +194 -194
  462. package/src/components/callincheck/CallInCheckMain.vue +146 -146
  463. package/src/components/callincheck/CallInPlan.vue +148 -148
  464. package/src/components/callincheck/UserFileList.vue +155 -155
  465. package/src/components/checkAreaClassification.vue +285 -285
  466. package/src/components/checkerphonestate/Checker.vue +32 -32
  467. package/src/components/checkerphonestate/CheckerState.vue +97 -97
  468. package/src/components/checkplan/CheckDetail.vue +205 -205
  469. package/src/components/checkplan/CheckPlan.vue +59 -59
  470. package/src/components/checkplan/SelectCheckPlan.vue +224 -224
  471. package/src/components/checkplan/SelectMessage.vue +105 -105
  472. package/src/components/checkplan/checkmsg.vue +459 -459
  473. package/src/components/checkplan/checkmsgZG.vue +519 -519
  474. package/src/components/cockpit/Splash.vue +85 -85
  475. package/src/components/cockpit/SplashDetail.vue +66 -66
  476. package/src/components/createcheckplan/CreatePlan.vue +1052 -1052
  477. package/src/components/createcheckplan/CreatePlanWuan.vue +1024 -1024
  478. package/src/components/createcheckplan/DelPlanRepeat.vue +318 -318
  479. package/src/components/createcheckplan/DistributePlan.vue +62 -62
  480. package/src/components/createcheckplan/PlanList.vue +433 -433
  481. package/src/components/createcheckplan/PlanUersList.vue +137 -137
  482. package/src/components/defect/DefectDetail.vue +177 -177
  483. package/src/components/defect/DefectDetailWeixiu.vue +177 -177
  484. package/src/components/defect/DefectList.vue +489 -489
  485. package/src/components/defect/DefectListWeixiu.vue +479 -479
  486. package/src/components/defect/DefectMain.vue +63 -63
  487. package/src/components/defect/DefectMainWeixiu.vue +63 -63
  488. package/src/components/defect/DefectPaper.vue +874 -874
  489. package/src/components/defect/DefectPaperWeiXiu.vue +655 -655
  490. package/src/components/defect/ImageViewer.vue +350 -350
  491. package/src/components/defect/ImgButton.vue +118 -118
  492. package/src/components/defect/ImgsButton.vue +62 -62
  493. package/src/components/defects/AddDefectModal.vue +120 -120
  494. package/src/components/defects/AddDevice.vue +95 -95
  495. package/src/components/defects/CheckPaperItem.vue +92 -92
  496. package/src/components/defects/CheckPaperItems.vue +89 -89
  497. package/src/components/defects/CheckPaperSearch.vue +349 -349
  498. package/src/components/defects/CheckPaperSearchMain.vue +55 -55
  499. package/src/components/defects/DefectCondition.vue +180 -180
  500. package/src/components/defects/DefectModal.vue +101 -101
  501. package/src/components/defects/DefectSeting.vue +98 -98
  502. package/src/components/defects/DefectsQuery.vue +190 -190
  503. package/src/components/defects/DevicesAndItem.vue +39 -39
  504. package/src/components/defects/DevicesSeting.vue +106 -106
  505. package/src/components/equipment/BoilerUsage.vue +105 -105
  506. package/src/components/equipment/CheckRate.vue +324 -324
  507. package/src/components/equipment/CheckerRate.vue +333 -333
  508. package/src/components/equipment/CookerUsage.vue +105 -105
  509. package/src/components/equipment/DeviceUsage.vue +105 -105
  510. package/src/components/equipment/FurnaceUsage.vue +105 -105
  511. package/src/components/equipment/GasMeterUsage.vue +109 -109
  512. package/src/components/equipment/HeaterUsage.vue +105 -105
  513. package/src/components/equipment/MonthCheckRate.vue +340 -340
  514. package/src/components/filialCircle/AddCircleFiliale.vue +114 -114
  515. package/src/components/filialCircle/CircleList.vue +139 -139
  516. package/src/components/filialCircle/CircleManage.vue +69 -69
  517. package/src/components/gasusage/GasUsage.vue +126 -126
  518. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  519. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  520. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  521. package/src/components/inspections/Checked.vue +402 -402
  522. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  523. package/src/components/inspections/InsUploadPage.vue +251 -251
  524. package/src/components/inspections/InspectionList.vue +542 -542
  525. package/src/components/inspections/InspectionLists.vue +544 -544
  526. package/src/components/inspections/InspectionListss.vue +544 -544
  527. package/src/components/inspections/inspectionDevices.vue +986 -986
  528. package/src/components/inspections/inspectionFeedback.vue +720 -720
  529. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  530. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  531. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  532. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  533. package/src/components/issueplan/IssuePlanAction.vue +102 -102
  534. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  535. package/src/components/issueplan/IssuePlanQuery.vue +118 -118
  536. package/src/components/json-editor/SafeJsonEditor.vue +212 -212
  537. package/src/components/json-editor/assets/img/jsoneditor-icons.svg +893 -893
  538. package/src/components/json-editor/assets/jsoneditor-minimalist.js +9750 -9750
  539. package/src/components/json-editor/assets/jsoneditor.css +929 -929
  540. package/src/components/json-editor/assets/jsoneditor.js +36376 -36376
  541. package/src/components/json-editor/example/App.vue +53 -53
  542. package/src/components/json-editor/example/index.html +9 -9
  543. package/src/components/json-editor/example/main.js +10 -10
  544. package/src/components/json-editor/package.json +71 -71
  545. package/src/components/json-editor/vue-json-editor.vue +189 -189
  546. package/src/components/levelplan/AdjustPlan.vue +199 -199
  547. package/src/components/levelplan/CheckerLeft.vue +140 -140
  548. package/src/components/levelplan/CheckerPlanAdjust.vue +304 -304
  549. package/src/components/levelplan/CheckerRight.vue +123 -123
  550. package/src/components/map/AMap.vue +70 -70
  551. package/src/components/map/AMapTrailShow.vue +178 -178
  552. package/src/components/map/AMapTrailShowZk.vue +178 -178
  553. package/src/components/map/FootPrintList.vue +45 -45
  554. package/src/components/map/MapCriteriaData.vue +97 -97
  555. package/src/components/map/checkScreen.vue +727 -727
  556. package/src/components/metterfiles/AddUserfiles.vue +246 -246
  557. package/src/components/metterfiles/MetterFiles.vue +104 -104
  558. package/src/components/metterfiles/MetterfilesAdd.vue +168 -168
  559. package/src/components/metterfiles/MetterfilesChange.vue +162 -162
  560. package/src/components/metterfiles/UserFiles.vue +156 -156
  561. package/src/components/metterfiles/Userfileschange.vue +391 -391
  562. package/src/components/notice/NoticeForm.vue +100 -100
  563. package/src/components/notice/NoticeIssue.vue +20 -20
  564. package/src/components/notice/NoticeQuery.vue +76 -76
  565. package/src/components/paper/PaperList.vue +806 -806
  566. package/src/components/paper/PaperVerify.vue +256 -256
  567. package/src/components/paper/PicViewer.vue +18 -18
  568. package/src/components/paper/PlanChooser.vue +159 -159
  569. package/src/components/paper/RepairVerify.vue +139 -139
  570. package/src/components/paper/RepairVerifyForm.vue +76 -76
  571. package/src/components/paper/VerifyForm.vue +107 -107
  572. package/src/components/paper/filialeCheckInfo.vue +111 -111
  573. package/src/components/pc/AnnouncementPC.vue +524 -524
  574. package/src/components/pc/CheckBook.vue +67 -67
  575. package/src/components/pc/CheckBookList.vue +586 -586
  576. package/src/components/pc/CheckBookManage.vue +998 -998
  577. package/src/components/pc/CheckBookUser.vue +77 -77
  578. package/src/components/pc/DeviceChange.vue +1068 -1068
  579. package/src/components/pc/HiddenChart.vue +494 -494
  580. package/src/components/pc/NewCheckpaper.vue +1333 -1333
  581. package/src/components/pc/PaperChazhiMain.vue +570 -570
  582. package/src/components/pc/PaperDefectMain.vue +584 -584
  583. package/src/components/pc/RoleSelector.vue +125 -125
  584. package/src/components/phonestate/DailyTraffic.vue +57 -57
  585. package/src/components/phonestate/FootprintMap.vue +129 -129
  586. package/src/components/phonestate/LastKnownState.vue +74 -74
  587. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  588. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  589. package/src/components/phonestate/PostMap.vue +82 -82
  590. package/src/components/plancheck/CheckPlanAreaManage.vue +116 -116
  591. package/src/components/plancheck/CheckPlanList.vue +282 -282
  592. package/src/components/planmanage/PlanManage.vue +782 -782
  593. package/src/components/planmanage/checkPlanList.vue +341 -341
  594. package/src/components/planmanage/checkUserList.vue +728 -728
  595. package/src/components/querycheckpaper/CheckPaperList.vue +127 -127
  596. package/src/components/querycheckpaper/CheckPaperSearchUser.vue +67 -67
  597. package/src/components/querycheckpaper/CheckSearchUser.vue +1037 -1037
  598. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  599. package/src/components/querycheckpaper/PaperItems.vue +79 -79
  600. package/src/components/querycheckpaper/PaperSearch.vue +126 -126
  601. package/src/components/querycheckpaper/PaperSearchMain.vue +56 -56
  602. package/src/components/querycheckpaper/ShebeiPaperList.vue +121 -121
  603. package/src/components/querycheckpaper/ShebeiPaperSearchUser.vue +67 -67
  604. package/src/components/querycheckpaper/ShebeiSearchUser.vue +690 -690
  605. package/src/components/report/CheckPlanAreaList.vue +5 -0
  606. package/src/components/report/CheckPlanAreaManage.vue +111 -111
  607. package/src/components/report/CheckPlanUserList.vue +217 -217
  608. package/src/components/report/HiddenSituation.vue +210 -210
  609. package/src/components/report/ManageBusSummary.vue +242 -242
  610. package/src/components/report/SafePlanSale.vue +111 -111
  611. package/src/components/report/SafePlanStatistics.vue +118 -118
  612. package/src/components/rongcheng/AddPlanItem.vue +315 -315
  613. package/src/components/rongcheng/AreaPlan.vue +470 -470
  614. package/src/components/rongcheng/AspPaperFeedback.vue +1179 -1179
  615. package/src/components/rongcheng/AspPaperStatem.vue +339 -339
  616. package/src/components/rongcheng/AspiratedAreaPlan.vue +464 -464
  617. package/src/components/rongcheng/AspiratedCurrentCreate.vue +1036 -1036
  618. package/src/components/rongcheng/AspiratedDevices.vue +966 -966
  619. package/src/components/rongcheng/AspiratedOrderV.vue +2376 -2376
  620. package/src/components/rongcheng/AspiratedPaperFeedbackm.vue +1019 -1019
  621. package/src/components/rongcheng/AspiratedPaperMessage.vue +1378 -1378
  622. package/src/components/rongcheng/AspiratedPaperMessageNocivil.vue +1288 -1288
  623. package/src/components/rongcheng/AspiratedUploadPage.vue +293 -293
  624. package/src/components/rongcheng/AspiratedUserInfo.vue +399 -399
  625. package/src/components/rongcheng/CheckCurrentCreate.vue +1046 -1046
  626. package/src/components/rongcheng/CheckPaperList.vue +134 -134
  627. package/src/components/rongcheng/CheckPaperSearchUser.vue +55 -55
  628. package/src/components/rongcheng/CheckPaperSearchUserNo.vue +55 -55
  629. package/src/components/rongcheng/CheckSearchUser.vue +826 -826
  630. package/src/components/rongcheng/CheckSearchUserNo.vue +757 -757
  631. package/src/components/rongcheng/DefectList.vue +560 -560
  632. package/src/components/rongcheng/DefectPaper.vue +638 -638
  633. package/src/components/rongcheng/PaperFeedback.vue +1318 -1318
  634. package/src/components/rongcheng/PaperListAJ.vue +501 -501
  635. package/src/components/rongcheng/PaperListNPAJ.vue +498 -498
  636. package/src/components/rongcheng/PaperListNPSQ.vue +485 -485
  637. package/src/components/rongcheng/PaperListSQ.vue +483 -483
  638. package/src/components/rongcheng/PaperMessage.vue +1186 -1186
  639. package/src/components/rongcheng/PaperMessageNocivil.vue +1211 -1211
  640. package/src/components/rongcheng/PaperStateNoncivilm.vue +366 -366
  641. package/src/components/rongcheng/PaperStatem.vue +343 -343
  642. package/src/components/rongcheng/PhoneDevicesInfo.vue +233 -233
  643. package/src/components/rongcheng/SafecheckDevices.vue +998 -998
  644. package/src/components/rongcheng/SafecheckOrderV.vue +2476 -2476
  645. package/src/components/rongcheng/SafecheckOrderVCli.vue +2594 -2594
  646. package/src/components/rongcheng/SafecheckUserInfo.vue +439 -439
  647. package/src/components/rongcheng/UploadPage.vue +328 -328
  648. package/src/components/rongcheng/checkerplan/SelectCheckPlan.vue +285 -285
  649. package/src/components/rongcheng/report/CheckPlanAreaList.vue +419 -419
  650. package/src/components/rongcheng/report/CheckPlanUserList.vue +228 -228
  651. package/src/components/safecheck/common/TabButton.vue +157 -157
  652. package/src/components/safecheck/common/Tabs.vue +67 -67
  653. package/src/components/safecheck/queryManage/CheckBookAll.vue +71 -71
  654. package/src/components/safecheck/queryManage/SafeCheckManage.vue +88 -88
  655. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  656. package/src/components/sendsingle/onlineChangeMeter.vue +658 -658
  657. package/src/components/sendsingle/onlineoperation.vue +411 -411
  658. package/src/components/sendsingle/onlinequeryuser.vue +363 -363
  659. package/src/components/shaoguan/CheckPlanUserList.vue +119 -119
  660. package/src/components/shaoguan/DefectDetail.vue +177 -177
  661. package/src/components/shaoguan/DefectList.vue +473 -473
  662. package/src/components/shaoguan/DefectMain.vue +53 -53
  663. package/src/components/shaoguan/DefectPaper.vue +217 -217
  664. package/src/components/shaoguan/PaperList.vue +533 -533
  665. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  666. package/src/components/task/RepairAnnual.vue +79 -79
  667. package/src/components/task/RepairAnnualDetail.vue +49 -49
  668. package/src/components/task/RepairMonthly.vue +91 -91
  669. package/src/components/task/TaskAnnual.vue +77 -77
  670. package/src/components/task/TaskAnnualDetail.vue +47 -47
  671. package/src/components/task/TaskMonthly.vue +89 -89
  672. package/src/components/tongcheng/AreaPlan.vue +458 -458
  673. package/src/components/tongcheng/CurrentCreate.vue +625 -625
  674. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  675. package/src/components/tongcheng/PaperMessage.vue +1270 -1270
  676. package/src/components/tongcheng/PaperMessageNocivil.vue +1228 -1228
  677. package/src/components/tongcheng/PaperSet.vue +1958 -1958
  678. package/src/components/tongcheng/PaperUser.vue +533 -533
  679. package/src/components/userfile/InfoModifyModal.vue +122 -122
  680. package/src/components/userfile/MeterFile.vue +145 -145
  681. package/src/components/userfile/MeterModify.vue +46 -46
  682. package/src/components/userfile/UserFile.vue +118 -118
  683. package/src/components/userfile/UserInfoAudit.vue +252 -252
  684. package/src/components/userfile/UserfileChange.vue +277 -277
  685. package/src/components/userfile/UserinfoModify.vue +117 -117
  686. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  687. package/src/components/userfileaudit/UserFileaudit.vue +81 -81
  688. package/src/components/userfileaudit/UserfileChangeaudit.vue +239 -239
  689. package/src/expandcss.less +571 -571
  690. package/src/expandcssAndroid.less +520 -520
  691. package/src/filiale/ALshan/pc/CheckSearchUser.vue +927 -927
  692. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +473 -473
  693. package/src/filiale/ALshan/pc.js +15 -15
  694. package/src/filiale/Util.js +325 -325
  695. package/src/filiale/huatong/android/SafecheckDevices.vue +928 -928
  696. package/src/filiale/huatong/android/SafecheckOrderV.vue +2398 -2398
  697. package/src/filiale/huatong/android.js +14 -14
  698. package/src/filiale/huatong/pc.js +13 -13
  699. package/src/filiale/liaoyuan/android/SafecheckDevices.vue +928 -928
  700. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2383 -2383
  701. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +550 -550
  702. package/src/filiale/liaoyuan/android.js +14 -14
  703. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +483 -483
  704. package/src/filiale/liaoyuan/pc/DefectPaperWeiXiu.vue +975 -975
  705. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  706. package/src/filiale/liaoyuan/pc/PaperList.vue +657 -657
  707. package/src/filiale/liaoyuan/pc.js +15 -15
  708. package/src/filiale/lixian/android/SafecheckDevices.vue +1022 -1022
  709. package/src/filiale/lixian/android/SafecheckOrderV.vue +2403 -2403
  710. package/src/filiale/lixian/android/SafecheckUserInfo.vue +586 -586
  711. package/src/filiale/lixian/android.js +14 -14
  712. package/src/filiale/lixian/pc/CheckPlanAreaList.vue +461 -461
  713. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  714. package/src/filiale/lixian/pc/PaperChazhiMain.vue +607 -607
  715. package/src/filiale/lixian/pc/PaperDefectMain.vue +617 -617
  716. package/src/filiale/lixian/pc/PaperList.vue +686 -686
  717. package/src/filiale/lixian/pc.js +22 -22
  718. package/src/filiale/rongchuang/pc/checkUserList.vue +594 -594
  719. package/src/filiale/rongchuang/pc.js +13 -13
  720. package/src/filiale/shimen/android/CurrentCreate.vue +979 -979
  721. package/src/filiale/shimen/android/PaperFeedback.vue +1341 -1341
  722. package/src/filiale/shimen/android/PhoneSellInfo.vue +88 -88
  723. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  724. package/src/filiale/shimen/android.js +12 -12
  725. package/src/filiale/shimen/pc/CheckPlanAreaList.vue +463 -463
  726. package/src/filiale/shimen/pc/CheckSearchUser.vue +927 -927
  727. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  728. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  729. package/src/filiale/shimen/pc/PaperDefectMain.vue +656 -656
  730. package/src/filiale/shimen/pc/PaperList.vue +613 -613
  731. package/src/filiale/shimen/pc/checkmsg.vue +248 -248
  732. package/src/filiale/shimen/pc.js +21 -21
  733. package/src/filiale/tongchuan/android/PaperFeedback.vue +1350 -1350
  734. package/src/filiale/tongchuan/android/SafecheckDevices.vue +1112 -1112
  735. package/src/filiale/tongchuan/android/SafecheckOrderV.vue +2575 -2575
  736. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +640 -640
  737. package/src/filiale/tongchuan/android/UploadPage.vue +285 -285
  738. package/src/filiale/tongchuan/android.js +13 -13
  739. package/src/filiale/tongchuan/pc/CheckPlanUserList.vue +245 -245
  740. package/src/filiale/tongchuan/pc/CheckSearchUser.vue +956 -956
  741. package/src/filiale/tongchuan/pc/DefectPaper.vue +764 -764
  742. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +509 -509
  743. package/src/filiale/tongchuan/pc/NewCheckpaper.vue +1267 -1267
  744. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +634 -634
  745. package/src/filiale/tongchuan/pc/PaperList.vue +677 -677
  746. package/src/filiale/tongchuan/pc/checkUserList.vue +593 -593
  747. package/src/filiale/tongchuan/pc.js +21 -21
  748. package/src/filiale/wenxi/android/CurrentCreate.vue +1047 -1047
  749. package/src/filiale/wenxi/android/PaperFeedback.vue +1378 -1378
  750. package/src/filiale/wenxi/android/SafecheckDevices.vue +1053 -1053
  751. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2472 -2472
  752. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +584 -584
  753. package/src/filiale/wenxi/android/UploadPage.vue +285 -285
  754. package/src/filiale/wenxi/android.js +14 -14
  755. package/src/filiale/wenxi/pc/DefectPaper.vue +662 -662
  756. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1169 -1169
  757. package/src/filiale/wenxi/pc/PaperDefectMain.vue +634 -634
  758. package/src/filiale/wenxi/pc/PaperList.vue +860 -860
  759. package/src/filiale/wenxi/pc/checkmsg.vue +302 -302
  760. package/src/filiale/wenxi/pc.js +16 -16
  761. package/src/filiale/wuan/android/AreaPlan.vue +513 -513
  762. package/src/filiale/wuan/android/CurrentCreate.vue +985 -985
  763. package/src/filiale/wuan/android/CurrentCreateSheBei.vue +999 -999
  764. package/src/filiale/wuan/android/SafecheckDevices.vue +1150 -1150
  765. package/src/filiale/wuan/android/SafecheckOrderV.vue +2237 -2237
  766. package/src/filiale/wuan/android/SafecheckUserInfo.vue +571 -571
  767. package/src/filiale/wuan/android.js +17 -17
  768. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  769. package/src/filiale/wuan/pc/DefectPaperWeiXiu.vue +514 -514
  770. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  771. package/src/filiale/wuan/pc/PaperList.vue +628 -628
  772. package/src/filiale/wuan/pc.js +19 -19
  773. package/src/filiale/wuhai/android/AreaPlan.vue +529 -529
  774. package/src/filiale/wuhai/android/PaperFeedback.vue +1350 -1350
  775. package/src/filiale/wuhai/android.js +12 -12
  776. package/src/filiale/wuhai/pc/checkUserList.vue +594 -594
  777. package/src/filiale/wuhai/pc.js +13 -13
  778. package/src/filiale/zhongsheng/android/PaperFeedback.vue +1341 -1341
  779. package/src/filiale/zhongsheng/android/PhoneUpUserinfo.vue +926 -926
  780. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2447 -2447
  781. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +591 -591
  782. package/src/filiale/zhongsheng/android.js +17 -17
  783. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  784. package/src/filiale/zhongsheng/pc/DefectPaperWeiXiu.vue +511 -511
  785. package/src/filiale/zhongsheng/pc/InfoModifyModal.vue +123 -123
  786. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1308 -1308
  787. package/src/filiale/zhongsheng/pc/UserInfoAudit.vue +252 -252
  788. package/src/filiale/zhongsheng/pc/UserinfoModify.vue +121 -121
  789. package/src/filiale/zhongsheng/pc.js +15 -15
  790. package/src/filiale/zhoukou/android/AndroidDefectDeal.vue +408 -408
  791. package/src/filiale/zhoukou/android/AreaPlan.vue +543 -543
  792. package/src/filiale/zhoukou/android/CurrentCreate.vue +1014 -1014
  793. package/src/filiale/zhoukou/android/PaperFeedback.vue +1367 -1367
  794. package/src/filiale/zhoukou/android/PhoneUpUserinfo.vue +957 -957
  795. package/src/filiale/zhoukou/android/SafecheckDevices.vue +1174 -1174
  796. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  797. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  798. package/src/filiale/zhoukou/android/UploadPage.vue +301 -301
  799. package/src/filiale/zhoukou/android.js +18 -18
  800. package/src/filiale/zhoukou/pc/CheckSearchUser.vue +923 -923
  801. package/src/filiale/zhoukou/pc/PaperDefectMain.vue +531 -531
  802. package/src/filiale/zhoukou/pc.js +15 -15
  803. package/src/index.js +17 -17
  804. package/src/main.js +4 -4
  805. package/src/plugins/EmojiData.js +514 -514
  806. package/src/plugins/GerJsonConfig.js +59 -59
  807. package/src/plugins/GerJsonObjectConfig.js +44 -44
  808. package/src/plugins/LoadData.js +10 -10
  809. package/src/plugins/LoadParams.js +24 -24
  810. package/src/plugins/LocalPagedList.js +108 -108
  811. package/src/plugins/LocalPathList.js +109 -109
  812. package/src/rongcheng-android.js +193 -193
  813. package/src/rongcheng.js +304 -304
  814. package/src/safecheck-android.js +225 -225
  815. package/src/safecheck.js +723 -723
  816. package/src/shaoguan-android.js +176 -176
  817. package/src/shaoguan.js +276 -276
  818. package/src/stores/AppData.js +46 -46
  819. package/src/stores/wxconfig.js +10 -10
  820. package/src/tongchengsafe-android.js +162 -162
  821. package/src/tongchengsafecheck.js +267 -267
  822. package/src/utils/GerJsonObjectConfig.js +51 -51
  823. package/src/utils/LdapHelper.js +99 -99
  824. package/src/utils/getNowDate.js +33 -33
  825. package/test/SearchList.test.js +14 -14
  826. package/test/e2e/custom-assertions/elementCount.js +26 -26
  827. package/test/e2e/nightwatch.conf.js +40 -40
  828. package/test/e2e/runner.js +30 -30
  829. package/test/e2e/specs/test.js +13 -13
  830. package/test/unit/.eslintrc +5 -5
  831. package/test/unit/TestUtil.js +62 -62
  832. package/test/unit/context.html +20 -20
  833. package/test/unit/index.js +13 -13
  834. package/test/unit/init.js +11 -11
  835. package/test/unit/karma.conf.js +53 -53
  836. package/test/unit/specs/Devices.spec.js +18 -18
  837. package/test/unit/specs/getArrobjconfig.spec.js +104 -104
  838. package/test/unit/specs/getobjconfig.spec.js +37 -37
  839. package/test/unit/specs/phonetest/phonesafecheck.spec.js +23 -23
  840. package/test/unit/specs/safePlanItem.spec.js +30 -30
  841. package/test/unit/specs/safecheck-android.spec.js +7 -7
  842. package/test/unit/specs/safecheck.spec.js +127 -127
  843. package/yarn-error.log +140 -140
@@ -1,1323 +1,1323 @@
1
- <style scoped>
2
- .divmask {
3
- pointer-events: none;
4
- }
5
- .app-header {
6
- border-radius: 50%;
7
- background: rgba(73, 158, 223, 0.4);
8
- color: #FFF;
9
- padding: 20px;
10
- text-align: center;
11
- font-size: 1.2em;
12
- z-index: 10;
13
- opacity:0.5;
14
- bottom: 50px;
15
- margin-top: -20px;
16
- position: absolute;
17
- top: 10%;
18
- right: 2%;
19
- height: 8%;
20
- }
21
- </style>
22
-
23
- <template>
24
- <div style="overflow-y: scroll;background-color: #FFFFFF">
25
- <div class="auto" style="height:auto;" id="safecheck" v-if="isshow">
26
- <div class="page-header app-header auto">
27
- <div @click="back()">
28
- <img src="../../assets/back.png"/>
29
- </div>
30
- </div>
31
- <div style="width: 50%;height: 462px; margin-left: 20px;margin-top: 0px;margin-bottom: 20px;float:left" id="one">
32
- <paper-userm></paper-userm>
33
- </div>
34
- <div style="width: 45%;height: 462px; margin-left: 20px;margin-top: 0px;margin-bottom: 20px;float:left">
35
- <paper-statem></paper-statem>
36
- </div>
37
- <div style="width: 95%;height: auto;margin-left: 20px;margin-bottom: 30px;float: left">
38
- <devicesm> </devicesm>
39
- </div>
40
- <div style="width: 95%;height: 900px;margin-left: 20px;float: left;">
41
- <paper-feedbackm v-bind:paper="this.data" ></paper-feedbackm>
42
- </div>
43
- </div>
44
- </div>
45
- </template>
46
-
47
- <script>
48
- import PaperUserm from './PaperUserm'
49
- import PaperStatem from './PaperStatem'
50
- import Devicesm from './Devicesm'
51
- import PaperFeedbackm from './PaperFeedbackm'
52
- import RadioGroup from 'vue-client/src/vue-strap/src/radioGroup'
53
- import Radio from 'vue-client/src/vue-strap/src/radioBtn'
54
- import Vue from 'vue'
55
- import * as Util from '../Util'
56
-
57
- export default {
58
- title: '安检单',
59
- props: ['f_plan_id', 'item', 'role'],
60
- data() {
61
- return {
62
- data: {
63
- f_devices: [],
64
- f_defect_content:''
65
- },
66
- isshow:false,
67
- isUpload:false,
68
- livedispose:'',
69
- startClick:false, //开始安检按钮是否可点击
70
- isStrat: false, //是否开始安检
71
- checkResult:{},//查询结果
72
- newcheckResult:{},
73
- timer: null,
74
- showModal: false,
75
- pic_to_be_viewed: '',
76
- showBack:true,
77
- devices: [],
78
- f_devices : [],
79
- isToRepair:false,
80
- isSafeCheckToRepair:false,//是否转维修
81
- config: {
82
- "燃气表":{
83
- "checkmust":true,
84
- "index":1,
85
- "items":{
86
- //"燃气表照片":{"index":1,"type":"picture","remark":"(拍摄清晰的表具编号、字轮数、剩余气量等)"},
87
- "基表编号":{"index":1,"type":"string","readonly":true},
88
- "气表型号":{"index":2,"type":"string","readonly":true},
89
- "气表品牌":{"index":3,"type":"string","readonly":true},
90
- "进气方向":{"index":4,"type":"string","readonly":true},
91
- "初始表底":{"index":5,"type":"number","isshow":false,"readonly":true},
92
- "上期表读数":{"index":6,"type":"number","readonly":true,isshow:false},
93
- "累购气量":{"index":7,"type":"number","readonly":true},
94
- "累购金额":{"index":7,"type":"number","readonly":true},
95
- "已用气量":{"index":8,"type":"number","checkmust": true},//基表数
96
- "已用金额":{"index":8,"type":"number","checkmust": true},
97
- "剩余气量":{"index":9,"type":"number","checkmust": true},//累购-已用
98
- //显示屏数 --实际剩余气量
99
- "剩余金额":{"index":9,"type":"number","checkmust": true},
100
- "气量异常差值":{"index":10,"type":"number","readonly": true},
101
- "金额异常差值":{"index":10,"type":"number","readonly": true}
102
- }
103
- // 注意,配置项的index必须与上面的固定配置保持'顺序'
104
- }
105
- }
106
- }
107
- },
108
- components: {
109
- RadioGroup,
110
- Radio,
111
- "paper-userm":PaperUserm,
112
- "paper-statem":PaperStatem,
113
- "devicesm":Devicesm,
114
- "paper-feedbackm":PaperFeedbackm
115
- },
116
- computed: {
117
- selector: {
118
- get() {
119
- return 'paper-state'
120
- },
121
- set(val) {
122
- if(this.isStrat){
123
- debugger;
124
- this.$goto(val, {userinfo:this.data}, 'paper-router')
125
- }else{
126
- this.$showMessage('未开始安检!')
127
- }
128
- }
129
- },
130
- actionEnabled: {
131
- get() {
132
- return this.role == 'inspect'
133
- }
134
- }
135
- },
136
- methods: {
137
- back(){
138
- if (this.role == 'inspect') {
139
- if(!this.isStrat){
140
- this.$back()
141
- return
142
- }else{
143
- this.savePaper(true).then(()=>{
144
- this.$back()
145
- this.isStrat = false
146
- })
147
- }
148
- }else{
149
- this.$back()
150
- }
151
- },
152
- checkIsStart(){
153
- alert('asdad')
154
- return
155
- },
156
- viewPic(fileName) {
157
- console.log('view pic: ' + fileName)
158
- if(this.role == 'view') {
159
- if(!fileName.endsWith('nopic.png')) {
160
- this.pic_to_be_viewed = fileName
161
- this.showModal = true
162
- }
163
- } else {
164
- HostApp.viewPic(fileName)
165
- }
166
- },
167
- tick() {
168
- this.timer = null
169
- this.data.f_offsite_time = Util.toStandardTimeString()
170
- this.timer = window.setTimeout(this.tick, 1000)
171
- },
172
- getRepairState() {
173
- let repaired = true
174
- this.data.f_defects.forEach((defect) => {
175
- repaired = repaired & (defect.f_ratification == '已处理')
176
- })
177
- return repaired
178
- },
179
- verifyRepairDefects() {
180
- this.data.f_repair_date = Util.toStandardTimeString()
181
- this.data.f_repaired = this.getRepairState() ? '已修' : '在修'
182
- },
183
- async savePaper(saveOnly) {
184
- console.log('savePaper-->isUpload'+this.isUpload)
185
- console.log('保存')
186
- if(this.role == 'repair') {
187
- let errorMsg = this.verifyRepairDefects()
188
- if(errorMsg) {
189
- this.$showMessage(errorMsg)
190
- return false
191
- }
192
- return this.save()
193
- } else {
194
- //保存时做校验
195
- let errString = this.errorVerify()
196
- if(saveOnly){
197
- if (errString) {
198
- this.data.f_complete = '未完成'
199
- this.disableTimer()
200
- return this.save()
201
- } else {
202
- console.log('赋值前',this.data)
203
- if(!this.data.f_offsite_time){
204
- this.$set('data.f_offsite_time', Util.toStandardTimeString())
205
- }
206
- console.log('赋值后',this.data)
207
- this.data.f_complete = '已完成'
208
- this.disableTimer()
209
- return this.save()
210
- }
211
- }else {
212
- console.log('errString-->isUpload'+this.isUpload)
213
- if (errString) {
214
- console.log(errString)
215
- console.log('Vue.android',Vue.android)
216
- console.log('this.isUpload',this.isUpload)
217
- if (Vue.android){
218
- // if(this.isUpload){
219
- // this.isUpload = false
220
- // }
221
- this.$showMessage(errString)
222
- }
223
- return false
224
- } else {
225
- if(!this.data.f_offsite_time){
226
- this.$set('data.f_offsite_time', Util.toStandardTimeString())
227
- }
228
- console.log('赋值后',this.data)
229
- this.data.f_complete = '已完成'
230
- this.disableTimer()
231
- return this.uploadCheckPaper()
232
- }
233
- }
234
- }
235
- },
236
- genuineSave(saveOnly) {
237
- HostApp.__this__.save(saveOnly)
238
- if(!saveOnly)
239
- HostApp.__this__.disableTimer()
240
- HostApp.__callback__ = null
241
- HostApp.__this__ = null
242
- },
243
- uploadPaper() {
244
- // this.isUpload = true
245
- console.log('uploadPaper-->isUpload'+this.isUpload)
246
- this.savePaper(false).then((res) => {
247
- console.log(`res=${res}`)
248
- // console.log(`改变前this.isUpload=${this.isUpload}`)
249
- // this.isUpload = false
250
- // console.log(`改变后this.isUpload=${this.isUpload}`)
251
- if(res != true){
252
- console.log('失败')
253
- return
254
- }else{
255
- this.$back()
256
- }
257
- })
258
- },
259
- errorVerify() {
260
- let hasError = this.verifyState()
261
- if(hasError)
262
- return hasError
263
-
264
- if(this.data.f_entry_status != '入户')
265
- return null
266
- hasError = this.verifyUser()
267
- if(hasError)
268
- return hasError
269
- hasError = this.verifyDevices()
270
- if(hasError)
271
- return hasError
272
- hasError = this.verifyFeedback()
273
- if(hasError)
274
- return hasError
275
- },
276
- verifyState() {
277
- if(Vue.android && this.data.f_entry_status == '未使用天然气' && this.data.f_nongasuser_path == Vue.nopic)
278
- return '未使用天然气则必须拍照'
279
- if(Vue.android && this.data.f_entry_status == '到访不遇' && this.data.f_noanswer_path == Vue.nopic)
280
- return '到访不遇必须拍照'
281
- },
282
- verifyUser() {
283
- let prefix = '用户基本信息:'
284
- if(Util.required(this.data.f_user_name))
285
- return prefix + '用户名必须输入'
286
- if(Util.required(this.data.f_user_phone))
287
- return prefix + '用户电话必须输入'
288
- // if(Util.required(this.data.f_residential_area))
289
- // return prefix + '小区名称必须输入'
290
- if(Util.required(this.data.f_address))
291
- return prefix + '地址必须输入'
292
- },
293
- verifyDevices() {
294
- for (let dev in this.config) {
295
- if (this.config[dev].checkmust == true) {
296
- let error = true
297
- for(let device in this.data) {
298
- if (device.startsWith("device")) {
299
- for (let item in this.data[device]) {
300
- if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
301
- error = false
302
- }
303
- }
304
- }
305
- }
306
- if (error) {
307
- return "请检查" + dev
308
- }
309
- }
310
- }
311
-
312
- for (let dev in this.config) {
313
- for(let device in this.data) {
314
- if (device.startsWith("device")) {
315
- for (let item in this.data[device]) {
316
- //检查每一条安检结果
317
- if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
318
- for (let i in this.data[device][item].f_items) {
319
- for (let it in this.config[dev].items) {
320
- if (this.config[dev].items[it].checkmust == true && this.data[device][item].f_items[i].f_item_value == '' && this.data[device][item].f_items[i].f_path == '' && it == this.data[device][item].f_items[i].f_item_name) {
321
- return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + "未检查"
322
- }
323
- }
324
- //检查安检下拉结果
325
- if (this.data[device][item].f_items[i].type == 'selector') {
326
- if (this.data[device][item].f_items[i].f_is_defect == true && this.data[device][item].f_items[i].f_path == Vue.nopic) {
327
- return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + this.data[device][item].f_items[i].f_item_value + "选中必须拍照"
328
- }
329
- }
330
- }
331
- }
332
- }
333
- }
334
- }
335
- }
336
- },
337
-
338
-
339
- verifyFeedback() {
340
- let prefix = '用户反馈:'
341
- if(Vue.android && (!this.data.f_overall_path || this.data.f_overall_path == Vue.nopic) && this.data.f_entry_status == '入户')
342
- return prefix + '必须有安检总体照片'
343
- if(Vue.android && this.data.f_defect_notified && this.data.f_notified_path == Vue.nopic)
344
- return prefix + '下发安检通知书则必须给通知书拍照'
345
- if(!this.data.f_client_evaluation && this.data.f_entry_status == '入户')
346
- return prefix + '请选择服务评价'
347
- },
348
-
349
- setUrgency() {
350
- this.data.f_defect_urgency = 'Z'
351
- let that = this
352
- this.data.f_defects.forEach(function(defect) {
353
- if(that.data.f_defect_urgency > defect.f_defect_level.charAt(0))
354
- that.data.f_defect_urgency = defect.f_defect_level.charAt(0)
355
- })
356
- if(this.data.f_defect_urgency == 'Z')
357
- this.data.f_defect_urgency = null
358
- },
359
-
360
- getAllDefect(){
361
- let checkResults={
362
- result:'正常',
363
- data:[]
364
- }
365
- let value = ''
366
- let codata = JSON.parse(JSON.stringify(this.data))
367
- codata.f_devices = []
368
- this.f_devices = []
369
- for(let device in codata){
370
- let f_device_type
371
- if(device.startsWith("device")){
372
- for(let item in codata[device]) {
373
- if(codata[device].length > 1 ){
374
- let j = Number.parseInt(item)+1
375
- f_device_type = `${codata[device][item].f_device_type}${j}`
376
- }else{
377
- f_device_type = codata[device][item].f_device_type
378
- }
379
- // console.log('codata[device][item]=>',codata[device][item])
380
- for(let i in codata[device][item].f_items){
381
- let items = codata[device][item].f_items[i]
382
- console.log('items',items)
383
- console.log(items.f_is_defect)
384
- if(items.f_is_defect == true || items.f_is_defect == 'true'){
385
- console.log('进入有隐患')
386
- checkResults.result = '有隐患'
387
- if(!this.checkResult.hasOwnProperty(items.f_defect_level)){
388
- if(f_device_type.indexOf('其他') != -1){
389
- this.$set('checkResult.' + items.f_defect_level,`${f_device_type}${items.f_item_name}`)
390
- }else{
391
- this.$set('checkResult.' + items.f_defect_level,`${f_device_type}${items.f_item_name}${items.f_item_value}`)
392
- }
393
- }else{
394
- console.log('类型----',f_device_type)
395
- if(f_device_type.indexOf('其他') != -1){
396
- this.$set('checkResult.' + items.f_defect_level,`${this.checkResult[items.f_defect_level]},${f_device_type}${items.f_item_name}`)
397
- }else{
398
- this.$set('checkResult.' + items.f_defect_level,`${this.checkResult[items.f_defect_level]},${f_device_type}${items.f_item_name}${items.f_item_value}`)
399
- }
400
-
401
- }
402
- }
403
- if(items.type == 'selector'){
404
- items.selected = ''
405
- }
406
- }
407
- console.log('checkResult',this.checkResult)
408
- this.f_devices.push(codata[device][item])
409
- }
410
- }
411
- }
412
- if(this.checkResult){
413
- for (let key in this.checkResult){
414
- console.log('key=>',key)
415
- this.$set('newcheckResult.'+key,this.checkResult[key])
416
- checkResults.data.push(this.newcheckResult)
417
- this.newcheckResult = {}
418
- }
419
- this.checkResult = {}
420
- }
421
- console.log(`typeof-checkResults-->${typeof checkResults}`)
422
- codata.f_defect_content = JSON.stringify(checkResults)
423
- console.log('checkResults',checkResults)
424
- return codata
425
- },
426
-
427
- getWeixin(backData){
428
- let result = {f_user_name:backData.f_user_name,checker: Vue.user.name, f_check_date: Util.toStandardDateString(),f_userinfo_id:backData.f_userinfoid,f_address:backData.f_address}
429
-
430
- let Resultstr = ''
431
-
432
- for (let dev in this.config) {
433
- for (let device in backData) {
434
- if (device.startsWith("device")) {
435
- for (let item in backData[device]) {
436
- //遍历结果
437
- if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
438
- let error = true
439
- let n = 0
440
- let level = ''
441
- for (let i in backData[device][item].f_items) {
442
- if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
443
- error = false
444
- n +=1
445
- if(level == ''){
446
- level = backData[device][item].f_items[i].f_defect_level
447
- }
448
- let le = backData[device][item].f_items[i].f_defect_level
449
- if(le.startsWith('A')){
450
- let i = parseInt(le.substring(1))
451
- if(i<parseInt(le.substring(level))){
452
- level = le
453
- }
454
- }else if (le.startsWith('B')){
455
- let i = parseInt(le.substring(1))
456
- if(i<parseInt(le.substring(level))){
457
- level = le
458
- }
459
- }else if(le.startsWith('C')){
460
- let i = parseInt(le.substring(1))
461
- if(i<parseInt(le.substring(level))){
462
- level = le
463
- }
464
- }
465
- }
466
- }
467
- if (error) {
468
- Resultstr += dev + (backData[device].indexOf(backData[device][item]) + 1) + ':正常;'
469
- } else {
470
- Resultstr += dev + (backData[device].indexOf(backData[device][item]) + 1) + ':有隐患;'
471
- }
472
- result['f_err_number'] = n
473
- result['f_danger_lever'] = level
474
- }
475
- }
476
- }
477
- }
478
- }
479
- for (let dev in this.config) {
480
- for (let device in backData) {
481
- if (device.startsWith("device")) {
482
- for (let item in backData[device]) {
483
- if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
484
- for (let i in backData[device][item].f_items) {
485
- if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
486
- Resultstr += dev + (backData[device].indexOf(backData[device][item]) + 1)+ backData[device][item].f_items[i].f_item_name + ' ' + backData[device][item].f_items[i].f_item_value + ';'
487
-
488
- }
489
- }
490
- }
491
- }
492
- }
493
- }
494
- }
495
-
496
-
497
- return result
498
- },
499
-
500
- uploadCheckPaper(){
501
- console.log('uploadCheckPaper-->isUpload'+this.isUpload)
502
- //获取微信推送路径
503
- let url = ""
504
- if(Vue.config.safecheck != undefined) {
505
- if (Vue.config.safecheck.ApproveConfig != undefined) {
506
- if (Vue.config.safecheck.ApproveConfig.weixinurl != undefined) {
507
- url = Vue.config.safecheck.ApproveConfig.weixinurl
508
- }
509
- }
510
- }
511
-
512
- let res = this.save()
513
- if(res) {
514
- let codata = this.getAllDefect()
515
- //获取微信推送内容
516
- let WxResult = this.getWeixin(codata)
517
- let haslivedispose = this.$androidUtil.bzLogic('getLiveDispose', {
518
- f_check_item_id: this.data.f_check_item_id
519
- })
520
- //如果是转维修上传,则不做校验,上传完成后自动转维修
521
- console.log('this.isToRepair=======》'+this.isToRepair)
522
- console.log('this.livedispose=======》'+this.livedispose)
523
- if(!this.isToRepair){
524
- if(haslivedispose.data.length > 0 && (this.livedispose == 'true' || this.livedispose == true)){
525
- console.log('是否已转维修')
526
- console.log(this.isSafeCheckToRepair)
527
- if(!this.isSafeCheckToRepair){
528
- this.$showMessage('有未处理的隐患,请前往拍照上传中将安检转为维修单!')
529
- return
530
- }
531
- }
532
- }
533
- console.log(`codata类型-->${typeof codata}`)
534
- for (let key in codata){
535
- if(key.startsWith("device")){
536
- codata[key] = []
537
- }
538
- }
539
- console.log(`codata内容-->${JSON.stringify(codata)}`)
540
- // HostApp.uploadPaper({f_check_item_id: this.data.f_check_item_id, f_checker_id: this.data.f_checker_id, data: this.data})
541
- try {
542
- let response = this.$androidUtil.bzLogic('上传安检信息', {
543
- f_check_item_id: this.data.f_check_item_id,
544
- f_checker_id: this.data.f_checker_id,
545
- row: codata
546
- })
547
- if (response.code == 200) {
548
- console.log('=============response.data==================')
549
- console.log(JSON.stringify(response.data))
550
- let f_paper_id
551
- if(response.data != '' && response.data != null){
552
- f_paper_id = JSON.parse(response.data).id
553
- }
554
- this.$set('data.f_paper_id', f_paper_id)
555
- console.log('=============f_paper_id==================')
556
- console.log(JSON.stringify(f_paper_id))
557
- console.log(this.data.f_paper_id)
558
- console.log("===data"+JSON.stringify(this.data))
559
- for (let device in this.data){
560
- console.log("上传设备信息device=======>"+device)
561
- console.log("上传设备信息device=======>"+JSON.stringify(this.data[device]))
562
- if(device.startsWith("device")){
563
- for(let devices of this.data[device]) {
564
- devices.f_paper_id = f_paper_id
565
- let ret = this.$androidUtil.bzLogic('UpCheckPaperDevices', {
566
- row: devices
567
- })
568
- console.log(`上传设备信息结果res======${JSON.stringify(ret.data)}`)
569
- if(ret.code == 200){
570
- console.log(`设备信息id======${ret.data.f_device_id}`)
571
- devices.f_device_id = JSON.parse(ret.data.f_device_id).id
572
- }
573
- console.log('上传设备信息device======')
574
- console.log(JSON.stringify(devices))
575
- if (ret.code != 200) {
576
- //TODO 失败后处理
577
- // this.isUpload = false
578
- this.$showMessage("上传失败!")
579
- return false
580
- }
581
- }
582
- }
583
- }
584
- // for (let device of this.f_devices) {
585
- // device.f_paper_id = f_paper_id
586
- // console.log('上传设备信息device======')
587
- // console.log(JSON.stringify(device))
588
- // let ret = this.$androidUtil.bzLogic('UpCheckPaperDevices', {
589
- // row: device
590
- // })
591
- // console.log(`上传设备信息结果res======${ret}`)
592
- // if (ret.code != 200) {
593
- // //TODO 失败后处理
594
- // HostApp.alert("上传失败!")
595
- // return false
596
- // }
597
- // }
598
- let result = this.$androidUtil.bzLogic('FinishUpload',
599
- {
600
- f_check_item_id: this.data.f_check_item_id,
601
- f_userinfo_id: codata.f_userinfoid,
602
- f_last_check_result: codata.f_defect_content
603
- })
604
- if(result.code == 200){
605
- // this.$showAlert('上传成功!', 'success', 2000)
606
- this.$showMessage('上传成功!')
607
- this.isStrat=false
608
- if(url != "" ){
609
- this.$resetpost(`${url}`,{data:WxResult})
610
- }
611
- return true
612
- }else{
613
- // this.isUpload = false
614
- this.$showMessage("上传失败!")
615
- return false
616
- }
617
- }else{
618
- // this.isUpload = false
619
- this.$showMessage("上传失败!")
620
- return false
621
- }
622
- }catch (e) {
623
- console.log('上传失败==='+JSON.stringify(e))
624
- // this.isUpload = false
625
- this.$showMessage("上传失败!")
626
- }
627
- }
628
- },
629
-
630
- save() {
631
- let codata = this.getAllDefect()
632
- console.log(`codata类型-->${typeof codata}`)
633
- console.log(`codata内容-->${JSON.stringify(codata)}`)
634
- for (let key in codata){
635
- if(key.startsWith("device")){
636
- codata[key] = []
637
- }
638
- }
639
- console.log(`codata内容-->${JSON.stringify(codata)}`)
640
- if(Vue.android) {
641
- let value = this.$androidUtil.path({alias: 'getUserinfomation', data:{condition: "f_userinfoid = '"+ this.item.f_userinfoid+"' and f_no_checkplan = '无计划安检'"}})
642
-
643
- if(this.item.f_no_checkplan == '无计划安检' && value.data.length == 0 && this.item.f_no_checkplan != '打回'){
644
- let result = this.$androidUtil.bzLogic('SafeSaveNoPaper', {
645
- f_check_item_id: this.data.f_check_item_id,
646
- f_checker_id: this.data.f_checker_id,
647
- f_upload_state:'未传',
648
- row: codata
649
- })
650
- if (result.code == 200) {
651
- //保存devices
652
- let res = this.$androidUtil.bzLogic('getPaperInfo', {
653
- f_check_item_id: this.data.f_noplan_item_id
654
- })
655
- console.log(`查询paper结果res======${res.data}`)
656
- if(res.code == 200){
657
- let f_paper_id = res.data[0].id
658
- for (let device of this.f_devices){
659
- device.f_paper_id = f_paper_id
660
- console.log('设备信息device======',device)
661
- let ret = this.$androidUtil.bzLogic('saveDevice', {
662
- row:device
663
- })
664
- if(ret.code != 200){
665
- //TODO 失败后处理
666
- // if(this.isUpload){
667
- // this.isUpload = false
668
- // }
669
- this.$showMessage("保存失败!")
670
- return false
671
- }
672
- }
673
- }
674
- // this.$showAlert('保存成功!', 'success', 2000)
675
- this.$showMessage('保存成功!')
676
- return true
677
- } else {
678
- // if(this.isUpload){
679
- // this.isUpload = false
680
- // }
681
- this.$showMessage("保存失败!")
682
- return false
683
- }
684
- }else {
685
- //保存paper
686
- let result = this.$androidUtil.bzLogic('保存安检单信息', {
687
- f_check_item_id: this.data.f_check_item_id,
688
- f_checker_id: this.data.f_checker_id,
689
- row: codata
690
- })
691
- if (result.code == 200) {
692
- //保存devices
693
- let res = this.$androidUtil.bzLogic('getPaperInfo', {
694
- f_check_item_id: this.data.f_check_item_id
695
- })
696
- console.log(`查询paper结果res======${res.data}`)
697
- if(res.code == 200){
698
- let f_paper_id = res.data[0].id
699
- for (let device of this.f_devices){
700
- device.f_paper_id = f_paper_id
701
- console.log('设备信息device======',device)
702
- let ret = this.$androidUtil.bzLogic('saveDevice', {
703
- row:device
704
- })
705
- if(ret.code != 200){
706
- //TODO 失败后处理
707
- // if(this.isUpload){
708
- // this.isUpload = false
709
- // }
710
- this.$showMessage("保存失败!")
711
- return false
712
- }
713
- }
714
- }
715
- // this.$showAlert('保存成功!', 'success', 2000)
716
- this.$showMessage('保存成功!')
717
- return true
718
- } else {
719
- // if(this.isUpload){
720
- // this.isUpload = false
721
- // }
722
- this.$showMessage("保存失败!")
723
- return false
724
- }
725
- }
726
-
727
- }else{
728
- console.log("保存的值",codata)
729
- let value = this.$androidUtil.path({alias: 'getUserinfomation', data:{condition: "f_userinfoid = '"+ this.item.f_userinfoid+"' and f_no_checkplan = '无计划安检'"}})
730
-
731
- if(this.item.f_no_checkplan == '无计划安检' && value.data.length == 0 && this.item.f_no_checkplan != '打回'){
732
- this.$androidUtil.bzLogic('SafeSaveNoPaper', {
733
- f_check_item_id: this.data.f_check_item_id,
734
- f_checker_id: this.data.f_checker_id,
735
- f_upload_state: '未传',
736
- row: codata
737
- }).then((res)=> {
738
- if (res.data.code == 200) {
739
- //保存devices
740
- this.$androidUtil.bzLogic('getPaperInfo', {
741
- f_check_item_id: this.data.f_check_item_id
742
- }).then((res)=>{
743
- console.log(`查询paper结果res======${res}`)
744
- if(res.data.code == 200){
745
-
746
- let f_paper_id = res.data.data[0].id
747
- for (let device of this.f_devices){
748
- device.f_paper_id = f_paper_id
749
- console.log('设备信息device======',device)
750
- this.$androidUtil.bzLogic('saveDevice', {
751
- row:device
752
- }).then((ret)=>{
753
- console.log(`保存设备信息结果res======`,ret)
754
- if(ret.code != 200){
755
- // if(this.isUpload){
756
- // this.isUpload = false
757
- // }
758
- //TODO 失败后处理
759
- this.$showMessage("保存失败!")
760
- return false
761
- }
762
- })
763
- }
764
- }
765
- })
766
- // this.$showAlert('保存成功!', 'success', 2000)
767
- this.$showMessage('保存成功!')
768
- return true
769
- } else {
770
- // if(this.isUpload){
771
- // this.isUpload = false
772
- // }
773
- this.$showMessage("保存失败!")
774
- return false
775
- }
776
- })
777
- }else{
778
- this.$androidUtil.bzLogic('保存安检单信息', {
779
- f_check_item_id: this.data.f_check_item_id,
780
- f_checker_id: this.data.f_checker_id,
781
- row: codata
782
- }).then((res)=> {
783
- console.log('asdddddddddddddddddddddddddddddd')
784
- if (res.data.code == 200) {
785
- //保存devices
786
- this.$androidUtil.bzLogic('getPaperInfo', {
787
- f_check_item_id: this.data.f_check_item_id
788
- }).then((res)=>{
789
- console.log(`查询paper结果res======${res}`)
790
- if(res.data.code == 200){
791
-
792
- let f_paper_id = res.data.data[0].id
793
- for (let device of this.f_devices){
794
- device.f_paper_id = f_paper_id
795
- console.log(`设备信息device======${device}`)
796
- this.$androidUtil.bzLogic('saveDevice', {
797
- row:device
798
- }).then((ret)=>{
799
- console.log(`保存设备信息结果res======${ret}`)
800
- if(ret.code != 200){
801
- // if(this.isUpload){
802
- // this.isUpload = false
803
- // }
804
- //TODO 失败后处理
805
- this.$showMessage("保存失败!")
806
- return false
807
- }
808
- })
809
- }
810
- }
811
- })
812
- // this.$showAlert('保存成功!', 'success', 2000)
813
- this.$showMessage('保存成功!')
814
- return true
815
- } else {
816
- // if(this.isUpload){
817
- // this.isUpload = false
818
- // }
819
- this.$showMessage("保存失败!")
820
- return false
821
- }
822
- })
823
- }}},
824
-
825
- disableTimer() {
826
- if(this.timer) {
827
- window.clearTimeout(this.timer)
828
- this.timer = null
829
- }
830
- },
831
- loaded(paper) {
832
- if(!paper.hasOwnProperty('id')) {
833
- this.$showMessage("该安检单在手机上已经不存在,可能是卸载过程序。可以进入重新安检,或返回安检计划。")
834
- this.init()
835
- } else {
836
- Util.booleanFilter(paper)
837
- HostApp.__this__.$set('data', paper)
838
- HostApp.__this__.$goto('paper-state', {}, 'paper-router')
839
- // 如果打回重检则重新计时
840
- console.log('HostApp.__this__.role' + HostApp.__this__.role + ' HostApp.__this__.f_approved:' + HostApp.__this__.data.f_approved)
841
- if(HostApp.__this__.role == 'inspect'
842
- && HostApp.__this__.data.f_approved
843
- && HostApp.__this__.data.f_approved == '打回') {
844
- console.log('打回')
845
- HostApp.__this__.data.f_onsite_time = Util.toStandardTimeString()
846
- HostApp.__this__.tick()
847
- }
848
- }
849
- HostApp.__callback__ = null
850
- HostApp.__this__ = null
851
- },
852
- S4() {
853
- return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
854
- },
855
- init1 () {
856
- if(this.item.f_collection_type=='按金额'){
857
- this.config= {
858
- "燃气表":{
859
- "checkmust":true,
860
- "index":1,
861
- "items":{
862
- //"燃气表照片":{"index":1,"type":"picture","remark":"(拍摄清晰的表具编号、字轮数、剩余气量等)"},
863
- "基表编号":{"index":1,"type":"string","readonly":true},
864
- "气表型号":{"index":2,"type":"string","readonly":true},
865
- "气表品牌":{"index":3,"type":"string","readonly":true},
866
- "进气方向":{"index":4,"type":"string","readonly":true},
867
- "初始表底":{"index":5,"type":"number","isshow":false,"readonly":true},
868
- "上期表读数":{"index":6,"type":"number","readonly":true,isshow:false},
869
- "累购金额":{"index":7,"type":"number","readonly":true},
870
- "已用金额":{"index":8,"type":"number","checkmust": true},
871
- //显示屏数 --实际剩余气量
872
- "剩余金额":{"index":9,"type":"number","checkmust": true},
873
- "金额异常差值":{"index":10,"type":"number","readonly": true}
874
- }
875
- // 注意,配置项的index必须与上面的固定配置保持'顺序'
876
- }
877
- }
878
- }else{
879
- this.config= {
880
- "燃气表":{
881
- "checkmust":true,
882
- "index":1,
883
- "items":{
884
- //"燃气表照片":{"index":1,"type":"picture","remark":"(拍摄清晰的表具编号、字轮数、剩余气量等)"},
885
- "基表编号":{"index":1,"type":"string","readonly":true},
886
- "气表型号":{"index":2,"type":"string","readonly":true},
887
- "气表品牌":{"index":3,"type":"string","readonly":true},
888
- "进气方向":{"index":4,"type":"string","readonly":true},
889
- "初始表底":{"index":5,"type":"number","isshow":false,"readonly":true},
890
- "上期表读数":{"index":6,"type":"number","readonly":true,isshow:false},
891
- "累购气量":{"index":7,"type":"number","readonly":true},
892
- "已用气量":{"index":8,"type":"number","checkmust": true},//基表数
893
- "剩余气量":{"index":9,"type":"number","checkmust": true},//累购-已用
894
- //显示屏数 --实际剩余气量
895
- "气量异常差值":{"index":10,"type":"number","readonly": true}
896
- }
897
- // 注意,配置项的index必须与上面的固定配置保持'顺序'
898
- }
899
- }
900
- }
901
- },
902
- init () {
903
- this.data.f_noplan_item_id = this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()
904
- this.data.ename = Vue.user.ename
905
- this.data.f_outlets = Vue.user.f_parentname
906
- this.data.f_meetunit = Vue.user.orgpathnames
907
- this.data.orgpathstr = Vue.user.orgpathstr
908
- this.data.f_check_item_id = this.item.id
909
- this.data.f_check_plan_id = this.f_plan_id
910
- this.data.f_checker_id = Vue.user.id
911
- this.data.f_checker_name = Vue.user.name
912
- this.data.f_check_type = this.item.f_user_type
913
- this.data.f_subcompany = this.item.f_subcompany
914
- this.data.f_approved = this.item.f_approved
915
- this.data.f_repair_approved = this.item.f_repair_approved
916
- this.data.f_no_checkplan = this.item.f_no_checkplan
917
- this.data.f_approved = this.item.f_approved
918
- this.data.f_filialeid = this.item.f_filialeid
919
- this.data.f_orgstr = this.item.f_orgstr
920
- this.data.version = this.item.version
921
- this.$set('data.f_meters', this.item.f_plan_meters)
922
- this.$set('data.f_userinfo_code', this.item.f_userinfo_code)
923
- // 安检状态
924
- this.$set('data.f_entry_status', '入户')
925
- this.$set('data.f_usegas', '已使用')
926
- this.$set('data.f_state',this.item.f_state)
927
- // 用户信息
928
- this.$set('data.f_user_name', this.item.f_user_name)
929
- this.$set('data.f_user_phone', this.item.f_user_phone)
930
- this.$set('data.f_userinfoid', this.item.f_userinfoid)
931
- this.$set('data.f_address', this.item.f_address)
932
- this.$set('data.f_card_id', this.item.f_card_id)
933
- this.$set('data.f_area', this.item.f_area)
934
- this.$set('data.f_street', this.item.f_street)
935
- this.$set('data.f_room',this.item.f_room)
936
- this.$set('data.f_building', this.item.f_building)
937
- this.$set('data.f_unit',this.item.f_unit)
938
- this.$set('data.f_floor', this.item.f_floor)
939
- this.$set('data.f_residential_area' , this.item.f_residential_area)
940
- this.$set('data.f_idnumber', this.item.f_idnumber)
941
- this.$set('data.f_comments', this.item.f_comments)
942
- this.$set('data.f_userproperties', this.item.f_userproperties)
943
- // 处置方式
944
- this.$set('data.f_no_gas_device', false)
945
- this.$set('data.f_close_valve', false)
946
- this.$set('data.f_unload_battery', false)
947
- if (this.data.f_check_item_id == '' && this.item.f_no_checkplan == '无计划安检') {
948
- this.data.f_check_item_id = this.data.f_noplan_item_id
949
- }
950
-
951
- //房屋结构
952
- // this.$set('data.f_room_style', '多层')
953
- //供暖方式
954
- // this.$set('data.f_heating_style', '热力公司集中供暖')
955
- if(this.item.f_plan_meters) {
956
- for (let de in this.devices) {
957
- this.$set('data.device' + this.devices[de].n, [])
958
- for (let i = 0; i < this.item.f_plan_meters.length; i++) {
959
- if(this.item.f_plan_meters[i].f_meter_type) {
960
- if (this.devices[de].device == "燃气表" && this.item.f_plan_meters[i].f_meter_type.indexOf('机表') > 0) {
961
- delete this.config['燃气表']['items']['累计购气量']
962
- this.data['device' + this.devices[de].n].push({
963
- f_device_type: "燃气表",
964
- f_items: [{
965
- f_defect_level: null,
966
- f_device_id: "",
967
- f_is_defect: "",
968
- f_item_name: "表品牌",
969
- f_item_value: this.item.f_plan_meters[i].f_aliasname,
970
- f_path: "",
971
- type: "string"
972
- },
973
- {
974
- f_defect_level: null,
975
- f_device_id: "",
976
- f_is_defect: "",
977
- f_item_name: "位置",
978
- f_item_value: this.item.f_plan_meters[i].f_weizhi,
979
- f_path: "",
980
- type: "selector"
981
- },
982
- {
983
- f_defect_level: null,
984
- f_device_id: "",
985
- f_is_defect: "",
986
- f_item_name: "表号",
987
- f_item_value: this.item.f_plan_meters[i].f_meter_no,
988
- f_path: "",
989
- type: "number"
990
- },
991
- {
992
- f_defect_level: null,
993
- f_device_id: "",
994
- f_is_defect: "",
995
- f_item_name: "表封号",
996
- f_item_value: this.item.f_plan_meters[i].f_metertitles,
997
- f_path: "",
998
- type: "number"
999
- },
1000
- {
1001
- f_defect_level: null,
1002
- f_device_id: "",
1003
- f_is_defect: "",
1004
- f_item_name: "表型号",
1005
- f_item_value: this.item.f_plan_meters[i].f_diaphgram_size,
1006
- f_path: "",
1007
- type: "selector"
1008
- },
1009
- {
1010
- f_defect_level: null,
1011
- f_device_id: "",
1012
- f_is_defect: "",
1013
- f_item_name: "表底数",
1014
- f_item_value: this.item.f_plan_meters[i].f_prior_reading,
1015
- f_path: "",
1016
- type: "number"
1017
- }
1018
- ]
1019
- })
1020
- } else if (this.devices[de].device == "燃气表") {
1021
- delete this.config['燃气表']['items']['表底数']
1022
- this.data['device' + this.devices[de].n].push({
1023
- f_device_type: "燃气表",
1024
- f_items: [{
1025
- f_defect_level: null,
1026
- f_device_id: "",
1027
- f_is_defect: "",
1028
- f_item_name: "表品牌",
1029
- f_item_value: this.item.f_plan_meters[i].f_aliasname,
1030
- f_path: "",
1031
- type: "string"
1032
- },
1033
- {
1034
- f_defect_level: null,
1035
- f_device_id: "",
1036
- f_is_defect: "",
1037
- f_item_name: "位置",
1038
- f_item_value: this.item.f_plan_meters[i].f_weizhi,
1039
- f_path: "",
1040
- type: "selector"
1041
- },
1042
- {
1043
- f_defect_level: null,
1044
- f_device_id: "",
1045
- f_is_defect: "",
1046
- f_item_name: "表号",
1047
- f_item_value: this.item.f_plan_meters[i].f_meter_no,
1048
- f_path: "",
1049
- type: "number"
1050
- },
1051
- {
1052
- f_defect_level: null,
1053
- f_device_id: "",
1054
- f_is_defect: "",
1055
- f_item_name: "表封号",
1056
- f_item_value: this.item.f_plan_meters[i].f_metertitles,
1057
- f_path: "",
1058
- type: "number"
1059
- },
1060
- {
1061
- f_defect_level: null,
1062
- f_device_id: "",
1063
- f_is_defect: "",
1064
- f_item_name: "表型号",
1065
- f_item_value: this.item.f_plan_meters[i].f_diaphgram_size,
1066
- f_path: "",
1067
- type: "selector"
1068
- },
1069
- {
1070
- f_defect_level: null,
1071
- f_device_id: "",
1072
- f_is_defect: "",
1073
- f_item_name: "累计购气量",
1074
- f_item_value: this.item.f_plan_meters[i].f_prior_reading,
1075
- f_path: "",
1076
- type: "number"
1077
- }
1078
- ]
1079
- })
1080
- }
1081
- }
1082
- }
1083
- }
1084
- }
1085
-
1086
- this.$goto('paper-state', {}, 'paper-router')
1087
- },
1088
- extend(initalObj, finalObj) {
1089
- var obj = finalObj || {};
1090
- for (var i in initalObj) {
1091
- var prop = initalObj[i];
1092
-
1093
- // 避免相互引用对象导致死循环,如initalObj.a = initalObj的情况
1094
- if (prop === obj) {
1095
- continue;
1096
- }
1097
-
1098
- if (typeof prop === 'object') {
1099
- if (obj[i]) {
1100
- this.extend(obj[i], prop)
1101
- } else {
1102
- obj[i] = prop;
1103
- }
1104
- }
1105
- }
1106
- return obj;
1107
- },
1108
- /*
1109
- var a = {
1110
- "燃气表":{
1111
- "index": 1,
1112
- "checkmust":true,
1113
- "items":{
1114
- "表具故障":{"index": 13,"multiple":true,"type":"selector","options":[{"data":"死表","isdefect":true,"level":"安检维修"},{"data":"常通","isdefect":true,"level":"安检维修"},{"data":"表体漏气","isdefect":true,"level":"一级隐患安检维修"},{"data":"接口漏气","isdefect":true,"level":"一级隐患安检维修"},{"data":"偷气","isdefect":true,"level":"一级隐患"},{"data":"反装","isdefect":true},{"data":"气量不符","isdefect":true,"level":"安检维修"},{"data":"其他","isdefect":true,"level":"一级隐患"}]},
1115
- "其他":{"index": 14,"isshow":false,"type":"string"},
1116
- "表具隐患类型":{"index": 15,"multiple":true,"type":"selector","options":[{"data":"挂物","isdefect":true},{"data":"包裹","isdefect":true},{"data":"不便维修","isdefect":true},{"data":"封闭包裹","isdefect":true,"level":"一级隐患"},{"data":"与电源或火源过近","isdefect":true,"level":"三级隐患"}]}
1117
- }
1118
- },
1119
- "报警器":{
1120
- "index": 2,
1121
- "checkmust":true,
1122
- "items":{
1123
- "有否":{"index": 1,"multiple":false,"type":"selector","options":[{"data":"有","isdefect":false,"isdefault":true},{"data":"无","isdefect":false}]},
1124
- "厂家":{"index": 2,"multiple":false,"isshow":false,"type":"selector","options":[{"data":"汉威","isdefect":false},{"data":"鑫豪斯","isdefect":false},{"data":"友谊","isdefect":false},{"data":"其他","isdefect":false},{"data":"富昌","isdefect":false},{"data":"科信","isdefect":false}]},
1125
- "安装时间":{"index": 3,"isshow": false,"type":"date"},
1126
- "到期时间":{"index": 4,"isshow": false,"type":"date"},
1127
- "是否通电":{"index": 5,"multiple":false,"isshow": false,"type":"selector","options":[{"data":"是","isdefect":false,"isdefault":true},{"data":"否","isdefect":true}]},
1128
- "安装渠道":{"index": 6,"isshow": false,"multiple":false,"type":"selector","options":[{"data":"惠众","isdefect":false},{"data":"其他","isdefect":false}]},
1129
- "电磁阀接口漏气":{"index": 7,"multiple":false,"isshow": false,"type":"selector","options":[{"data":"否","isdefect":false,"isdefault":true},{"data":"是","isdefect":true,"level":"一级隐患安检维修"}]}
1130
- }
1131
- }}
1132
- */
1133
- putDevices() {
1134
- //console.log('Vue.config.safecheck', Vue.config.safecheck.safetype)
1135
- this.$set('data.approve', "true")
1136
- this.$set('data.writeback', "false")
1137
- if (Vue.config.safecheck.ApproveConfig != undefined) {
1138
- if (Vue.config.safecheck.ApproveConfig.approve != undefined) {
1139
- this.$set('data.approve', Vue.config.safecheck.ApproveConfig.approve)
1140
- }
1141
- if (Vue.config.safecheck.ApproveConfig.writeback != undefined) {
1142
- this.$set('data.writeback', Vue.config.safecheck.ApproveConfig.writeback)
1143
- }
1144
- if (Vue.config.safecheck.ApproveConfig.livedispose != undefined) {
1145
- this.livedispose = Vue.config.safecheck.ApproveConfig.livedispose
1146
- }
1147
- }
1148
- console.log('当前安检类型----'+this.item.f_safecheck_type)
1149
- if(!this.item.f_safecheck_type){
1150
- this.config = this.extend(this.config, Vue.config.safecheck[Vue.config.safecheck.SafecheckType['年度普检']['民用']])
1151
- }else{
1152
- if (Vue.config.safecheck.DevicesConfig != undefined)
1153
- this.config = this.extend(this.config, Vue.config.safecheck[Vue.config.safecheck.SafecheckType[this.item.f_safecheck_type]['民用']])
1154
- }
1155
- //遍历安检项配置
1156
- for (let i in this.config) {
1157
- //取得安检项索引值
1158
- let n = this.config[i].index
1159
- this.devices[n - 1] = {device: i, n: n, checkmust: this.config[i].checkmust}
1160
- this.$set('data.' + 'device' + n, [])
1161
- let items = []
1162
- for (let it in this.config[i].items) {
1163
- //赋值下拉选项
1164
- if (this.config[i].items[it].type == 'selector') {
1165
- for (let op in this.config[i].items[it].options)
1166
- if (this.config[i].items[it].options[op].isdefault == true) {
1167
- items.push({
1168
- f_defect_level: this.config[i].items[it].options[op].level,
1169
- f_is_defect: this.config[i].items[it].options[op].isdefect,
1170
- f_item_name: it,
1171
- f_item_value: this.config[i].items[it].options[op].data,
1172
- f_path: "",
1173
- type: "selector"
1174
- })
1175
- }
1176
- }
1177
- }
1178
- n = n + 1
1179
- }
1180
-
1181
- },
1182
- //获取当前时间
1183
- getNowFormatDate(){
1184
- var date = new Date();
1185
- var seperator1 = "-";
1186
- var seperator2 = ":";
1187
- var month = date.getMonth() + 1;
1188
- var strDate = date.getDate();
1189
- if (month >= 1 && month <= 9) {
1190
- month = "0" + month;
1191
- }
1192
- if (strDate >= 0 && strDate <= 9) {
1193
- strDate = "0" + strDate;
1194
- }
1195
- var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
1196
- + " " + date.getHours() + seperator2 + date.getMinutes()
1197
- + seperator2 + date.getSeconds();
1198
- return currentdate;
1199
- }
1200
- },
1201
- ready() {
1202
- this.init1()
1203
- this.putDevices()
1204
- //如果已检,则提取安检单
1205
-
1206
- if (this.item.f_state != '未检' || this.item.f_no_checkplan == '无计划安检') {
1207
- if (this.role != 'inspect') {
1208
- let that = this
1209
- let id
1210
- if (this.role == 'view') {
1211
- id = this.item.id
1212
- } else if (this.role == 'androidview') {
1213
- id = this.item.f_paper_id
1214
- }
1215
- this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/path/getUserinfomation`, {data: {condition: `id = '${id}'`}}).then((respanse) => {
1216
- console.log('result....', respanse)
1217
- if (respanse.data.length != 0) {
1218
- // 包含 其它 特殊处理的数组
1219
- // 对应位置
1220
-
1221
- console.log('devices => ', respanse.data[0])
1222
-
1223
- that.data = Object.assign(that.data, respanse.data[0])
1224
- if (respanse.data[0].f_devices) {
1225
- for (let da in that.devices) {
1226
- that.$set('data.device' + that.devices[da].n, [])
1227
- }
1228
- respanse.data[0].f_devices.forEach((item) => {
1229
- for (let de in that.devices) {
1230
- if (that.devices[de].device == item.f_device_type) {
1231
- item.f_items.forEach((f_item) => {
1232
- console.log('f_item====>', f_item)
1233
- console.log('f_item.f_path====>', f_item.f_path)
1234
- let itemValues = []
1235
- f_item.f_item_lists.forEach((tempItem) => {
1236
- console.log('emm => ', f_item.f_item_name, ' ', tempItem.f_item_value)
1237
- if (tempItem.f_item_value !== 'null') {
1238
- itemValues.push(tempItem.f_item_value)
1239
- }
1240
- })
1241
- f_item.f_item_value = itemValues
1242
- })
1243
- that.data['device' + that.devices[de].n].push({
1244
- f_device_type: item.f_device_type,
1245
- f_items: item.f_items
1246
- })
1247
- }
1248
- }
1249
- })
1250
- }
1251
- Util.replaceFalse(that.data)
1252
- Util.booleanFilter(that.data)
1253
- if (this.role == 'view') {
1254
- Util.ratifyPics(that.data)
1255
- Util.ratifyPics(that.picture)
1256
- } else {
1257
- Util.androidRatifyPics(that.data, this.$androidUtil.getProxyUrl())
1258
- }
1259
- console.log("that.data:", that.data)
1260
- } else {
1261
- alert("该安检单可能已不在本地!")
1262
- this.init()
1263
- }
1264
- // this.$goto('paper-message-blank', {userinfo:this.data,devices:this.devices,config:this.config,role:this.role}, 'self')
1265
- this.isshow = true
1266
- }
1267
- ).catch(
1268
- (respanse) => {
1269
- console.log('respanse',respanse)
1270
- alert('查找安检单失败')
1271
- })
1272
- }
1273
- // else {
1274
- // let that = this
1275
- // this.$androidUtil.bzLogic('FetchCheckPaper', {id: this.item.id}).then((respanse) => {
1276
- // if (respanse.data.data.length != 0) {
1277
- // that.data = Object.assign(that.data, respanse.data.data[0])
1278
- // if (respanse.data.data[0].f_devices) {
1279
- // for (let da in that.devices) {
1280
- // that.$set('data.device' + that.devices[da].n, [])
1281
- // }
1282
- // respanse.data.data[0].f_devices.forEach((item) => {
1283
- // for (let de in that.devices) {
1284
- // if (that.devices[de].device == item.f_device_type) {
1285
- // that.$set('data.device' + that.devices[de].n, [])
1286
- // that.data['device' + that.devices[de].n].push({
1287
- // f_device_type: item.f_device_type,
1288
- // f_items: item.f_items
1289
- // })
1290
- // }
1291
- // }
1292
- // })
1293
- // }
1294
- // Util.booleanFilter(that.data)
1295
- // console.log("that.data:", that.data)
1296
- // } else {
1297
- // alert("该安检单可能已不在本地!")
1298
- // this.init()
1299
- // }
1300
- // // this.$goto('paper-message-blank', {userinfo:this.data,devices:this.devices,config:this.config,role:this.role}, 'self')
1301
- // this.isshow = true
1302
- // }
1303
- // ).catch(
1304
- // (respanse) => {
1305
- // alert('查找安检单失败')
1306
- // })
1307
- // }
1308
- } else {
1309
- this.init()
1310
- }
1311
- },
1312
- watch:{
1313
- // 'isUpload'(val){
1314
- // console.log('isUpload发生变化===>'+val)
1315
- // }
1316
- },
1317
- destroyed() {
1318
- console.log('退出当前页Set')
1319
- this.disableTimer()
1320
- }
1321
- }
1322
-
1323
- </script>
1
+ <style scoped>
2
+ .divmask {
3
+ pointer-events: none;
4
+ }
5
+ .app-header {
6
+ border-radius: 50%;
7
+ background: rgba(73, 158, 223, 0.4);
8
+ color: #FFF;
9
+ padding: 20px;
10
+ text-align: center;
11
+ font-size: 1.2em;
12
+ z-index: 10;
13
+ opacity:0.5;
14
+ bottom: 50px;
15
+ margin-top: -20px;
16
+ position: absolute;
17
+ top: 10%;
18
+ right: 2%;
19
+ height: 8%;
20
+ }
21
+ </style>
22
+
23
+ <template>
24
+ <div style="overflow-y: scroll;background-color: #FFFFFF">
25
+ <div class="auto" style="height:auto;" id="safecheck" v-if="isshow">
26
+ <div class="page-header app-header auto">
27
+ <div @click="back()">
28
+ <img src="../../assets/back.png"/>
29
+ </div>
30
+ </div>
31
+ <div style="width: 50%;height: 462px; margin-left: 20px;margin-top: 0px;margin-bottom: 20px;float:left" id="one">
32
+ <paper-userm></paper-userm>
33
+ </div>
34
+ <div style="width: 45%;height: 462px; margin-left: 20px;margin-top: 0px;margin-bottom: 20px;float:left">
35
+ <paper-statem></paper-statem>
36
+ </div>
37
+ <div style="width: 95%;height: auto;margin-left: 20px;margin-bottom: 30px;float: left">
38
+ <devicesm> </devicesm>
39
+ </div>
40
+ <div style="width: 95%;height: 900px;margin-left: 20px;float: left;">
41
+ <paper-feedbackm v-bind:paper="this.data" ></paper-feedbackm>
42
+ </div>
43
+ </div>
44
+ </div>
45
+ </template>
46
+
47
+ <script>
48
+ import PaperUserm from './PaperUserm'
49
+ import PaperStatem from './PaperStatem'
50
+ import Devicesm from './Devicesm'
51
+ import PaperFeedbackm from './PaperFeedbackm'
52
+ import RadioGroup from 'vue-client/src/vue-strap/src/radioGroup'
53
+ import Radio from 'vue-client/src/vue-strap/src/radioBtn'
54
+ import Vue from 'vue'
55
+ import * as Util from '../Util'
56
+
57
+ export default {
58
+ title: '安检单',
59
+ props: ['f_plan_id', 'item', 'role'],
60
+ data() {
61
+ return {
62
+ data: {
63
+ f_devices: [],
64
+ f_defect_content:''
65
+ },
66
+ isshow:false,
67
+ isUpload:false,
68
+ livedispose:'',
69
+ startClick:false, //开始安检按钮是否可点击
70
+ isStrat: false, //是否开始安检
71
+ checkResult:{},//查询结果
72
+ newcheckResult:{},
73
+ timer: null,
74
+ showModal: false,
75
+ pic_to_be_viewed: '',
76
+ showBack:true,
77
+ devices: [],
78
+ f_devices : [],
79
+ isToRepair:false,
80
+ isSafeCheckToRepair:false,//是否转维修
81
+ config: {
82
+ "燃气表":{
83
+ "checkmust":true,
84
+ "index":1,
85
+ "items":{
86
+ //"燃气表照片":{"index":1,"type":"picture","remark":"(拍摄清晰的表具编号、字轮数、剩余气量等)"},
87
+ "基表编号":{"index":1,"type":"string","readonly":true},
88
+ "气表型号":{"index":2,"type":"string","readonly":true},
89
+ "气表品牌":{"index":3,"type":"string","readonly":true},
90
+ "进气方向":{"index":4,"type":"string","readonly":true},
91
+ "初始表底":{"index":5,"type":"number","isshow":false,"readonly":true},
92
+ "上期表读数":{"index":6,"type":"number","readonly":true,isshow:false},
93
+ "累购气量":{"index":7,"type":"number","readonly":true},
94
+ "累购金额":{"index":7,"type":"number","readonly":true},
95
+ "已用气量":{"index":8,"type":"number","checkmust": true},//基表数
96
+ "已用金额":{"index":8,"type":"number","checkmust": true},
97
+ "剩余气量":{"index":9,"type":"number","checkmust": true},//累购-已用
98
+ //显示屏数 --实际剩余气量
99
+ "剩余金额":{"index":9,"type":"number","checkmust": true},
100
+ "气量异常差值":{"index":10,"type":"number","readonly": true},
101
+ "金额异常差值":{"index":10,"type":"number","readonly": true}
102
+ }
103
+ // 注意,配置项的index必须与上面的固定配置保持'顺序'
104
+ }
105
+ }
106
+ }
107
+ },
108
+ components: {
109
+ RadioGroup,
110
+ Radio,
111
+ "paper-userm":PaperUserm,
112
+ "paper-statem":PaperStatem,
113
+ "devicesm":Devicesm,
114
+ "paper-feedbackm":PaperFeedbackm
115
+ },
116
+ computed: {
117
+ selector: {
118
+ get() {
119
+ return 'paper-state'
120
+ },
121
+ set(val) {
122
+ if(this.isStrat){
123
+ debugger;
124
+ this.$goto(val, {userinfo:this.data}, 'paper-router')
125
+ }else{
126
+ this.$showMessage('未开始安检!')
127
+ }
128
+ }
129
+ },
130
+ actionEnabled: {
131
+ get() {
132
+ return this.role == 'inspect'
133
+ }
134
+ }
135
+ },
136
+ methods: {
137
+ back(){
138
+ if (this.role == 'inspect') {
139
+ if(!this.isStrat){
140
+ this.$back()
141
+ return
142
+ }else{
143
+ this.savePaper(true).then(()=>{
144
+ this.$back()
145
+ this.isStrat = false
146
+ })
147
+ }
148
+ }else{
149
+ this.$back()
150
+ }
151
+ },
152
+ checkIsStart(){
153
+ alert('asdad')
154
+ return
155
+ },
156
+ viewPic(fileName) {
157
+ console.log('view pic: ' + fileName)
158
+ if(this.role == 'view') {
159
+ if(!fileName.endsWith('nopic.png')) {
160
+ this.pic_to_be_viewed = fileName
161
+ this.showModal = true
162
+ }
163
+ } else {
164
+ HostApp.viewPic(fileName)
165
+ }
166
+ },
167
+ tick() {
168
+ this.timer = null
169
+ this.data.f_offsite_time = Util.toStandardTimeString()
170
+ this.timer = window.setTimeout(this.tick, 1000)
171
+ },
172
+ getRepairState() {
173
+ let repaired = true
174
+ this.data.f_defects.forEach((defect) => {
175
+ repaired = repaired & (defect.f_ratification == '已处理')
176
+ })
177
+ return repaired
178
+ },
179
+ verifyRepairDefects() {
180
+ this.data.f_repair_date = Util.toStandardTimeString()
181
+ this.data.f_repaired = this.getRepairState() ? '已修' : '在修'
182
+ },
183
+ async savePaper(saveOnly) {
184
+ console.log('savePaper-->isUpload'+this.isUpload)
185
+ console.log('保存')
186
+ if(this.role == 'repair') {
187
+ let errorMsg = this.verifyRepairDefects()
188
+ if(errorMsg) {
189
+ this.$showMessage(errorMsg)
190
+ return false
191
+ }
192
+ return this.save()
193
+ } else {
194
+ //保存时做校验
195
+ let errString = this.errorVerify()
196
+ if(saveOnly){
197
+ if (errString) {
198
+ this.data.f_complete = '未完成'
199
+ this.disableTimer()
200
+ return this.save()
201
+ } else {
202
+ console.log('赋值前',this.data)
203
+ if(!this.data.f_offsite_time){
204
+ this.$set('data.f_offsite_time', Util.toStandardTimeString())
205
+ }
206
+ console.log('赋值后',this.data)
207
+ this.data.f_complete = '已完成'
208
+ this.disableTimer()
209
+ return this.save()
210
+ }
211
+ }else {
212
+ console.log('errString-->isUpload'+this.isUpload)
213
+ if (errString) {
214
+ console.log(errString)
215
+ console.log('Vue.android',Vue.android)
216
+ console.log('this.isUpload',this.isUpload)
217
+ if (Vue.android){
218
+ // if(this.isUpload){
219
+ // this.isUpload = false
220
+ // }
221
+ this.$showMessage(errString)
222
+ }
223
+ return false
224
+ } else {
225
+ if(!this.data.f_offsite_time){
226
+ this.$set('data.f_offsite_time', Util.toStandardTimeString())
227
+ }
228
+ console.log('赋值后',this.data)
229
+ this.data.f_complete = '已完成'
230
+ this.disableTimer()
231
+ return this.uploadCheckPaper()
232
+ }
233
+ }
234
+ }
235
+ },
236
+ genuineSave(saveOnly) {
237
+ HostApp.__this__.save(saveOnly)
238
+ if(!saveOnly)
239
+ HostApp.__this__.disableTimer()
240
+ HostApp.__callback__ = null
241
+ HostApp.__this__ = null
242
+ },
243
+ uploadPaper() {
244
+ // this.isUpload = true
245
+ console.log('uploadPaper-->isUpload'+this.isUpload)
246
+ this.savePaper(false).then((res) => {
247
+ console.log(`res=${res}`)
248
+ // console.log(`改变前this.isUpload=${this.isUpload}`)
249
+ // this.isUpload = false
250
+ // console.log(`改变后this.isUpload=${this.isUpload}`)
251
+ if(res != true){
252
+ console.log('失败')
253
+ return
254
+ }else{
255
+ this.$back()
256
+ }
257
+ })
258
+ },
259
+ errorVerify() {
260
+ let hasError = this.verifyState()
261
+ if(hasError)
262
+ return hasError
263
+
264
+ if(this.data.f_entry_status != '入户')
265
+ return null
266
+ hasError = this.verifyUser()
267
+ if(hasError)
268
+ return hasError
269
+ hasError = this.verifyDevices()
270
+ if(hasError)
271
+ return hasError
272
+ hasError = this.verifyFeedback()
273
+ if(hasError)
274
+ return hasError
275
+ },
276
+ verifyState() {
277
+ if(Vue.android && this.data.f_entry_status == '未使用天然气' && this.data.f_nongasuser_path == Vue.nopic)
278
+ return '未使用天然气则必须拍照'
279
+ if(Vue.android && this.data.f_entry_status == '到访不遇' && this.data.f_noanswer_path == Vue.nopic)
280
+ return '到访不遇必须拍照'
281
+ },
282
+ verifyUser() {
283
+ let prefix = '用户基本信息:'
284
+ if(Util.required(this.data.f_user_name))
285
+ return prefix + '用户名必须输入'
286
+ if(Util.required(this.data.f_user_phone))
287
+ return prefix + '用户电话必须输入'
288
+ // if(Util.required(this.data.f_residential_area))
289
+ // return prefix + '小区名称必须输入'
290
+ if(Util.required(this.data.f_address))
291
+ return prefix + '地址必须输入'
292
+ },
293
+ verifyDevices() {
294
+ for (let dev in this.config) {
295
+ if (this.config[dev].checkmust == true) {
296
+ let error = true
297
+ for(let device in this.data) {
298
+ if (device.startsWith("device")) {
299
+ for (let item in this.data[device]) {
300
+ if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
301
+ error = false
302
+ }
303
+ }
304
+ }
305
+ }
306
+ if (error) {
307
+ return "请检查" + dev
308
+ }
309
+ }
310
+ }
311
+
312
+ for (let dev in this.config) {
313
+ for(let device in this.data) {
314
+ if (device.startsWith("device")) {
315
+ for (let item in this.data[device]) {
316
+ //检查每一条安检结果
317
+ if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
318
+ for (let i in this.data[device][item].f_items) {
319
+ for (let it in this.config[dev].items) {
320
+ if (this.config[dev].items[it].checkmust == true && this.data[device][item].f_items[i].f_item_value == '' && this.data[device][item].f_items[i].f_path == '' && it == this.data[device][item].f_items[i].f_item_name) {
321
+ return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + "未检查"
322
+ }
323
+ }
324
+ //检查安检下拉结果
325
+ if (this.data[device][item].f_items[i].type == 'selector') {
326
+ if (this.data[device][item].f_items[i].f_is_defect == true && this.data[device][item].f_items[i].f_path == Vue.nopic) {
327
+ return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + this.data[device][item].f_items[i].f_item_value + "选中必须拍照"
328
+ }
329
+ }
330
+ }
331
+ }
332
+ }
333
+ }
334
+ }
335
+ }
336
+ },
337
+
338
+
339
+ verifyFeedback() {
340
+ let prefix = '用户反馈:'
341
+ if(Vue.android && (!this.data.f_overall_path || this.data.f_overall_path == Vue.nopic) && this.data.f_entry_status == '入户')
342
+ return prefix + '必须有安检总体照片'
343
+ if(Vue.android && this.data.f_defect_notified && this.data.f_notified_path == Vue.nopic)
344
+ return prefix + '下发安检通知书则必须给通知书拍照'
345
+ if(!this.data.f_client_evaluation && this.data.f_entry_status == '入户')
346
+ return prefix + '请选择服务评价'
347
+ },
348
+
349
+ setUrgency() {
350
+ this.data.f_defect_urgency = 'Z'
351
+ let that = this
352
+ this.data.f_defects.forEach(function(defect) {
353
+ if(that.data.f_defect_urgency > defect.f_defect_level.charAt(0))
354
+ that.data.f_defect_urgency = defect.f_defect_level.charAt(0)
355
+ })
356
+ if(this.data.f_defect_urgency == 'Z')
357
+ this.data.f_defect_urgency = null
358
+ },
359
+
360
+ getAllDefect(){
361
+ let checkResults={
362
+ result:'正常',
363
+ data:[]
364
+ }
365
+ let value = ''
366
+ let codata = JSON.parse(JSON.stringify(this.data))
367
+ codata.f_devices = []
368
+ this.f_devices = []
369
+ for(let device in codata){
370
+ let f_device_type
371
+ if(device.startsWith("device")){
372
+ for(let item in codata[device]) {
373
+ if(codata[device].length > 1 ){
374
+ let j = Number.parseInt(item)+1
375
+ f_device_type = `${codata[device][item].f_device_type}${j}`
376
+ }else{
377
+ f_device_type = codata[device][item].f_device_type
378
+ }
379
+ // console.log('codata[device][item]=>',codata[device][item])
380
+ for(let i in codata[device][item].f_items){
381
+ let items = codata[device][item].f_items[i]
382
+ console.log('items',items)
383
+ console.log(items.f_is_defect)
384
+ if(items.f_is_defect == true || items.f_is_defect == 'true'){
385
+ console.log('进入有隐患')
386
+ checkResults.result = '有隐患'
387
+ if(!this.checkResult.hasOwnProperty(items.f_defect_level)){
388
+ if(f_device_type.indexOf('其他') != -1){
389
+ this.$set('checkResult.' + items.f_defect_level,`${f_device_type}${items.f_item_name}`)
390
+ }else{
391
+ this.$set('checkResult.' + items.f_defect_level,`${f_device_type}${items.f_item_name}${items.f_item_value}`)
392
+ }
393
+ }else{
394
+ console.log('类型----',f_device_type)
395
+ if(f_device_type.indexOf('其他') != -1){
396
+ this.$set('checkResult.' + items.f_defect_level,`${this.checkResult[items.f_defect_level]},${f_device_type}${items.f_item_name}`)
397
+ }else{
398
+ this.$set('checkResult.' + items.f_defect_level,`${this.checkResult[items.f_defect_level]},${f_device_type}${items.f_item_name}${items.f_item_value}`)
399
+ }
400
+
401
+ }
402
+ }
403
+ if(items.type == 'selector'){
404
+ items.selected = ''
405
+ }
406
+ }
407
+ console.log('checkResult',this.checkResult)
408
+ this.f_devices.push(codata[device][item])
409
+ }
410
+ }
411
+ }
412
+ if(this.checkResult){
413
+ for (let key in this.checkResult){
414
+ console.log('key=>',key)
415
+ this.$set('newcheckResult.'+key,this.checkResult[key])
416
+ checkResults.data.push(this.newcheckResult)
417
+ this.newcheckResult = {}
418
+ }
419
+ this.checkResult = {}
420
+ }
421
+ console.log(`typeof-checkResults-->${typeof checkResults}`)
422
+ codata.f_defect_content = JSON.stringify(checkResults)
423
+ console.log('checkResults',checkResults)
424
+ return codata
425
+ },
426
+
427
+ getWeixin(backData){
428
+ let result = {f_user_name:backData.f_user_name,checker: Vue.user.name, f_check_date: Util.toStandardDateString(),f_userinfo_id:backData.f_userinfoid,f_address:backData.f_address}
429
+
430
+ let Resultstr = ''
431
+
432
+ for (let dev in this.config) {
433
+ for (let device in backData) {
434
+ if (device.startsWith("device")) {
435
+ for (let item in backData[device]) {
436
+ //遍历结果
437
+ if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
438
+ let error = true
439
+ let n = 0
440
+ let level = ''
441
+ for (let i in backData[device][item].f_items) {
442
+ if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
443
+ error = false
444
+ n +=1
445
+ if(level == ''){
446
+ level = backData[device][item].f_items[i].f_defect_level
447
+ }
448
+ let le = backData[device][item].f_items[i].f_defect_level
449
+ if(le.startsWith('A')){
450
+ let i = parseInt(le.substring(1))
451
+ if(i<parseInt(le.substring(level))){
452
+ level = le
453
+ }
454
+ }else if (le.startsWith('B')){
455
+ let i = parseInt(le.substring(1))
456
+ if(i<parseInt(le.substring(level))){
457
+ level = le
458
+ }
459
+ }else if(le.startsWith('C')){
460
+ let i = parseInt(le.substring(1))
461
+ if(i<parseInt(le.substring(level))){
462
+ level = le
463
+ }
464
+ }
465
+ }
466
+ }
467
+ if (error) {
468
+ Resultstr += dev + (backData[device].indexOf(backData[device][item]) + 1) + ':正常;'
469
+ } else {
470
+ Resultstr += dev + (backData[device].indexOf(backData[device][item]) + 1) + ':有隐患;'
471
+ }
472
+ result['f_err_number'] = n
473
+ result['f_danger_lever'] = level
474
+ }
475
+ }
476
+ }
477
+ }
478
+ }
479
+ for (let dev in this.config) {
480
+ for (let device in backData) {
481
+ if (device.startsWith("device")) {
482
+ for (let item in backData[device]) {
483
+ if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
484
+ for (let i in backData[device][item].f_items) {
485
+ if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
486
+ Resultstr += dev + (backData[device].indexOf(backData[device][item]) + 1)+ backData[device][item].f_items[i].f_item_name + ' ' + backData[device][item].f_items[i].f_item_value + ';'
487
+
488
+ }
489
+ }
490
+ }
491
+ }
492
+ }
493
+ }
494
+ }
495
+
496
+
497
+ return result
498
+ },
499
+
500
+ uploadCheckPaper(){
501
+ console.log('uploadCheckPaper-->isUpload'+this.isUpload)
502
+ //获取微信推送路径
503
+ let url = ""
504
+ if(Vue.config.safecheck != undefined) {
505
+ if (Vue.config.safecheck.ApproveConfig != undefined) {
506
+ if (Vue.config.safecheck.ApproveConfig.weixinurl != undefined) {
507
+ url = Vue.config.safecheck.ApproveConfig.weixinurl
508
+ }
509
+ }
510
+ }
511
+
512
+ let res = this.save()
513
+ if(res) {
514
+ let codata = this.getAllDefect()
515
+ //获取微信推送内容
516
+ let WxResult = this.getWeixin(codata)
517
+ let haslivedispose = this.$androidUtil.bzLogic('getLiveDispose', {
518
+ f_check_item_id: this.data.f_check_item_id
519
+ })
520
+ //如果是转维修上传,则不做校验,上传完成后自动转维修
521
+ console.log('this.isToRepair=======》'+this.isToRepair)
522
+ console.log('this.livedispose=======》'+this.livedispose)
523
+ if(!this.isToRepair){
524
+ if(haslivedispose.data.length > 0 && (this.livedispose == 'true' || this.livedispose == true)){
525
+ console.log('是否已转维修')
526
+ console.log(this.isSafeCheckToRepair)
527
+ if(!this.isSafeCheckToRepair){
528
+ this.$showMessage('有未处理的隐患,请前往拍照上传中将安检转为维修单!')
529
+ return
530
+ }
531
+ }
532
+ }
533
+ console.log(`codata类型-->${typeof codata}`)
534
+ for (let key in codata){
535
+ if(key.startsWith("device")){
536
+ codata[key] = []
537
+ }
538
+ }
539
+ console.log(`codata内容-->${JSON.stringify(codata)}`)
540
+ // HostApp.uploadPaper({f_check_item_id: this.data.f_check_item_id, f_checker_id: this.data.f_checker_id, data: this.data})
541
+ try {
542
+ let response = this.$androidUtil.bzLogic('上传安检信息', {
543
+ f_check_item_id: this.data.f_check_item_id,
544
+ f_checker_id: this.data.f_checker_id,
545
+ row: codata
546
+ })
547
+ if (response.code == 200) {
548
+ console.log('=============response.data==================')
549
+ console.log(JSON.stringify(response.data))
550
+ let f_paper_id
551
+ if(response.data != '' && response.data != null){
552
+ f_paper_id = JSON.parse(response.data).id
553
+ }
554
+ this.$set('data.f_paper_id', f_paper_id)
555
+ console.log('=============f_paper_id==================')
556
+ console.log(JSON.stringify(f_paper_id))
557
+ console.log(this.data.f_paper_id)
558
+ console.log("===data"+JSON.stringify(this.data))
559
+ for (let device in this.data){
560
+ console.log("上传设备信息device=======>"+device)
561
+ console.log("上传设备信息device=======>"+JSON.stringify(this.data[device]))
562
+ if(device.startsWith("device")){
563
+ for(let devices of this.data[device]) {
564
+ devices.f_paper_id = f_paper_id
565
+ let ret = this.$androidUtil.bzLogic('UpCheckPaperDevices', {
566
+ row: devices
567
+ })
568
+ console.log(`上传设备信息结果res======${JSON.stringify(ret.data)}`)
569
+ if(ret.code == 200){
570
+ console.log(`设备信息id======${ret.data.f_device_id}`)
571
+ devices.f_device_id = JSON.parse(ret.data.f_device_id).id
572
+ }
573
+ console.log('上传设备信息device======')
574
+ console.log(JSON.stringify(devices))
575
+ if (ret.code != 200) {
576
+ //TODO 失败后处理
577
+ // this.isUpload = false
578
+ this.$showMessage("上传失败!")
579
+ return false
580
+ }
581
+ }
582
+ }
583
+ }
584
+ // for (let device of this.f_devices) {
585
+ // device.f_paper_id = f_paper_id
586
+ // console.log('上传设备信息device======')
587
+ // console.log(JSON.stringify(device))
588
+ // let ret = this.$androidUtil.bzLogic('UpCheckPaperDevices', {
589
+ // row: device
590
+ // })
591
+ // console.log(`上传设备信息结果res======${ret}`)
592
+ // if (ret.code != 200) {
593
+ // //TODO 失败后处理
594
+ // HostApp.alert("上传失败!")
595
+ // return false
596
+ // }
597
+ // }
598
+ let result = this.$androidUtil.bzLogic('FinishUpload',
599
+ {
600
+ f_check_item_id: this.data.f_check_item_id,
601
+ f_userinfo_id: codata.f_userinfoid,
602
+ f_last_check_result: codata.f_defect_content
603
+ })
604
+ if(result.code == 200){
605
+ // this.$showAlert('上传成功!', 'success', 2000)
606
+ this.$showMessage('上传成功!')
607
+ this.isStrat=false
608
+ if(url != "" ){
609
+ this.$resetpost(`${url}`,{data:WxResult})
610
+ }
611
+ return true
612
+ }else{
613
+ // this.isUpload = false
614
+ this.$showMessage("上传失败!")
615
+ return false
616
+ }
617
+ }else{
618
+ // this.isUpload = false
619
+ this.$showMessage("上传失败!")
620
+ return false
621
+ }
622
+ }catch (e) {
623
+ console.log('上传失败==='+JSON.stringify(e))
624
+ // this.isUpload = false
625
+ this.$showMessage("上传失败!")
626
+ }
627
+ }
628
+ },
629
+
630
+ save() {
631
+ let codata = this.getAllDefect()
632
+ console.log(`codata类型-->${typeof codata}`)
633
+ console.log(`codata内容-->${JSON.stringify(codata)}`)
634
+ for (let key in codata){
635
+ if(key.startsWith("device")){
636
+ codata[key] = []
637
+ }
638
+ }
639
+ console.log(`codata内容-->${JSON.stringify(codata)}`)
640
+ if(Vue.android) {
641
+ let value = this.$androidUtil.path({alias: 'getUserinfomation', data:{condition: "f_userinfoid = '"+ this.item.f_userinfoid+"' and f_no_checkplan = '无计划安检'"}})
642
+
643
+ if(this.item.f_no_checkplan == '无计划安检' && value.data.length == 0 && this.item.f_no_checkplan != '打回'){
644
+ let result = this.$androidUtil.bzLogic('SafeSaveNoPaper', {
645
+ f_check_item_id: this.data.f_check_item_id,
646
+ f_checker_id: this.data.f_checker_id,
647
+ f_upload_state:'未传',
648
+ row: codata
649
+ })
650
+ if (result.code == 200) {
651
+ //保存devices
652
+ let res = this.$androidUtil.bzLogic('getPaperInfo', {
653
+ f_check_item_id: this.data.f_noplan_item_id
654
+ })
655
+ console.log(`查询paper结果res======${res.data}`)
656
+ if(res.code == 200){
657
+ let f_paper_id = res.data[0].id
658
+ for (let device of this.f_devices){
659
+ device.f_paper_id = f_paper_id
660
+ console.log('设备信息device======',device)
661
+ let ret = this.$androidUtil.bzLogic('saveDevice', {
662
+ row:device
663
+ })
664
+ if(ret.code != 200){
665
+ //TODO 失败后处理
666
+ // if(this.isUpload){
667
+ // this.isUpload = false
668
+ // }
669
+ this.$showMessage("保存失败!")
670
+ return false
671
+ }
672
+ }
673
+ }
674
+ // this.$showAlert('保存成功!', 'success', 2000)
675
+ this.$showMessage('保存成功!')
676
+ return true
677
+ } else {
678
+ // if(this.isUpload){
679
+ // this.isUpload = false
680
+ // }
681
+ this.$showMessage("保存失败!")
682
+ return false
683
+ }
684
+ }else {
685
+ //保存paper
686
+ let result = this.$androidUtil.bzLogic('保存安检单信息', {
687
+ f_check_item_id: this.data.f_check_item_id,
688
+ f_checker_id: this.data.f_checker_id,
689
+ row: codata
690
+ })
691
+ if (result.code == 200) {
692
+ //保存devices
693
+ let res = this.$androidUtil.bzLogic('getPaperInfo', {
694
+ f_check_item_id: this.data.f_check_item_id
695
+ })
696
+ console.log(`查询paper结果res======${res.data}`)
697
+ if(res.code == 200){
698
+ let f_paper_id = res.data[0].id
699
+ for (let device of this.f_devices){
700
+ device.f_paper_id = f_paper_id
701
+ console.log('设备信息device======',device)
702
+ let ret = this.$androidUtil.bzLogic('saveDevice', {
703
+ row:device
704
+ })
705
+ if(ret.code != 200){
706
+ //TODO 失败后处理
707
+ // if(this.isUpload){
708
+ // this.isUpload = false
709
+ // }
710
+ this.$showMessage("保存失败!")
711
+ return false
712
+ }
713
+ }
714
+ }
715
+ // this.$showAlert('保存成功!', 'success', 2000)
716
+ this.$showMessage('保存成功!')
717
+ return true
718
+ } else {
719
+ // if(this.isUpload){
720
+ // this.isUpload = false
721
+ // }
722
+ this.$showMessage("保存失败!")
723
+ return false
724
+ }
725
+ }
726
+
727
+ }else{
728
+ console.log("保存的值",codata)
729
+ let value = this.$androidUtil.path({alias: 'getUserinfomation', data:{condition: "f_userinfoid = '"+ this.item.f_userinfoid+"' and f_no_checkplan = '无计划安检'"}})
730
+
731
+ if(this.item.f_no_checkplan == '无计划安检' && value.data.length == 0 && this.item.f_no_checkplan != '打回'){
732
+ this.$androidUtil.bzLogic('SafeSaveNoPaper', {
733
+ f_check_item_id: this.data.f_check_item_id,
734
+ f_checker_id: this.data.f_checker_id,
735
+ f_upload_state: '未传',
736
+ row: codata
737
+ }).then((res)=> {
738
+ if (res.data.code == 200) {
739
+ //保存devices
740
+ this.$androidUtil.bzLogic('getPaperInfo', {
741
+ f_check_item_id: this.data.f_check_item_id
742
+ }).then((res)=>{
743
+ console.log(`查询paper结果res======${res}`)
744
+ if(res.data.code == 200){
745
+
746
+ let f_paper_id = res.data.data[0].id
747
+ for (let device of this.f_devices){
748
+ device.f_paper_id = f_paper_id
749
+ console.log('设备信息device======',device)
750
+ this.$androidUtil.bzLogic('saveDevice', {
751
+ row:device
752
+ }).then((ret)=>{
753
+ console.log(`保存设备信息结果res======`,ret)
754
+ if(ret.code != 200){
755
+ // if(this.isUpload){
756
+ // this.isUpload = false
757
+ // }
758
+ //TODO 失败后处理
759
+ this.$showMessage("保存失败!")
760
+ return false
761
+ }
762
+ })
763
+ }
764
+ }
765
+ })
766
+ // this.$showAlert('保存成功!', 'success', 2000)
767
+ this.$showMessage('保存成功!')
768
+ return true
769
+ } else {
770
+ // if(this.isUpload){
771
+ // this.isUpload = false
772
+ // }
773
+ this.$showMessage("保存失败!")
774
+ return false
775
+ }
776
+ })
777
+ }else{
778
+ this.$androidUtil.bzLogic('保存安检单信息', {
779
+ f_check_item_id: this.data.f_check_item_id,
780
+ f_checker_id: this.data.f_checker_id,
781
+ row: codata
782
+ }).then((res)=> {
783
+ console.log('asdddddddddddddddddddddddddddddd')
784
+ if (res.data.code == 200) {
785
+ //保存devices
786
+ this.$androidUtil.bzLogic('getPaperInfo', {
787
+ f_check_item_id: this.data.f_check_item_id
788
+ }).then((res)=>{
789
+ console.log(`查询paper结果res======${res}`)
790
+ if(res.data.code == 200){
791
+
792
+ let f_paper_id = res.data.data[0].id
793
+ for (let device of this.f_devices){
794
+ device.f_paper_id = f_paper_id
795
+ console.log(`设备信息device======${device}`)
796
+ this.$androidUtil.bzLogic('saveDevice', {
797
+ row:device
798
+ }).then((ret)=>{
799
+ console.log(`保存设备信息结果res======${ret}`)
800
+ if(ret.code != 200){
801
+ // if(this.isUpload){
802
+ // this.isUpload = false
803
+ // }
804
+ //TODO 失败后处理
805
+ this.$showMessage("保存失败!")
806
+ return false
807
+ }
808
+ })
809
+ }
810
+ }
811
+ })
812
+ // this.$showAlert('保存成功!', 'success', 2000)
813
+ this.$showMessage('保存成功!')
814
+ return true
815
+ } else {
816
+ // if(this.isUpload){
817
+ // this.isUpload = false
818
+ // }
819
+ this.$showMessage("保存失败!")
820
+ return false
821
+ }
822
+ })
823
+ }}},
824
+
825
+ disableTimer() {
826
+ if(this.timer) {
827
+ window.clearTimeout(this.timer)
828
+ this.timer = null
829
+ }
830
+ },
831
+ loaded(paper) {
832
+ if(!paper.hasOwnProperty('id')) {
833
+ this.$showMessage("该安检单在手机上已经不存在,可能是卸载过程序。可以进入重新安检,或返回安检计划。")
834
+ this.init()
835
+ } else {
836
+ Util.booleanFilter(paper)
837
+ HostApp.__this__.$set('data', paper)
838
+ HostApp.__this__.$goto('paper-state', {}, 'paper-router')
839
+ // 如果打回重检则重新计时
840
+ console.log('HostApp.__this__.role' + HostApp.__this__.role + ' HostApp.__this__.f_approved:' + HostApp.__this__.data.f_approved)
841
+ if(HostApp.__this__.role == 'inspect'
842
+ && HostApp.__this__.data.f_approved
843
+ && HostApp.__this__.data.f_approved == '打回') {
844
+ console.log('打回')
845
+ HostApp.__this__.data.f_onsite_time = Util.toStandardTimeString()
846
+ HostApp.__this__.tick()
847
+ }
848
+ }
849
+ HostApp.__callback__ = null
850
+ HostApp.__this__ = null
851
+ },
852
+ S4() {
853
+ return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
854
+ },
855
+ init1 () {
856
+ if(this.item.f_collection_type=='按金额'){
857
+ this.config= {
858
+ "燃气表":{
859
+ "checkmust":true,
860
+ "index":1,
861
+ "items":{
862
+ //"燃气表照片":{"index":1,"type":"picture","remark":"(拍摄清晰的表具编号、字轮数、剩余气量等)"},
863
+ "基表编号":{"index":1,"type":"string","readonly":true},
864
+ "气表型号":{"index":2,"type":"string","readonly":true},
865
+ "气表品牌":{"index":3,"type":"string","readonly":true},
866
+ "进气方向":{"index":4,"type":"string","readonly":true},
867
+ "初始表底":{"index":5,"type":"number","isshow":false,"readonly":true},
868
+ "上期表读数":{"index":6,"type":"number","readonly":true,isshow:false},
869
+ "累购金额":{"index":7,"type":"number","readonly":true},
870
+ "已用金额":{"index":8,"type":"number","checkmust": true},
871
+ //显示屏数 --实际剩余气量
872
+ "剩余金额":{"index":9,"type":"number","checkmust": true},
873
+ "金额异常差值":{"index":10,"type":"number","readonly": true}
874
+ }
875
+ // 注意,配置项的index必须与上面的固定配置保持'顺序'
876
+ }
877
+ }
878
+ }else{
879
+ this.config= {
880
+ "燃气表":{
881
+ "checkmust":true,
882
+ "index":1,
883
+ "items":{
884
+ //"燃气表照片":{"index":1,"type":"picture","remark":"(拍摄清晰的表具编号、字轮数、剩余气量等)"},
885
+ "基表编号":{"index":1,"type":"string","readonly":true},
886
+ "气表型号":{"index":2,"type":"string","readonly":true},
887
+ "气表品牌":{"index":3,"type":"string","readonly":true},
888
+ "进气方向":{"index":4,"type":"string","readonly":true},
889
+ "初始表底":{"index":5,"type":"number","isshow":false,"readonly":true},
890
+ "上期表读数":{"index":6,"type":"number","readonly":true,isshow:false},
891
+ "累购气量":{"index":7,"type":"number","readonly":true},
892
+ "已用气量":{"index":8,"type":"number","checkmust": true},//基表数
893
+ "剩余气量":{"index":9,"type":"number","checkmust": true},//累购-已用
894
+ //显示屏数 --实际剩余气量
895
+ "气量异常差值":{"index":10,"type":"number","readonly": true}
896
+ }
897
+ // 注意,配置项的index必须与上面的固定配置保持'顺序'
898
+ }
899
+ }
900
+ }
901
+ },
902
+ init () {
903
+ this.data.f_noplan_item_id = this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()+""+this.S4()
904
+ this.data.ename = Vue.user.ename
905
+ this.data.f_outlets = Vue.user.f_parentname
906
+ this.data.f_meetunit = Vue.user.orgpathnames
907
+ this.data.orgpathstr = Vue.user.orgpathstr
908
+ this.data.f_check_item_id = this.item.id
909
+ this.data.f_check_plan_id = this.f_plan_id
910
+ this.data.f_checker_id = Vue.user.id
911
+ this.data.f_checker_name = Vue.user.name
912
+ this.data.f_check_type = this.item.f_user_type
913
+ this.data.f_subcompany = this.item.f_subcompany
914
+ this.data.f_approved = this.item.f_approved
915
+ this.data.f_repair_approved = this.item.f_repair_approved
916
+ this.data.f_no_checkplan = this.item.f_no_checkplan
917
+ this.data.f_approved = this.item.f_approved
918
+ this.data.f_filialeid = this.item.f_filialeid
919
+ this.data.f_orgstr = this.item.f_orgstr
920
+ this.data.version = this.item.version
921
+ this.$set('data.f_meters', this.item.f_plan_meters)
922
+ this.$set('data.f_userinfo_code', this.item.f_userinfo_code)
923
+ // 安检状态
924
+ this.$set('data.f_entry_status', '入户')
925
+ this.$set('data.f_usegas', '已使用')
926
+ this.$set('data.f_state',this.item.f_state)
927
+ // 用户信息
928
+ this.$set('data.f_user_name', this.item.f_user_name)
929
+ this.$set('data.f_user_phone', this.item.f_user_phone)
930
+ this.$set('data.f_userinfoid', this.item.f_userinfoid)
931
+ this.$set('data.f_address', this.item.f_address)
932
+ this.$set('data.f_card_id', this.item.f_card_id)
933
+ this.$set('data.f_area', this.item.f_area)
934
+ this.$set('data.f_street', this.item.f_street)
935
+ this.$set('data.f_room',this.item.f_room)
936
+ this.$set('data.f_building', this.item.f_building)
937
+ this.$set('data.f_unit',this.item.f_unit)
938
+ this.$set('data.f_floor', this.item.f_floor)
939
+ this.$set('data.f_residential_area' , this.item.f_residential_area)
940
+ this.$set('data.f_idnumber', this.item.f_idnumber)
941
+ this.$set('data.f_comments', this.item.f_comments)
942
+ this.$set('data.f_userproperties', this.item.f_userproperties)
943
+ // 处置方式
944
+ this.$set('data.f_no_gas_device', false)
945
+ this.$set('data.f_close_valve', false)
946
+ this.$set('data.f_unload_battery', false)
947
+ if (this.data.f_check_item_id == '' && this.item.f_no_checkplan == '无计划安检') {
948
+ this.data.f_check_item_id = this.data.f_noplan_item_id
949
+ }
950
+
951
+ //房屋结构
952
+ // this.$set('data.f_room_style', '多层')
953
+ //供暖方式
954
+ // this.$set('data.f_heating_style', '热力公司集中供暖')
955
+ if(this.item.f_plan_meters) {
956
+ for (let de in this.devices) {
957
+ this.$set('data.device' + this.devices[de].n, [])
958
+ for (let i = 0; i < this.item.f_plan_meters.length; i++) {
959
+ if(this.item.f_plan_meters[i].f_meter_type) {
960
+ if (this.devices[de].device == "燃气表" && this.item.f_plan_meters[i].f_meter_type.indexOf('机表') > 0) {
961
+ delete this.config['燃气表']['items']['累计购气量']
962
+ this.data['device' + this.devices[de].n].push({
963
+ f_device_type: "燃气表",
964
+ f_items: [{
965
+ f_defect_level: null,
966
+ f_device_id: "",
967
+ f_is_defect: "",
968
+ f_item_name: "表品牌",
969
+ f_item_value: this.item.f_plan_meters[i].f_aliasname,
970
+ f_path: "",
971
+ type: "string"
972
+ },
973
+ {
974
+ f_defect_level: null,
975
+ f_device_id: "",
976
+ f_is_defect: "",
977
+ f_item_name: "位置",
978
+ f_item_value: this.item.f_plan_meters[i].f_weizhi,
979
+ f_path: "",
980
+ type: "selector"
981
+ },
982
+ {
983
+ f_defect_level: null,
984
+ f_device_id: "",
985
+ f_is_defect: "",
986
+ f_item_name: "表号",
987
+ f_item_value: this.item.f_plan_meters[i].f_meter_no,
988
+ f_path: "",
989
+ type: "number"
990
+ },
991
+ {
992
+ f_defect_level: null,
993
+ f_device_id: "",
994
+ f_is_defect: "",
995
+ f_item_name: "表封号",
996
+ f_item_value: this.item.f_plan_meters[i].f_metertitles,
997
+ f_path: "",
998
+ type: "number"
999
+ },
1000
+ {
1001
+ f_defect_level: null,
1002
+ f_device_id: "",
1003
+ f_is_defect: "",
1004
+ f_item_name: "表型号",
1005
+ f_item_value: this.item.f_plan_meters[i].f_diaphgram_size,
1006
+ f_path: "",
1007
+ type: "selector"
1008
+ },
1009
+ {
1010
+ f_defect_level: null,
1011
+ f_device_id: "",
1012
+ f_is_defect: "",
1013
+ f_item_name: "表底数",
1014
+ f_item_value: this.item.f_plan_meters[i].f_prior_reading,
1015
+ f_path: "",
1016
+ type: "number"
1017
+ }
1018
+ ]
1019
+ })
1020
+ } else if (this.devices[de].device == "燃气表") {
1021
+ delete this.config['燃气表']['items']['表底数']
1022
+ this.data['device' + this.devices[de].n].push({
1023
+ f_device_type: "燃气表",
1024
+ f_items: [{
1025
+ f_defect_level: null,
1026
+ f_device_id: "",
1027
+ f_is_defect: "",
1028
+ f_item_name: "表品牌",
1029
+ f_item_value: this.item.f_plan_meters[i].f_aliasname,
1030
+ f_path: "",
1031
+ type: "string"
1032
+ },
1033
+ {
1034
+ f_defect_level: null,
1035
+ f_device_id: "",
1036
+ f_is_defect: "",
1037
+ f_item_name: "位置",
1038
+ f_item_value: this.item.f_plan_meters[i].f_weizhi,
1039
+ f_path: "",
1040
+ type: "selector"
1041
+ },
1042
+ {
1043
+ f_defect_level: null,
1044
+ f_device_id: "",
1045
+ f_is_defect: "",
1046
+ f_item_name: "表号",
1047
+ f_item_value: this.item.f_plan_meters[i].f_meter_no,
1048
+ f_path: "",
1049
+ type: "number"
1050
+ },
1051
+ {
1052
+ f_defect_level: null,
1053
+ f_device_id: "",
1054
+ f_is_defect: "",
1055
+ f_item_name: "表封号",
1056
+ f_item_value: this.item.f_plan_meters[i].f_metertitles,
1057
+ f_path: "",
1058
+ type: "number"
1059
+ },
1060
+ {
1061
+ f_defect_level: null,
1062
+ f_device_id: "",
1063
+ f_is_defect: "",
1064
+ f_item_name: "表型号",
1065
+ f_item_value: this.item.f_plan_meters[i].f_diaphgram_size,
1066
+ f_path: "",
1067
+ type: "selector"
1068
+ },
1069
+ {
1070
+ f_defect_level: null,
1071
+ f_device_id: "",
1072
+ f_is_defect: "",
1073
+ f_item_name: "累计购气量",
1074
+ f_item_value: this.item.f_plan_meters[i].f_prior_reading,
1075
+ f_path: "",
1076
+ type: "number"
1077
+ }
1078
+ ]
1079
+ })
1080
+ }
1081
+ }
1082
+ }
1083
+ }
1084
+ }
1085
+
1086
+ this.$goto('paper-state', {}, 'paper-router')
1087
+ },
1088
+ extend(initalObj, finalObj) {
1089
+ var obj = finalObj || {};
1090
+ for (var i in initalObj) {
1091
+ var prop = initalObj[i];
1092
+
1093
+ // 避免相互引用对象导致死循环,如initalObj.a = initalObj的情况
1094
+ if (prop === obj) {
1095
+ continue;
1096
+ }
1097
+
1098
+ if (typeof prop === 'object') {
1099
+ if (obj[i]) {
1100
+ this.extend(obj[i], prop)
1101
+ } else {
1102
+ obj[i] = prop;
1103
+ }
1104
+ }
1105
+ }
1106
+ return obj;
1107
+ },
1108
+ /*
1109
+ var a = {
1110
+ "燃气表":{
1111
+ "index": 1,
1112
+ "checkmust":true,
1113
+ "items":{
1114
+ "表具故障":{"index": 13,"multiple":true,"type":"selector","options":[{"data":"死表","isdefect":true,"level":"安检维修"},{"data":"常通","isdefect":true,"level":"安检维修"},{"data":"表体漏气","isdefect":true,"level":"一级隐患安检维修"},{"data":"接口漏气","isdefect":true,"level":"一级隐患安检维修"},{"data":"偷气","isdefect":true,"level":"一级隐患"},{"data":"反装","isdefect":true},{"data":"气量不符","isdefect":true,"level":"安检维修"},{"data":"其他","isdefect":true,"level":"一级隐患"}]},
1115
+ "其他":{"index": 14,"isshow":false,"type":"string"},
1116
+ "表具隐患类型":{"index": 15,"multiple":true,"type":"selector","options":[{"data":"挂物","isdefect":true},{"data":"包裹","isdefect":true},{"data":"不便维修","isdefect":true},{"data":"封闭包裹","isdefect":true,"level":"一级隐患"},{"data":"与电源或火源过近","isdefect":true,"level":"三级隐患"}]}
1117
+ }
1118
+ },
1119
+ "报警器":{
1120
+ "index": 2,
1121
+ "checkmust":true,
1122
+ "items":{
1123
+ "有否":{"index": 1,"multiple":false,"type":"selector","options":[{"data":"有","isdefect":false,"isdefault":true},{"data":"无","isdefect":false}]},
1124
+ "厂家":{"index": 2,"multiple":false,"isshow":false,"type":"selector","options":[{"data":"汉威","isdefect":false},{"data":"鑫豪斯","isdefect":false},{"data":"友谊","isdefect":false},{"data":"其他","isdefect":false},{"data":"富昌","isdefect":false},{"data":"科信","isdefect":false}]},
1125
+ "安装时间":{"index": 3,"isshow": false,"type":"date"},
1126
+ "到期时间":{"index": 4,"isshow": false,"type":"date"},
1127
+ "是否通电":{"index": 5,"multiple":false,"isshow": false,"type":"selector","options":[{"data":"是","isdefect":false,"isdefault":true},{"data":"否","isdefect":true}]},
1128
+ "安装渠道":{"index": 6,"isshow": false,"multiple":false,"type":"selector","options":[{"data":"惠众","isdefect":false},{"data":"其他","isdefect":false}]},
1129
+ "电磁阀接口漏气":{"index": 7,"multiple":false,"isshow": false,"type":"selector","options":[{"data":"否","isdefect":false,"isdefault":true},{"data":"是","isdefect":true,"level":"一级隐患安检维修"}]}
1130
+ }
1131
+ }}
1132
+ */
1133
+ putDevices() {
1134
+ //console.log('Vue.config.safecheck', Vue.config.safecheck.safetype)
1135
+ this.$set('data.approve', "true")
1136
+ this.$set('data.writeback', "false")
1137
+ if (Vue.config.safecheck.ApproveConfig != undefined) {
1138
+ if (Vue.config.safecheck.ApproveConfig.approve != undefined) {
1139
+ this.$set('data.approve', Vue.config.safecheck.ApproveConfig.approve)
1140
+ }
1141
+ if (Vue.config.safecheck.ApproveConfig.writeback != undefined) {
1142
+ this.$set('data.writeback', Vue.config.safecheck.ApproveConfig.writeback)
1143
+ }
1144
+ if (Vue.config.safecheck.ApproveConfig.livedispose != undefined) {
1145
+ this.livedispose = Vue.config.safecheck.ApproveConfig.livedispose
1146
+ }
1147
+ }
1148
+ console.log('当前安检类型----'+this.item.f_safecheck_type)
1149
+ if(!this.item.f_safecheck_type){
1150
+ this.config = this.extend(this.config, Vue.config.safecheck[Vue.config.safecheck.SafecheckType['年度普检']['民用']])
1151
+ }else{
1152
+ if (Vue.config.safecheck.DevicesConfig != undefined)
1153
+ this.config = this.extend(this.config, Vue.config.safecheck[Vue.config.safecheck.SafecheckType[this.item.f_safecheck_type]['民用']])
1154
+ }
1155
+ //遍历安检项配置
1156
+ for (let i in this.config) {
1157
+ //取得安检项索引值
1158
+ let n = this.config[i].index
1159
+ this.devices[n - 1] = {device: i, n: n, checkmust: this.config[i].checkmust}
1160
+ this.$set('data.' + 'device' + n, [])
1161
+ let items = []
1162
+ for (let it in this.config[i].items) {
1163
+ //赋值下拉选项
1164
+ if (this.config[i].items[it].type == 'selector') {
1165
+ for (let op in this.config[i].items[it].options)
1166
+ if (this.config[i].items[it].options[op].isdefault == true) {
1167
+ items.push({
1168
+ f_defect_level: this.config[i].items[it].options[op].level,
1169
+ f_is_defect: this.config[i].items[it].options[op].isdefect,
1170
+ f_item_name: it,
1171
+ f_item_value: this.config[i].items[it].options[op].data,
1172
+ f_path: "",
1173
+ type: "selector"
1174
+ })
1175
+ }
1176
+ }
1177
+ }
1178
+ n = n + 1
1179
+ }
1180
+
1181
+ },
1182
+ //获取当前时间
1183
+ getNowFormatDate(){
1184
+ var date = new Date();
1185
+ var seperator1 = "-";
1186
+ var seperator2 = ":";
1187
+ var month = date.getMonth() + 1;
1188
+ var strDate = date.getDate();
1189
+ if (month >= 1 && month <= 9) {
1190
+ month = "0" + month;
1191
+ }
1192
+ if (strDate >= 0 && strDate <= 9) {
1193
+ strDate = "0" + strDate;
1194
+ }
1195
+ var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
1196
+ + " " + date.getHours() + seperator2 + date.getMinutes()
1197
+ + seperator2 + date.getSeconds();
1198
+ return currentdate;
1199
+ }
1200
+ },
1201
+ ready() {
1202
+ this.init1()
1203
+ this.putDevices()
1204
+ //如果已检,则提取安检单
1205
+
1206
+ if (this.item.f_state != '未检' || this.item.f_no_checkplan == '无计划安检') {
1207
+ if (this.role != 'inspect') {
1208
+ let that = this
1209
+ let id
1210
+ if (this.role == 'view') {
1211
+ id = this.item.id
1212
+ } else if (this.role == 'androidview') {
1213
+ id = this.item.f_paper_id
1214
+ }
1215
+ this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/path/getUserinfomation`, {data: {condition: `id = '${id}'`}}).then((respanse) => {
1216
+ console.log('result....', respanse)
1217
+ if (respanse.data.length != 0) {
1218
+ // 包含 其它 特殊处理的数组
1219
+ // 对应位置
1220
+
1221
+ console.log('devices => ', respanse.data[0])
1222
+
1223
+ that.data = Object.assign(that.data, respanse.data[0])
1224
+ if (respanse.data[0].f_devices) {
1225
+ for (let da in that.devices) {
1226
+ that.$set('data.device' + that.devices[da].n, [])
1227
+ }
1228
+ respanse.data[0].f_devices.forEach((item) => {
1229
+ for (let de in that.devices) {
1230
+ if (that.devices[de].device == item.f_device_type) {
1231
+ item.f_items.forEach((f_item) => {
1232
+ console.log('f_item====>', f_item)
1233
+ console.log('f_item.f_path====>', f_item.f_path)
1234
+ let itemValues = []
1235
+ f_item.f_item_lists.forEach((tempItem) => {
1236
+ console.log('emm => ', f_item.f_item_name, ' ', tempItem.f_item_value)
1237
+ if (tempItem.f_item_value !== 'null') {
1238
+ itemValues.push(tempItem.f_item_value)
1239
+ }
1240
+ })
1241
+ f_item.f_item_value = itemValues
1242
+ })
1243
+ that.data['device' + that.devices[de].n].push({
1244
+ f_device_type: item.f_device_type,
1245
+ f_items: item.f_items
1246
+ })
1247
+ }
1248
+ }
1249
+ })
1250
+ }
1251
+ Util.replaceFalse(that.data)
1252
+ Util.booleanFilter(that.data)
1253
+ if (this.role == 'view') {
1254
+ Util.ratifyPics(that.data)
1255
+ Util.ratifyPics(that.picture)
1256
+ } else {
1257
+ Util.androidRatifyPics(that.data, this.$androidUtil.getProxyUrl())
1258
+ }
1259
+ console.log("that.data:", that.data)
1260
+ } else {
1261
+ alert("该安检单可能已不在本地!")
1262
+ this.init()
1263
+ }
1264
+ // this.$goto('paper-message-blank', {userinfo:this.data,devices:this.devices,config:this.config,role:this.role}, 'self')
1265
+ this.isshow = true
1266
+ }
1267
+ ).catch(
1268
+ (respanse) => {
1269
+ console.log('respanse',respanse)
1270
+ alert('查找安检单失败')
1271
+ })
1272
+ }
1273
+ // else {
1274
+ // let that = this
1275
+ // this.$androidUtil.bzLogic('FetchCheckPaper', {id: this.item.id}).then((respanse) => {
1276
+ // if (respanse.data.data.length != 0) {
1277
+ // that.data = Object.assign(that.data, respanse.data.data[0])
1278
+ // if (respanse.data.data[0].f_devices) {
1279
+ // for (let da in that.devices) {
1280
+ // that.$set('data.device' + that.devices[da].n, [])
1281
+ // }
1282
+ // respanse.data.data[0].f_devices.forEach((item) => {
1283
+ // for (let de in that.devices) {
1284
+ // if (that.devices[de].device == item.f_device_type) {
1285
+ // that.$set('data.device' + that.devices[de].n, [])
1286
+ // that.data['device' + that.devices[de].n].push({
1287
+ // f_device_type: item.f_device_type,
1288
+ // f_items: item.f_items
1289
+ // })
1290
+ // }
1291
+ // }
1292
+ // })
1293
+ // }
1294
+ // Util.booleanFilter(that.data)
1295
+ // console.log("that.data:", that.data)
1296
+ // } else {
1297
+ // alert("该安检单可能已不在本地!")
1298
+ // this.init()
1299
+ // }
1300
+ // // this.$goto('paper-message-blank', {userinfo:this.data,devices:this.devices,config:this.config,role:this.role}, 'self')
1301
+ // this.isshow = true
1302
+ // }
1303
+ // ).catch(
1304
+ // (respanse) => {
1305
+ // alert('查找安检单失败')
1306
+ // })
1307
+ // }
1308
+ } else {
1309
+ this.init()
1310
+ }
1311
+ },
1312
+ watch:{
1313
+ // 'isUpload'(val){
1314
+ // console.log('isUpload发生变化===>'+val)
1315
+ // }
1316
+ },
1317
+ destroyed() {
1318
+ console.log('退出当前页Set')
1319
+ this.disableTimer()
1320
+ }
1321
+ }
1322
+
1323
+ </script>