safecheck-client 3.0.35-gongyi-10 → 3.0.35-gongyi-11

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