safecheck-client 3.0.32-gongyi → 3.0.33-gongyi

Sign up to get free protection for your applications and to get access to all the features.
Files changed (839) 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 +343 -343
  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 +970 -970
  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/SafecheckState.vue +437 -437
  445. package/src/components/android/SafecheckUser.vue +580 -580
  446. package/src/components/android/ShebeiDevices.vue +980 -980
  447. package/src/components/android/StationMaster.vue +12 -12
  448. package/src/components/android/SwitchValve.vue +230 -230
  449. package/src/components/android/SystemSetting.vue +84 -84
  450. package/src/components/android/ToolsPage.vue +51 -51
  451. package/src/components/android/TrackState.vue +134 -134
  452. package/src/components/android/UploadPage.vue +338 -338
  453. package/src/components/android/checkPlanResult.vue +302 -302
  454. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  455. package/src/components/android/wasm/PhoneSafePlan.vue +39 -39
  456. package/src/components/android/wasm/TestData.js +448 -448
  457. package/src/components/android/wasm/comp.js +33 -33
  458. package/src/components/attendance/DailyAttendance.vue +99 -99
  459. package/src/components/attendance/MonthlyAttendance.vue +194 -194
  460. package/src/components/callincheck/CallInCheckMain.vue +146 -146
  461. package/src/components/callincheck/CallInPlan.vue +148 -148
  462. package/src/components/callincheck/UserFileList.vue +155 -155
  463. package/src/components/checkAreaClassification.vue +285 -285
  464. package/src/components/checkerphonestate/Checker.vue +32 -32
  465. package/src/components/checkerphonestate/CheckerState.vue +97 -97
  466. package/src/components/checkplan/CheckDetail.vue +205 -205
  467. package/src/components/checkplan/CheckPlan.vue +59 -59
  468. package/src/components/checkplan/SelectCheckPlan.vue +224 -224
  469. package/src/components/checkplan/SelectMessage.vue +105 -105
  470. package/src/components/checkplan/checkmsg.vue +459 -459
  471. package/src/components/checkplan/checkmsgZG.vue +519 -519
  472. package/src/components/cockpit/Splash.vue +85 -85
  473. package/src/components/cockpit/SplashDetail.vue +66 -66
  474. package/src/components/createcheckplan/CreatePlan.vue +1052 -1052
  475. package/src/components/createcheckplan/CreatePlanWuan.vue +1024 -1024
  476. package/src/components/createcheckplan/DelPlanRepeat.vue +318 -318
  477. package/src/components/createcheckplan/DistributePlan.vue +62 -62
  478. package/src/components/createcheckplan/PlanList.vue +433 -433
  479. package/src/components/createcheckplan/PlanUersList.vue +137 -137
  480. package/src/components/defect/DefectDetail.vue +177 -177
  481. package/src/components/defect/DefectDetailWeixiu.vue +177 -177
  482. package/src/components/defect/DefectList.vue +489 -489
  483. package/src/components/defect/DefectMain.vue +63 -63
  484. package/src/components/defect/DefectMainWeixiu.vue +63 -63
  485. package/src/components/defect/DefectPaper.vue +762 -762
  486. package/src/components/defect/DefectPaperWeiXiu.vue +508 -508
  487. package/src/components/defect/ImageViewer.vue +350 -350
  488. package/src/components/defect/ImgButton.vue +118 -118
  489. package/src/components/defect/ImgsButton.vue +62 -62
  490. package/src/components/defects/AddDefectModal.vue +120 -120
  491. package/src/components/defects/AddDevice.vue +95 -95
  492. package/src/components/defects/CheckPaperItem.vue +92 -92
  493. package/src/components/defects/CheckPaperItems.vue +89 -89
  494. package/src/components/defects/CheckPaperSearch.vue +349 -349
  495. package/src/components/defects/CheckPaperSearchMain.vue +55 -55
  496. package/src/components/defects/DefectCondition.vue +180 -180
  497. package/src/components/defects/DefectModal.vue +101 -101
  498. package/src/components/defects/DefectSeting.vue +98 -98
  499. package/src/components/defects/DefectsQuery.vue +190 -190
  500. package/src/components/defects/DevicesAndItem.vue +39 -39
  501. package/src/components/defects/DevicesSeting.vue +106 -106
  502. package/src/components/equipment/BoilerUsage.vue +105 -105
  503. package/src/components/equipment/CheckRate.vue +324 -324
  504. package/src/components/equipment/CheckerRate.vue +333 -333
  505. package/src/components/equipment/CookerUsage.vue +105 -105
  506. package/src/components/equipment/DeviceUsage.vue +105 -105
  507. package/src/components/equipment/FurnaceUsage.vue +105 -105
  508. package/src/components/equipment/GasMeterUsage.vue +109 -109
  509. package/src/components/equipment/HeaterUsage.vue +105 -105
  510. package/src/components/equipment/MonthCheckRate.vue +340 -340
  511. package/src/components/filialCircle/AddCircleFiliale.vue +114 -114
  512. package/src/components/filialCircle/CircleList.vue +139 -139
  513. package/src/components/filialCircle/CircleManage.vue +69 -69
  514. package/src/components/gasusage/GasUsage.vue +126 -126
  515. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  516. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  517. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  518. package/src/components/inspections/Checked.vue +402 -402
  519. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  520. package/src/components/inspections/InsUploadPage.vue +251 -251
  521. package/src/components/inspections/InspectionList.vue +542 -542
  522. package/src/components/inspections/InspectionLists.vue +544 -544
  523. package/src/components/inspections/InspectionListss.vue +544 -544
  524. package/src/components/inspections/inspectionDevices.vue +986 -986
  525. package/src/components/inspections/inspectionFeedback.vue +720 -720
  526. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  527. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  528. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  529. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  530. package/src/components/issueplan/IssuePlanAction.vue +102 -102
  531. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  532. package/src/components/issueplan/IssuePlanQuery.vue +118 -118
  533. package/src/components/json-editor/SafeJsonEditor.vue +212 -212
  534. package/src/components/json-editor/assets/img/jsoneditor-icons.svg +893 -893
  535. package/src/components/json-editor/assets/jsoneditor-minimalist.js +9750 -9750
  536. package/src/components/json-editor/assets/jsoneditor.css +929 -929
  537. package/src/components/json-editor/assets/jsoneditor.js +36376 -36376
  538. package/src/components/json-editor/example/App.vue +53 -53
  539. package/src/components/json-editor/example/index.html +9 -9
  540. package/src/components/json-editor/example/main.js +10 -10
  541. package/src/components/json-editor/package.json +71 -71
  542. package/src/components/json-editor/vue-json-editor.vue +189 -189
  543. package/src/components/levelplan/AdjustPlan.vue +199 -199
  544. package/src/components/levelplan/CheckerLeft.vue +140 -140
  545. package/src/components/levelplan/CheckerPlanAdjust.vue +304 -304
  546. package/src/components/levelplan/CheckerRight.vue +123 -123
  547. package/src/components/map/AMap.vue +70 -70
  548. package/src/components/map/AMapTrailShow.vue +178 -178
  549. package/src/components/map/AMapTrailShowZk.vue +178 -178
  550. package/src/components/map/FootPrintList.vue +45 -45
  551. package/src/components/map/MapCriteriaData.vue +97 -97
  552. package/src/components/map/checkScreen.vue +727 -727
  553. package/src/components/metterfiles/AddUserfiles.vue +246 -246
  554. package/src/components/metterfiles/MetterFiles.vue +104 -104
  555. package/src/components/metterfiles/MetterfilesAdd.vue +168 -168
  556. package/src/components/metterfiles/MetterfilesChange.vue +162 -162
  557. package/src/components/metterfiles/UserFiles.vue +156 -156
  558. package/src/components/metterfiles/Userfileschange.vue +391 -391
  559. package/src/components/notice/NoticeForm.vue +100 -100
  560. package/src/components/notice/NoticeIssue.vue +20 -20
  561. package/src/components/notice/NoticeQuery.vue +76 -76
  562. package/src/components/paper/PaperList.vue +75 -2
  563. package/src/components/paper/PaperVerify.vue +256 -256
  564. package/src/components/paper/PicViewer.vue +18 -18
  565. package/src/components/paper/PlanChooser.vue +159 -159
  566. package/src/components/paper/RepairVerify.vue +139 -139
  567. package/src/components/paper/RepairVerifyForm.vue +76 -76
  568. package/src/components/paper/VerifyForm.vue +107 -107
  569. package/src/components/paper/filialeCheckInfo.vue +111 -111
  570. package/src/components/pc/AnnouncementPC.vue +524 -524
  571. package/src/components/pc/CheckBook.vue +67 -67
  572. package/src/components/pc/CheckBookList.vue +4 -1
  573. package/src/components/pc/CheckBookManage.vue +903 -903
  574. package/src/components/pc/CheckBookUser.vue +77 -77
  575. package/src/components/pc/DeviceChange.vue +1068 -1068
  576. package/src/components/pc/HiddenChart.vue +494 -494
  577. package/src/components/pc/NewCheckpaper.vue +2 -2
  578. package/src/components/pc/PaperChazhiMain.vue +570 -570
  579. package/src/components/pc/PaperDefectMain.vue +584 -584
  580. package/src/components/pc/RoleSelector.vue +122 -122
  581. package/src/components/phonestate/DailyTraffic.vue +57 -57
  582. package/src/components/phonestate/FootprintMap.vue +129 -129
  583. package/src/components/phonestate/LastKnownState.vue +74 -74
  584. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  585. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  586. package/src/components/phonestate/PostMap.vue +82 -82
  587. package/src/components/plancheck/CheckPlanAreaManage.vue +116 -116
  588. package/src/components/plancheck/CheckPlanList.vue +282 -282
  589. package/src/components/planmanage/PlanManage.vue +753 -753
  590. package/src/components/planmanage/checkPlanList.vue +341 -341
  591. package/src/components/querycheckpaper/CheckPaperList.vue +127 -127
  592. package/src/components/querycheckpaper/CheckPaperSearchUser.vue +67 -67
  593. package/src/components/querycheckpaper/CheckSearchUser.vue +96 -4
  594. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  595. package/src/components/querycheckpaper/PaperItems.vue +79 -79
  596. package/src/components/querycheckpaper/PaperSearch.vue +126 -126
  597. package/src/components/querycheckpaper/PaperSearchMain.vue +56 -56
  598. package/src/components/querycheckpaper/ShebeiPaperList.vue +121 -121
  599. package/src/components/querycheckpaper/ShebeiPaperSearchUser.vue +67 -67
  600. package/src/components/querycheckpaper/ShebeiSearchUser.vue +690 -690
  601. package/src/components/report/CheckPlanAreaList.vue +449 -449
  602. package/src/components/report/CheckPlanAreaManage.vue +111 -111
  603. package/src/components/report/CheckPlanUserList.vue +216 -216
  604. package/src/components/report/HiddenSituation.vue +112 -112
  605. package/src/components/report/ManageBusSummary.vue +242 -242
  606. package/src/components/report/SafePlanSale.vue +111 -111
  607. package/src/components/report/SafePlanStatistics.vue +118 -118
  608. package/src/components/rongcheng/AddPlanItem.vue +315 -315
  609. package/src/components/rongcheng/AreaPlan.vue +470 -470
  610. package/src/components/rongcheng/AspPaperFeedback.vue +1179 -1179
  611. package/src/components/rongcheng/AspPaperStatem.vue +339 -339
  612. package/src/components/rongcheng/AspiratedAreaPlan.vue +464 -464
  613. package/src/components/rongcheng/AspiratedCurrentCreate.vue +1036 -1036
  614. package/src/components/rongcheng/AspiratedDevices.vue +966 -966
  615. package/src/components/rongcheng/AspiratedOrderV.vue +2376 -2376
  616. package/src/components/rongcheng/AspiratedPaperFeedbackm.vue +1019 -1019
  617. package/src/components/rongcheng/AspiratedPaperMessage.vue +1378 -1378
  618. package/src/components/rongcheng/AspiratedPaperMessageNocivil.vue +1288 -1288
  619. package/src/components/rongcheng/AspiratedUploadPage.vue +293 -293
  620. package/src/components/rongcheng/AspiratedUserInfo.vue +399 -399
  621. package/src/components/rongcheng/CheckCurrentCreate.vue +1046 -1046
  622. package/src/components/rongcheng/CheckPaperList.vue +134 -134
  623. package/src/components/rongcheng/CheckPaperSearchUser.vue +55 -55
  624. package/src/components/rongcheng/CheckPaperSearchUserNo.vue +55 -55
  625. package/src/components/rongcheng/CheckSearchUser.vue +826 -826
  626. package/src/components/rongcheng/CheckSearchUserNo.vue +757 -757
  627. package/src/components/rongcheng/DefectList.vue +560 -560
  628. package/src/components/rongcheng/DefectPaper.vue +638 -638
  629. package/src/components/rongcheng/PaperFeedback.vue +1318 -1318
  630. package/src/components/rongcheng/PaperListAJ.vue +501 -501
  631. package/src/components/rongcheng/PaperListNPAJ.vue +498 -498
  632. package/src/components/rongcheng/PaperListNPSQ.vue +485 -485
  633. package/src/components/rongcheng/PaperListSQ.vue +483 -483
  634. package/src/components/rongcheng/PaperMessage.vue +1186 -1186
  635. package/src/components/rongcheng/PaperMessageNocivil.vue +1211 -1211
  636. package/src/components/rongcheng/PaperStateNoncivilm.vue +366 -366
  637. package/src/components/rongcheng/PaperStatem.vue +343 -343
  638. package/src/components/rongcheng/PhoneDevicesInfo.vue +233 -233
  639. package/src/components/rongcheng/SafecheckDevices.vue +998 -998
  640. package/src/components/rongcheng/SafecheckOrderV.vue +2476 -2476
  641. package/src/components/rongcheng/SafecheckOrderVCli.vue +2594 -2594
  642. package/src/components/rongcheng/SafecheckUserInfo.vue +439 -439
  643. package/src/components/rongcheng/UploadPage.vue +328 -328
  644. package/src/components/rongcheng/checkerplan/SelectCheckPlan.vue +285 -285
  645. package/src/components/rongcheng/report/CheckPlanAreaList.vue +419 -419
  646. package/src/components/rongcheng/report/CheckPlanUserList.vue +228 -228
  647. package/src/components/safecheck/common/TabButton.vue +157 -157
  648. package/src/components/safecheck/common/Tabs.vue +67 -67
  649. package/src/components/safecheck/queryManage/CheckBookAll.vue +71 -71
  650. package/src/components/safecheck/queryManage/SafeCheckManage.vue +88 -88
  651. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  652. package/src/components/sendsingle/onlineChangeMeter.vue +658 -658
  653. package/src/components/sendsingle/onlineoperation.vue +411 -411
  654. package/src/components/sendsingle/onlinequeryuser.vue +363 -363
  655. package/src/components/shaoguan/CheckPlanUserList.vue +119 -119
  656. package/src/components/shaoguan/DefectDetail.vue +177 -177
  657. package/src/components/shaoguan/DefectList.vue +473 -473
  658. package/src/components/shaoguan/DefectMain.vue +53 -53
  659. package/src/components/shaoguan/DefectPaper.vue +217 -217
  660. package/src/components/shaoguan/PaperList.vue +533 -533
  661. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  662. package/src/components/task/RepairAnnual.vue +79 -79
  663. package/src/components/task/RepairAnnualDetail.vue +49 -49
  664. package/src/components/task/RepairMonthly.vue +91 -91
  665. package/src/components/task/TaskAnnual.vue +77 -77
  666. package/src/components/task/TaskAnnualDetail.vue +47 -47
  667. package/src/components/task/TaskMonthly.vue +89 -89
  668. package/src/components/tongcheng/AreaPlan.vue +458 -458
  669. package/src/components/tongcheng/CurrentCreate.vue +625 -625
  670. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  671. package/src/components/tongcheng/PaperMessage.vue +1270 -1270
  672. package/src/components/tongcheng/PaperMessageNocivil.vue +1228 -1228
  673. package/src/components/tongcheng/PaperSet.vue +1958 -1958
  674. package/src/components/tongcheng/PaperUser.vue +533 -533
  675. package/src/components/userfile/InfoModifyModal.vue +122 -122
  676. package/src/components/userfile/MeterFile.vue +145 -145
  677. package/src/components/userfile/MeterModify.vue +46 -46
  678. package/src/components/userfile/UserFile.vue +118 -118
  679. package/src/components/userfile/UserInfoAudit.vue +252 -252
  680. package/src/components/userfile/UserfileChange.vue +277 -277
  681. package/src/components/userfile/UserinfoModify.vue +117 -117
  682. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  683. package/src/components/userfileaudit/UserFileaudit.vue +81 -81
  684. package/src/components/userfileaudit/UserfileChangeaudit.vue +239 -239
  685. package/src/expandcss.less +571 -571
  686. package/src/expandcssAndroid.less +520 -520
  687. package/src/filiale/ALshan/pc/CheckSearchUser.vue +927 -927
  688. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +473 -473
  689. package/src/filiale/ALshan/pc.js +15 -15
  690. package/src/filiale/Util.js +325 -325
  691. package/src/filiale/huatong/android/SafecheckDevices.vue +928 -928
  692. package/src/filiale/huatong/android/SafecheckOrderV.vue +2398 -2398
  693. package/src/filiale/huatong/android.js +14 -14
  694. package/src/filiale/huatong/pc.js +13 -13
  695. package/src/filiale/liaoyuan/android/SafecheckDevices.vue +928 -928
  696. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2383 -2383
  697. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +550 -550
  698. package/src/filiale/liaoyuan/android.js +14 -14
  699. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +483 -483
  700. package/src/filiale/liaoyuan/pc/DefectPaperWeiXiu.vue +975 -975
  701. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  702. package/src/filiale/liaoyuan/pc/PaperList.vue +657 -657
  703. package/src/filiale/liaoyuan/pc.js +15 -15
  704. package/src/filiale/lixian/android/SafecheckDevices.vue +1022 -1022
  705. package/src/filiale/lixian/android/SafecheckOrderV.vue +2403 -2403
  706. package/src/filiale/lixian/android/SafecheckUserInfo.vue +586 -586
  707. package/src/filiale/lixian/android.js +14 -14
  708. package/src/filiale/lixian/pc/CheckPlanAreaList.vue +461 -461
  709. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  710. package/src/filiale/lixian/pc/PaperChazhiMain.vue +607 -607
  711. package/src/filiale/lixian/pc/PaperDefectMain.vue +617 -617
  712. package/src/filiale/lixian/pc/PaperList.vue +686 -686
  713. package/src/filiale/lixian/pc.js +22 -22
  714. package/src/filiale/rongchuang/pc/checkUserList.vue +594 -594
  715. package/src/filiale/rongchuang/pc.js +13 -13
  716. package/src/filiale/shimen/android/CurrentCreate.vue +979 -979
  717. package/src/filiale/shimen/android/PaperFeedback.vue +1341 -1341
  718. package/src/filiale/shimen/android/PhoneSellInfo.vue +88 -88
  719. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  720. package/src/filiale/shimen/android.js +12 -12
  721. package/src/filiale/shimen/pc/CheckPlanAreaList.vue +463 -463
  722. package/src/filiale/shimen/pc/CheckSearchUser.vue +927 -927
  723. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  724. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  725. package/src/filiale/shimen/pc/PaperDefectMain.vue +656 -656
  726. package/src/filiale/shimen/pc/PaperList.vue +613 -613
  727. package/src/filiale/shimen/pc/checkmsg.vue +248 -248
  728. package/src/filiale/shimen/pc.js +21 -21
  729. package/src/filiale/tongchuan/android/PaperFeedback.vue +1350 -1350
  730. package/src/filiale/tongchuan/android/SafecheckDevices.vue +1112 -1112
  731. package/src/filiale/tongchuan/android/SafecheckOrderV.vue +2575 -2575
  732. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +640 -640
  733. package/src/filiale/tongchuan/android/UploadPage.vue +285 -285
  734. package/src/filiale/tongchuan/android.js +13 -13
  735. package/src/filiale/tongchuan/pc/CheckPlanUserList.vue +245 -245
  736. package/src/filiale/tongchuan/pc/CheckSearchUser.vue +956 -956
  737. package/src/filiale/tongchuan/pc/DefectPaper.vue +764 -764
  738. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +509 -509
  739. package/src/filiale/tongchuan/pc/NewCheckpaper.vue +1267 -1267
  740. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +634 -634
  741. package/src/filiale/tongchuan/pc/PaperList.vue +677 -677
  742. package/src/filiale/tongchuan/pc/checkUserList.vue +593 -593
  743. package/src/filiale/tongchuan/pc.js +21 -21
  744. package/src/filiale/wenxi/android/CurrentCreate.vue +1047 -1047
  745. package/src/filiale/wenxi/android/PaperFeedback.vue +1378 -1378
  746. package/src/filiale/wenxi/android/SafecheckDevices.vue +1053 -1053
  747. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2472 -2472
  748. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +584 -584
  749. package/src/filiale/wenxi/android/UploadPage.vue +285 -285
  750. package/src/filiale/wenxi/android.js +14 -14
  751. package/src/filiale/wenxi/pc/DefectPaper.vue +662 -662
  752. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1169 -1169
  753. package/src/filiale/wenxi/pc/PaperDefectMain.vue +634 -634
  754. package/src/filiale/wenxi/pc/PaperList.vue +860 -860
  755. package/src/filiale/wenxi/pc/checkmsg.vue +302 -302
  756. package/src/filiale/wenxi/pc.js +16 -16
  757. package/src/filiale/wuan/android/AreaPlan.vue +513 -513
  758. package/src/filiale/wuan/android/CurrentCreate.vue +985 -985
  759. package/src/filiale/wuan/android/CurrentCreateSheBei.vue +999 -999
  760. package/src/filiale/wuan/android/SafecheckDevices.vue +1150 -1150
  761. package/src/filiale/wuan/android/SafecheckOrderV.vue +2237 -2237
  762. package/src/filiale/wuan/android/SafecheckUserInfo.vue +571 -571
  763. package/src/filiale/wuan/android.js +17 -17
  764. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  765. package/src/filiale/wuan/pc/DefectPaperWeiXiu.vue +514 -514
  766. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  767. package/src/filiale/wuan/pc/PaperList.vue +628 -628
  768. package/src/filiale/wuan/pc.js +19 -19
  769. package/src/filiale/wuhai/android/AreaPlan.vue +529 -529
  770. package/src/filiale/wuhai/android/PaperFeedback.vue +1350 -1350
  771. package/src/filiale/wuhai/android.js +12 -12
  772. package/src/filiale/wuhai/pc/checkUserList.vue +594 -594
  773. package/src/filiale/wuhai/pc.js +13 -13
  774. package/src/filiale/zhongsheng/android/PaperFeedback.vue +1341 -1341
  775. package/src/filiale/zhongsheng/android/PhoneUpUserinfo.vue +926 -926
  776. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2447 -2447
  777. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +591 -591
  778. package/src/filiale/zhongsheng/android.js +17 -17
  779. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  780. package/src/filiale/zhongsheng/pc/DefectPaperWeiXiu.vue +511 -511
  781. package/src/filiale/zhongsheng/pc/InfoModifyModal.vue +123 -123
  782. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1308 -1308
  783. package/src/filiale/zhongsheng/pc/UserInfoAudit.vue +252 -252
  784. package/src/filiale/zhongsheng/pc/UserinfoModify.vue +121 -121
  785. package/src/filiale/zhongsheng/pc.js +15 -15
  786. package/src/filiale/zhoukou/android/AndroidDefectDeal.vue +408 -408
  787. package/src/filiale/zhoukou/android/AreaPlan.vue +543 -543
  788. package/src/filiale/zhoukou/android/CurrentCreate.vue +1014 -1014
  789. package/src/filiale/zhoukou/android/PaperFeedback.vue +1367 -1367
  790. package/src/filiale/zhoukou/android/PhoneUpUserinfo.vue +957 -957
  791. package/src/filiale/zhoukou/android/SafecheckDevices.vue +1174 -1174
  792. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  793. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  794. package/src/filiale/zhoukou/android/UploadPage.vue +301 -301
  795. package/src/filiale/zhoukou/android.js +18 -18
  796. package/src/filiale/zhoukou/pc/CheckSearchUser.vue +923 -923
  797. package/src/filiale/zhoukou/pc/PaperDefectMain.vue +531 -531
  798. package/src/filiale/zhoukou/pc.js +15 -15
  799. package/src/index.js +17 -17
  800. package/src/main.js +33 -33
  801. package/src/plugins/EmojiData.js +514 -514
  802. package/src/plugins/GerJsonConfig.js +59 -59
  803. package/src/plugins/GerJsonObjectConfig.js +44 -44
  804. package/src/plugins/LoadData.js +10 -10
  805. package/src/plugins/LoadParams.js +24 -24
  806. package/src/plugins/LocalPagedList.js +108 -108
  807. package/src/plugins/LocalPathList.js +109 -109
  808. package/src/rongcheng-android.js +193 -193
  809. package/src/rongcheng.js +304 -304
  810. package/src/safecheck-android.js +225 -225
  811. package/src/safecheck.js +723 -723
  812. package/src/shaoguan-android.js +176 -176
  813. package/src/shaoguan.js +276 -276
  814. package/src/stores/AppData.js +46 -46
  815. package/src/stores/wxconfig.js +10 -10
  816. package/src/tongchengsafe-android.js +162 -162
  817. package/src/tongchengsafecheck.js +267 -267
  818. package/src/utils/GerJsonObjectConfig.js +51 -51
  819. package/src/utils/LdapHelper.js +99 -99
  820. package/src/utils/getNowDate.js +33 -33
  821. package/test/SearchList.test.js +14 -14
  822. package/test/e2e/custom-assertions/elementCount.js +26 -26
  823. package/test/e2e/nightwatch.conf.js +40 -40
  824. package/test/e2e/runner.js +30 -30
  825. package/test/e2e/specs/test.js +13 -13
  826. package/test/unit/.eslintrc +5 -5
  827. package/test/unit/TestUtil.js +62 -62
  828. package/test/unit/context.html +20 -20
  829. package/test/unit/index.js +13 -13
  830. package/test/unit/init.js +11 -11
  831. package/test/unit/karma.conf.js +53 -53
  832. package/test/unit/specs/Devices.spec.js +18 -18
  833. package/test/unit/specs/getArrobjconfig.spec.js +104 -104
  834. package/test/unit/specs/getobjconfig.spec.js +37 -37
  835. package/test/unit/specs/phonetest/phonesafecheck.spec.js +23 -23
  836. package/test/unit/specs/safePlanItem.spec.js +30 -30
  837. package/test/unit/specs/safecheck-android.spec.js +7 -7
  838. package/test/unit/specs/safecheck.spec.js +127 -127
  839. package/yarn-error.log +140 -140
@@ -1,1760 +1,1760 @@
1
- <style>
2
- .divmask {
3
- pointer-events: none;
4
- }
5
- </style>
6
-
7
- <template>
8
- <div class="auto">
9
- <!--<a href="#" class="btn btn-primary" @click="$back('items')">&lt;&lt;</a>-->
10
- <!--<a href="#" v-show="actionEnabled" class="btn btn-primary" @click="savePaper(true)" v-if="item.f_upload_state != '已传'">保存</a>-->
11
- <!--<a id="upload" href="#" v-show="actionEnabled" class="btn btn-primary" @click="uploadPaper" v-if="item.f_upload_state != '已传'">上传</a>-->
12
- <radio-group style="width:100%" :value.sync="selector" type="info" buttons="false">
13
- <radio style="width:25%" value="paper-state-noncivil">安检概况</radio>
14
- <radio style="width:25%" value="paper-user">用户信息</radio>
15
- <radio style="width:25%" value="devices">安检选项</radio>
16
- <radio style="width:25%" value="paper-feedback">拍照上传</radio>
17
- </radio-group>
18
- <route :comp="{name: 'void-page'}" name="paper-router"></route>
19
- <modal :show.sync="showModal">
20
- <div slot="modal-header" class="modal-header">
21
- <h4 class="modal-title">
22
- 照片浏览
23
- </h4>
24
- </div>
25
- <div slot="modal-body" class="modal-body">
26
- <img :src="pic_to_be_viewed" width="420" height="560">
27
- </div>
28
- <div slot="modal-footer" class="modal-footer">
29
- <button type="button" class="btn btn-default" @click="showModal = false">确认</button>
30
- </div>
31
- </modal>
32
- <!-- <back-page :need-back='true' @flag="back()" v-show="showBack"></back-page>-->
33
- </div>
34
- <!--<work-busy :is-busy="isUpload"></work-busy>-->
35
- </template>
36
-
37
- <script>
38
- import RadioGroup from 'vue-client/src/vue-strap/src/radioGroup'
39
- import Radio from 'vue-client/src/vue-strap/src/radioBtn'
40
- import Vue from 'vue'
41
- import * as Util from '../Util'
42
- import co from 'co'
43
-
44
- let getRepairParam = function * (self){
45
- let data = {
46
- model: self.model, loginUser: {
47
- name: Vue.user.name,
48
- ename: Vue.user.ename
49
- }, user: self.user, callObj: self.callObj
50
- }
51
- if(self.meading == '转维修员'){
52
- data.toRepair = '一级派单'
53
- }
54
- data.model.f_attendant = data.loginUser.name
55
- console.log('===================')
56
- console.log(data)
57
- let res
58
- let errString = self.errorVerify()
59
- if(errString){
60
- console.log(errString)
61
- if (Vue.android)
62
- self.undo()
63
- this.$showMessage(errString)
64
- return
65
- } else {
66
- if(self.role == 'inspect'){
67
- if(self.meading == '转维修员' && (self.model.serviceacitivity[0].f_reciever == '' || self.model.serviceacitivity[0].f_reciever == undefined)){
68
- this.$showMessage("请选择维修员!")
69
- return
70
- }
71
- if(self.meading == '转站点' && (self.model.serviceacitivity[0].f_reciever == '' || self.model.serviceacitivity[0].f_reciever == undefined)){
72
- this.$showMessage("请选择站点!")
73
- return
74
- }
75
- if(self.model.f_repairtype == ''){
76
- this.$showMessage("请选择报修类型!")
77
- return
78
- }
79
- console.log("转维修数据1:==》"+JSON.stringify(data))
80
- let checkResult = '正常'
81
- let options = [{"data": "已处理"},{"data": "未处理"}]
82
- let value = ''
83
- let codata = JSON.parse(JSON.stringify(self.data))
84
- for(let device in codata){
85
- console.log('转维修codata[device]'+JSON.stringify(codata[device]))
86
- let f_device_type
87
- if(device.startsWith("device")){
88
- for(let item in codata[device]) {
89
- if(codata[device].length > 1 ){
90
- let j = Number.parseInt(item)+1
91
- f_device_type = `${codata[device][item].f_device_type}${j}`
92
- }else{
93
- f_device_type = codata[device][item].f_device_type
94
- }
95
- // console.log('codata[device][item]=>',codata[device][item])
96
- let details = []
97
- for(let i in codata[device][item].f_items){
98
- let items = codata[device][item].f_items[i]
99
- console.log('items',items)
100
- if(items.f_is_defect == true || items.f_is_defect == 'true'){
101
- checkResult = '有隐患'
102
- console.log('类型----',f_device_type)
103
- // let res = yield self.$resetpost(`${self.Url}/rs/sql/getDeviceItem`,{data:{f_device_id:codata[device][item].f_device_id,f_item_name:items.f_item_name}})
104
- // console.log('获取安检设备信息结果=》'+JSON.stringify(res))
105
- self.$set('detail.f_defect_id', items.id)
106
- self.$set('detail.f_project',`${items.f_item_name}:${items.f_item_value}`)
107
- self.$set('detail.type',items.type)
108
- self.$set('detail.options',options)
109
- details.push(JSON.parse(JSON.stringify(self.detail)))
110
- }
111
- if(items.type == 'selector'){
112
- items.selected = ''
113
- }
114
- self.detail = {}
115
- }
116
- console.log('details',details)
117
- self.$set('defectDevice.f_type',f_device_type)
118
- self.$set('defectDevice.details',details)
119
- if(self.defectDevice.details.length >0 ){
120
- self.repairitems.push(JSON.parse(JSON.stringify(self.defectDevice)))
121
- }
122
- self.defectDevice = {}
123
- console.log('repairitems===>'+self.repairitems)
124
- }
125
- }
126
- }
127
- self.$set('model.f_repairitems.data',self.repairitems)
128
-
129
-
130
- console.log("转维修数据2:==》"+JSON.stringify(data))
131
- res = self.$androidUtil.bzLogic('safecheckToRepair',data)
132
- console.log('res==========')
133
- console.log(res.code)
134
- console.log(res.data)
135
- if(res.code == 200){
136
- self.isSafeCheckToRepair = true
137
- self.undo()
138
- self.$set('paper.f_SafeToRepair_id',res.data.f_service_id)
139
- console.log('更新维修单id')
140
- self.$resetpost(`${self.Url}/rs/logic/updatePaperRepair`,{data:{f_paper_id:self.data.f_paper_id,f_SafeToRepair_id:res.data.f_service_id}}).then((ret)=>{
141
- console.log('ret==>'+ret)
142
- if(ret.data.code ==200){
143
- console.log('维修单id修改成功')
144
- self.$showMessage('上传并转维修成功!')
145
- self.$dispatch('confirm')
146
- // self.$back()
147
- }else{
148
- self.$showMessage('安检转维修失败!')
149
- }
150
- }).catch(v=>{
151
- console.log('v=>'+JSON.stringify(v))
152
- self.$showMessage('安检转维修失败!')
153
- })
154
- }else{
155
- self.$showMessage('安检转维修失败!')
156
- }
157
- }
158
- }
159
- }
160
-
161
-
162
-
163
- export default {
164
- title: '安检单',
165
- props: ['f_plan_id', 'item', 'role'],
166
- data() {
167
- return {
168
- data: {
169
- f_devices:[],
170
- },
171
- isUpload:false,
172
- livedispose:'',
173
- timer: null,
174
- isToRepair:false,
175
- onlySave:true, //判断保存还是保存并上传
176
- clickBack:true, //是否点击返回按钮
177
- startClick:false,//开始安检按钮是否可点击
178
- isStart:false, //是否开始安检
179
- checkResult:{},
180
- newcheckResult:{},
181
- showModal: false,
182
- pic_to_be_viewed: '',
183
- devices:[],
184
- f_devices:[],
185
- isSafeCheckToRepair:false,//是否转维修
186
- showBack:true,
187
- Url:this.$androidUtil.getProxyUrl(),
188
- detail:{},
189
- defectDevice:{},
190
- user:{},
191
- model: { //转维修数据
192
- // 一次派单
193
- serviceacitivity: [{
194
- f_service_acitivity_type: '派单'
195
- }],
196
- f_source:'安检',
197
- f_service_id: '',
198
- f_contact_phone: '',
199
- f_meetunit: '',
200
- f_phone: '',
201
- f_user_name: '',
202
- f_address: '',
203
- f_repair_date: Util.toStandardTimeString(),
204
- f_card_id: '',
205
- // f_department: '', 站点选择
206
- f_reciever:'',
207
- f_remarks: '',
208
- f_user_type: '',
209
- f_area: '',
210
- f_unit_name:'',
211
- f_street: '',
212
- f_residential_area: '',
213
- f_building: '',
214
- f_unit: '',
215
- f_floor: '',
216
- f_room: '',
217
- aState: null,
218
- f_repairtype: '',
219
- f_repairitems:{},
220
- },
221
- repairitems:[],
222
- meading:'转站点',
223
- config:{
224
- "燃气表":{
225
- "checkmust":true,
226
- "items":{
227
- "燃气表照片":{"index":1,"type":"picture"},
228
- "表品牌":{"index":2,"type":"string"},
229
- "表号":{"index":3,"type":"string"},
230
- "表封号":{"index":4,"type":"number"},
231
- "表型号":{"index":5,"type":"selector","options":[{"data":"G2.5","isdefect":false},{"data":"G4","isdefect":false},{"data":"G6","isdefect":false},{"data":"G10","isdefect":false},{"data":"G1.6","isdefect":false},{"data":"G20","isdefect":false},{"data":"G16","isdefect":false},{"data":"G25","isdefect":false},{"data":"G60","isdefect":false},{"data":"其他","isdefect":false}]},
232
- "位置":{"index":6,"type":"selector","options":[{"data":"室内","isdefect":false},{"data":"室外","isdefect":false}]},
233
- "表底数":{"index":7,"type":"number"},
234
- "累计购气量":{"index":7,"type":"number"},
235
- }
236
- }
237
- }
238
- }
239
- },
240
- components: {
241
- RadioGroup,
242
- Radio,
243
- },
244
- computed: {
245
- selector: {
246
- get() {
247
- return 'paper-state-noncivil'
248
- },
249
- set(val) {
250
- if(this.isStrat){
251
- var pardate = {
252
- _this:this,
253
- tittle:'安检详情',
254
- safe:true
255
- }
256
- // this.$dispatch('gotoson',pardate)
257
- this.$goto(val, {userinfo:this.data}, 'paper-router')
258
- }else{
259
- this.$showMessage('未开始安检!')
260
- }
261
- }
262
- },
263
- actionEnabled: {
264
- get() {
265
- return this.role == 'inspect'
266
- }
267
- }
268
- },
269
- methods: {
270
- back(){
271
- if (this.role == 'inspect') {
272
- if(!this.isStrat){
273
- this.$back()
274
- return
275
- }else{
276
- this.clickBack = true
277
- this.save()
278
- }
279
- }else{
280
- this.$back()
281
- }
282
- },
283
- viewPic(fileName) {
284
- console.log('view pic: ' + fileName)
285
- if(this.role == 'view') {
286
- if(!fileName.endsWith('nopic.png')) {
287
- this.pic_to_be_viewed = fileName
288
- this.showModal = true
289
- }
290
- } else {
291
- HostApp.viewPic(fileName)
292
- }
293
- },
294
- tick() {
295
- this.timer = null
296
- this.data.f_offsite_time = Util.toStandardTimeString()
297
- this.timer = window.setTimeout(this.tick, 1000)
298
- },
299
- getRepairState() {
300
- let repaired = true
301
- this.data.f_defects.forEach((defect) => {
302
- repaired = repaired & (defect.f_ratification == '已处理')
303
- })
304
- return repaired
305
- },
306
- verifyRepairDefects() {
307
- this.data.f_repair_date = Util.toStandardTimeString()
308
- this.data.f_repaired = this.getRepairState() ? '已修' : '在修'
309
- },
310
- // async savePaper(saveOnly) {
311
- // if(this.role == 'repair') {
312
- // let errorMsg = this.verifyRepairDefects()
313
- // if(errorMsg) {
314
- // this.$showMessage(errorMsg)
315
- // return false
316
- // }
317
- // return this.save()
318
- // } else {
319
- // //保存时校验
320
- // let errString = this.errorVerify()
321
- // if (saveOnly) {
322
- // if (errString) {
323
- // this.data.f_complete = '未完成'
324
- // // this.isStrat = false
325
- // this.disableTimer()
326
- // return this.save()
327
- // } else {
328
- // console.log('赋值前',this.data)
329
- // if(!this.data.f_offsite_time){
330
- // this.$set('data.f_offsite_time', Util.toStandardTimeString())
331
- // }
332
- // console.log('赋值后',this.data)
333
- // this.data.f_complete = '已完成'
334
- // this.disableTimer()
335
- // return this.save()
336
- // }
337
- // } else {
338
- // if (errString) {
339
- // console.log(errString)
340
- // if (Vue.android){
341
- // // if(this.isUpload){
342
- // // this.isUpload = false
343
- // // }
344
- // this.$showMessage(errString)
345
- // }
346
- // return false
347
- // } else {
348
- // if(!this.data.f_offsite_time){
349
- // this.$set('data.f_offsite_time', Util.toStandardTimeString())
350
- // }
351
- // console.log('赋值后',this.data)
352
- // this.data.f_complete = '已完成'
353
- // this.disableTimer()
354
- // return this.uploadCheckPaper()
355
- // }
356
- // }
357
- // }
358
- // },
359
- genuineSave(saveOnly) {
360
- HostApp.__this__.save(saveOnly)
361
- if(!saveOnly)
362
- HostApp.__this__.disableTimer()
363
- HostApp.__callback__ = null
364
- HostApp.__this__ = null
365
- },
366
- // uploadPaper() {
367
- // // this.isUpload = true
368
- // this.savePaper(false).then((res) => {
369
- // console.log(`res${res}`)
370
- // if(res !=true){
371
- // console('失败')
372
- // return
373
- // }else{
374
- // this.$back()
375
- // }
376
- // })
377
- // },
378
- errorVerify() {
379
- let hasError = this.verifyState()
380
- if(hasError)
381
- return hasError
382
-
383
- if(this.data.f_entry_status != '入户')
384
- return null
385
- hasError = this.verifyUser()
386
- if(hasError)
387
- return hasError
388
- hasError = this.verifyDevices()
389
- if(hasError)
390
- return hasError
391
- hasError = this.verifyFeedback()
392
- if(hasError)
393
- return hasError
394
- },
395
- verifyAllDefect(){
396
- let prefix = '隐患汇总 '
397
- this.data.f_defects.forEach((item)=>{
398
- if(Util.required(item.f_resolve_type))
399
- return prefix + item.f_defect + '处理方式必填'
400
- if(Util.required(item.f_ratification))
401
- return prefix + item.f_defect + '整改结果必填'
402
- })
403
- },
404
-
405
- verifyState() {
406
- if(Vue.android && this.data.f_entry_status == '未使用天然气' && this.data.f_nongasuser_path == Vue.nopic)
407
- return '未使用天然气则必须拍照'
408
- if(Vue.android && this.data.f_entry_status == '到访不遇' && this.data.f_noanswer_path == Vue.nopic)
409
- return '到访不遇必须拍照'
410
- },
411
- verifyUser() {
412
- let prefix = '用户基本信息:'
413
- if(Util.required(this.data.f_user_name))
414
- return prefix + '用户名必须输入'
415
- if(Util.required(this.data.f_user_phone))
416
- return prefix + '用户电话必须输入'
417
- if(Util.required(this.data.f_address))
418
- return prefix + '地址必须输入'
419
- },
420
- verifyDevices() {
421
- for (let dev in this.config) {
422
- if (this.config[dev].checkmust == true) {
423
- let error = true
424
- for(let device in this.data) {
425
- if (device.startsWith("device")) {
426
- for (let item in this.data[device]) {
427
- if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
428
- error = false
429
- }
430
- }
431
- }
432
- }
433
- if (error) {
434
- return "请检查" + dev
435
- }
436
- }
437
- }
438
-
439
- for (let dev in this.config) {
440
- for(let device in this.data) {
441
- if (device.startsWith("device")) {
442
- for (let item in this.data[device]) {
443
- //检查每一条安检结果
444
- if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
445
- for (let i in this.data[device][item].f_items) {
446
- for (let it in this.config[dev].items) {
447
- 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) {
448
- return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + "未检查"
449
- }
450
- }
451
- //检查安检下拉结果
452
- if (this.data[device][item].f_items[i].type == 'selector') {
453
- if (this.data[device][item].f_items[i].f_is_defect == true && this.data[device][item].f_items[i].f_path == Vue.nopic) {
454
- 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 + "选中必须拍照"
455
- }
456
- }
457
- }
458
- }
459
- }
460
- }
461
- }
462
- }
463
- },
464
-
465
-
466
- verifyFeedback() {
467
- let prefix = '用户反馈:'
468
- if(Vue.android && (!this.data.f_overall_imgs || this.data.f_overall_imgs.length == 0) && this.data.f_entry_status == '入户')
469
- return prefix + '必须有安检总体照片'
470
- if(Vue.android && this.data.f_defect_notified && this.data.f_notified_path == Vue.nopic)
471
- return prefix + '下发安检通知书则必须给通知书拍照'
472
- if(!this.data.f_client_evaluation && this.data.f_entry_status == '入户')
473
- return prefix + '请选择服务评价'
474
- },
475
-
476
- setUrgency() {
477
- this.data.f_defect_urgency = 'Z'
478
- let that = this
479
- this.data.f_defects.forEach(function(defect) {
480
- if(that.data.f_defect_urgency > defect.f_defect_level.charAt(0))
481
- that.data.f_defect_urgency = defect.f_defect_level.charAt(0)
482
- })
483
- if(this.data.f_defect_urgency == 'Z')
484
- this.data.f_defect_urgency = null
485
- },
486
- getAllDefect() {
487
- let checkResults = {
488
- result: '正常',
489
- data: []
490
- }
491
- let value = ''
492
- let codata = JSON.parse(JSON.stringify(this.data))
493
- console.log('config =====> ' + JSON.stringify(this.config))
494
- console.log('codata =====> ' + JSON.stringify(codata))
495
- codata.f_devices = []
496
- this.f_devices = []
497
- for (let device in codata) {
498
- let f_device_type
499
- if (device.startsWith("device")) {
500
- console.log('codata[device] =====> ' + JSON.stringify(codata[device]))
501
- let hasOther = ''
502
- let otherValue = null
503
- for (let item in codata[device]) {
504
- codata[device][item].f_create_time = Util.toStandardTimeString()
505
- // if (codata[device].length > 1) {
506
- // let j = Number.parseInt(item) + 1
507
- // f_device_type = `${codata[device][item].f_device_type}${j}`
508
- // } else {
509
- // f_device_type = codata[device][item].f_device_type
510
- // }
511
- // console.log('codata[device][item]=>',codata[device][item])
512
- for (let i in codata[device][item].f_items) {
513
-
514
- console.log('i' + i)
515
- console.log('codata[device][item].f_items' + JSON.stringify(codata[device][item].f_items))
516
- var items = codata[device][item].f_items[i]
517
- items.f_create_time = Util.toStandardTimeString()
518
- console.log('之前items' + JSON.stringify(items))
519
- items.f_item_lists = []
520
- console.log('之后items' + JSON.stringify(items))
521
- // console.log('items' + JSON.stringify(items))
522
- // console.log(`type => ${JSON.stringify(codata[device][item].f_device_type)} name => ${JSON.stringify(items.f_item_name)} value => ${JSON.stringify(items.f_item_value)}`)
523
- // console.log(`f_is_defect => ${this.config[codata[device][item]
524
- // .f_device_type]
525
- // .items[items.f_item_name]
526
- // .options
527
- // .find((option)=>option.data === items.f_item_value)
528
- // .map((option)=>option.f_is_defect)}`)
529
- // if (items.f_is_defect && (items.f_is_defect == true || items.f_is_defect == 'true')) {
530
- // console.log('进入有隐患')
531
- // checkResults.result = '有隐患'
532
- // console.log('有隐患items.f_item_name==》' + JSON.stringify(items.f_item_name))
533
- // console.log('有隐患items.f_item_value==》' + JSON.stringify(items.f_item_value))
534
- // // this.$set('checkResult.' + items.f_item_name, items.f_item_value)
535
- // this.checkResult[items.f_item_name] = items.f_item_value
536
- // console.log('有隐患checkResult==》' + JSON.stringify(this.checkResult))
537
- // // this.$set('checkResultsss.' + items.f_item_name, `${f_device_type}${items.f_item_value}`)
538
- // // console.log('有隐患checkResultsss==》' + JSON.stringify(this.checkResultsss))
539
- // }
540
- if (items.type == 'selector') {
541
- items.selected = []
542
- } else if (items.type == 'inputSelector') {
543
- items.selected = ''
544
- }
545
- //遍历配置项 将所选隐患项的配置信息放入保存的数据中
546
- let f_is_defect //是否是隐患
547
- let f_defect_level //是否是隐患
548
- let f_item_name = items.f_item_name
549
- let f_item_value
550
- let f_is_eliminate //隐患是否消除
551
- let f_meternumber = ''
552
- let f_user_defects = [] // 用户所有隐患
553
- console.log('f_item_name=====>' + f_item_name)
554
- console.log('items.type=====>' + items.type)
555
- if (items.type === 'selector') {
556
- for (let i in items.f_item_value) {
557
- let configItems = this.config[codata[device][item].f_device_type].items[f_item_name]
558
- console.log('configItems=====>' + JSON.stringify(configItems))
559
- for (let k in configItems.options) {
560
- console.log('configItems.options[k]==>' + JSON.stringify(configItems.options[k]))
561
- if (items.f_item_value[i] === configItems.options[k].data) {
562
-
563
- f_is_defect = configItems.options[k].isdefect
564
- f_item_value = items.f_item_value[i]
565
- f_defect_level = configItems.options[k].level
566
-
567
- console.log('f_is_defect=====>' + f_is_defect)
568
- console.log('f_item_value=====>' + f_item_value)
569
- console.log('f_defect_level=====>' + f_defect_level)
570
-
571
- if (f_is_defect) {
572
- if (checkResults.result !== '有隐患') {
573
- checkResults.result = '有隐患'
574
- }
575
- if (!this.checkResult.hasOwnProperty(f_item_name)) {
576
- console.log(`The ${f_item_name} initialized`)
577
- this.checkResult[f_item_name] = []
578
- }
579
-
580
- console.log(`The ${f_item_name} was pushed ${f_item_value}`)
581
- this.checkResult[f_item_name].push(f_item_value)
582
-
583
- }
584
-
585
- let items_list = {
586
- f_is_defect: f_is_defect,
587
- f_item_value: f_item_value,
588
- f_defect_level: f_defect_level,
589
- f_is_eliminate: null,
590
- f_create_time: Util.toStandardTimeString()
591
- }
592
- if (!items.f_item_lists) {
593
- console.log('f_item_lists未定义')
594
- items.f_item_lists = []
595
- console.log('items_list=========>' + JSON.stringify(items_list))
596
- if (JSON.stringify(items_list) !== '{}') {
597
- console.log('放了')
598
- items.f_item_lists.push(items_list)
599
- }
600
- } else {
601
- console.log('items_list=========>' + JSON.stringify(items_list))
602
- if (JSON.stringify(items_list) !== '{}') {
603
- console.log('也放了')
604
- items.f_item_lists.push(items_list)
605
- }
606
- }
607
- }
608
- }
609
- }
610
- } else {
611
- let configItems = this.config[codata[device][item].f_device_type].items[items.f_item_name]
612
- console.log('configItems===>' + JSON.stringify(configItems))
613
- f_is_defect = configItems.isdefect
614
- f_defect_level = configItems.level
615
- f_item_value = items.f_item_value
616
- console.log('else f_is_defect=====>' + f_is_defect)
617
- console.log('else f_defect_level=====>' + f_defect_level)
618
- console.log('items.f_item_value==>' + items.f_item_value)
619
- let items_list = {
620
- f_is_defect: f_is_defect,
621
- f_item_value: f_item_value,
622
- f_defect_level: f_defect_level,
623
- f_create_time: Util.toStandardTimeString()
624
- }
625
- console.log('items_list=========>' + JSON.stringify(items_list))
626
- console.log('items.f_item_lists' + JSON.stringify(items.f_item_lists))
627
- if (!items.f_item_lists) {
628
- console.log('f_item_lists未定义')
629
- items.f_item_lists = []
630
- if (JSON.stringify(items_list) != '{}') {
631
- console.log('else放了')
632
- items.f_item_lists.push(items_list)
633
- }
634
- } else {
635
- // items.f_item_lists[0].f_item_value = f_item_value
636
- if (JSON.stringify(items_list) != '{}') {
637
- console.log('else也放了')
638
- console.log('放之后items_list=========>' + JSON.stringify(items_list))
639
- console.log('放之后items.f_item_lists' + JSON.stringify(items.f_item_lists))
640
- console.log('type=>items.f_item_lists' + typeof items.f_item_lists)
641
- items.f_item_lists.push(items_list)
642
- }
643
- }
644
- }
645
- if (hasOther !== '' && otherValue !== null) {
646
- console.log(`The other value was pushed.`)
647
- this.checkResult[hasOther].push(otherValue)
648
- hasOther = ''
649
- otherValue = null
650
- }
651
- items.f_item_value = ''
652
- }
653
- console.log('安检结果checkResult' + JSON.stringify(this.checkResult))
654
- this.f_devices.push(codata[device][item])
655
- }
656
- }
657
- }
658
- if (this.checkResult) {
659
- for (let key in this.checkResult) {
660
- //TODO 上次安检结果数据组织
661
- console.log('key=>' + key)
662
- console.log('value=>' + this.checkResult[key])
663
- let temp = {}
664
- temp[key] = this.checkResult[key].join(',')
665
- checkResults.data.push(temp)
666
- // this.newcheckResult[key] = this.checkResult[key]
667
- // checkResults.data.push(this.newcheckResult)
668
- console.log('checkResults.data==>' + JSON.stringify(checkResults))
669
- // this.newcheckResult = {}
670
- }
671
- this.checkResult = {}
672
- }
673
- console.log(`typeof-checkResults-->${typeof checkResults}`)
674
- console.log('checkResults ==> ' + JSON.stringify(checkResults))
675
- codata.f_defect_content = JSON.stringify(checkResults)
676
- this.data.f_defect_content = JSON.stringify(checkResults)
677
- console.log('f_defect_content' + codata.f_defect_content)
678
- return codata
679
- },
680
-
681
- getWeixin(backData){
682
- 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}
683
-
684
- let Resultstr = ''
685
-
686
- for (let dev in this.config) {
687
- for (let device in backData) {
688
- if (device.startsWith("device")) {
689
- for (let item in backData[device]) {
690
- //遍历结果
691
- if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
692
- let error = true
693
- let n = 0
694
- let level = ''
695
- for (let i in backData[device][item].f_items) {
696
- if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
697
- error = false
698
- n +=1
699
- if(level == ''){
700
- level = backData[device][item].f_items[i].f_defect_level
701
- }
702
- let le = backData[device][item].f_items[i].f_defect_level
703
- if(le.startsWith('A')){
704
- let i = parseInt(le.substring(1))
705
- if(i<parseInt(le.substring(level))){
706
- level = le
707
- }
708
- }else if (le.startsWith('B')){
709
- let i = parseInt(le.substring(1))
710
- if(i<parseInt(le.substring(level))){
711
- level = le
712
- }
713
- }else if(le.startsWith('C')){
714
- let i = parseInt(le.substring(1))
715
- if(i<parseInt(le.substring(level))){
716
- level = le
717
- }
718
- }
719
- }
720
- }
721
- if (error) {
722
- Resultstr += dev + (backData[device].indexOf(backData[device][item]) + 1) + ':正常;'
723
- } else {
724
- Resultstr += dev + (backData[device].indexOf(backData[device][item]) + 1) + ':有隐患;'
725
- }
726
- result['f_err_number'] = n
727
- result['f_danger_lever'] = level
728
- }
729
- }
730
- }
731
- }
732
- }
733
- for (let dev in this.config) {
734
- for (let device in backData) {
735
- if (device.startsWith("device")) {
736
- for (let item in backData[device]) {
737
- if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
738
- for (let i in backData[device][item].f_items) {
739
- if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
740
- 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 + ';'
741
-
742
- }
743
- }
744
- }
745
- }
746
- }
747
- }
748
- }
749
-
750
- return result
751
- },
752
-
753
- uploadCheckPaper(){
754
- console.log('进入上传')
755
- let errString = this.errorVerify()
756
- if (errString) {
757
- console.log(errString)
758
- console.log('Vue.android',Vue.android)
759
- console.log('this.isUpload',this.isUpload)
760
- if (Vue.android){
761
- // if(this.isUpload){
762
- // this.isUpload = false
763
- // }
764
- this.$showMessage(errString)
765
- }
766
- return
767
- } else {
768
- this.$set('data.f_offsite_time', Util.toStandardTimeString())
769
- this.$set('data.f_upload_time', Util.toStandardTimeString())
770
- console.log('赋值后',this.data)
771
- this.data.f_complete = '已完成'
772
- this.disableTimer()
773
- }
774
- console.log('uploadCheckPaper-->isUpload'+this.isUpload)
775
- this.onlySave = false
776
- let res = this.save()
777
-
778
- // if(res) {
779
- // let codata = this.getAllDefect()
780
- // //获取微信推送内容
781
- // let WxResult = this.getWeixin(codata)
782
- // let haslivedispose = this.$androidUtil.bzLogic('getLiveDispose', {
783
- // f_check_item_id: this.data.f_check_item_id
784
- // })
785
- // if(!this.isToRepair){
786
- // if(haslivedispose.data.length > 0 && (this.livedispose == 'true' || this.livedispose == true)){
787
- // if(!this.isSafeCheckToRepair){
788
- // this.$showMessage('有未处理的隐患,请前往拍照上传中将安检转为维修单!')
789
- // return
790
- // }
791
- // }
792
- // }
793
- // // HostApp.uploadPaper({f_check_item_id: this.data.f_check_item_id, f_checker_id: this.data.f_checker_id, data: this.data})
794
- // console.log(`codata类型-->${typeof codata}`)
795
- // for (let key in codata){
796
- // if(key.startsWith("device")){
797
- // codata[key] = []
798
- // }
799
- // }
800
- // console.log(`codata内容-->${JSON.stringify(codata)}`)
801
- // try {
802
- // let response = this.$androidUtil.bzLogic('上传安检信息', {
803
- // f_check_item_id: this.data.f_check_item_id,
804
- // f_checker_id: this.data.f_checker_id,
805
- // row: codata
806
- // })
807
- // if (response.code == 200) {
808
- // console.log('=============response.data==================')
809
- // console.log(response.data)
810
- // console.log(typeof response.data)
811
- // let f_paper_id
812
- // if(response.data != '' && response.data != null){
813
- // f_paper_id = JSON.parse(response.data).id
814
- // }
815
- // this.$set('data.f_paper_id', f_paper_id)
816
- // console.log('=============f_paper_id==================')
817
- // console.log(JSON.stringify(f_paper_id))
818
- // console.log("===data"+JSON.stringify(this.data))
819
- // for (let device in this.data){
820
- // console.log('设备信息device======')
821
- // console.log(JSON.stringify(this.data[device]))
822
- // if(device.startsWith("device")){
823
- // for(let devices of this.data[device]) {
824
- // devices.f_paper_id = f_paper_id
825
- // console.log('上传设备信息device======')
826
- // console.log(JSON.stringify(devices))
827
- // let ret = this.$androidUtil.bzLogic('UpCheckPaperDevices', {
828
- // row: devices
829
- // })
830
- // console.log(`上传设备信息结果res======${ret}`)
831
- // if(ret.code == 200){
832
- // devices.f_device_id = JSON.parse(ret.data.f_device_id).id
833
- // }
834
- // if (ret.code != 200) {
835
- // // this.isUpload = false
836
- // this.$showMessage("上传失败!")
837
- // return false
838
- // }
839
- // }
840
- // }
841
- // }
842
- // // for (let device of this.f_devices) {
843
- // // device.f_paper_id = f_paper_id
844
- // // console.log('上传设备信息device======')
845
- // // console.log(JSON.stringify(device))
846
- // // let ret = this.$androidUtil.bzLogic('UpCheckPaperDevices', {
847
- // // row: device
848
- // // })
849
- // // console.log(`上传设备信息结果res======${ret}`)
850
- // // if (ret.code != 200) {
851
- // // //TODO 失败后处理
852
- // // HostApp.alert("上传失败!")
853
- // // return false
854
- // // }
855
- // // }
856
- // let result = this.$androidUtil.bzLogic('FinishUpload',
857
- // {
858
- // f_check_item_id: this.data.f_check_item_id,
859
- // f_userinfo_id: codata.f_userinfoid,
860
- // f_last_check_result: codata.f_defect_content
861
- // })
862
- // if(result.code == 200){
863
- // // this.isUpload = false
864
- // // this.$showAlert("上传成功!",'success',2000)
865
- // this.$showMessage('上传成功!')
866
- // this.isStrat=false
867
- // if(url != ""){
868
- // this.$resetpost(`${url}`,{data:WxResult})
869
- // }
870
- // return true
871
- // }else{
872
- // // this.isUpload = false
873
- // this.$showMessage("上传失败!")
874
- // return false
875
- // }
876
- // }else{
877
- // // this.isUpload = false
878
- // this.$showMessage("上传失败!")
879
- // return false
880
- // }
881
- // }catch (e) {
882
- // console.log('上传失败==='+JSON.stringify(e))
883
- // // this.isUpload = false
884
- // this.$showMessage("上传失败!")
885
- // }
886
- // }
887
- },
888
-
889
- save() {
890
- console.log('进入保存')
891
- let errString = this.errorVerify()
892
- if (errString) {
893
- this.data.f_complete = '未完成'
894
- this.disableTimer()
895
- } else {
896
- this.data.f_complete = '已完成'
897
- this.disableTimer()
898
- }
899
- // try {
900
- let codata = this.getAllDefect()
901
- console.log(`codata类型-->${typeof codata}`)
902
- console.log(`codata内容-->${JSON.stringify(codata)}`)
903
- for (let key in codata) {
904
- if (key.startsWith("device")) {
905
- console.log('this.data.' + key + JSON.stringify(codata[key]))
906
- codata[key] = []
907
- }
908
- }
909
- console.log(`codata内容-->${JSON.stringify(codata)}`)
910
- console.log(`codata内容-->${JSON.stringify(codata.f_user_defects)}`)
911
- console.log('安卓环境?=》' + Vue.android)
912
- if (Vue.android) {
913
- console.log('Vue.android is true')
914
- let value = this.$androidUtil.path({
915
- alias: 'getUserinfomation',
916
- data: {condition: "f_userinfoid = '" + this.item.f_userinfoid + "' and f_no_checkplan = '无计划安检'"}
917
- })
918
- console.log('getUserinfomation value ==> ' + JSON.stringify(value))
919
- if (this.item.f_no_checkplan == '无计划安检' && this.item.f_no_checkplan != '打回') {
920
- // let result = this.$androidUtil.bzLogic('SafeSaveNoPaper', {
921
- // f_check_item_id: this.data.f_check_item_id,
922
- // f_checker_id: this.data.f_checker_id,
923
- // f_upload_state:'未传',
924
- // row: codata
925
- // })
926
- console.log('无计划安检保存')
927
- let isStart = true
928
- let res
929
- for (let i in this.f_devices) {
930
- res = HostApp.organizeJSON({isStart: isStart, isDevice: true, device: this.f_devices[i]})
931
- if (res.code == 200) {
932
- isStart = false
933
- } else {
934
- this.$showMessage("保存失败!")
935
- }
936
- }
937
- let result = HostApp.organizeJSON({
938
- isStart: false,
939
- isJSON: true,
940
- jsonstr: {
941
- f_check_item_id: this.data.f_check_item_id,
942
- f_checker_id: this.data.f_checker_id,
943
- f_upload_state: '未传',
944
- row: codata
945
- }
946
- })
947
- if (result.code == 200) {
948
- HostApp.__this__ = this
949
- this.runSyncLogic('SafeSaveNoPaper', 'javascript:HostApp.__this__.saveCallBack()', 1)
950
- }
951
- } else {
952
- console.log('非无计划安检保存')
953
- let isStart = true
954
- let res
955
- console.log('this.f_devices' + JSON.stringify(this.f_devices))
956
- for (let i in this.f_devices) {
957
- res = HostApp.organizeJSON({isStart: isStart, isDevice: true, device: this.f_devices[i]})
958
- console.log('f_devices organizeJSON ==> ' + JSON.stringify(res))
959
- if (res.code == 200) {
960
- isStart = false
961
- } else {
962
- this.$showMessage("保存失败!")
963
- }
964
- }
965
- console.log('this.data ==> ' + JSON.stringify(this.data))
966
- console.log('f_check_item_id ==> ' + JSON.stringify(this.data.f_check_item_id))
967
- console.log('f_checker_id ==> ' + JSON.stringify(this.data.f_checker_id))
968
- let result = HostApp.organizeJSON({
969
- isStart: false,
970
- isJSON: true,
971
- jsonstr: {
972
- f_check_item_id: this.data.f_check_item_id,
973
- f_checker_id: this.data.f_checker_id,
974
- row: codata
975
- }
976
- })
977
- console.log('organizeJSON result ==> ' + JSON.stringify(result))
978
- if (result.code === 200) {
979
- HostApp.__this__ = this
980
- this.runSyncLogic('保存安检单信息', 'javascript:HostApp.__this__.saveCallBack()', 1)
981
- }
982
- }
983
-
984
- } else {
985
- console.log("保存的值", codata)
986
- let value = this.$androidUtil.path({
987
- alias: 'getUserinfomation',
988
- data: {condition: "f_userinfoid = '" + this.item.f_userinfoid + "' and f_no_checkplan = '无计划安检'"}
989
- })
990
-
991
- if (this.item.f_no_checkplan == '无计划安检' && value.data.length == 0 && this.item.f_no_checkplan != '打回') {
992
- this.$androidUtil.bzLogic('SafeSaveNoPaper', {
993
- f_check_item_id: this.data.f_check_item_id,
994
- f_checker_id: this.data.f_checker_id,
995
- f_upload_state: '未传',
996
- row: codata
997
- }).then((res) => {
998
- if (res.data.code == 200) {
999
- //保存devices
1000
- this.$androidUtil.bzLogic('getPaperInfo', {
1001
- f_check_item_id: this.data.f_check_item_id
1002
- }).then((res) => {
1003
- console.log(`查询paper结果res======${res}`)
1004
- if (res.data.code == 200) {
1005
-
1006
- let f_paper_id = res.data.data[0].id
1007
- for (let device of this.f_devices) {
1008
- device.f_paper_id = f_paper_id
1009
- console.log('设备信息device======', device)
1010
- this.$androidUtil.bzLogic('saveDevice', {
1011
- row: device
1012
- }).then((ret) => {
1013
- console.log(`保存设备信息结果res======`, ret)
1014
- if (ret.code != 200) {
1015
- // if(this.isUpload){
1016
- // this.isUpload = false
1017
- // }
1018
- //TODO 失败后处理
1019
- this.$showMessage("保存失败!")
1020
- return false
1021
- }
1022
- })
1023
- }
1024
- }
1025
- })
1026
- // this.$showAlert('保存成功!', 'success', 2000)
1027
- this.$showMessage('保存成功!')
1028
- return true
1029
- } else {
1030
- // if(this.isUpload){
1031
- // this.isUpload = false
1032
- // }
1033
- this.$showMessage("保存失败!")
1034
- return false
1035
- }
1036
- })
1037
- } else {
1038
- this.$androidUtil.bzLogic('保存安检单信息', {
1039
- f_check_item_id: this.data.f_check_item_id,
1040
- f_checker_id: this.data.f_checker_id,
1041
- row: codata
1042
- }).then((res) => {
1043
- console.log('asdddddddddddddddddddddddddddddd')
1044
- if (res.data.code == 200) {
1045
- //保存devices
1046
- this.$androidUtil.bzLogic('getPaperInfo', {
1047
- f_check_item_id: this.data.f_check_item_id
1048
- }).then((res) => {
1049
- console.log(`查询paper结果res======${res}`)
1050
- if (res.data.code == 200) {
1051
-
1052
- let f_paper_id = res.data.data[0].id
1053
- for (let device of this.f_devices) {
1054
- device.f_paper_id = f_paper_id
1055
- console.log(`设备信息device======${device}`)
1056
- this.$androidUtil.bzLogic('saveDevice', {
1057
- row: device
1058
- }).then((ret) => {
1059
- console.log(`保存设备信息结果res======${ret}`)
1060
- if (ret.code != 200) {
1061
- // if(this.isUpload){
1062
- // this.isUpload = false
1063
- // }
1064
- //TODO 失败后处理
1065
- this.$showMessage("保存失败!")
1066
- return false
1067
- }
1068
- })
1069
- }
1070
- }
1071
- })
1072
- // this.$showAlert('保存成功!', 'success', 2000)
1073
- this.$showMessage('保存成功!')
1074
- return true
1075
- } else {
1076
- // if(this.isUpload){
1077
- // this.isUpload = false
1078
- // }
1079
- this.$showMessage("保存失败!")
1080
- return false
1081
- }
1082
- })
1083
- }
1084
- }
1085
- // }catch (e) {
1086
- // console.log('保存失败==='+JSON.stringify(e))
1087
- // // this.isUpload = false
1088
- // this.$showMessage("保存失败!")
1089
- // }
1090
- },
1091
- runSyncLogic(logic,callback,backresult){
1092
- HostApp.runSyncLogic({
1093
- // logic别名,key必须为logic
1094
- 'logic': logic,
1095
- // 回调执行方法名,key必须为callback
1096
- 'callback': callback,
1097
- // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
1098
- // 执行回调方法传入key为backresult
1099
- // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
1100
- 'backresult':backresult
1101
- })
1102
- },
1103
-
1104
- saveCallBack(jo){
1105
- console.log(JSON.stringify(jo))
1106
- if(jo.state == 'ok'){
1107
- let res = JSON.parse(jo.result)
1108
- console.log('保存结果===》'+JSON.stringify(res))
1109
- if(res.code == 200){
1110
- console.log('onlySave=====>'+this.onlySave)
1111
- if(!this.onlySave){
1112
- let codata = this.getAllDefect()
1113
- //获取微信推送内容
1114
- let WxResult = this.getWeixin(codata)
1115
- let haslivedispose = this.$androidUtil.bzLogic('getLiveDispose', {
1116
- f_check_item_id: this.data.f_check_item_id
1117
- })
1118
- //如果是转维修上传,则不做校验,上传完成后自动转维修
1119
- console.log('this.isToRepair=======》'+this.isToRepair)
1120
- console.log('this.livedispose=======》'+this.livedispose)
1121
- if(!this.isToRepair){
1122
- if(haslivedispose.data.length > 0 && (this.livedispose == 'true' || this.livedispose == true)){
1123
- console.log('是否已转维修')
1124
- console.log(this.isSafeCheckToRepair)
1125
- if(!this.isSafeCheckToRepair){
1126
-
1127
- }
1128
- }
1129
- }
1130
- console.log(`codata类型-->${typeof codata}`)
1131
- for (let key in codata){
1132
- if(key.startsWith("device")){
1133
- codata[key] = []
1134
- }
1135
- }
1136
- console.log(`codata内容-->${JSON.stringify(codata)}`)
1137
-
1138
- console.log('遮挡上传')
1139
- let isStart = true
1140
- let res
1141
- for (let i in this.f_devices){
1142
- res = HostApp.organizeJSON({isStart:isStart,isDevice:true,device:this.f_devices[i]})
1143
- if(res.code == 200){
1144
- isStart = false
1145
- }else{
1146
- this.$showMessage("上传失败!")
1147
- return
1148
- }
1149
- }
1150
- let result = HostApp.organizeJSON({
1151
- isStart:false,
1152
- isJSON:true,
1153
- jsonstr:{
1154
- f_check_item_id: this.data.f_check_item_id,
1155
- f_checker_id: this.data.f_checker_id,
1156
- row: codata
1157
- }
1158
- })
1159
- if(result.code == 200){
1160
- HostApp.__this__ = this
1161
- this.runSyncLogic('上传安检信息','javascript:HostApp.__this__.uploadCallBack()',1)
1162
- }
1163
- }else{
1164
- this.$showMessage('保存成功!')
1165
- if(this.clickBack){
1166
- this.isStrat = false
1167
- this.$dispatch('confirm')
1168
- // this.$back()
1169
- }
1170
- }
1171
- }else if(res.code == 309){
1172
- this.$showMessage('该安检单已作废!')
1173
- console.log('该安检单已作废')
1174
- this.$dispatch('confirm')
1175
- }else{
1176
- this.$showMessage('保存失败!')
1177
- return
1178
- }
1179
- }else{
1180
- this.$showMessage('服务器内部错误,保存失败!')
1181
- return
1182
- }
1183
- },
1184
- uploadCallBack(jo){
1185
- //获取微信推送路径
1186
- let url = ""
1187
- if(Vue.config.safecheck != undefined) {
1188
- if (Vue.config.safecheck.ApproveConfig != undefined) {
1189
- if (Vue.config.safecheck.ApproveConfig.weixinurl != undefined) {
1190
- url = Vue.config.safecheck.ApproveConfig.weixinurl
1191
- }
1192
- }
1193
- }
1194
- console.log(JSON.stringify(jo))
1195
- if(jo.state == 'ok'){
1196
- let res = JSON.parse(jo.result)
1197
- console.log('上传结果===》'+JSON.stringify(res))
1198
- if(res.code == 200){
1199
- this.$set('data.f_paper_id', res.id)
1200
- this.isStrat=false
1201
- if(url != ""){
1202
- this.$resetpost(`${url}`,{data:WxResult})
1203
- }
1204
- console.log('this.isToRepair==============>'+this.isToRepair)
1205
- if(this.isToRepair){
1206
- for (let device in this.data){
1207
- if(device.startsWith("device")){
1208
- this.data[device] = []
1209
- if(res.data.length > 0){
1210
- for(let i in res.data[0].f_devices){
1211
- if(this.data[device].length > 0){
1212
- if(this.data[device][0].f_device_type == res.data[0].f_devices[i].f_device_type){
1213
- this.data[device].push(res.data[0].f_devices[i])
1214
- res.data[0].f_devices.splice(i,1)
1215
- }
1216
- }else{
1217
- this.data[device].push(res.data[0].f_devices[i])
1218
- res.data[0].f_devices.splice(i,1)
1219
- }
1220
- }
1221
- }
1222
- }
1223
- }
1224
- this.todo()
1225
- }else{
1226
- this.$showMessage('上传成功!')
1227
- console.log('上传结束back')
1228
- this.$dispatch('confirm')
1229
- // this.$back()
1230
- }
1231
- }else{
1232
- this.$showMessage('上传失败!')
1233
- this.onlySave = true
1234
- }
1235
- }else{
1236
- this.$showMessage('服务器内部错误,上传失败!')
1237
- this.onlySave = true
1238
- }
1239
- },
1240
- todo(){
1241
- let gen = getRepairParam(this)
1242
- co(gen)
1243
- },
1244
- undo(){
1245
- this.showCheckToRepair = !this.showCheckToRepair
1246
- this.model.serviceacitivity[0].f_reciever = ''
1247
- this.model.serviceacitivity[0].f_meetunit = ''
1248
- this.model.f_repairtype = ''
1249
- this.meading = '转站点'
1250
- },
1251
- disableTimer() {
1252
- if(this.timer) {
1253
- window.clearTimeout(this.timer)
1254
- this.timer = null
1255
- }
1256
- },
1257
- loaded(paper) {
1258
- if(!paper.hasOwnProperty('id')) {
1259
- this.$showMessage("该安检单在手机上已经不存在,可能是卸载过程序。可以进入重新安检,或返回安检计划。")
1260
- this.init()
1261
- } else {
1262
- Util.booleanFilter(paper)
1263
- HostApp.__this__.$set('data', paper)
1264
- HostApp.__this__.$goto('paper-state-noncivil', {}, 'paper-router')
1265
- // 如果打回重检则重新计时
1266
- console.log('HostApp.__this__.role' + HostApp.__this__.role + ' HostApp.__this__.f_approved:' + HostApp.__this__.data.f_approved)
1267
- if(HostApp.__this__.role == 'inspect'
1268
- && HostApp.__this__.data.f_approved
1269
- && HostApp.__this__.data.f_approved == '打回') {
1270
- console.log('打回')
1271
- HostApp.__this__.data.f_onsite_time = Util.toStandardTimeString()
1272
- HostApp.__this__.tick()
1273
- }
1274
- }
1275
- HostApp.__callback__ = null
1276
- HostApp.__this__ = null
1277
- },
1278
- S4() {
1279
- return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
1280
- },
1281
- init () {
1282
- // this.data.f_noplan_item_id = this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4()
1283
- this.data.f_no_checkplan = this.item.f_no_checkplan
1284
- this.data.f_check_item_id = this.item.id
1285
- this.data.f_check_plan_id = this.f_plan_id
1286
- this.data.f_checker_id = Vue.user.id
1287
- this.data.f_checker_name = Vue.user.name
1288
- this.data.f_check_type = this.item.f_user_type
1289
- //this.data.f_onsite_time = Util.toStandardTimeString()
1290
- this.data.f_subcompany = this.item.f_subcompany
1291
- this.data.f_approved = this.item.f_approved
1292
- this.data.f_repair_approved = this.item.f_repair_approved
1293
- this.data.f_filialeid = this.item.f_filialeid
1294
- this.data.f_orgstr = this.item.f_orgstr
1295
- this.data.version = this.item.version
1296
- this.$set('data.f_userinfo_code', this.item.f_userinfo_code)
1297
- this.$set('data.f_meters', this.item.f_plan_meters)
1298
- // 安检状态
1299
- this.$set('data.f_entry_status', '入户')
1300
- this.$set('data.f_state', this.item.f_state)
1301
- // 用户信息
1302
- this.$set('data.f_user_name', this.item.f_user_name)
1303
- this.$set('data.f_user_phone', this.item.f_user_phone)
1304
- this.$set('data.f_userinfoid', this.item.f_userinfoid)
1305
- this.$set('data.f_address', this.item.f_address)
1306
- this.$set('data.f_card_id', this.item.f_card_id)
1307
- this.$set('data.f_area', this.item.f_area)
1308
- this.$set('data.f_street', this.item.f_street)
1309
- this.$set('data.f_room', this.item.f_room)
1310
- this.$set('data.f_building', this.item.f_building)
1311
- this.$set('data.f_unit', this.item.f_unit)
1312
- this.$set('data.f_floor', this.item.f_floor)
1313
- this.$set('data.f_residential_area', this.item.f_residential_area)
1314
- this.$set('data.f_idnumber', this.item.f_idnumber)
1315
- this.$set('data.f_comments', this.item.f_comments)
1316
- this.$set('data.f_userproperties', this.item.f_userproperties)
1317
- // this.$set('data.f_user_inhome_time', this.item.f_user_inhome_time)
1318
- // this.$set('data.f_user_check_time', this.item.f_user_check_time)
1319
- // this.$set('data.f_user_spare_phone', this.item.f_user_spare_phone)
1320
- // this.$set('data.f_user_family_remarks', this.item.f_user_family_remarks)
1321
- // this.$set('data.f_user_equipment_remarks', this.item.f_user_equipment_remarks)
1322
- // 处置方式
1323
- this.$set('data.f_no_gas_device', false)
1324
- this.$set('data.f_close_valve', false)
1325
- this.$set('data.f_unload_battery', false)
1326
- if (this.data.f_check_item_id == '' && this.item.f_no_checkplan == '无计划安检') {
1327
- this.data.f_check_item_id = this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4()
1328
- }
1329
-
1330
-
1331
- //房屋结构
1332
- // this.$set('data.f_room_style', '多层')
1333
- //供暖方式
1334
- // this.$set('data.f_heating_style', '热力公司集中供暖')
1335
- if(this.item.f_plan_meters) {
1336
- for (let de in this.devices) {
1337
- this.$set('data.device' + this.devices[de].n, [])
1338
- for (let i = 0; i < this.item.f_plan_meters.length; i++) {
1339
- if (this.item.f_plan_meters[i].f_meter_type) {
1340
- if (this.devices[de].device == "燃气表" && this.item.f_plan_meters[i].f_meter_type.indexOf('机表') > 0) {
1341
- delete this.config['燃气表']['items']['累计购气量']
1342
- this.$set('data.device' + this.devices[de].n, [])
1343
- this.data['device' + this.devices[de].n].push({
1344
- f_device_type: "燃气表",
1345
- f_items: [{
1346
- f_defect_level: null,
1347
- f_device_id: "",
1348
- f_is_defect: "",
1349
- f_item_name: "表品牌",
1350
- f_item_value: this.item.f_plan_meters[i].f_aliasname,
1351
- f_path: "",
1352
- type: "string"
1353
- },
1354
- {
1355
- f_defect_level: null,
1356
- f_device_id: "",
1357
- f_is_defect: "",
1358
- f_item_name: "位置",
1359
- f_item_value: this.item.f_plan_meters[i].f_weizhi,
1360
- f_path: "",
1361
- type: "selector"
1362
- },
1363
- {
1364
- f_defect_level: null,
1365
- f_device_id: "",
1366
- f_is_defect: "",
1367
- f_item_name: "表号",
1368
- f_item_value: this.item.f_plan_meters[i].f_meter_no,
1369
- f_path: "",
1370
- type: "number"
1371
- },
1372
- {
1373
- f_defect_level: null,
1374
- f_device_id: "",
1375
- f_is_defect: "",
1376
- f_item_name: "表封号",
1377
- f_item_value: this.item.f_plan_meters[i].f_metertitles,
1378
- f_path: "",
1379
- type: "number"
1380
- },
1381
- {
1382
- f_defect_level: null,
1383
- f_device_id: "",
1384
- f_is_defect: "",
1385
- f_item_name: "表型号",
1386
- f_item_value: this.item.f_plan_meters[i].f_diaphgram_size,
1387
- f_path: "",
1388
- type: "selector"
1389
- },
1390
- {
1391
- f_defect_level: null,
1392
- f_device_id: "",
1393
- f_is_defect: "",
1394
- f_item_name: "表底数",
1395
- f_item_value: this.item.f_plan_meters[i].f_prior_reading,
1396
- f_path: "",
1397
- type: "number"
1398
- }
1399
- ]
1400
- })
1401
- } else if (this.devices[de].device == "燃气表") {
1402
- delete this.config['燃气表']['items']['表底数']
1403
- this.data['device' + this.devices[de].n].push({
1404
- f_device_type: "燃气表",
1405
- f_items: [{
1406
- f_defect_level: null,
1407
- f_device_id: "",
1408
- f_is_defect: "",
1409
- f_item_name: "表品牌",
1410
- f_item_value: this.item.f_plan_meters[i].f_aliasname,
1411
- f_path: "",
1412
- type: "string"
1413
- },
1414
- {
1415
- f_defect_level: null,
1416
- f_device_id: "",
1417
- f_is_defect: "",
1418
- f_item_name: "位置",
1419
- f_item_value: this.item.f_plan_meters[i].f_weizhi,
1420
- f_path: "",
1421
- type: "selector"
1422
- },
1423
- {
1424
- f_defect_level: null,
1425
- f_device_id: "",
1426
- f_is_defect: "",
1427
- f_item_name: "表号",
1428
- f_item_value: this.item.f_plan_meters[i].f_meter_no,
1429
- f_path: "",
1430
- type: "number"
1431
- },
1432
- {
1433
- f_defect_level: null,
1434
- f_device_id: "",
1435
- f_is_defect: "",
1436
- f_item_name: "表封号",
1437
- f_item_value: this.item.f_plan_meters[i].f_metertitles,
1438
- f_path: "",
1439
- type: "number"
1440
- },
1441
- {
1442
- f_defect_level: null,
1443
- f_device_id: "",
1444
- f_is_defect: "",
1445
- f_item_name: "表型号",
1446
- f_item_value: this.item.f_plan_meters[i].f_diaphgram_size,
1447
- f_path: "",
1448
- type: "selector"
1449
- },
1450
- {
1451
- f_defect_level: null,
1452
- f_device_id: "",
1453
- f_is_defect: "",
1454
- f_item_name: "累计购气量",
1455
- f_item_value: this.item.f_plan_meters[i].f_prior_reading,
1456
- f_path: "",
1457
- type: "number"
1458
- }
1459
- ]
1460
- })
1461
- }
1462
- }
1463
- }
1464
- }
1465
- }
1466
- var pardate = {
1467
- _this:this,
1468
- tittle:'安检详情',
1469
- safe:true
1470
- }
1471
- // this.$dispatch('gotoson',pardate)
1472
- this.$goto('paper-state-noncivil', {}, 'paper-router')
1473
- },
1474
- extend(initalObj, finalObj) {
1475
- var obj = finalObj || {};
1476
- for (var i in initalObj) {
1477
- var prop = initalObj[i];
1478
-
1479
- // 避免相互引用对象导致死循环,如initalObj.a = initalObj的情况
1480
- if (prop === obj) {
1481
- continue;
1482
- }
1483
-
1484
- if (typeof prop === 'object') {
1485
- if (obj[i]) {
1486
- this.extend(obj[i], prop)
1487
- } else {
1488
- obj[i] = prop;
1489
- }
1490
- }
1491
- }
1492
- return obj;
1493
- },
1494
- putDevices() {
1495
- console.log('Vue.config => ' + JSON.stringify(Vue.config))
1496
- // console.log('Vue.config.DevicesConfig => ' + JSON.stringify(Vue.config.DevicesConfig))
1497
- this.$set('data.approve', "true")
1498
- this.$set('data.writeback', "false")
1499
- if (Vue.config.safecheck != undefined) {
1500
- if (Vue.config.safecheck.ApproveConfig != undefined) {
1501
- if (Vue.config.safecheck.ApproveConfig.approve != undefined) {
1502
- this.$set('data.approve', Vue.config.safecheck.ApproveConfig.approve)
1503
- }
1504
- if (Vue.config.safecheck.ApproveConfig.writeback != undefined) {
1505
- this.$set('data.writeback', Vue.config.safecheck.ApproveConfig.writeback)
1506
- }
1507
- if (Vue.config.safecheck.ApproveConfig.livedispose != undefined) {
1508
- this.livedispose = Vue.config.safecheck.ApproveConfig.livedispose
1509
- }
1510
- }
1511
- console.log(Vue.config)
1512
- console.log('Vue.config.safecheck.DevicesSetConfig=>' + JSON.stringify(Vue.config.safecheck.DevicesSetConfig))
1513
- console.log('赋值前的config=>' + JSON.stringify(this.config))
1514
- // SafecheckType.Json 文件 配置 安检类型
1515
- if(this.item.f_safecheck_type == undefined || this.item.f_safecheck_type == '' || Vue.config.safecheck.SafecheckType == undefined) {
1516
- this.config = this.extend(this.config, Vue.config.safecheck.DevicesConfig)
1517
- }else{
1518
- this.config = this.extend(this.config, Vue.config.safecheck[Vue.config.safecheck.SafecheckType[this.item.f_safecheck_type]])
1519
- }
1520
- }
1521
- console.log('赋值后的config=>' + JSON.stringify(this.config))
1522
- //遍历安检项配置
1523
- for (let i in this.config) {
1524
- //取得安检项索引值
1525
- let n = this.config[i].index
1526
- this.devices[n - 1] = {device: i, n: n, checkmust: this.config[i].checkmust}
1527
- this.$set('data.' + 'device' + n, [])
1528
- if(this.config[i].quantity && this.config[i].quantity >0){
1529
- let items = []
1530
- for (let it in this.config[i].items) {
1531
- //赋值下拉选项
1532
- if (this.config[i].items[it].type == 'selector') {
1533
- for (let op in this.config[i].items[it].options) {
1534
- if (this.config[i].items[it].options[op].isdefault == true) {
1535
- items.push({
1536
- f_defect_level: this.config[i].items[it].options[op].level,
1537
- f_is_defect: this.config[i].items[it].options[op].isdefect,
1538
- f_item_name: it,
1539
- f_item_value: this.config[i].items[it].options[op].data,
1540
- f_path: "",
1541
- type: "selector"
1542
- })
1543
- }
1544
- }
1545
- }
1546
- }
1547
- for(let q =0;q<this.config[i].quantity;q++) {
1548
- this.data['device' + n].push(
1549
- {f_device_type: i, f_items:items}
1550
- )
1551
- }
1552
- }
1553
- // this.data['device' + n].push(
1554
- // {f_device_type: i, f_items: items}
1555
- // )
1556
- n = n + 1
1557
- }
1558
-
1559
- },
1560
- //获取当前时间
1561
- getNowFormatDate(){
1562
- var date = new Date();
1563
- var seperator1 = "-";
1564
- var seperator2 = ":";
1565
- var month = date.getMonth() + 1;
1566
- var strDate = date.getDate();
1567
- if (month >= 1 && month <= 9) {
1568
- month = "0" + month;
1569
- }
1570
- if (strDate >= 0 && strDate <= 9) {
1571
- strDate = "0" + strDate;
1572
- }
1573
- var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
1574
- + " " + date.getHours() + seperator2 + date.getMinutes()
1575
- + seperator2 + date.getSeconds();
1576
- return currentdate;
1577
- },
1578
- },
1579
- async ready() {
1580
- this.putDevices()
1581
- //如果已检,则提取安检单
1582
-
1583
- if (this.item.f_state != '未检') {
1584
- if (this.role == 'inspect' || this.role == 'androidview') {
1585
- HostApp.__callback__ = this.loaded
1586
- HostApp.__this__ = this
1587
- let that = this
1588
- let value = {}
1589
- console.log('this.item.f_no_checkplan',this.item.f_no_checkplan)
1590
- if (this.role == 'inspect') {
1591
- console.log('this.item.f_no_checkplan', this.item.f_no_checkplan)
1592
- if (this.item.f_no_checkplan == '无计划安检') {
1593
- value = this.$androidUtil.path({
1594
- alias: 'getUserinfomation',
1595
- data: {condition: "f_check_item_id = '" + this.item.id + "' and f_no_checkplan = '无计划安检'"}
1596
- })
1597
- } else {
1598
- value = this.$androidUtil.bzLogic('FetchCheckPaper', {id: this.item.id})
1599
- }
1600
- } else {
1601
- value = await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/path/getUserinfomation`, {data: {condition: `id = '${this.item.f_paper_id}'`}})
1602
- }
1603
- Util.replaceFalse(value)
1604
- console.log("value:" + JSON.stringify(value))
1605
- if (value.data.length != 0) {
1606
- that.$set('data', value.data[0])
1607
- console.log("f_devices:" + JSON.stringify(value.data[0].f_devices))
1608
- if (value.data[0].f_devices) {
1609
- for (let da in that.devices) {
1610
- that.$set('data.device' + that.devices[da].n, [])
1611
- }
1612
- value.data[0].f_devices.forEach((item) => {
1613
- console.log('回写数据=>' + JSON.stringify(item))
1614
- for (let i in item.f_items) {
1615
- // if (item.f_items[i].f_path != '' && item.f_items[i].f_path != null) {
1616
- // this.picture.push({f_path: item.f_items[i].f_path, name: item.f_items[i].f_item_name})
1617
- // }
1618
- for (let de in that.config[item.f_device_type].items) {
1619
- if (item.f_items[i].f_item_name == de) {
1620
- if (that.config[item.f_device_type].items[de].type == 'selector') {
1621
- item.f_items[i].f_item_value = []
1622
- } else {
1623
- item.f_items[i].f_item_value = ''
1624
- }
1625
- }
1626
- }
1627
- console.log('回写数据item.f_items[i]=======>' + JSON.stringify(item.f_items[i]))
1628
- for (let j in item.f_items[i].f_item_lists) {
1629
- console.log('回写数据item.f_items.f_item_lists[j]=======>' + JSON.stringify(item.f_items[i].f_item_lists[j]))
1630
- if (item.f_items[i].f_item_value instanceof Array) {
1631
- item.f_items[i].f_item_value.push(item.f_items[i].f_item_lists[j].f_item_value)
1632
- } else {
1633
- item.f_items[i].f_item_value = item.f_items[i].f_item_lists[j].f_item_value
1634
- }
1635
-
1636
- }
1637
- }
1638
- for (let de in that.devices) {
1639
- if (that.devices[de].device == item.f_device_type) {
1640
- that.data['device' + that.devices[de].n].push({
1641
- f_device_type: item.f_device_type,
1642
- f_items: item.f_items
1643
- })
1644
- console.log("device:" + JSON.stringify(that.data['device' + that.devices[de].n]))
1645
- }
1646
- }
1647
- })
1648
- if (this.role == 'androidview') {
1649
- Util.androidRatifyPics(that.data, this.$androidUtil.getProxyUrl())
1650
- Util.androidRatifyPics(that.picture, this.$androidUtil.getProxyUrl())
1651
- Util.booleanFilter(that.data)
1652
- }
1653
- console.log('回写数据完成后'+JSON.stringify(that.data))
1654
- }
1655
- } else {
1656
- console.log("该安检单可能已不在本地!")
1657
- this.init()
1658
- }
1659
- console.log('页面跳转')
1660
- var pardate = {
1661
- _this:this,
1662
- tittle:'安检详情',
1663
- safe:true
1664
- }
1665
- // this.$dispatch('gotoson',pardate)
1666
- that.$goto('paper-state', {}, 'paper-router')
1667
- } else {
1668
- let that = this
1669
- let id
1670
- if (this.role == 'view') {
1671
- id = this.item.id
1672
- }
1673
- this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/path/getUserinfomation`, {data:{condition:`id = '${id}'`}}).then((respanse)=> {
1674
- if (respanse.data.length != 0) {
1675
- that.data = Object.assign(that.data,respanse.data[0])
1676
- if(respanse.data[0].f_devices) {
1677
- for (let da in that.devices) {
1678
- that.$set('data.device' + that.devices[da].n, [])
1679
- }
1680
- respanse.data[0].f_devices.forEach((item) => {
1681
- for (let de in that.devices) {
1682
- if (that.devices[de].device == item.f_device_type) {
1683
- that.data['device' + that.devices[de].n].push({
1684
- f_device_type: item.f_device_type,
1685
- f_items: item.f_items
1686
- })
1687
- }
1688
- }
1689
- })
1690
- }
1691
- Util.replaceFalse(that.data)
1692
- Util.booleanFilter(that.data)
1693
- if(this.role == 'view'){
1694
- Util.ratifyPics(that.data)
1695
- }else{
1696
- Util.androidRatifyPics(that.data,this.$androidUtil.getProxyUrl())
1697
- }
1698
- console.log("that.data:", that.data)
1699
- } else {
1700
- alert("该安检单可能已不在本地!")
1701
- this.init()
1702
- }
1703
- var pardate = {
1704
- _this:this,
1705
- tittle:'安检详情',
1706
- safe:true
1707
- }
1708
- // this.$dispatch('gotoson',pardate)
1709
- that.$goto('paper-state', {}, 'paper-router')
1710
- }
1711
- ).catch(
1712
- (respanse) => {
1713
- alert('查找安检单失败')
1714
- })
1715
- }
1716
- // else {
1717
- // let that = this
1718
- // this.$androidUtil.bzLogic('FetchCheckPaper', {id: this.item.id}).then((respanse) => {
1719
- // if (respanse.data.data.length != 0) {
1720
- // that.data = Object.assign(that.data,respanse.data.data[0])
1721
- // if(respanse.data.data[0].f_devices) {
1722
- // for (let da in that.devices) {
1723
- // that.$set('data.device' + that.devices[da].n, [])
1724
- // }
1725
- // respanse.data.data[0].f_devices.forEach((item) => {
1726
- // for (let de in that.devices) {
1727
- // if (that.devices[de].device == item.f_device_type) {
1728
- // that.$set('data.device' + that.devices[de].n, [])
1729
- // that.data['device' + that.devices[de].n].push({
1730
- // f_device_type: item.f_device_type,
1731
- // f_items: item.f_items
1732
- // })
1733
- // }
1734
- // }
1735
- // })
1736
- // }
1737
- // Util.booleanFilter(that.data)
1738
- // console.log("that.data:", that.data)
1739
- // } else {
1740
- // alert("该安检单可能已不在本地!")
1741
- // this.init()
1742
- // }
1743
- // that.$goto('paper-state', {}, 'paper-router')
1744
- // }
1745
- // ).catch(
1746
- // (respanse) => {
1747
- // alert('查找安检单失败')
1748
- // })
1749
- // }
1750
- }else{
1751
- this.init()
1752
- }
1753
- },
1754
- destroyed() {
1755
- this.disableTimer()
1756
- console.log('退出当前页SetNoncivil')
1757
- },
1758
-
1759
- }
1760
- </script>
1
+ <style>
2
+ .divmask {
3
+ pointer-events: none;
4
+ }
5
+ </style>
6
+
7
+ <template>
8
+ <div class="auto">
9
+ <!--<a href="#" class="btn btn-primary" @click="$back('items')">&lt;&lt;</a>-->
10
+ <!--<a href="#" v-show="actionEnabled" class="btn btn-primary" @click="savePaper(true)" v-if="item.f_upload_state != '已传'">保存</a>-->
11
+ <!--<a id="upload" href="#" v-show="actionEnabled" class="btn btn-primary" @click="uploadPaper" v-if="item.f_upload_state != '已传'">上传</a>-->
12
+ <radio-group style="width:100%" :value.sync="selector" type="info" buttons="false">
13
+ <radio style="width:25%" value="paper-state-noncivil">安检概况</radio>
14
+ <radio style="width:25%" value="paper-user">用户信息</radio>
15
+ <radio style="width:25%" value="devices">安检选项</radio>
16
+ <radio style="width:25%" value="paper-feedback">拍照上传</radio>
17
+ </radio-group>
18
+ <route :comp="{name: 'void-page'}" name="paper-router"></route>
19
+ <modal :show.sync="showModal">
20
+ <div slot="modal-header" class="modal-header">
21
+ <h4 class="modal-title">
22
+ 照片浏览
23
+ </h4>
24
+ </div>
25
+ <div slot="modal-body" class="modal-body">
26
+ <img :src="pic_to_be_viewed" width="420" height="560">
27
+ </div>
28
+ <div slot="modal-footer" class="modal-footer">
29
+ <button type="button" class="btn btn-default" @click="showModal = false">确认</button>
30
+ </div>
31
+ </modal>
32
+ <!-- <back-page :need-back='true' @flag="back()" v-show="showBack"></back-page>-->
33
+ </div>
34
+ <!--<work-busy :is-busy="isUpload"></work-busy>-->
35
+ </template>
36
+
37
+ <script>
38
+ import RadioGroup from 'vue-client/src/vue-strap/src/radioGroup'
39
+ import Radio from 'vue-client/src/vue-strap/src/radioBtn'
40
+ import Vue from 'vue'
41
+ import * as Util from '../Util'
42
+ import co from 'co'
43
+
44
+ let getRepairParam = function * (self){
45
+ let data = {
46
+ model: self.model, loginUser: {
47
+ name: Vue.user.name,
48
+ ename: Vue.user.ename
49
+ }, user: self.user, callObj: self.callObj
50
+ }
51
+ if(self.meading == '转维修员'){
52
+ data.toRepair = '一级派单'
53
+ }
54
+ data.model.f_attendant = data.loginUser.name
55
+ console.log('===================')
56
+ console.log(data)
57
+ let res
58
+ let errString = self.errorVerify()
59
+ if(errString){
60
+ console.log(errString)
61
+ if (Vue.android)
62
+ self.undo()
63
+ this.$showMessage(errString)
64
+ return
65
+ } else {
66
+ if(self.role == 'inspect'){
67
+ if(self.meading == '转维修员' && (self.model.serviceacitivity[0].f_reciever == '' || self.model.serviceacitivity[0].f_reciever == undefined)){
68
+ this.$showMessage("请选择维修员!")
69
+ return
70
+ }
71
+ if(self.meading == '转站点' && (self.model.serviceacitivity[0].f_reciever == '' || self.model.serviceacitivity[0].f_reciever == undefined)){
72
+ this.$showMessage("请选择站点!")
73
+ return
74
+ }
75
+ if(self.model.f_repairtype == ''){
76
+ this.$showMessage("请选择报修类型!")
77
+ return
78
+ }
79
+ console.log("转维修数据1:==》"+JSON.stringify(data))
80
+ let checkResult = '正常'
81
+ let options = [{"data": "已处理"},{"data": "未处理"}]
82
+ let value = ''
83
+ let codata = JSON.parse(JSON.stringify(self.data))
84
+ for(let device in codata){
85
+ console.log('转维修codata[device]'+JSON.stringify(codata[device]))
86
+ let f_device_type
87
+ if(device.startsWith("device")){
88
+ for(let item in codata[device]) {
89
+ if(codata[device].length > 1 ){
90
+ let j = Number.parseInt(item)+1
91
+ f_device_type = `${codata[device][item].f_device_type}${j}`
92
+ }else{
93
+ f_device_type = codata[device][item].f_device_type
94
+ }
95
+ // console.log('codata[device][item]=>',codata[device][item])
96
+ let details = []
97
+ for(let i in codata[device][item].f_items){
98
+ let items = codata[device][item].f_items[i]
99
+ console.log('items',items)
100
+ if(items.f_is_defect == true || items.f_is_defect == 'true'){
101
+ checkResult = '有隐患'
102
+ console.log('类型----',f_device_type)
103
+ // let res = yield self.$resetpost(`${self.Url}/rs/sql/getDeviceItem`,{data:{f_device_id:codata[device][item].f_device_id,f_item_name:items.f_item_name}})
104
+ // console.log('获取安检设备信息结果=》'+JSON.stringify(res))
105
+ self.$set('detail.f_defect_id', items.id)
106
+ self.$set('detail.f_project',`${items.f_item_name}:${items.f_item_value}`)
107
+ self.$set('detail.type',items.type)
108
+ self.$set('detail.options',options)
109
+ details.push(JSON.parse(JSON.stringify(self.detail)))
110
+ }
111
+ if(items.type == 'selector'){
112
+ items.selected = ''
113
+ }
114
+ self.detail = {}
115
+ }
116
+ console.log('details',details)
117
+ self.$set('defectDevice.f_type',f_device_type)
118
+ self.$set('defectDevice.details',details)
119
+ if(self.defectDevice.details.length >0 ){
120
+ self.repairitems.push(JSON.parse(JSON.stringify(self.defectDevice)))
121
+ }
122
+ self.defectDevice = {}
123
+ console.log('repairitems===>'+self.repairitems)
124
+ }
125
+ }
126
+ }
127
+ self.$set('model.f_repairitems.data',self.repairitems)
128
+
129
+
130
+ console.log("转维修数据2:==》"+JSON.stringify(data))
131
+ res = self.$androidUtil.bzLogic('safecheckToRepair',data)
132
+ console.log('res==========')
133
+ console.log(res.code)
134
+ console.log(res.data)
135
+ if(res.code == 200){
136
+ self.isSafeCheckToRepair = true
137
+ self.undo()
138
+ self.$set('paper.f_SafeToRepair_id',res.data.f_service_id)
139
+ console.log('更新维修单id')
140
+ self.$resetpost(`${self.Url}/rs/logic/updatePaperRepair`,{data:{f_paper_id:self.data.f_paper_id,f_SafeToRepair_id:res.data.f_service_id}}).then((ret)=>{
141
+ console.log('ret==>'+ret)
142
+ if(ret.data.code ==200){
143
+ console.log('维修单id修改成功')
144
+ self.$showMessage('上传并转维修成功!')
145
+ self.$dispatch('confirm')
146
+ // self.$back()
147
+ }else{
148
+ self.$showMessage('安检转维修失败!')
149
+ }
150
+ }).catch(v=>{
151
+ console.log('v=>'+JSON.stringify(v))
152
+ self.$showMessage('安检转维修失败!')
153
+ })
154
+ }else{
155
+ self.$showMessage('安检转维修失败!')
156
+ }
157
+ }
158
+ }
159
+ }
160
+
161
+
162
+
163
+ export default {
164
+ title: '安检单',
165
+ props: ['f_plan_id', 'item', 'role'],
166
+ data() {
167
+ return {
168
+ data: {
169
+ f_devices:[],
170
+ },
171
+ isUpload:false,
172
+ livedispose:'',
173
+ timer: null,
174
+ isToRepair:false,
175
+ onlySave:true, //判断保存还是保存并上传
176
+ clickBack:true, //是否点击返回按钮
177
+ startClick:false,//开始安检按钮是否可点击
178
+ isStart:false, //是否开始安检
179
+ checkResult:{},
180
+ newcheckResult:{},
181
+ showModal: false,
182
+ pic_to_be_viewed: '',
183
+ devices:[],
184
+ f_devices:[],
185
+ isSafeCheckToRepair:false,//是否转维修
186
+ showBack:true,
187
+ Url:this.$androidUtil.getProxyUrl(),
188
+ detail:{},
189
+ defectDevice:{},
190
+ user:{},
191
+ model: { //转维修数据
192
+ // 一次派单
193
+ serviceacitivity: [{
194
+ f_service_acitivity_type: '派单'
195
+ }],
196
+ f_source:'安检',
197
+ f_service_id: '',
198
+ f_contact_phone: '',
199
+ f_meetunit: '',
200
+ f_phone: '',
201
+ f_user_name: '',
202
+ f_address: '',
203
+ f_repair_date: Util.toStandardTimeString(),
204
+ f_card_id: '',
205
+ // f_department: '', 站点选择
206
+ f_reciever:'',
207
+ f_remarks: '',
208
+ f_user_type: '',
209
+ f_area: '',
210
+ f_unit_name:'',
211
+ f_street: '',
212
+ f_residential_area: '',
213
+ f_building: '',
214
+ f_unit: '',
215
+ f_floor: '',
216
+ f_room: '',
217
+ aState: null,
218
+ f_repairtype: '',
219
+ f_repairitems:{},
220
+ },
221
+ repairitems:[],
222
+ meading:'转站点',
223
+ config:{
224
+ "燃气表":{
225
+ "checkmust":true,
226
+ "items":{
227
+ "燃气表照片":{"index":1,"type":"picture"},
228
+ "表品牌":{"index":2,"type":"string"},
229
+ "表号":{"index":3,"type":"string"},
230
+ "表封号":{"index":4,"type":"number"},
231
+ "表型号":{"index":5,"type":"selector","options":[{"data":"G2.5","isdefect":false},{"data":"G4","isdefect":false},{"data":"G6","isdefect":false},{"data":"G10","isdefect":false},{"data":"G1.6","isdefect":false},{"data":"G20","isdefect":false},{"data":"G16","isdefect":false},{"data":"G25","isdefect":false},{"data":"G60","isdefect":false},{"data":"其他","isdefect":false}]},
232
+ "位置":{"index":6,"type":"selector","options":[{"data":"室内","isdefect":false},{"data":"室外","isdefect":false}]},
233
+ "表底数":{"index":7,"type":"number"},
234
+ "累计购气量":{"index":7,"type":"number"},
235
+ }
236
+ }
237
+ }
238
+ }
239
+ },
240
+ components: {
241
+ RadioGroup,
242
+ Radio,
243
+ },
244
+ computed: {
245
+ selector: {
246
+ get() {
247
+ return 'paper-state-noncivil'
248
+ },
249
+ set(val) {
250
+ if(this.isStrat){
251
+ var pardate = {
252
+ _this:this,
253
+ tittle:'安检详情',
254
+ safe:true
255
+ }
256
+ // this.$dispatch('gotoson',pardate)
257
+ this.$goto(val, {userinfo:this.data}, 'paper-router')
258
+ }else{
259
+ this.$showMessage('未开始安检!')
260
+ }
261
+ }
262
+ },
263
+ actionEnabled: {
264
+ get() {
265
+ return this.role == 'inspect'
266
+ }
267
+ }
268
+ },
269
+ methods: {
270
+ back(){
271
+ if (this.role == 'inspect') {
272
+ if(!this.isStrat){
273
+ this.$back()
274
+ return
275
+ }else{
276
+ this.clickBack = true
277
+ this.save()
278
+ }
279
+ }else{
280
+ this.$back()
281
+ }
282
+ },
283
+ viewPic(fileName) {
284
+ console.log('view pic: ' + fileName)
285
+ if(this.role == 'view') {
286
+ if(!fileName.endsWith('nopic.png')) {
287
+ this.pic_to_be_viewed = fileName
288
+ this.showModal = true
289
+ }
290
+ } else {
291
+ HostApp.viewPic(fileName)
292
+ }
293
+ },
294
+ tick() {
295
+ this.timer = null
296
+ this.data.f_offsite_time = Util.toStandardTimeString()
297
+ this.timer = window.setTimeout(this.tick, 1000)
298
+ },
299
+ getRepairState() {
300
+ let repaired = true
301
+ this.data.f_defects.forEach((defect) => {
302
+ repaired = repaired & (defect.f_ratification == '已处理')
303
+ })
304
+ return repaired
305
+ },
306
+ verifyRepairDefects() {
307
+ this.data.f_repair_date = Util.toStandardTimeString()
308
+ this.data.f_repaired = this.getRepairState() ? '已修' : '在修'
309
+ },
310
+ // async savePaper(saveOnly) {
311
+ // if(this.role == 'repair') {
312
+ // let errorMsg = this.verifyRepairDefects()
313
+ // if(errorMsg) {
314
+ // this.$showMessage(errorMsg)
315
+ // return false
316
+ // }
317
+ // return this.save()
318
+ // } else {
319
+ // //保存时校验
320
+ // let errString = this.errorVerify()
321
+ // if (saveOnly) {
322
+ // if (errString) {
323
+ // this.data.f_complete = '未完成'
324
+ // // this.isStrat = false
325
+ // this.disableTimer()
326
+ // return this.save()
327
+ // } else {
328
+ // console.log('赋值前',this.data)
329
+ // if(!this.data.f_offsite_time){
330
+ // this.$set('data.f_offsite_time', Util.toStandardTimeString())
331
+ // }
332
+ // console.log('赋值后',this.data)
333
+ // this.data.f_complete = '已完成'
334
+ // this.disableTimer()
335
+ // return this.save()
336
+ // }
337
+ // } else {
338
+ // if (errString) {
339
+ // console.log(errString)
340
+ // if (Vue.android){
341
+ // // if(this.isUpload){
342
+ // // this.isUpload = false
343
+ // // }
344
+ // this.$showMessage(errString)
345
+ // }
346
+ // return false
347
+ // } else {
348
+ // if(!this.data.f_offsite_time){
349
+ // this.$set('data.f_offsite_time', Util.toStandardTimeString())
350
+ // }
351
+ // console.log('赋值后',this.data)
352
+ // this.data.f_complete = '已完成'
353
+ // this.disableTimer()
354
+ // return this.uploadCheckPaper()
355
+ // }
356
+ // }
357
+ // }
358
+ // },
359
+ genuineSave(saveOnly) {
360
+ HostApp.__this__.save(saveOnly)
361
+ if(!saveOnly)
362
+ HostApp.__this__.disableTimer()
363
+ HostApp.__callback__ = null
364
+ HostApp.__this__ = null
365
+ },
366
+ // uploadPaper() {
367
+ // // this.isUpload = true
368
+ // this.savePaper(false).then((res) => {
369
+ // console.log(`res${res}`)
370
+ // if(res !=true){
371
+ // console('失败')
372
+ // return
373
+ // }else{
374
+ // this.$back()
375
+ // }
376
+ // })
377
+ // },
378
+ errorVerify() {
379
+ let hasError = this.verifyState()
380
+ if(hasError)
381
+ return hasError
382
+
383
+ if(this.data.f_entry_status != '入户')
384
+ return null
385
+ hasError = this.verifyUser()
386
+ if(hasError)
387
+ return hasError
388
+ hasError = this.verifyDevices()
389
+ if(hasError)
390
+ return hasError
391
+ hasError = this.verifyFeedback()
392
+ if(hasError)
393
+ return hasError
394
+ },
395
+ verifyAllDefect(){
396
+ let prefix = '隐患汇总 '
397
+ this.data.f_defects.forEach((item)=>{
398
+ if(Util.required(item.f_resolve_type))
399
+ return prefix + item.f_defect + '处理方式必填'
400
+ if(Util.required(item.f_ratification))
401
+ return prefix + item.f_defect + '整改结果必填'
402
+ })
403
+ },
404
+
405
+ verifyState() {
406
+ if(Vue.android && this.data.f_entry_status == '未使用天然气' && this.data.f_nongasuser_path == Vue.nopic)
407
+ return '未使用天然气则必须拍照'
408
+ if(Vue.android && this.data.f_entry_status == '到访不遇' && this.data.f_noanswer_path == Vue.nopic)
409
+ return '到访不遇必须拍照'
410
+ },
411
+ verifyUser() {
412
+ let prefix = '用户基本信息:'
413
+ if(Util.required(this.data.f_user_name))
414
+ return prefix + '用户名必须输入'
415
+ if(Util.required(this.data.f_user_phone))
416
+ return prefix + '用户电话必须输入'
417
+ if(Util.required(this.data.f_address))
418
+ return prefix + '地址必须输入'
419
+ },
420
+ verifyDevices() {
421
+ for (let dev in this.config) {
422
+ if (this.config[dev].checkmust == true) {
423
+ let error = true
424
+ for(let device in this.data) {
425
+ if (device.startsWith("device")) {
426
+ for (let item in this.data[device]) {
427
+ if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
428
+ error = false
429
+ }
430
+ }
431
+ }
432
+ }
433
+ if (error) {
434
+ return "请检查" + dev
435
+ }
436
+ }
437
+ }
438
+
439
+ for (let dev in this.config) {
440
+ for(let device in this.data) {
441
+ if (device.startsWith("device")) {
442
+ for (let item in this.data[device]) {
443
+ //检查每一条安检结果
444
+ if (this.data[device].length != 0 && this.data[device][item].f_device_type == dev) {
445
+ for (let i in this.data[device][item].f_items) {
446
+ for (let it in this.config[dev].items) {
447
+ 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) {
448
+ return dev + (this.data[device].indexOf(this.data[device][item]) + 1) + this.data[device][item].f_items[i].f_item_name + "未检查"
449
+ }
450
+ }
451
+ //检查安检下拉结果
452
+ if (this.data[device][item].f_items[i].type == 'selector') {
453
+ if (this.data[device][item].f_items[i].f_is_defect == true && this.data[device][item].f_items[i].f_path == Vue.nopic) {
454
+ 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 + "选中必须拍照"
455
+ }
456
+ }
457
+ }
458
+ }
459
+ }
460
+ }
461
+ }
462
+ }
463
+ },
464
+
465
+
466
+ verifyFeedback() {
467
+ let prefix = '用户反馈:'
468
+ if(Vue.android && (!this.data.f_overall_imgs || this.data.f_overall_imgs.length == 0) && this.data.f_entry_status == '入户')
469
+ return prefix + '必须有安检总体照片'
470
+ if(Vue.android && this.data.f_defect_notified && this.data.f_notified_path == Vue.nopic)
471
+ return prefix + '下发安检通知书则必须给通知书拍照'
472
+ if(!this.data.f_client_evaluation && this.data.f_entry_status == '入户')
473
+ return prefix + '请选择服务评价'
474
+ },
475
+
476
+ setUrgency() {
477
+ this.data.f_defect_urgency = 'Z'
478
+ let that = this
479
+ this.data.f_defects.forEach(function(defect) {
480
+ if(that.data.f_defect_urgency > defect.f_defect_level.charAt(0))
481
+ that.data.f_defect_urgency = defect.f_defect_level.charAt(0)
482
+ })
483
+ if(this.data.f_defect_urgency == 'Z')
484
+ this.data.f_defect_urgency = null
485
+ },
486
+ getAllDefect() {
487
+ let checkResults = {
488
+ result: '正常',
489
+ data: []
490
+ }
491
+ let value = ''
492
+ let codata = JSON.parse(JSON.stringify(this.data))
493
+ console.log('config =====> ' + JSON.stringify(this.config))
494
+ console.log('codata =====> ' + JSON.stringify(codata))
495
+ codata.f_devices = []
496
+ this.f_devices = []
497
+ for (let device in codata) {
498
+ let f_device_type
499
+ if (device.startsWith("device")) {
500
+ console.log('codata[device] =====> ' + JSON.stringify(codata[device]))
501
+ let hasOther = ''
502
+ let otherValue = null
503
+ for (let item in codata[device]) {
504
+ codata[device][item].f_create_time = Util.toStandardTimeString()
505
+ // if (codata[device].length > 1) {
506
+ // let j = Number.parseInt(item) + 1
507
+ // f_device_type = `${codata[device][item].f_device_type}${j}`
508
+ // } else {
509
+ // f_device_type = codata[device][item].f_device_type
510
+ // }
511
+ // console.log('codata[device][item]=>',codata[device][item])
512
+ for (let i in codata[device][item].f_items) {
513
+
514
+ console.log('i' + i)
515
+ console.log('codata[device][item].f_items' + JSON.stringify(codata[device][item].f_items))
516
+ var items = codata[device][item].f_items[i]
517
+ items.f_create_time = Util.toStandardTimeString()
518
+ console.log('之前items' + JSON.stringify(items))
519
+ items.f_item_lists = []
520
+ console.log('之后items' + JSON.stringify(items))
521
+ // console.log('items' + JSON.stringify(items))
522
+ // console.log(`type => ${JSON.stringify(codata[device][item].f_device_type)} name => ${JSON.stringify(items.f_item_name)} value => ${JSON.stringify(items.f_item_value)}`)
523
+ // console.log(`f_is_defect => ${this.config[codata[device][item]
524
+ // .f_device_type]
525
+ // .items[items.f_item_name]
526
+ // .options
527
+ // .find((option)=>option.data === items.f_item_value)
528
+ // .map((option)=>option.f_is_defect)}`)
529
+ // if (items.f_is_defect && (items.f_is_defect == true || items.f_is_defect == 'true')) {
530
+ // console.log('进入有隐患')
531
+ // checkResults.result = '有隐患'
532
+ // console.log('有隐患items.f_item_name==》' + JSON.stringify(items.f_item_name))
533
+ // console.log('有隐患items.f_item_value==》' + JSON.stringify(items.f_item_value))
534
+ // // this.$set('checkResult.' + items.f_item_name, items.f_item_value)
535
+ // this.checkResult[items.f_item_name] = items.f_item_value
536
+ // console.log('有隐患checkResult==》' + JSON.stringify(this.checkResult))
537
+ // // this.$set('checkResultsss.' + items.f_item_name, `${f_device_type}${items.f_item_value}`)
538
+ // // console.log('有隐患checkResultsss==》' + JSON.stringify(this.checkResultsss))
539
+ // }
540
+ if (items.type == 'selector') {
541
+ items.selected = []
542
+ } else if (items.type == 'inputSelector') {
543
+ items.selected = ''
544
+ }
545
+ //遍历配置项 将所选隐患项的配置信息放入保存的数据中
546
+ let f_is_defect //是否是隐患
547
+ let f_defect_level //是否是隐患
548
+ let f_item_name = items.f_item_name
549
+ let f_item_value
550
+ let f_is_eliminate //隐患是否消除
551
+ let f_meternumber = ''
552
+ let f_user_defects = [] // 用户所有隐患
553
+ console.log('f_item_name=====>' + f_item_name)
554
+ console.log('items.type=====>' + items.type)
555
+ if (items.type === 'selector') {
556
+ for (let i in items.f_item_value) {
557
+ let configItems = this.config[codata[device][item].f_device_type].items[f_item_name]
558
+ console.log('configItems=====>' + JSON.stringify(configItems))
559
+ for (let k in configItems.options) {
560
+ console.log('configItems.options[k]==>' + JSON.stringify(configItems.options[k]))
561
+ if (items.f_item_value[i] === configItems.options[k].data) {
562
+
563
+ f_is_defect = configItems.options[k].isdefect
564
+ f_item_value = items.f_item_value[i]
565
+ f_defect_level = configItems.options[k].level
566
+
567
+ console.log('f_is_defect=====>' + f_is_defect)
568
+ console.log('f_item_value=====>' + f_item_value)
569
+ console.log('f_defect_level=====>' + f_defect_level)
570
+
571
+ if (f_is_defect) {
572
+ if (checkResults.result !== '有隐患') {
573
+ checkResults.result = '有隐患'
574
+ }
575
+ if (!this.checkResult.hasOwnProperty(f_item_name)) {
576
+ console.log(`The ${f_item_name} initialized`)
577
+ this.checkResult[f_item_name] = []
578
+ }
579
+
580
+ console.log(`The ${f_item_name} was pushed ${f_item_value}`)
581
+ this.checkResult[f_item_name].push(f_item_value)
582
+
583
+ }
584
+
585
+ let items_list = {
586
+ f_is_defect: f_is_defect,
587
+ f_item_value: f_item_value,
588
+ f_defect_level: f_defect_level,
589
+ f_is_eliminate: null,
590
+ f_create_time: Util.toStandardTimeString()
591
+ }
592
+ if (!items.f_item_lists) {
593
+ console.log('f_item_lists未定义')
594
+ items.f_item_lists = []
595
+ console.log('items_list=========>' + JSON.stringify(items_list))
596
+ if (JSON.stringify(items_list) !== '{}') {
597
+ console.log('放了')
598
+ items.f_item_lists.push(items_list)
599
+ }
600
+ } else {
601
+ console.log('items_list=========>' + JSON.stringify(items_list))
602
+ if (JSON.stringify(items_list) !== '{}') {
603
+ console.log('也放了')
604
+ items.f_item_lists.push(items_list)
605
+ }
606
+ }
607
+ }
608
+ }
609
+ }
610
+ } else {
611
+ let configItems = this.config[codata[device][item].f_device_type].items[items.f_item_name]
612
+ console.log('configItems===>' + JSON.stringify(configItems))
613
+ f_is_defect = configItems.isdefect
614
+ f_defect_level = configItems.level
615
+ f_item_value = items.f_item_value
616
+ console.log('else f_is_defect=====>' + f_is_defect)
617
+ console.log('else f_defect_level=====>' + f_defect_level)
618
+ console.log('items.f_item_value==>' + items.f_item_value)
619
+ let items_list = {
620
+ f_is_defect: f_is_defect,
621
+ f_item_value: f_item_value,
622
+ f_defect_level: f_defect_level,
623
+ f_create_time: Util.toStandardTimeString()
624
+ }
625
+ console.log('items_list=========>' + JSON.stringify(items_list))
626
+ console.log('items.f_item_lists' + JSON.stringify(items.f_item_lists))
627
+ if (!items.f_item_lists) {
628
+ console.log('f_item_lists未定义')
629
+ items.f_item_lists = []
630
+ if (JSON.stringify(items_list) != '{}') {
631
+ console.log('else放了')
632
+ items.f_item_lists.push(items_list)
633
+ }
634
+ } else {
635
+ // items.f_item_lists[0].f_item_value = f_item_value
636
+ if (JSON.stringify(items_list) != '{}') {
637
+ console.log('else也放了')
638
+ console.log('放之后items_list=========>' + JSON.stringify(items_list))
639
+ console.log('放之后items.f_item_lists' + JSON.stringify(items.f_item_lists))
640
+ console.log('type=>items.f_item_lists' + typeof items.f_item_lists)
641
+ items.f_item_lists.push(items_list)
642
+ }
643
+ }
644
+ }
645
+ if (hasOther !== '' && otherValue !== null) {
646
+ console.log(`The other value was pushed.`)
647
+ this.checkResult[hasOther].push(otherValue)
648
+ hasOther = ''
649
+ otherValue = null
650
+ }
651
+ items.f_item_value = ''
652
+ }
653
+ console.log('安检结果checkResult' + JSON.stringify(this.checkResult))
654
+ this.f_devices.push(codata[device][item])
655
+ }
656
+ }
657
+ }
658
+ if (this.checkResult) {
659
+ for (let key in this.checkResult) {
660
+ //TODO 上次安检结果数据组织
661
+ console.log('key=>' + key)
662
+ console.log('value=>' + this.checkResult[key])
663
+ let temp = {}
664
+ temp[key] = this.checkResult[key].join(',')
665
+ checkResults.data.push(temp)
666
+ // this.newcheckResult[key] = this.checkResult[key]
667
+ // checkResults.data.push(this.newcheckResult)
668
+ console.log('checkResults.data==>' + JSON.stringify(checkResults))
669
+ // this.newcheckResult = {}
670
+ }
671
+ this.checkResult = {}
672
+ }
673
+ console.log(`typeof-checkResults-->${typeof checkResults}`)
674
+ console.log('checkResults ==> ' + JSON.stringify(checkResults))
675
+ codata.f_defect_content = JSON.stringify(checkResults)
676
+ this.data.f_defect_content = JSON.stringify(checkResults)
677
+ console.log('f_defect_content' + codata.f_defect_content)
678
+ return codata
679
+ },
680
+
681
+ getWeixin(backData){
682
+ 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}
683
+
684
+ let Resultstr = ''
685
+
686
+ for (let dev in this.config) {
687
+ for (let device in backData) {
688
+ if (device.startsWith("device")) {
689
+ for (let item in backData[device]) {
690
+ //遍历结果
691
+ if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
692
+ let error = true
693
+ let n = 0
694
+ let level = ''
695
+ for (let i in backData[device][item].f_items) {
696
+ if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
697
+ error = false
698
+ n +=1
699
+ if(level == ''){
700
+ level = backData[device][item].f_items[i].f_defect_level
701
+ }
702
+ let le = backData[device][item].f_items[i].f_defect_level
703
+ if(le.startsWith('A')){
704
+ let i = parseInt(le.substring(1))
705
+ if(i<parseInt(le.substring(level))){
706
+ level = le
707
+ }
708
+ }else if (le.startsWith('B')){
709
+ let i = parseInt(le.substring(1))
710
+ if(i<parseInt(le.substring(level))){
711
+ level = le
712
+ }
713
+ }else if(le.startsWith('C')){
714
+ let i = parseInt(le.substring(1))
715
+ if(i<parseInt(le.substring(level))){
716
+ level = le
717
+ }
718
+ }
719
+ }
720
+ }
721
+ if (error) {
722
+ Resultstr += dev + (backData[device].indexOf(backData[device][item]) + 1) + ':正常;'
723
+ } else {
724
+ Resultstr += dev + (backData[device].indexOf(backData[device][item]) + 1) + ':有隐患;'
725
+ }
726
+ result['f_err_number'] = n
727
+ result['f_danger_lever'] = level
728
+ }
729
+ }
730
+ }
731
+ }
732
+ }
733
+ for (let dev in this.config) {
734
+ for (let device in backData) {
735
+ if (device.startsWith("device")) {
736
+ for (let item in backData[device]) {
737
+ if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
738
+ for (let i in backData[device][item].f_items) {
739
+ if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
740
+ 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 + ';'
741
+
742
+ }
743
+ }
744
+ }
745
+ }
746
+ }
747
+ }
748
+ }
749
+
750
+ return result
751
+ },
752
+
753
+ uploadCheckPaper(){
754
+ console.log('进入上传')
755
+ let errString = this.errorVerify()
756
+ if (errString) {
757
+ console.log(errString)
758
+ console.log('Vue.android',Vue.android)
759
+ console.log('this.isUpload',this.isUpload)
760
+ if (Vue.android){
761
+ // if(this.isUpload){
762
+ // this.isUpload = false
763
+ // }
764
+ this.$showMessage(errString)
765
+ }
766
+ return
767
+ } else {
768
+ this.$set('data.f_offsite_time', Util.toStandardTimeString())
769
+ this.$set('data.f_upload_time', Util.toStandardTimeString())
770
+ console.log('赋值后',this.data)
771
+ this.data.f_complete = '已完成'
772
+ this.disableTimer()
773
+ }
774
+ console.log('uploadCheckPaper-->isUpload'+this.isUpload)
775
+ this.onlySave = false
776
+ let res = this.save()
777
+
778
+ // if(res) {
779
+ // let codata = this.getAllDefect()
780
+ // //获取微信推送内容
781
+ // let WxResult = this.getWeixin(codata)
782
+ // let haslivedispose = this.$androidUtil.bzLogic('getLiveDispose', {
783
+ // f_check_item_id: this.data.f_check_item_id
784
+ // })
785
+ // if(!this.isToRepair){
786
+ // if(haslivedispose.data.length > 0 && (this.livedispose == 'true' || this.livedispose == true)){
787
+ // if(!this.isSafeCheckToRepair){
788
+ // this.$showMessage('有未处理的隐患,请前往拍照上传中将安检转为维修单!')
789
+ // return
790
+ // }
791
+ // }
792
+ // }
793
+ // // HostApp.uploadPaper({f_check_item_id: this.data.f_check_item_id, f_checker_id: this.data.f_checker_id, data: this.data})
794
+ // console.log(`codata类型-->${typeof codata}`)
795
+ // for (let key in codata){
796
+ // if(key.startsWith("device")){
797
+ // codata[key] = []
798
+ // }
799
+ // }
800
+ // console.log(`codata内容-->${JSON.stringify(codata)}`)
801
+ // try {
802
+ // let response = this.$androidUtil.bzLogic('上传安检信息', {
803
+ // f_check_item_id: this.data.f_check_item_id,
804
+ // f_checker_id: this.data.f_checker_id,
805
+ // row: codata
806
+ // })
807
+ // if (response.code == 200) {
808
+ // console.log('=============response.data==================')
809
+ // console.log(response.data)
810
+ // console.log(typeof response.data)
811
+ // let f_paper_id
812
+ // if(response.data != '' && response.data != null){
813
+ // f_paper_id = JSON.parse(response.data).id
814
+ // }
815
+ // this.$set('data.f_paper_id', f_paper_id)
816
+ // console.log('=============f_paper_id==================')
817
+ // console.log(JSON.stringify(f_paper_id))
818
+ // console.log("===data"+JSON.stringify(this.data))
819
+ // for (let device in this.data){
820
+ // console.log('设备信息device======')
821
+ // console.log(JSON.stringify(this.data[device]))
822
+ // if(device.startsWith("device")){
823
+ // for(let devices of this.data[device]) {
824
+ // devices.f_paper_id = f_paper_id
825
+ // console.log('上传设备信息device======')
826
+ // console.log(JSON.stringify(devices))
827
+ // let ret = this.$androidUtil.bzLogic('UpCheckPaperDevices', {
828
+ // row: devices
829
+ // })
830
+ // console.log(`上传设备信息结果res======${ret}`)
831
+ // if(ret.code == 200){
832
+ // devices.f_device_id = JSON.parse(ret.data.f_device_id).id
833
+ // }
834
+ // if (ret.code != 200) {
835
+ // // this.isUpload = false
836
+ // this.$showMessage("上传失败!")
837
+ // return false
838
+ // }
839
+ // }
840
+ // }
841
+ // }
842
+ // // for (let device of this.f_devices) {
843
+ // // device.f_paper_id = f_paper_id
844
+ // // console.log('上传设备信息device======')
845
+ // // console.log(JSON.stringify(device))
846
+ // // let ret = this.$androidUtil.bzLogic('UpCheckPaperDevices', {
847
+ // // row: device
848
+ // // })
849
+ // // console.log(`上传设备信息结果res======${ret}`)
850
+ // // if (ret.code != 200) {
851
+ // // //TODO 失败后处理
852
+ // // HostApp.alert("上传失败!")
853
+ // // return false
854
+ // // }
855
+ // // }
856
+ // let result = this.$androidUtil.bzLogic('FinishUpload',
857
+ // {
858
+ // f_check_item_id: this.data.f_check_item_id,
859
+ // f_userinfo_id: codata.f_userinfoid,
860
+ // f_last_check_result: codata.f_defect_content
861
+ // })
862
+ // if(result.code == 200){
863
+ // // this.isUpload = false
864
+ // // this.$showAlert("上传成功!",'success',2000)
865
+ // this.$showMessage('上传成功!')
866
+ // this.isStrat=false
867
+ // if(url != ""){
868
+ // this.$resetpost(`${url}`,{data:WxResult})
869
+ // }
870
+ // return true
871
+ // }else{
872
+ // // this.isUpload = false
873
+ // this.$showMessage("上传失败!")
874
+ // return false
875
+ // }
876
+ // }else{
877
+ // // this.isUpload = false
878
+ // this.$showMessage("上传失败!")
879
+ // return false
880
+ // }
881
+ // }catch (e) {
882
+ // console.log('上传失败==='+JSON.stringify(e))
883
+ // // this.isUpload = false
884
+ // this.$showMessage("上传失败!")
885
+ // }
886
+ // }
887
+ },
888
+
889
+ save() {
890
+ console.log('进入保存')
891
+ let errString = this.errorVerify()
892
+ if (errString) {
893
+ this.data.f_complete = '未完成'
894
+ this.disableTimer()
895
+ } else {
896
+ this.data.f_complete = '已完成'
897
+ this.disableTimer()
898
+ }
899
+ // try {
900
+ let codata = this.getAllDefect()
901
+ console.log(`codata类型-->${typeof codata}`)
902
+ console.log(`codata内容-->${JSON.stringify(codata)}`)
903
+ for (let key in codata) {
904
+ if (key.startsWith("device")) {
905
+ console.log('this.data.' + key + JSON.stringify(codata[key]))
906
+ codata[key] = []
907
+ }
908
+ }
909
+ console.log(`codata内容-->${JSON.stringify(codata)}`)
910
+ console.log(`codata内容-->${JSON.stringify(codata.f_user_defects)}`)
911
+ console.log('安卓环境?=》' + Vue.android)
912
+ if (Vue.android) {
913
+ console.log('Vue.android is true')
914
+ let value = this.$androidUtil.path({
915
+ alias: 'getUserinfomation',
916
+ data: {condition: "f_userinfoid = '" + this.item.f_userinfoid + "' and f_no_checkplan = '无计划安检'"}
917
+ })
918
+ console.log('getUserinfomation value ==> ' + JSON.stringify(value))
919
+ if (this.item.f_no_checkplan == '无计划安检' && this.item.f_no_checkplan != '打回') {
920
+ // let result = this.$androidUtil.bzLogic('SafeSaveNoPaper', {
921
+ // f_check_item_id: this.data.f_check_item_id,
922
+ // f_checker_id: this.data.f_checker_id,
923
+ // f_upload_state:'未传',
924
+ // row: codata
925
+ // })
926
+ console.log('无计划安检保存')
927
+ let isStart = true
928
+ let res
929
+ for (let i in this.f_devices) {
930
+ res = HostApp.organizeJSON({isStart: isStart, isDevice: true, device: this.f_devices[i]})
931
+ if (res.code == 200) {
932
+ isStart = false
933
+ } else {
934
+ this.$showMessage("保存失败!")
935
+ }
936
+ }
937
+ let result = HostApp.organizeJSON({
938
+ isStart: false,
939
+ isJSON: true,
940
+ jsonstr: {
941
+ f_check_item_id: this.data.f_check_item_id,
942
+ f_checker_id: this.data.f_checker_id,
943
+ f_upload_state: '未传',
944
+ row: codata
945
+ }
946
+ })
947
+ if (result.code == 200) {
948
+ HostApp.__this__ = this
949
+ this.runSyncLogic('SafeSaveNoPaper', 'javascript:HostApp.__this__.saveCallBack()', 1)
950
+ }
951
+ } else {
952
+ console.log('非无计划安检保存')
953
+ let isStart = true
954
+ let res
955
+ console.log('this.f_devices' + JSON.stringify(this.f_devices))
956
+ for (let i in this.f_devices) {
957
+ res = HostApp.organizeJSON({isStart: isStart, isDevice: true, device: this.f_devices[i]})
958
+ console.log('f_devices organizeJSON ==> ' + JSON.stringify(res))
959
+ if (res.code == 200) {
960
+ isStart = false
961
+ } else {
962
+ this.$showMessage("保存失败!")
963
+ }
964
+ }
965
+ console.log('this.data ==> ' + JSON.stringify(this.data))
966
+ console.log('f_check_item_id ==> ' + JSON.stringify(this.data.f_check_item_id))
967
+ console.log('f_checker_id ==> ' + JSON.stringify(this.data.f_checker_id))
968
+ let result = HostApp.organizeJSON({
969
+ isStart: false,
970
+ isJSON: true,
971
+ jsonstr: {
972
+ f_check_item_id: this.data.f_check_item_id,
973
+ f_checker_id: this.data.f_checker_id,
974
+ row: codata
975
+ }
976
+ })
977
+ console.log('organizeJSON result ==> ' + JSON.stringify(result))
978
+ if (result.code === 200) {
979
+ HostApp.__this__ = this
980
+ this.runSyncLogic('保存安检单信息', 'javascript:HostApp.__this__.saveCallBack()', 1)
981
+ }
982
+ }
983
+
984
+ } else {
985
+ console.log("保存的值", codata)
986
+ let value = this.$androidUtil.path({
987
+ alias: 'getUserinfomation',
988
+ data: {condition: "f_userinfoid = '" + this.item.f_userinfoid + "' and f_no_checkplan = '无计划安检'"}
989
+ })
990
+
991
+ if (this.item.f_no_checkplan == '无计划安检' && value.data.length == 0 && this.item.f_no_checkplan != '打回') {
992
+ this.$androidUtil.bzLogic('SafeSaveNoPaper', {
993
+ f_check_item_id: this.data.f_check_item_id,
994
+ f_checker_id: this.data.f_checker_id,
995
+ f_upload_state: '未传',
996
+ row: codata
997
+ }).then((res) => {
998
+ if (res.data.code == 200) {
999
+ //保存devices
1000
+ this.$androidUtil.bzLogic('getPaperInfo', {
1001
+ f_check_item_id: this.data.f_check_item_id
1002
+ }).then((res) => {
1003
+ console.log(`查询paper结果res======${res}`)
1004
+ if (res.data.code == 200) {
1005
+
1006
+ let f_paper_id = res.data.data[0].id
1007
+ for (let device of this.f_devices) {
1008
+ device.f_paper_id = f_paper_id
1009
+ console.log('设备信息device======', device)
1010
+ this.$androidUtil.bzLogic('saveDevice', {
1011
+ row: device
1012
+ }).then((ret) => {
1013
+ console.log(`保存设备信息结果res======`, ret)
1014
+ if (ret.code != 200) {
1015
+ // if(this.isUpload){
1016
+ // this.isUpload = false
1017
+ // }
1018
+ //TODO 失败后处理
1019
+ this.$showMessage("保存失败!")
1020
+ return false
1021
+ }
1022
+ })
1023
+ }
1024
+ }
1025
+ })
1026
+ // this.$showAlert('保存成功!', 'success', 2000)
1027
+ this.$showMessage('保存成功!')
1028
+ return true
1029
+ } else {
1030
+ // if(this.isUpload){
1031
+ // this.isUpload = false
1032
+ // }
1033
+ this.$showMessage("保存失败!")
1034
+ return false
1035
+ }
1036
+ })
1037
+ } else {
1038
+ this.$androidUtil.bzLogic('保存安检单信息', {
1039
+ f_check_item_id: this.data.f_check_item_id,
1040
+ f_checker_id: this.data.f_checker_id,
1041
+ row: codata
1042
+ }).then((res) => {
1043
+ console.log('asdddddddddddddddddddddddddddddd')
1044
+ if (res.data.code == 200) {
1045
+ //保存devices
1046
+ this.$androidUtil.bzLogic('getPaperInfo', {
1047
+ f_check_item_id: this.data.f_check_item_id
1048
+ }).then((res) => {
1049
+ console.log(`查询paper结果res======${res}`)
1050
+ if (res.data.code == 200) {
1051
+
1052
+ let f_paper_id = res.data.data[0].id
1053
+ for (let device of this.f_devices) {
1054
+ device.f_paper_id = f_paper_id
1055
+ console.log(`设备信息device======${device}`)
1056
+ this.$androidUtil.bzLogic('saveDevice', {
1057
+ row: device
1058
+ }).then((ret) => {
1059
+ console.log(`保存设备信息结果res======${ret}`)
1060
+ if (ret.code != 200) {
1061
+ // if(this.isUpload){
1062
+ // this.isUpload = false
1063
+ // }
1064
+ //TODO 失败后处理
1065
+ this.$showMessage("保存失败!")
1066
+ return false
1067
+ }
1068
+ })
1069
+ }
1070
+ }
1071
+ })
1072
+ // this.$showAlert('保存成功!', 'success', 2000)
1073
+ this.$showMessage('保存成功!')
1074
+ return true
1075
+ } else {
1076
+ // if(this.isUpload){
1077
+ // this.isUpload = false
1078
+ // }
1079
+ this.$showMessage("保存失败!")
1080
+ return false
1081
+ }
1082
+ })
1083
+ }
1084
+ }
1085
+ // }catch (e) {
1086
+ // console.log('保存失败==='+JSON.stringify(e))
1087
+ // // this.isUpload = false
1088
+ // this.$showMessage("保存失败!")
1089
+ // }
1090
+ },
1091
+ runSyncLogic(logic,callback,backresult){
1092
+ HostApp.runSyncLogic({
1093
+ // logic别名,key必须为logic
1094
+ 'logic': logic,
1095
+ // 回调执行方法名,key必须为callback
1096
+ 'callback': callback,
1097
+ // 固定key,代表是否将logic执行结果作为参数传入回调方法,1代表true,0代表false,
1098
+ // 执行回调方法传入key为backresult
1099
+ // 如需额外拼接参数,写在logic返回值的params,例如xxlogic返回:{"params": "success"}
1100
+ 'backresult':backresult
1101
+ })
1102
+ },
1103
+
1104
+ saveCallBack(jo){
1105
+ console.log(JSON.stringify(jo))
1106
+ if(jo.state == 'ok'){
1107
+ let res = JSON.parse(jo.result)
1108
+ console.log('保存结果===》'+JSON.stringify(res))
1109
+ if(res.code == 200){
1110
+ console.log('onlySave=====>'+this.onlySave)
1111
+ if(!this.onlySave){
1112
+ let codata = this.getAllDefect()
1113
+ //获取微信推送内容
1114
+ let WxResult = this.getWeixin(codata)
1115
+ let haslivedispose = this.$androidUtil.bzLogic('getLiveDispose', {
1116
+ f_check_item_id: this.data.f_check_item_id
1117
+ })
1118
+ //如果是转维修上传,则不做校验,上传完成后自动转维修
1119
+ console.log('this.isToRepair=======》'+this.isToRepair)
1120
+ console.log('this.livedispose=======》'+this.livedispose)
1121
+ if(!this.isToRepair){
1122
+ if(haslivedispose.data.length > 0 && (this.livedispose == 'true' || this.livedispose == true)){
1123
+ console.log('是否已转维修')
1124
+ console.log(this.isSafeCheckToRepair)
1125
+ if(!this.isSafeCheckToRepair){
1126
+
1127
+ }
1128
+ }
1129
+ }
1130
+ console.log(`codata类型-->${typeof codata}`)
1131
+ for (let key in codata){
1132
+ if(key.startsWith("device")){
1133
+ codata[key] = []
1134
+ }
1135
+ }
1136
+ console.log(`codata内容-->${JSON.stringify(codata)}`)
1137
+
1138
+ console.log('遮挡上传')
1139
+ let isStart = true
1140
+ let res
1141
+ for (let i in this.f_devices){
1142
+ res = HostApp.organizeJSON({isStart:isStart,isDevice:true,device:this.f_devices[i]})
1143
+ if(res.code == 200){
1144
+ isStart = false
1145
+ }else{
1146
+ this.$showMessage("上传失败!")
1147
+ return
1148
+ }
1149
+ }
1150
+ let result = HostApp.organizeJSON({
1151
+ isStart:false,
1152
+ isJSON:true,
1153
+ jsonstr:{
1154
+ f_check_item_id: this.data.f_check_item_id,
1155
+ f_checker_id: this.data.f_checker_id,
1156
+ row: codata
1157
+ }
1158
+ })
1159
+ if(result.code == 200){
1160
+ HostApp.__this__ = this
1161
+ this.runSyncLogic('上传安检信息','javascript:HostApp.__this__.uploadCallBack()',1)
1162
+ }
1163
+ }else{
1164
+ this.$showMessage('保存成功!')
1165
+ if(this.clickBack){
1166
+ this.isStrat = false
1167
+ this.$dispatch('confirm')
1168
+ // this.$back()
1169
+ }
1170
+ }
1171
+ }else if(res.code == 309){
1172
+ this.$showMessage('该安检单已作废!')
1173
+ console.log('该安检单已作废')
1174
+ this.$dispatch('confirm')
1175
+ }else{
1176
+ this.$showMessage('保存失败!')
1177
+ return
1178
+ }
1179
+ }else{
1180
+ this.$showMessage('服务器内部错误,保存失败!')
1181
+ return
1182
+ }
1183
+ },
1184
+ uploadCallBack(jo){
1185
+ //获取微信推送路径
1186
+ let url = ""
1187
+ if(Vue.config.safecheck != undefined) {
1188
+ if (Vue.config.safecheck.ApproveConfig != undefined) {
1189
+ if (Vue.config.safecheck.ApproveConfig.weixinurl != undefined) {
1190
+ url = Vue.config.safecheck.ApproveConfig.weixinurl
1191
+ }
1192
+ }
1193
+ }
1194
+ console.log(JSON.stringify(jo))
1195
+ if(jo.state == 'ok'){
1196
+ let res = JSON.parse(jo.result)
1197
+ console.log('上传结果===》'+JSON.stringify(res))
1198
+ if(res.code == 200){
1199
+ this.$set('data.f_paper_id', res.id)
1200
+ this.isStrat=false
1201
+ if(url != ""){
1202
+ this.$resetpost(`${url}`,{data:WxResult})
1203
+ }
1204
+ console.log('this.isToRepair==============>'+this.isToRepair)
1205
+ if(this.isToRepair){
1206
+ for (let device in this.data){
1207
+ if(device.startsWith("device")){
1208
+ this.data[device] = []
1209
+ if(res.data.length > 0){
1210
+ for(let i in res.data[0].f_devices){
1211
+ if(this.data[device].length > 0){
1212
+ if(this.data[device][0].f_device_type == res.data[0].f_devices[i].f_device_type){
1213
+ this.data[device].push(res.data[0].f_devices[i])
1214
+ res.data[0].f_devices.splice(i,1)
1215
+ }
1216
+ }else{
1217
+ this.data[device].push(res.data[0].f_devices[i])
1218
+ res.data[0].f_devices.splice(i,1)
1219
+ }
1220
+ }
1221
+ }
1222
+ }
1223
+ }
1224
+ this.todo()
1225
+ }else{
1226
+ this.$showMessage('上传成功!')
1227
+ console.log('上传结束back')
1228
+ this.$dispatch('confirm')
1229
+ // this.$back()
1230
+ }
1231
+ }else{
1232
+ this.$showMessage('上传失败!')
1233
+ this.onlySave = true
1234
+ }
1235
+ }else{
1236
+ this.$showMessage('服务器内部错误,上传失败!')
1237
+ this.onlySave = true
1238
+ }
1239
+ },
1240
+ todo(){
1241
+ let gen = getRepairParam(this)
1242
+ co(gen)
1243
+ },
1244
+ undo(){
1245
+ this.showCheckToRepair = !this.showCheckToRepair
1246
+ this.model.serviceacitivity[0].f_reciever = ''
1247
+ this.model.serviceacitivity[0].f_meetunit = ''
1248
+ this.model.f_repairtype = ''
1249
+ this.meading = '转站点'
1250
+ },
1251
+ disableTimer() {
1252
+ if(this.timer) {
1253
+ window.clearTimeout(this.timer)
1254
+ this.timer = null
1255
+ }
1256
+ },
1257
+ loaded(paper) {
1258
+ if(!paper.hasOwnProperty('id')) {
1259
+ this.$showMessage("该安检单在手机上已经不存在,可能是卸载过程序。可以进入重新安检,或返回安检计划。")
1260
+ this.init()
1261
+ } else {
1262
+ Util.booleanFilter(paper)
1263
+ HostApp.__this__.$set('data', paper)
1264
+ HostApp.__this__.$goto('paper-state-noncivil', {}, 'paper-router')
1265
+ // 如果打回重检则重新计时
1266
+ console.log('HostApp.__this__.role' + HostApp.__this__.role + ' HostApp.__this__.f_approved:' + HostApp.__this__.data.f_approved)
1267
+ if(HostApp.__this__.role == 'inspect'
1268
+ && HostApp.__this__.data.f_approved
1269
+ && HostApp.__this__.data.f_approved == '打回') {
1270
+ console.log('打回')
1271
+ HostApp.__this__.data.f_onsite_time = Util.toStandardTimeString()
1272
+ HostApp.__this__.tick()
1273
+ }
1274
+ }
1275
+ HostApp.__callback__ = null
1276
+ HostApp.__this__ = null
1277
+ },
1278
+ S4() {
1279
+ return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
1280
+ },
1281
+ init () {
1282
+ // this.data.f_noplan_item_id = this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4()
1283
+ this.data.f_no_checkplan = this.item.f_no_checkplan
1284
+ this.data.f_check_item_id = this.item.id
1285
+ this.data.f_check_plan_id = this.f_plan_id
1286
+ this.data.f_checker_id = Vue.user.id
1287
+ this.data.f_checker_name = Vue.user.name
1288
+ this.data.f_check_type = this.item.f_user_type
1289
+ //this.data.f_onsite_time = Util.toStandardTimeString()
1290
+ this.data.f_subcompany = this.item.f_subcompany
1291
+ this.data.f_approved = this.item.f_approved
1292
+ this.data.f_repair_approved = this.item.f_repair_approved
1293
+ this.data.f_filialeid = this.item.f_filialeid
1294
+ this.data.f_orgstr = this.item.f_orgstr
1295
+ this.data.version = this.item.version
1296
+ this.$set('data.f_userinfo_code', this.item.f_userinfo_code)
1297
+ this.$set('data.f_meters', this.item.f_plan_meters)
1298
+ // 安检状态
1299
+ this.$set('data.f_entry_status', '入户')
1300
+ this.$set('data.f_state', this.item.f_state)
1301
+ // 用户信息
1302
+ this.$set('data.f_user_name', this.item.f_user_name)
1303
+ this.$set('data.f_user_phone', this.item.f_user_phone)
1304
+ this.$set('data.f_userinfoid', this.item.f_userinfoid)
1305
+ this.$set('data.f_address', this.item.f_address)
1306
+ this.$set('data.f_card_id', this.item.f_card_id)
1307
+ this.$set('data.f_area', this.item.f_area)
1308
+ this.$set('data.f_street', this.item.f_street)
1309
+ this.$set('data.f_room', this.item.f_room)
1310
+ this.$set('data.f_building', this.item.f_building)
1311
+ this.$set('data.f_unit', this.item.f_unit)
1312
+ this.$set('data.f_floor', this.item.f_floor)
1313
+ this.$set('data.f_residential_area', this.item.f_residential_area)
1314
+ this.$set('data.f_idnumber', this.item.f_idnumber)
1315
+ this.$set('data.f_comments', this.item.f_comments)
1316
+ this.$set('data.f_userproperties', this.item.f_userproperties)
1317
+ // this.$set('data.f_user_inhome_time', this.item.f_user_inhome_time)
1318
+ // this.$set('data.f_user_check_time', this.item.f_user_check_time)
1319
+ // this.$set('data.f_user_spare_phone', this.item.f_user_spare_phone)
1320
+ // this.$set('data.f_user_family_remarks', this.item.f_user_family_remarks)
1321
+ // this.$set('data.f_user_equipment_remarks', this.item.f_user_equipment_remarks)
1322
+ // 处置方式
1323
+ this.$set('data.f_no_gas_device', false)
1324
+ this.$set('data.f_close_valve', false)
1325
+ this.$set('data.f_unload_battery', false)
1326
+ if (this.data.f_check_item_id == '' && this.item.f_no_checkplan == '无计划安检') {
1327
+ this.data.f_check_item_id = this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4() + "" + this.S4()
1328
+ }
1329
+
1330
+
1331
+ //房屋结构
1332
+ // this.$set('data.f_room_style', '多层')
1333
+ //供暖方式
1334
+ // this.$set('data.f_heating_style', '热力公司集中供暖')
1335
+ if(this.item.f_plan_meters) {
1336
+ for (let de in this.devices) {
1337
+ this.$set('data.device' + this.devices[de].n, [])
1338
+ for (let i = 0; i < this.item.f_plan_meters.length; i++) {
1339
+ if (this.item.f_plan_meters[i].f_meter_type) {
1340
+ if (this.devices[de].device == "燃气表" && this.item.f_plan_meters[i].f_meter_type.indexOf('机表') > 0) {
1341
+ delete this.config['燃气表']['items']['累计购气量']
1342
+ this.$set('data.device' + this.devices[de].n, [])
1343
+ this.data['device' + this.devices[de].n].push({
1344
+ f_device_type: "燃气表",
1345
+ f_items: [{
1346
+ f_defect_level: null,
1347
+ f_device_id: "",
1348
+ f_is_defect: "",
1349
+ f_item_name: "表品牌",
1350
+ f_item_value: this.item.f_plan_meters[i].f_aliasname,
1351
+ f_path: "",
1352
+ type: "string"
1353
+ },
1354
+ {
1355
+ f_defect_level: null,
1356
+ f_device_id: "",
1357
+ f_is_defect: "",
1358
+ f_item_name: "位置",
1359
+ f_item_value: this.item.f_plan_meters[i].f_weizhi,
1360
+ f_path: "",
1361
+ type: "selector"
1362
+ },
1363
+ {
1364
+ f_defect_level: null,
1365
+ f_device_id: "",
1366
+ f_is_defect: "",
1367
+ f_item_name: "表号",
1368
+ f_item_value: this.item.f_plan_meters[i].f_meter_no,
1369
+ f_path: "",
1370
+ type: "number"
1371
+ },
1372
+ {
1373
+ f_defect_level: null,
1374
+ f_device_id: "",
1375
+ f_is_defect: "",
1376
+ f_item_name: "表封号",
1377
+ f_item_value: this.item.f_plan_meters[i].f_metertitles,
1378
+ f_path: "",
1379
+ type: "number"
1380
+ },
1381
+ {
1382
+ f_defect_level: null,
1383
+ f_device_id: "",
1384
+ f_is_defect: "",
1385
+ f_item_name: "表型号",
1386
+ f_item_value: this.item.f_plan_meters[i].f_diaphgram_size,
1387
+ f_path: "",
1388
+ type: "selector"
1389
+ },
1390
+ {
1391
+ f_defect_level: null,
1392
+ f_device_id: "",
1393
+ f_is_defect: "",
1394
+ f_item_name: "表底数",
1395
+ f_item_value: this.item.f_plan_meters[i].f_prior_reading,
1396
+ f_path: "",
1397
+ type: "number"
1398
+ }
1399
+ ]
1400
+ })
1401
+ } else if (this.devices[de].device == "燃气表") {
1402
+ delete this.config['燃气表']['items']['表底数']
1403
+ this.data['device' + this.devices[de].n].push({
1404
+ f_device_type: "燃气表",
1405
+ f_items: [{
1406
+ f_defect_level: null,
1407
+ f_device_id: "",
1408
+ f_is_defect: "",
1409
+ f_item_name: "表品牌",
1410
+ f_item_value: this.item.f_plan_meters[i].f_aliasname,
1411
+ f_path: "",
1412
+ type: "string"
1413
+ },
1414
+ {
1415
+ f_defect_level: null,
1416
+ f_device_id: "",
1417
+ f_is_defect: "",
1418
+ f_item_name: "位置",
1419
+ f_item_value: this.item.f_plan_meters[i].f_weizhi,
1420
+ f_path: "",
1421
+ type: "selector"
1422
+ },
1423
+ {
1424
+ f_defect_level: null,
1425
+ f_device_id: "",
1426
+ f_is_defect: "",
1427
+ f_item_name: "表号",
1428
+ f_item_value: this.item.f_plan_meters[i].f_meter_no,
1429
+ f_path: "",
1430
+ type: "number"
1431
+ },
1432
+ {
1433
+ f_defect_level: null,
1434
+ f_device_id: "",
1435
+ f_is_defect: "",
1436
+ f_item_name: "表封号",
1437
+ f_item_value: this.item.f_plan_meters[i].f_metertitles,
1438
+ f_path: "",
1439
+ type: "number"
1440
+ },
1441
+ {
1442
+ f_defect_level: null,
1443
+ f_device_id: "",
1444
+ f_is_defect: "",
1445
+ f_item_name: "表型号",
1446
+ f_item_value: this.item.f_plan_meters[i].f_diaphgram_size,
1447
+ f_path: "",
1448
+ type: "selector"
1449
+ },
1450
+ {
1451
+ f_defect_level: null,
1452
+ f_device_id: "",
1453
+ f_is_defect: "",
1454
+ f_item_name: "累计购气量",
1455
+ f_item_value: this.item.f_plan_meters[i].f_prior_reading,
1456
+ f_path: "",
1457
+ type: "number"
1458
+ }
1459
+ ]
1460
+ })
1461
+ }
1462
+ }
1463
+ }
1464
+ }
1465
+ }
1466
+ var pardate = {
1467
+ _this:this,
1468
+ tittle:'安检详情',
1469
+ safe:true
1470
+ }
1471
+ // this.$dispatch('gotoson',pardate)
1472
+ this.$goto('paper-state-noncivil', {}, 'paper-router')
1473
+ },
1474
+ extend(initalObj, finalObj) {
1475
+ var obj = finalObj || {};
1476
+ for (var i in initalObj) {
1477
+ var prop = initalObj[i];
1478
+
1479
+ // 避免相互引用对象导致死循环,如initalObj.a = initalObj的情况
1480
+ if (prop === obj) {
1481
+ continue;
1482
+ }
1483
+
1484
+ if (typeof prop === 'object') {
1485
+ if (obj[i]) {
1486
+ this.extend(obj[i], prop)
1487
+ } else {
1488
+ obj[i] = prop;
1489
+ }
1490
+ }
1491
+ }
1492
+ return obj;
1493
+ },
1494
+ putDevices() {
1495
+ console.log('Vue.config => ' + JSON.stringify(Vue.config))
1496
+ // console.log('Vue.config.DevicesConfig => ' + JSON.stringify(Vue.config.DevicesConfig))
1497
+ this.$set('data.approve', "true")
1498
+ this.$set('data.writeback', "false")
1499
+ if (Vue.config.safecheck != undefined) {
1500
+ if (Vue.config.safecheck.ApproveConfig != undefined) {
1501
+ if (Vue.config.safecheck.ApproveConfig.approve != undefined) {
1502
+ this.$set('data.approve', Vue.config.safecheck.ApproveConfig.approve)
1503
+ }
1504
+ if (Vue.config.safecheck.ApproveConfig.writeback != undefined) {
1505
+ this.$set('data.writeback', Vue.config.safecheck.ApproveConfig.writeback)
1506
+ }
1507
+ if (Vue.config.safecheck.ApproveConfig.livedispose != undefined) {
1508
+ this.livedispose = Vue.config.safecheck.ApproveConfig.livedispose
1509
+ }
1510
+ }
1511
+ console.log(Vue.config)
1512
+ console.log('Vue.config.safecheck.DevicesSetConfig=>' + JSON.stringify(Vue.config.safecheck.DevicesSetConfig))
1513
+ console.log('赋值前的config=>' + JSON.stringify(this.config))
1514
+ // SafecheckType.Json 文件 配置 安检类型
1515
+ if(this.item.f_safecheck_type == undefined || this.item.f_safecheck_type == '' || Vue.config.safecheck.SafecheckType == undefined) {
1516
+ this.config = this.extend(this.config, Vue.config.safecheck.DevicesConfig)
1517
+ }else{
1518
+ this.config = this.extend(this.config, Vue.config.safecheck[Vue.config.safecheck.SafecheckType[this.item.f_safecheck_type]])
1519
+ }
1520
+ }
1521
+ console.log('赋值后的config=>' + JSON.stringify(this.config))
1522
+ //遍历安检项配置
1523
+ for (let i in this.config) {
1524
+ //取得安检项索引值
1525
+ let n = this.config[i].index
1526
+ this.devices[n - 1] = {device: i, n: n, checkmust: this.config[i].checkmust}
1527
+ this.$set('data.' + 'device' + n, [])
1528
+ if(this.config[i].quantity && this.config[i].quantity >0){
1529
+ let items = []
1530
+ for (let it in this.config[i].items) {
1531
+ //赋值下拉选项
1532
+ if (this.config[i].items[it].type == 'selector') {
1533
+ for (let op in this.config[i].items[it].options) {
1534
+ if (this.config[i].items[it].options[op].isdefault == true) {
1535
+ items.push({
1536
+ f_defect_level: this.config[i].items[it].options[op].level,
1537
+ f_is_defect: this.config[i].items[it].options[op].isdefect,
1538
+ f_item_name: it,
1539
+ f_item_value: this.config[i].items[it].options[op].data,
1540
+ f_path: "",
1541
+ type: "selector"
1542
+ })
1543
+ }
1544
+ }
1545
+ }
1546
+ }
1547
+ for(let q =0;q<this.config[i].quantity;q++) {
1548
+ this.data['device' + n].push(
1549
+ {f_device_type: i, f_items:items}
1550
+ )
1551
+ }
1552
+ }
1553
+ // this.data['device' + n].push(
1554
+ // {f_device_type: i, f_items: items}
1555
+ // )
1556
+ n = n + 1
1557
+ }
1558
+
1559
+ },
1560
+ //获取当前时间
1561
+ getNowFormatDate(){
1562
+ var date = new Date();
1563
+ var seperator1 = "-";
1564
+ var seperator2 = ":";
1565
+ var month = date.getMonth() + 1;
1566
+ var strDate = date.getDate();
1567
+ if (month >= 1 && month <= 9) {
1568
+ month = "0" + month;
1569
+ }
1570
+ if (strDate >= 0 && strDate <= 9) {
1571
+ strDate = "0" + strDate;
1572
+ }
1573
+ var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
1574
+ + " " + date.getHours() + seperator2 + date.getMinutes()
1575
+ + seperator2 + date.getSeconds();
1576
+ return currentdate;
1577
+ },
1578
+ },
1579
+ async ready() {
1580
+ this.putDevices()
1581
+ //如果已检,则提取安检单
1582
+
1583
+ if (this.item.f_state != '未检') {
1584
+ if (this.role == 'inspect' || this.role == 'androidview') {
1585
+ HostApp.__callback__ = this.loaded
1586
+ HostApp.__this__ = this
1587
+ let that = this
1588
+ let value = {}
1589
+ console.log('this.item.f_no_checkplan',this.item.f_no_checkplan)
1590
+ if (this.role == 'inspect') {
1591
+ console.log('this.item.f_no_checkplan', this.item.f_no_checkplan)
1592
+ if (this.item.f_no_checkplan == '无计划安检') {
1593
+ value = this.$androidUtil.path({
1594
+ alias: 'getUserinfomation',
1595
+ data: {condition: "f_check_item_id = '" + this.item.id + "' and f_no_checkplan = '无计划安检'"}
1596
+ })
1597
+ } else {
1598
+ value = this.$androidUtil.bzLogic('FetchCheckPaper', {id: this.item.id})
1599
+ }
1600
+ } else {
1601
+ value = await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/path/getUserinfomation`, {data: {condition: `id = '${this.item.f_paper_id}'`}})
1602
+ }
1603
+ Util.replaceFalse(value)
1604
+ console.log("value:" + JSON.stringify(value))
1605
+ if (value.data.length != 0) {
1606
+ that.$set('data', value.data[0])
1607
+ console.log("f_devices:" + JSON.stringify(value.data[0].f_devices))
1608
+ if (value.data[0].f_devices) {
1609
+ for (let da in that.devices) {
1610
+ that.$set('data.device' + that.devices[da].n, [])
1611
+ }
1612
+ value.data[0].f_devices.forEach((item) => {
1613
+ console.log('回写数据=>' + JSON.stringify(item))
1614
+ for (let i in item.f_items) {
1615
+ // if (item.f_items[i].f_path != '' && item.f_items[i].f_path != null) {
1616
+ // this.picture.push({f_path: item.f_items[i].f_path, name: item.f_items[i].f_item_name})
1617
+ // }
1618
+ for (let de in that.config[item.f_device_type].items) {
1619
+ if (item.f_items[i].f_item_name == de) {
1620
+ if (that.config[item.f_device_type].items[de].type == 'selector') {
1621
+ item.f_items[i].f_item_value = []
1622
+ } else {
1623
+ item.f_items[i].f_item_value = ''
1624
+ }
1625
+ }
1626
+ }
1627
+ console.log('回写数据item.f_items[i]=======>' + JSON.stringify(item.f_items[i]))
1628
+ for (let j in item.f_items[i].f_item_lists) {
1629
+ console.log('回写数据item.f_items.f_item_lists[j]=======>' + JSON.stringify(item.f_items[i].f_item_lists[j]))
1630
+ if (item.f_items[i].f_item_value instanceof Array) {
1631
+ item.f_items[i].f_item_value.push(item.f_items[i].f_item_lists[j].f_item_value)
1632
+ } else {
1633
+ item.f_items[i].f_item_value = item.f_items[i].f_item_lists[j].f_item_value
1634
+ }
1635
+
1636
+ }
1637
+ }
1638
+ for (let de in that.devices) {
1639
+ if (that.devices[de].device == item.f_device_type) {
1640
+ that.data['device' + that.devices[de].n].push({
1641
+ f_device_type: item.f_device_type,
1642
+ f_items: item.f_items
1643
+ })
1644
+ console.log("device:" + JSON.stringify(that.data['device' + that.devices[de].n]))
1645
+ }
1646
+ }
1647
+ })
1648
+ if (this.role == 'androidview') {
1649
+ Util.androidRatifyPics(that.data, this.$androidUtil.getProxyUrl())
1650
+ Util.androidRatifyPics(that.picture, this.$androidUtil.getProxyUrl())
1651
+ Util.booleanFilter(that.data)
1652
+ }
1653
+ console.log('回写数据完成后'+JSON.stringify(that.data))
1654
+ }
1655
+ } else {
1656
+ console.log("该安检单可能已不在本地!")
1657
+ this.init()
1658
+ }
1659
+ console.log('页面跳转')
1660
+ var pardate = {
1661
+ _this:this,
1662
+ tittle:'安检详情',
1663
+ safe:true
1664
+ }
1665
+ // this.$dispatch('gotoson',pardate)
1666
+ that.$goto('paper-state', {}, 'paper-router')
1667
+ } else {
1668
+ let that = this
1669
+ let id
1670
+ if (this.role == 'view') {
1671
+ id = this.item.id
1672
+ }
1673
+ this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/path/getUserinfomation`, {data:{condition:`id = '${id}'`}}).then((respanse)=> {
1674
+ if (respanse.data.length != 0) {
1675
+ that.data = Object.assign(that.data,respanse.data[0])
1676
+ if(respanse.data[0].f_devices) {
1677
+ for (let da in that.devices) {
1678
+ that.$set('data.device' + that.devices[da].n, [])
1679
+ }
1680
+ respanse.data[0].f_devices.forEach((item) => {
1681
+ for (let de in that.devices) {
1682
+ if (that.devices[de].device == item.f_device_type) {
1683
+ that.data['device' + that.devices[de].n].push({
1684
+ f_device_type: item.f_device_type,
1685
+ f_items: item.f_items
1686
+ })
1687
+ }
1688
+ }
1689
+ })
1690
+ }
1691
+ Util.replaceFalse(that.data)
1692
+ Util.booleanFilter(that.data)
1693
+ if(this.role == 'view'){
1694
+ Util.ratifyPics(that.data)
1695
+ }else{
1696
+ Util.androidRatifyPics(that.data,this.$androidUtil.getProxyUrl())
1697
+ }
1698
+ console.log("that.data:", that.data)
1699
+ } else {
1700
+ alert("该安检单可能已不在本地!")
1701
+ this.init()
1702
+ }
1703
+ var pardate = {
1704
+ _this:this,
1705
+ tittle:'安检详情',
1706
+ safe:true
1707
+ }
1708
+ // this.$dispatch('gotoson',pardate)
1709
+ that.$goto('paper-state', {}, 'paper-router')
1710
+ }
1711
+ ).catch(
1712
+ (respanse) => {
1713
+ alert('查找安检单失败')
1714
+ })
1715
+ }
1716
+ // else {
1717
+ // let that = this
1718
+ // this.$androidUtil.bzLogic('FetchCheckPaper', {id: this.item.id}).then((respanse) => {
1719
+ // if (respanse.data.data.length != 0) {
1720
+ // that.data = Object.assign(that.data,respanse.data.data[0])
1721
+ // if(respanse.data.data[0].f_devices) {
1722
+ // for (let da in that.devices) {
1723
+ // that.$set('data.device' + that.devices[da].n, [])
1724
+ // }
1725
+ // respanse.data.data[0].f_devices.forEach((item) => {
1726
+ // for (let de in that.devices) {
1727
+ // if (that.devices[de].device == item.f_device_type) {
1728
+ // that.$set('data.device' + that.devices[de].n, [])
1729
+ // that.data['device' + that.devices[de].n].push({
1730
+ // f_device_type: item.f_device_type,
1731
+ // f_items: item.f_items
1732
+ // })
1733
+ // }
1734
+ // }
1735
+ // })
1736
+ // }
1737
+ // Util.booleanFilter(that.data)
1738
+ // console.log("that.data:", that.data)
1739
+ // } else {
1740
+ // alert("该安检单可能已不在本地!")
1741
+ // this.init()
1742
+ // }
1743
+ // that.$goto('paper-state', {}, 'paper-router')
1744
+ // }
1745
+ // ).catch(
1746
+ // (respanse) => {
1747
+ // alert('查找安检单失败')
1748
+ // })
1749
+ // }
1750
+ }else{
1751
+ this.init()
1752
+ }
1753
+ },
1754
+ destroyed() {
1755
+ this.disableTimer()
1756
+ console.log('退出当前页SetNoncivil')
1757
+ },
1758
+
1759
+ }
1760
+ </script>