safecheck-client 3.0.32-gongyi → 3.0.33-gongyi

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (839) hide show
  1. package/.babelrc +5 -5
  2. package/.editorconfig +9 -9
  3. package/.eslintrc.js +16 -16
  4. package/.project +11 -11
  5. package/CHANGELOG.md +27 -27
  6. package/README.md +38 -38
  7. package/android.html +18 -18
  8. package/build/css-loaders.js +34 -34
  9. package/build/dev-android.js +151 -151
  10. package/build/dev-client.js +8 -8
  11. package/build/example-server.js +157 -157
  12. package/build/release.sh +28 -28
  13. package/build/utils.js +71 -71
  14. package/build/webpack.base.conf.js +88 -88
  15. package/build/webpack.baseandroid.conf.js +83 -83
  16. package/build/webpack.dev.conf.js +40 -40
  17. package/build/webpack.devandroid.conf.js +33 -33
  18. package/build/webpack.example.conf.js +49 -49
  19. package/build/webpack.hanwei.conf.js +57 -57
  20. package/build/webpack.hwbase.conf.js +78 -78
  21. package/build/webpack.prod.conf.js +80 -80
  22. package/build/webpack.prodandroid.conf.js +60 -60
  23. package/build/webpack.test.conf.js +31 -31
  24. package/build.gradle +14 -14
  25. package/config/dev.env.js +6 -6
  26. package/config/index.js +38 -38
  27. package/config/prod.env.js +3 -3
  28. package/config/test.env.js +6 -6
  29. package/docs/AppBase.md +22 -22
  30. package/docs/Busy.md +14 -14
  31. package/docs/Criteria.md +47 -47
  32. package/docs/CriteriaPaged.md +47 -47
  33. package/docs/DataGrid.md +54 -54
  34. package/docs/DataModel.md +22 -22
  35. package/docs/Dynamic.md +42 -42
  36. package/docs/FormPrint.md +18 -18
  37. package/docs/GetParams.md +11 -11
  38. package/docs/GridTree.md +47 -47
  39. package/docs/HttpBusy.md +13 -13
  40. package/docs/HttpStore.md +29 -29
  41. package/docs/MessageBox.md +28 -28
  42. package/docs/PagedList.md +29 -29
  43. package/docs/Pager.md +21 -21
  44. package/docs/PrintFile.md +38 -38
  45. package/docs/Project.md +23 -23
  46. package/docs/Route.md +105 -105
  47. package/docs/SafetyCheck/AdjustPlan.md +13 -13
  48. package/docs/SafetyCheck/CheckerPlan.md +12 -12
  49. package/docs/Task.md +46 -46
  50. package/docs/TreeList.md +28 -28
  51. package/docs/TreeMixin.md +18 -18
  52. package/docs/all.md +10 -10
  53. package/docs/list.md +42 -42
  54. package/docs/partial.md +75 -75
  55. package/docs/selector.md +82 -82
  56. package/docs/tree.md +40 -40
  57. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/Snippets.md +28 -28
  58. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue-strap/345/217/230/346/233/264/350/256/260/345/275/225.md +7 -7
  59. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue/345/217/230/346/233/264/350/256/260/345/275/225.md +13 -13
  60. package/docs//345/274/200/345/217/221/346/226/207/346/241/243//345/274/200/345/217/221/347/216/257/345/242/203/350/256/276/347/275/256.md +77 -77
  61. package/docs//347/225/214/351/235/242/345/210/266/344/275/234/350/247/204/350/214/203.md +54 -54
  62. package/examples/AddressList/App.vue +13 -13
  63. package/examples/AddressList/index.html +11 -11
  64. package/examples/AddressList/main.js +13 -13
  65. package/examples/ChangeConfig/App.vue +54 -54
  66. package/examples/ChangeConfig/comp.js +548 -548
  67. package/examples/ChangeConfig/index.html +17 -17
  68. package/examples/ChangeConfig/main.js +13 -13
  69. package/examples/CheckAdvise/App.vue +24 -24
  70. package/examples/CheckAdvise/comp.js +9 -9
  71. package/examples/CheckAdvise/index.html +18 -18
  72. package/examples/CheckAdvise/main.js +13 -13
  73. package/examples/CreatePlan/App.vue +13 -13
  74. package/examples/CreatePlan/index.html +11 -11
  75. package/examples/CreatePlan/main.js +13 -13
  76. package/examples/DispatchList/App.vue +10 -10
  77. package/examples/DispatchList/BaseTree.vue +13 -13
  78. package/examples/DispatchList/Init.vue +22 -22
  79. package/examples/DispatchList/Test.vue +20 -20
  80. package/examples/DispatchList/index.html +11 -11
  81. package/examples/DispatchList/main.js +18 -18
  82. package/examples/PhoneSafePlan/App.vue +36 -36
  83. package/examples/PhoneSafePlan/TestData.js +448 -448
  84. package/examples/PhoneSafePlan/comp.js +33 -33
  85. package/examples/PhoneSafePlan/index.html +17 -17
  86. package/examples/PhoneSafePlan/main.js +13 -13
  87. package/examples/SafePlan/App.vue +83 -83
  88. package/examples/SafePlan/TestData.js +448 -448
  89. package/examples/SafePlan/comp.js +1521 -1521
  90. package/examples/SafePlan/index.html +18 -18
  91. package/examples/SafePlan/main.js +13 -13
  92. package/examples/SafePlan-aode/App.vue +39 -39
  93. package/examples/SafePlan-aode/TestData.js +448 -448
  94. package/examples/SafePlan-aode/comp.js +1132 -1132
  95. package/examples/SafePlan-aode/index.html +17 -17
  96. package/examples/SafePlan-aode/main.js +13 -13
  97. package/examples/SafePlan-liaoyuan/App.vue +53 -53
  98. package/examples/SafePlan-liaoyuan/TestData.js +448 -448
  99. package/examples/SafePlan-liaoyuan/comp.js +1419 -1419
  100. package/examples/SafePlan-liaoyuan/index.html +18 -18
  101. package/examples/SafePlan-liaoyuan/main.js +13 -13
  102. package/examples/SafePlan-shaoguan/App.vue +52 -52
  103. package/examples/SafePlan-shaoguan/TestData.js +448 -448
  104. package/examples/SafePlan-shaoguan/comp.js +1190 -1190
  105. package/examples/SafePlan-shaoguan/index.html +18 -18
  106. package/examples/SafePlan-shaoguan/main.js +13 -13
  107. package/examples/SafePlan-tongchuan/App.vue +81 -81
  108. package/examples/SafePlan-tongchuan/TestData.js +448 -448
  109. package/examples/SafePlan-tongchuan/comp.js +1480 -1480
  110. package/examples/SafePlan-tongchuan/index.html +18 -18
  111. package/examples/SafePlan-tongchuan/main.js +13 -13
  112. package/examples/SafePlan-wenxi/App.vue +80 -80
  113. package/examples/SafePlan-wenxi/TestData.js +448 -448
  114. package/examples/SafePlan-wenxi/comp.js +1545 -1545
  115. package/examples/SafePlan-wenxi/index.html +18 -18
  116. package/examples/SafePlan-wenxi/main.js +13 -13
  117. package/examples/SafePlan-zhoukou/App.vue +81 -81
  118. package/examples/SafePlan-zhoukou/TestData.js +448 -448
  119. package/examples/SafePlan-zhoukou/comp.js +1525 -1525
  120. package/examples/SafePlan-zhoukou/index.html +18 -18
  121. package/examples/SafePlan-zhoukou/main.js +13 -13
  122. package/examples/SafePlanItem/App.vue +33 -33
  123. package/examples/SafePlanItem/TestData.js +448 -448
  124. package/examples/SafePlanItem/comp.js +69 -69
  125. package/examples/SafePlanItem/index.html +17 -17
  126. package/examples/SafePlanItem/main.js +15 -15
  127. package/examples/SafePlanrongcheng/App.vue +52 -52
  128. package/examples/SafePlanrongcheng/TestData.js +448 -448
  129. package/examples/SafePlanrongcheng/comp.js +1133 -1133
  130. package/examples/SafePlanrongcheng/index.html +18 -18
  131. package/examples/SafePlanrongcheng/main.js +13 -13
  132. package/examples/SafePlanrongcheng-gs/App.vue +52 -52
  133. package/examples/SafePlanrongcheng-gs/TestData.js +448 -448
  134. package/examples/SafePlanrongcheng-gs/comp.js +1132 -1132
  135. package/examples/SafePlanrongcheng-gs/index.html +18 -18
  136. package/examples/SafePlanrongcheng-gs/main.js +13 -13
  137. package/examples/SafePlanrongcheng-gssq/App.vue +52 -52
  138. package/examples/SafePlanrongcheng-gssq/TestData.js +448 -448
  139. package/examples/SafePlanrongcheng-gssq/comp.js +1135 -1135
  140. package/examples/SafePlanrongcheng-gssq/index.html +18 -18
  141. package/examples/SafePlanrongcheng-gssq/main.js +13 -13
  142. package/examples/SafePlanrongcheng-mysq/App.vue +52 -52
  143. package/examples/SafePlanrongcheng-mysq/TestData.js +448 -448
  144. package/examples/SafePlanrongcheng-mysq/comp.js +1136 -1136
  145. package/examples/SafePlanrongcheng-mysq/index.html +18 -18
  146. package/examples/SafePlanrongcheng-mysq/main.js +13 -13
  147. package/examples/Test/App.vue +35 -35
  148. package/examples/Test/TestData.js +489 -489
  149. package/examples/Test/index.html +17 -17
  150. package/examples/Test/main.js +13 -13
  151. package/examples/Test//350/216/267/345/217/226/345/217/230/351/207/217 +2 -2
  152. package/examples/UserFiles/App.vue +47 -47
  153. package/examples/UserFiles/TestData.js +448 -448
  154. package/examples/UserFiles/comp.js +227 -227
  155. package/examples/UserFiles/index.html +19 -19
  156. package/examples/UserFiles/main.js +13 -13
  157. package/home.html +16 -16
  158. package/index.html +23 -23
  159. package/oa.iml +8 -8
  160. package/package.json +1 -1
  161. package/publish.bat +7 -7
  162. package/release.bat +5 -5
  163. package/src/AndroidApp.vue +26 -26
  164. package/src/App.vue +27 -27
  165. package/src/Widget.vue +13 -13
  166. package/src/android-bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  167. package/src/android-bootstrap/less/.csscomb.json +304 -304
  168. package/src/android-bootstrap/less/.csslintrc +19 -19
  169. package/src/android-bootstrap/less/alerts.less +73 -73
  170. package/src/android-bootstrap/less/badges.less +66 -66
  171. package/src/android-bootstrap/less/bootstrap.less +56 -56
  172. package/src/android-bootstrap/less/breadcrumbs.less +26 -26
  173. package/src/android-bootstrap/less/button-groups.less +247 -247
  174. package/src/android-bootstrap/less/buttons.less +173 -173
  175. package/src/android-bootstrap/less/carousel.less +269 -269
  176. package/src/android-bootstrap/less/close.less +34 -34
  177. package/src/android-bootstrap/less/code.less +69 -69
  178. package/src/android-bootstrap/less/component-animations.less +33 -33
  179. package/src/android-bootstrap/less/dropdowns.less +216 -216
  180. package/src/android-bootstrap/less/forms.less +626 -626
  181. package/src/android-bootstrap/less/glyphicons.less +305 -305
  182. package/src/android-bootstrap/less/grid.less +84 -84
  183. package/src/android-bootstrap/less/input-groups.less +167 -167
  184. package/src/android-bootstrap/less/jumbotron.less +52 -52
  185. package/src/android-bootstrap/less/labels.less +64 -64
  186. package/src/android-bootstrap/less/list-group.less +141 -141
  187. package/src/android-bootstrap/less/media.less +66 -66
  188. package/src/android-bootstrap/less/mixins/alerts.less +14 -14
  189. package/src/android-bootstrap/less/mixins/background-variant.less +9 -9
  190. package/src/android-bootstrap/less/mixins/border-radius.less +18 -18
  191. package/src/android-bootstrap/less/mixins/buttons.less +69 -69
  192. package/src/android-bootstrap/less/mixins/center-block.less +7 -7
  193. package/src/android-bootstrap/less/mixins/clearfix.less +22 -22
  194. package/src/android-bootstrap/less/mixins/forms.less +90 -90
  195. package/src/android-bootstrap/less/mixins/gradients.less +59 -59
  196. package/src/android-bootstrap/less/mixins/grid-framework.less +92 -92
  197. package/src/android-bootstrap/less/mixins/grid.less +122 -122
  198. package/src/android-bootstrap/less/mixins/hide-text.less +21 -21
  199. package/src/android-bootstrap/less/mixins/image.less +33 -33
  200. package/src/android-bootstrap/less/mixins/labels.less +12 -12
  201. package/src/android-bootstrap/less/mixins/list-group.less +30 -30
  202. package/src/android-bootstrap/less/mixins/nav-divider.less +10 -10
  203. package/src/android-bootstrap/less/mixins/nav-vertical-align.less +9 -9
  204. package/src/android-bootstrap/less/mixins/opacity.less +8 -8
  205. package/src/android-bootstrap/less/mixins/pagination.less +24 -24
  206. package/src/android-bootstrap/less/mixins/panels.less +24 -24
  207. package/src/android-bootstrap/less/mixins/progress-bar.less +10 -10
  208. package/src/android-bootstrap/less/mixins/reset-filter.less +8 -8
  209. package/src/android-bootstrap/less/mixins/reset-text.less +18 -18
  210. package/src/android-bootstrap/less/mixins/resize.less +6 -6
  211. package/src/android-bootstrap/less/mixins/responsive-visibility.less +15 -15
  212. package/src/android-bootstrap/less/mixins/size.less +10 -10
  213. package/src/android-bootstrap/less/mixins/tab-focus.less +9 -9
  214. package/src/android-bootstrap/less/mixins/table-row.less +44 -44
  215. package/src/android-bootstrap/less/mixins/text-emphasis.less +9 -9
  216. package/src/android-bootstrap/less/mixins/text-overflow.less +8 -8
  217. package/src/android-bootstrap/less/mixins/vendor-prefixes.less +227 -227
  218. package/src/android-bootstrap/less/mixins.less +40 -40
  219. package/src/android-bootstrap/less/modals.less +151 -151
  220. package/src/android-bootstrap/less/navbar.less +660 -660
  221. package/src/android-bootstrap/less/navs.less +290 -290
  222. package/src/android-bootstrap/less/normalize.less +424 -424
  223. package/src/android-bootstrap/less/pager.less +76 -76
  224. package/src/android-bootstrap/less/pagination.less +89 -89
  225. package/src/android-bootstrap/less/panels.less +274 -274
  226. package/src/android-bootstrap/less/popovers.less +131 -131
  227. package/src/android-bootstrap/less/print.less +101 -101
  228. package/src/android-bootstrap/less/progress-bars.less +87 -87
  229. package/src/android-bootstrap/less/responsive-embed.less +35 -35
  230. package/src/android-bootstrap/less/responsive-utilities.less +194 -194
  231. package/src/android-bootstrap/less/scaffolding.less +161 -161
  232. package/src/android-bootstrap/less/tables.less +262 -262
  233. package/src/android-bootstrap/less/theme.less +291 -291
  234. package/src/android-bootstrap/less/thumbnails.less +36 -36
  235. package/src/android-bootstrap/less/tooltip.less +102 -102
  236. package/src/android-bootstrap/less/type.less +303 -303
  237. package/src/android-bootstrap/less/utilities.less +55 -55
  238. package/src/android-bootstrap/less/variables.less +896 -896
  239. package/src/android-bootstrap/less/wells.less +29 -29
  240. package/src/android.js +16 -16
  241. package/src/androidBase.js +177 -177
  242. package/src/androidTest.js +20 -20
  243. package/src/bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  244. package/src/bootstrap/less/.csscomb.json +304 -304
  245. package/src/bootstrap/less/.csslintrc +19 -19
  246. package/src/bootstrap/less/alerts.less +73 -73
  247. package/src/bootstrap/less/aofeng/animate.min.css +10 -10
  248. package/src/bootstrap/less/aofeng/standard.less +2121 -2121
  249. package/src/bootstrap/less/aofeng/themeOne/BinaryTemplate.less +686 -686
  250. package/src/bootstrap/less/aofeng/themeOne/loginStyle.less +1586 -1586
  251. package/src/bootstrap/less/aofeng/themeOne/systemStyle.less +2650 -2650
  252. package/src/bootstrap/less/aofeng/themeOne.less +14 -14
  253. package/src/bootstrap/less/aofeng/themeTwo/newStyle1.less +415 -415
  254. package/src/bootstrap/less/aofeng/themeTwo.less +3 -3
  255. package/src/bootstrap/less/badges.less +66 -66
  256. package/src/bootstrap/less/bootstrap.less +65 -65
  257. package/src/bootstrap/less/breadcrumbs.less +26 -26
  258. package/src/bootstrap/less/button-groups.less +247 -247
  259. package/src/bootstrap/less/buttons.less +172 -172
  260. package/src/bootstrap/less/carousel.less +269 -269
  261. package/src/bootstrap/less/close.less +34 -34
  262. package/src/bootstrap/less/code.less +69 -69
  263. package/src/bootstrap/less/component-animations.less +33 -33
  264. package/src/bootstrap/less/dropdowns.less +216 -216
  265. package/src/bootstrap/less/forms.less +626 -626
  266. package/src/bootstrap/less/glyphicons.less +305 -305
  267. package/src/bootstrap/less/grid.less +84 -84
  268. package/src/bootstrap/less/input-groups.less +167 -167
  269. package/src/bootstrap/less/jumbotron.less +52 -52
  270. package/src/bootstrap/less/labels.less +64 -64
  271. package/src/bootstrap/less/list-group.less +141 -141
  272. package/src/bootstrap/less/manageStyle/manageChile.less +180 -180
  273. package/src/bootstrap/less/manageStyle/manageStyle.less +1102 -1102
  274. package/src/bootstrap/less/manageStyle/safeStyle.less +498 -498
  275. package/src/bootstrap/less/media.less +66 -66
  276. package/src/bootstrap/less/mixins/alerts.less +14 -14
  277. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  278. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  279. package/src/bootstrap/less/mixins/buttons.less +69 -69
  280. package/src/bootstrap/less/mixins/center-block.less +7 -7
  281. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  282. package/src/bootstrap/less/mixins/forms.less +90 -90
  283. package/src/bootstrap/less/mixins/gradients.less +59 -59
  284. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  285. package/src/bootstrap/less/mixins/grid.less +122 -122
  286. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  287. package/src/bootstrap/less/mixins/image.less +33 -33
  288. package/src/bootstrap/less/mixins/labels.less +12 -12
  289. package/src/bootstrap/less/mixins/list-group.less +30 -30
  290. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  291. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  292. package/src/bootstrap/less/mixins/opacity.less +8 -8
  293. package/src/bootstrap/less/mixins/pagination.less +24 -24
  294. package/src/bootstrap/less/mixins/panels.less +24 -24
  295. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  296. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  297. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  298. package/src/bootstrap/less/mixins/resize.less +6 -6
  299. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  300. package/src/bootstrap/less/mixins/size.less +10 -10
  301. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  302. package/src/bootstrap/less/mixins/table-row.less +44 -44
  303. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  304. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  305. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  306. package/src/bootstrap/less/mixins.less +40 -40
  307. package/src/bootstrap/less/modals.less +151 -151
  308. package/src/bootstrap/less/navbar.less +660 -660
  309. package/src/bootstrap/less/navs.less +285 -285
  310. package/src/bootstrap/less/normalize.less +424 -424
  311. package/src/bootstrap/less/pager.less +76 -76
  312. package/src/bootstrap/less/pagination.less +89 -89
  313. package/src/bootstrap/less/panels.less +275 -275
  314. package/src/bootstrap/less/popovers.less +131 -131
  315. package/src/bootstrap/less/print.less +101 -101
  316. package/src/bootstrap/less/progress-bars.less +87 -87
  317. package/src/bootstrap/less/responsive-embed.less +35 -35
  318. package/src/bootstrap/less/responsive-utilities.less +194 -194
  319. package/src/bootstrap/less/scaffolding.less +161 -161
  320. package/src/bootstrap/less/stand.less +207 -207
  321. package/src/bootstrap/less/standard.less +503 -503
  322. package/src/bootstrap/less/systemStyle.less +860 -860
  323. package/src/bootstrap/less/tables.less +262 -262
  324. package/src/bootstrap/less/theme.less +291 -291
  325. package/src/bootstrap/less/themeOne.less +36 -36
  326. package/src/bootstrap/less/themeTwo.less +29 -29
  327. package/src/bootstrap/less/thumbnails.less +36 -36
  328. package/src/bootstrap/less/tooltip.less +102 -102
  329. package/src/bootstrap/less/type.less +303 -303
  330. package/src/bootstrap/less/utilities.less +55 -55
  331. package/src/bootstrap/less/variables.less +896 -896
  332. package/src/bootstrap/less/wells.less +29 -29
  333. package/src/components/AloneLoadParams.vue +25 -25
  334. package/src/components/CheckerCount/CheckCountAreaList.vue +306 -306
  335. package/src/components/CheckerCount/CheckCountAreaManage.vue +112 -112
  336. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  337. package/src/components/CheckerCount/ZhouKouCheckCount.vue +272 -272
  338. package/src/components/ExportExcel.vue +334 -334
  339. package/src/components/FileUpload.vue +696 -696
  340. package/src/components/Hello.vue +39 -39
  341. package/src/components/LeftTree.vue +27 -27
  342. package/src/components/Login.vue +459 -459
  343. package/src/components/Main.vue +393 -393
  344. package/src/components/Test.vue +1478 -1478
  345. package/src/components/Util/FileUpload.vue +138 -138
  346. package/src/components/Util/ImgSelfSafe.vue +126 -126
  347. package/src/components/Util/RightTreeSafe.vue +343 -343
  348. package/src/components/Util/SafecheckUpload.vue +265 -265
  349. package/src/components/Util.js +376 -376
  350. package/src/components/android/AddGas.vue +147 -147
  351. package/src/components/android/AddPlanItem.vue +412 -412
  352. package/src/components/android/AddressList.vue +61 -61
  353. package/src/components/android/AdviseCommit.vue +59 -59
  354. package/src/components/android/AndroidCheckResult.vue +181 -181
  355. package/src/components/android/AndroidDefectDeal.vue +397 -397
  356. package/src/components/android/Announcement.vue +167 -167
  357. package/src/components/android/AreaPlan.vue +503 -503
  358. package/src/components/android/AttendanceTally.vue +116 -116
  359. package/src/components/android/Blank.vue +10 -10
  360. package/src/components/android/CheckNotice.vue +89 -89
  361. package/src/components/android/CheckPlan.vue +257 -257
  362. package/src/components/android/CheckPlanDown.vue +216 -216
  363. package/src/components/android/CheckPlanItems.vue +423 -423
  364. package/src/components/android/CheckUnplanPage.vue +56 -56
  365. package/src/components/android/Checker.vue +12 -12
  366. package/src/components/android/CheckerAnnual.vue +81 -81
  367. package/src/components/android/CheckerAnnualDetail.vue +63 -63
  368. package/src/components/android/CheckerAvarta.vue +82 -82
  369. package/src/components/android/CheckerMonthly.vue +84 -84
  370. package/src/components/android/Checkpage.vue +102 -102
  371. package/src/components/android/CurrentCreate.vue +970 -970
  372. package/src/components/android/DailyworkloadQuery.vue +396 -396
  373. package/src/components/android/Defect.vue +119 -119
  374. package/src/components/android/DeviceDefect.vue +187 -187
  375. package/src/components/android/Devices.vue +327 -327
  376. package/src/components/android/DevicesItem.vue +495 -495
  377. package/src/components/android/DevicesItemm.vue +445 -445
  378. package/src/components/android/DevicesNoncivil.vue +214 -214
  379. package/src/components/android/Devicesm.vue +327 -327
  380. package/src/components/android/DoorService.vue +501 -501
  381. package/src/components/android/EquipmentInspection.vue +348 -348
  382. package/src/components/android/ExtractCheckPlan.vue +268 -268
  383. package/src/components/android/ExtractPlanItem.vue +516 -516
  384. package/src/components/android/FootprintMap.vue +120 -120
  385. package/src/components/android/HiddentroubleInvestigation.vue +192 -192
  386. package/src/components/android/LcheckUnplan.vue +108 -108
  387. package/src/components/android/LocalPagedList.js +108 -108
  388. package/src/components/android/LocalPathList.js +109 -109
  389. package/src/components/android/Login.vue +222 -222
  390. package/src/components/android/MasterMain.vue +77 -77
  391. package/src/components/android/Menu.vue +132 -132
  392. package/src/components/android/NavBottom.vue +157 -157
  393. package/src/components/android/PaperAlarm.vue +85 -85
  394. package/src/components/android/PaperAlarmNoncivil.vue +286 -286
  395. package/src/components/android/PaperCooker.vue +325 -325
  396. package/src/components/android/PaperDefect.vue +230 -230
  397. package/src/components/android/PaperDevice.vue +279 -279
  398. package/src/components/android/PaperDeviceNoncivil.vue +214 -214
  399. package/src/components/android/PaperFeedback.vue +1444 -1444
  400. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  401. package/src/components/android/PaperFurnace.vue +274 -274
  402. package/src/components/android/PaperFurnaceNoncivil.vue +203 -203
  403. package/src/components/android/PaperHeater.vue +287 -287
  404. package/src/components/android/PaperInnerPlumb.vue +171 -171
  405. package/src/components/android/PaperMessage.vue +1323 -1323
  406. package/src/components/android/PaperMessageNocivil.vue +1288 -1288
  407. package/src/components/android/PaperMeter.vue +351 -351
  408. package/src/components/android/PaperMeterNoncivil.vue +481 -481
  409. package/src/components/android/PaperPieceNoncivil.vue +142 -142
  410. package/src/components/android/PaperPlumb.vue +141 -141
  411. package/src/components/android/PaperPlumbNoncivil.vue +253 -253
  412. package/src/components/android/PaperSet.vue +1956 -1956
  413. package/src/components/android/PaperSetNoncivil.vue +1760 -1760
  414. package/src/components/android/PaperState.vue +390 -390
  415. package/src/components/android/PaperStateNoncivil.vue +383 -383
  416. package/src/components/android/PaperStateNoncivilm.vue +377 -377
  417. package/src/components/android/PaperStatem.vue +346 -346
  418. package/src/components/android/PaperUser.vue +606 -606
  419. package/src/components/android/PaperUserNoncivil.vue +424 -424
  420. package/src/components/android/PaperUserm.vue +356 -356
  421. package/src/components/android/PaperValve.vue +178 -178
  422. package/src/components/android/PaperValveNoncivil.vue +180 -180
  423. package/src/components/android/PhoneChangemeterInfo.vue +107 -107
  424. package/src/components/android/PhoneInfoTable.vue +40 -40
  425. package/src/components/android/PhoneSellInfo.vue +113 -113
  426. package/src/components/android/PhoneState.vue +157 -157
  427. package/src/components/android/PhoneUpUserinfo.vue +929 -929
  428. package/src/components/android/PhoneUserFind.vue +111 -111
  429. package/src/components/android/PlumberAnnual.vue +83 -83
  430. package/src/components/android/PlumberAnnualDetail.vue +65 -65
  431. package/src/components/android/PlumberMonthly.vue +84 -84
  432. package/src/components/android/PostMap.vue +83 -83
  433. package/src/components/android/PrearrangedPlan.vue +247 -247
  434. package/src/components/android/QueryCheckHistory.vue +122 -122
  435. package/src/components/android/QueryCheckHistoryItem.vue +62 -62
  436. package/src/components/android/RepairAreaList.vue +71 -71
  437. package/src/components/android/RepairList.vue +206 -206
  438. package/src/components/android/RepairMain.vue +60 -60
  439. package/src/components/android/RepairQuery.vue +262 -262
  440. package/src/components/android/Repairman.vue +12 -12
  441. package/src/components/android/ResAreaList.vue +158 -158
  442. package/src/components/android/RightTree.vue +174 -174
  443. package/src/components/android/SafecheckDevices.vue +1143 -1143
  444. package/src/components/android/SafecheckState.vue +437 -437
  445. package/src/components/android/SafecheckUser.vue +580 -580
  446. package/src/components/android/ShebeiDevices.vue +980 -980
  447. package/src/components/android/StationMaster.vue +12 -12
  448. package/src/components/android/SwitchValve.vue +230 -230
  449. package/src/components/android/SystemSetting.vue +84 -84
  450. package/src/components/android/ToolsPage.vue +51 -51
  451. package/src/components/android/TrackState.vue +134 -134
  452. package/src/components/android/UploadPage.vue +338 -338
  453. package/src/components/android/checkPlanResult.vue +302 -302
  454. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  455. package/src/components/android/wasm/PhoneSafePlan.vue +39 -39
  456. package/src/components/android/wasm/TestData.js +448 -448
  457. package/src/components/android/wasm/comp.js +33 -33
  458. package/src/components/attendance/DailyAttendance.vue +99 -99
  459. package/src/components/attendance/MonthlyAttendance.vue +194 -194
  460. package/src/components/callincheck/CallInCheckMain.vue +146 -146
  461. package/src/components/callincheck/CallInPlan.vue +148 -148
  462. package/src/components/callincheck/UserFileList.vue +155 -155
  463. package/src/components/checkAreaClassification.vue +285 -285
  464. package/src/components/checkerphonestate/Checker.vue +32 -32
  465. package/src/components/checkerphonestate/CheckerState.vue +97 -97
  466. package/src/components/checkplan/CheckDetail.vue +205 -205
  467. package/src/components/checkplan/CheckPlan.vue +59 -59
  468. package/src/components/checkplan/SelectCheckPlan.vue +224 -224
  469. package/src/components/checkplan/SelectMessage.vue +105 -105
  470. package/src/components/checkplan/checkmsg.vue +459 -459
  471. package/src/components/checkplan/checkmsgZG.vue +519 -519
  472. package/src/components/cockpit/Splash.vue +85 -85
  473. package/src/components/cockpit/SplashDetail.vue +66 -66
  474. package/src/components/createcheckplan/CreatePlan.vue +1052 -1052
  475. package/src/components/createcheckplan/CreatePlanWuan.vue +1024 -1024
  476. package/src/components/createcheckplan/DelPlanRepeat.vue +318 -318
  477. package/src/components/createcheckplan/DistributePlan.vue +62 -62
  478. package/src/components/createcheckplan/PlanList.vue +433 -433
  479. package/src/components/createcheckplan/PlanUersList.vue +137 -137
  480. package/src/components/defect/DefectDetail.vue +177 -177
  481. package/src/components/defect/DefectDetailWeixiu.vue +177 -177
  482. package/src/components/defect/DefectList.vue +489 -489
  483. package/src/components/defect/DefectMain.vue +63 -63
  484. package/src/components/defect/DefectMainWeixiu.vue +63 -63
  485. package/src/components/defect/DefectPaper.vue +762 -762
  486. package/src/components/defect/DefectPaperWeiXiu.vue +508 -508
  487. package/src/components/defect/ImageViewer.vue +350 -350
  488. package/src/components/defect/ImgButton.vue +118 -118
  489. package/src/components/defect/ImgsButton.vue +62 -62
  490. package/src/components/defects/AddDefectModal.vue +120 -120
  491. package/src/components/defects/AddDevice.vue +95 -95
  492. package/src/components/defects/CheckPaperItem.vue +92 -92
  493. package/src/components/defects/CheckPaperItems.vue +89 -89
  494. package/src/components/defects/CheckPaperSearch.vue +349 -349
  495. package/src/components/defects/CheckPaperSearchMain.vue +55 -55
  496. package/src/components/defects/DefectCondition.vue +180 -180
  497. package/src/components/defects/DefectModal.vue +101 -101
  498. package/src/components/defects/DefectSeting.vue +98 -98
  499. package/src/components/defects/DefectsQuery.vue +190 -190
  500. package/src/components/defects/DevicesAndItem.vue +39 -39
  501. package/src/components/defects/DevicesSeting.vue +106 -106
  502. package/src/components/equipment/BoilerUsage.vue +105 -105
  503. package/src/components/equipment/CheckRate.vue +324 -324
  504. package/src/components/equipment/CheckerRate.vue +333 -333
  505. package/src/components/equipment/CookerUsage.vue +105 -105
  506. package/src/components/equipment/DeviceUsage.vue +105 -105
  507. package/src/components/equipment/FurnaceUsage.vue +105 -105
  508. package/src/components/equipment/GasMeterUsage.vue +109 -109
  509. package/src/components/equipment/HeaterUsage.vue +105 -105
  510. package/src/components/equipment/MonthCheckRate.vue +340 -340
  511. package/src/components/filialCircle/AddCircleFiliale.vue +114 -114
  512. package/src/components/filialCircle/CircleList.vue +139 -139
  513. package/src/components/filialCircle/CircleManage.vue +69 -69
  514. package/src/components/gasusage/GasUsage.vue +126 -126
  515. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  516. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  517. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  518. package/src/components/inspections/Checked.vue +402 -402
  519. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  520. package/src/components/inspections/InsUploadPage.vue +251 -251
  521. package/src/components/inspections/InspectionList.vue +542 -542
  522. package/src/components/inspections/InspectionLists.vue +544 -544
  523. package/src/components/inspections/InspectionListss.vue +544 -544
  524. package/src/components/inspections/inspectionDevices.vue +986 -986
  525. package/src/components/inspections/inspectionFeedback.vue +720 -720
  526. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  527. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  528. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  529. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  530. package/src/components/issueplan/IssuePlanAction.vue +102 -102
  531. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  532. package/src/components/issueplan/IssuePlanQuery.vue +118 -118
  533. package/src/components/json-editor/SafeJsonEditor.vue +212 -212
  534. package/src/components/json-editor/assets/img/jsoneditor-icons.svg +893 -893
  535. package/src/components/json-editor/assets/jsoneditor-minimalist.js +9750 -9750
  536. package/src/components/json-editor/assets/jsoneditor.css +929 -929
  537. package/src/components/json-editor/assets/jsoneditor.js +36376 -36376
  538. package/src/components/json-editor/example/App.vue +53 -53
  539. package/src/components/json-editor/example/index.html +9 -9
  540. package/src/components/json-editor/example/main.js +10 -10
  541. package/src/components/json-editor/package.json +71 -71
  542. package/src/components/json-editor/vue-json-editor.vue +189 -189
  543. package/src/components/levelplan/AdjustPlan.vue +199 -199
  544. package/src/components/levelplan/CheckerLeft.vue +140 -140
  545. package/src/components/levelplan/CheckerPlanAdjust.vue +304 -304
  546. package/src/components/levelplan/CheckerRight.vue +123 -123
  547. package/src/components/map/AMap.vue +70 -70
  548. package/src/components/map/AMapTrailShow.vue +178 -178
  549. package/src/components/map/AMapTrailShowZk.vue +178 -178
  550. package/src/components/map/FootPrintList.vue +45 -45
  551. package/src/components/map/MapCriteriaData.vue +97 -97
  552. package/src/components/map/checkScreen.vue +727 -727
  553. package/src/components/metterfiles/AddUserfiles.vue +246 -246
  554. package/src/components/metterfiles/MetterFiles.vue +104 -104
  555. package/src/components/metterfiles/MetterfilesAdd.vue +168 -168
  556. package/src/components/metterfiles/MetterfilesChange.vue +162 -162
  557. package/src/components/metterfiles/UserFiles.vue +156 -156
  558. package/src/components/metterfiles/Userfileschange.vue +391 -391
  559. package/src/components/notice/NoticeForm.vue +100 -100
  560. package/src/components/notice/NoticeIssue.vue +20 -20
  561. package/src/components/notice/NoticeQuery.vue +76 -76
  562. package/src/components/paper/PaperList.vue +75 -2
  563. package/src/components/paper/PaperVerify.vue +256 -256
  564. package/src/components/paper/PicViewer.vue +18 -18
  565. package/src/components/paper/PlanChooser.vue +159 -159
  566. package/src/components/paper/RepairVerify.vue +139 -139
  567. package/src/components/paper/RepairVerifyForm.vue +76 -76
  568. package/src/components/paper/VerifyForm.vue +107 -107
  569. package/src/components/paper/filialeCheckInfo.vue +111 -111
  570. package/src/components/pc/AnnouncementPC.vue +524 -524
  571. package/src/components/pc/CheckBook.vue +67 -67
  572. package/src/components/pc/CheckBookList.vue +4 -1
  573. package/src/components/pc/CheckBookManage.vue +903 -903
  574. package/src/components/pc/CheckBookUser.vue +77 -77
  575. package/src/components/pc/DeviceChange.vue +1068 -1068
  576. package/src/components/pc/HiddenChart.vue +494 -494
  577. package/src/components/pc/NewCheckpaper.vue +2 -2
  578. package/src/components/pc/PaperChazhiMain.vue +570 -570
  579. package/src/components/pc/PaperDefectMain.vue +584 -584
  580. package/src/components/pc/RoleSelector.vue +122 -122
  581. package/src/components/phonestate/DailyTraffic.vue +57 -57
  582. package/src/components/phonestate/FootprintMap.vue +129 -129
  583. package/src/components/phonestate/LastKnownState.vue +74 -74
  584. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  585. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  586. package/src/components/phonestate/PostMap.vue +82 -82
  587. package/src/components/plancheck/CheckPlanAreaManage.vue +116 -116
  588. package/src/components/plancheck/CheckPlanList.vue +282 -282
  589. package/src/components/planmanage/PlanManage.vue +753 -753
  590. package/src/components/planmanage/checkPlanList.vue +341 -341
  591. package/src/components/querycheckpaper/CheckPaperList.vue +127 -127
  592. package/src/components/querycheckpaper/CheckPaperSearchUser.vue +67 -67
  593. package/src/components/querycheckpaper/CheckSearchUser.vue +96 -4
  594. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  595. package/src/components/querycheckpaper/PaperItems.vue +79 -79
  596. package/src/components/querycheckpaper/PaperSearch.vue +126 -126
  597. package/src/components/querycheckpaper/PaperSearchMain.vue +56 -56
  598. package/src/components/querycheckpaper/ShebeiPaperList.vue +121 -121
  599. package/src/components/querycheckpaper/ShebeiPaperSearchUser.vue +67 -67
  600. package/src/components/querycheckpaper/ShebeiSearchUser.vue +690 -690
  601. package/src/components/report/CheckPlanAreaList.vue +449 -449
  602. package/src/components/report/CheckPlanAreaManage.vue +111 -111
  603. package/src/components/report/CheckPlanUserList.vue +216 -216
  604. package/src/components/report/HiddenSituation.vue +112 -112
  605. package/src/components/report/ManageBusSummary.vue +242 -242
  606. package/src/components/report/SafePlanSale.vue +111 -111
  607. package/src/components/report/SafePlanStatistics.vue +118 -118
  608. package/src/components/rongcheng/AddPlanItem.vue +315 -315
  609. package/src/components/rongcheng/AreaPlan.vue +470 -470
  610. package/src/components/rongcheng/AspPaperFeedback.vue +1179 -1179
  611. package/src/components/rongcheng/AspPaperStatem.vue +339 -339
  612. package/src/components/rongcheng/AspiratedAreaPlan.vue +464 -464
  613. package/src/components/rongcheng/AspiratedCurrentCreate.vue +1036 -1036
  614. package/src/components/rongcheng/AspiratedDevices.vue +966 -966
  615. package/src/components/rongcheng/AspiratedOrderV.vue +2376 -2376
  616. package/src/components/rongcheng/AspiratedPaperFeedbackm.vue +1019 -1019
  617. package/src/components/rongcheng/AspiratedPaperMessage.vue +1378 -1378
  618. package/src/components/rongcheng/AspiratedPaperMessageNocivil.vue +1288 -1288
  619. package/src/components/rongcheng/AspiratedUploadPage.vue +293 -293
  620. package/src/components/rongcheng/AspiratedUserInfo.vue +399 -399
  621. package/src/components/rongcheng/CheckCurrentCreate.vue +1046 -1046
  622. package/src/components/rongcheng/CheckPaperList.vue +134 -134
  623. package/src/components/rongcheng/CheckPaperSearchUser.vue +55 -55
  624. package/src/components/rongcheng/CheckPaperSearchUserNo.vue +55 -55
  625. package/src/components/rongcheng/CheckSearchUser.vue +826 -826
  626. package/src/components/rongcheng/CheckSearchUserNo.vue +757 -757
  627. package/src/components/rongcheng/DefectList.vue +560 -560
  628. package/src/components/rongcheng/DefectPaper.vue +638 -638
  629. package/src/components/rongcheng/PaperFeedback.vue +1318 -1318
  630. package/src/components/rongcheng/PaperListAJ.vue +501 -501
  631. package/src/components/rongcheng/PaperListNPAJ.vue +498 -498
  632. package/src/components/rongcheng/PaperListNPSQ.vue +485 -485
  633. package/src/components/rongcheng/PaperListSQ.vue +483 -483
  634. package/src/components/rongcheng/PaperMessage.vue +1186 -1186
  635. package/src/components/rongcheng/PaperMessageNocivil.vue +1211 -1211
  636. package/src/components/rongcheng/PaperStateNoncivilm.vue +366 -366
  637. package/src/components/rongcheng/PaperStatem.vue +343 -343
  638. package/src/components/rongcheng/PhoneDevicesInfo.vue +233 -233
  639. package/src/components/rongcheng/SafecheckDevices.vue +998 -998
  640. package/src/components/rongcheng/SafecheckOrderV.vue +2476 -2476
  641. package/src/components/rongcheng/SafecheckOrderVCli.vue +2594 -2594
  642. package/src/components/rongcheng/SafecheckUserInfo.vue +439 -439
  643. package/src/components/rongcheng/UploadPage.vue +328 -328
  644. package/src/components/rongcheng/checkerplan/SelectCheckPlan.vue +285 -285
  645. package/src/components/rongcheng/report/CheckPlanAreaList.vue +419 -419
  646. package/src/components/rongcheng/report/CheckPlanUserList.vue +228 -228
  647. package/src/components/safecheck/common/TabButton.vue +157 -157
  648. package/src/components/safecheck/common/Tabs.vue +67 -67
  649. package/src/components/safecheck/queryManage/CheckBookAll.vue +71 -71
  650. package/src/components/safecheck/queryManage/SafeCheckManage.vue +88 -88
  651. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  652. package/src/components/sendsingle/onlineChangeMeter.vue +658 -658
  653. package/src/components/sendsingle/onlineoperation.vue +411 -411
  654. package/src/components/sendsingle/onlinequeryuser.vue +363 -363
  655. package/src/components/shaoguan/CheckPlanUserList.vue +119 -119
  656. package/src/components/shaoguan/DefectDetail.vue +177 -177
  657. package/src/components/shaoguan/DefectList.vue +473 -473
  658. package/src/components/shaoguan/DefectMain.vue +53 -53
  659. package/src/components/shaoguan/DefectPaper.vue +217 -217
  660. package/src/components/shaoguan/PaperList.vue +533 -533
  661. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  662. package/src/components/task/RepairAnnual.vue +79 -79
  663. package/src/components/task/RepairAnnualDetail.vue +49 -49
  664. package/src/components/task/RepairMonthly.vue +91 -91
  665. package/src/components/task/TaskAnnual.vue +77 -77
  666. package/src/components/task/TaskAnnualDetail.vue +47 -47
  667. package/src/components/task/TaskMonthly.vue +89 -89
  668. package/src/components/tongcheng/AreaPlan.vue +458 -458
  669. package/src/components/tongcheng/CurrentCreate.vue +625 -625
  670. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  671. package/src/components/tongcheng/PaperMessage.vue +1270 -1270
  672. package/src/components/tongcheng/PaperMessageNocivil.vue +1228 -1228
  673. package/src/components/tongcheng/PaperSet.vue +1958 -1958
  674. package/src/components/tongcheng/PaperUser.vue +533 -533
  675. package/src/components/userfile/InfoModifyModal.vue +122 -122
  676. package/src/components/userfile/MeterFile.vue +145 -145
  677. package/src/components/userfile/MeterModify.vue +46 -46
  678. package/src/components/userfile/UserFile.vue +118 -118
  679. package/src/components/userfile/UserInfoAudit.vue +252 -252
  680. package/src/components/userfile/UserfileChange.vue +277 -277
  681. package/src/components/userfile/UserinfoModify.vue +117 -117
  682. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  683. package/src/components/userfileaudit/UserFileaudit.vue +81 -81
  684. package/src/components/userfileaudit/UserfileChangeaudit.vue +239 -239
  685. package/src/expandcss.less +571 -571
  686. package/src/expandcssAndroid.less +520 -520
  687. package/src/filiale/ALshan/pc/CheckSearchUser.vue +927 -927
  688. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +473 -473
  689. package/src/filiale/ALshan/pc.js +15 -15
  690. package/src/filiale/Util.js +325 -325
  691. package/src/filiale/huatong/android/SafecheckDevices.vue +928 -928
  692. package/src/filiale/huatong/android/SafecheckOrderV.vue +2398 -2398
  693. package/src/filiale/huatong/android.js +14 -14
  694. package/src/filiale/huatong/pc.js +13 -13
  695. package/src/filiale/liaoyuan/android/SafecheckDevices.vue +928 -928
  696. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2383 -2383
  697. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +550 -550
  698. package/src/filiale/liaoyuan/android.js +14 -14
  699. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +483 -483
  700. package/src/filiale/liaoyuan/pc/DefectPaperWeiXiu.vue +975 -975
  701. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  702. package/src/filiale/liaoyuan/pc/PaperList.vue +657 -657
  703. package/src/filiale/liaoyuan/pc.js +15 -15
  704. package/src/filiale/lixian/android/SafecheckDevices.vue +1022 -1022
  705. package/src/filiale/lixian/android/SafecheckOrderV.vue +2403 -2403
  706. package/src/filiale/lixian/android/SafecheckUserInfo.vue +586 -586
  707. package/src/filiale/lixian/android.js +14 -14
  708. package/src/filiale/lixian/pc/CheckPlanAreaList.vue +461 -461
  709. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  710. package/src/filiale/lixian/pc/PaperChazhiMain.vue +607 -607
  711. package/src/filiale/lixian/pc/PaperDefectMain.vue +617 -617
  712. package/src/filiale/lixian/pc/PaperList.vue +686 -686
  713. package/src/filiale/lixian/pc.js +22 -22
  714. package/src/filiale/rongchuang/pc/checkUserList.vue +594 -594
  715. package/src/filiale/rongchuang/pc.js +13 -13
  716. package/src/filiale/shimen/android/CurrentCreate.vue +979 -979
  717. package/src/filiale/shimen/android/PaperFeedback.vue +1341 -1341
  718. package/src/filiale/shimen/android/PhoneSellInfo.vue +88 -88
  719. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  720. package/src/filiale/shimen/android.js +12 -12
  721. package/src/filiale/shimen/pc/CheckPlanAreaList.vue +463 -463
  722. package/src/filiale/shimen/pc/CheckSearchUser.vue +927 -927
  723. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  724. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  725. package/src/filiale/shimen/pc/PaperDefectMain.vue +656 -656
  726. package/src/filiale/shimen/pc/PaperList.vue +613 -613
  727. package/src/filiale/shimen/pc/checkmsg.vue +248 -248
  728. package/src/filiale/shimen/pc.js +21 -21
  729. package/src/filiale/tongchuan/android/PaperFeedback.vue +1350 -1350
  730. package/src/filiale/tongchuan/android/SafecheckDevices.vue +1112 -1112
  731. package/src/filiale/tongchuan/android/SafecheckOrderV.vue +2575 -2575
  732. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +640 -640
  733. package/src/filiale/tongchuan/android/UploadPage.vue +285 -285
  734. package/src/filiale/tongchuan/android.js +13 -13
  735. package/src/filiale/tongchuan/pc/CheckPlanUserList.vue +245 -245
  736. package/src/filiale/tongchuan/pc/CheckSearchUser.vue +956 -956
  737. package/src/filiale/tongchuan/pc/DefectPaper.vue +764 -764
  738. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +509 -509
  739. package/src/filiale/tongchuan/pc/NewCheckpaper.vue +1267 -1267
  740. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +634 -634
  741. package/src/filiale/tongchuan/pc/PaperList.vue +677 -677
  742. package/src/filiale/tongchuan/pc/checkUserList.vue +593 -593
  743. package/src/filiale/tongchuan/pc.js +21 -21
  744. package/src/filiale/wenxi/android/CurrentCreate.vue +1047 -1047
  745. package/src/filiale/wenxi/android/PaperFeedback.vue +1378 -1378
  746. package/src/filiale/wenxi/android/SafecheckDevices.vue +1053 -1053
  747. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2472 -2472
  748. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +584 -584
  749. package/src/filiale/wenxi/android/UploadPage.vue +285 -285
  750. package/src/filiale/wenxi/android.js +14 -14
  751. package/src/filiale/wenxi/pc/DefectPaper.vue +662 -662
  752. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1169 -1169
  753. package/src/filiale/wenxi/pc/PaperDefectMain.vue +634 -634
  754. package/src/filiale/wenxi/pc/PaperList.vue +860 -860
  755. package/src/filiale/wenxi/pc/checkmsg.vue +302 -302
  756. package/src/filiale/wenxi/pc.js +16 -16
  757. package/src/filiale/wuan/android/AreaPlan.vue +513 -513
  758. package/src/filiale/wuan/android/CurrentCreate.vue +985 -985
  759. package/src/filiale/wuan/android/CurrentCreateSheBei.vue +999 -999
  760. package/src/filiale/wuan/android/SafecheckDevices.vue +1150 -1150
  761. package/src/filiale/wuan/android/SafecheckOrderV.vue +2237 -2237
  762. package/src/filiale/wuan/android/SafecheckUserInfo.vue +571 -571
  763. package/src/filiale/wuan/android.js +17 -17
  764. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  765. package/src/filiale/wuan/pc/DefectPaperWeiXiu.vue +514 -514
  766. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  767. package/src/filiale/wuan/pc/PaperList.vue +628 -628
  768. package/src/filiale/wuan/pc.js +19 -19
  769. package/src/filiale/wuhai/android/AreaPlan.vue +529 -529
  770. package/src/filiale/wuhai/android/PaperFeedback.vue +1350 -1350
  771. package/src/filiale/wuhai/android.js +12 -12
  772. package/src/filiale/wuhai/pc/checkUserList.vue +594 -594
  773. package/src/filiale/wuhai/pc.js +13 -13
  774. package/src/filiale/zhongsheng/android/PaperFeedback.vue +1341 -1341
  775. package/src/filiale/zhongsheng/android/PhoneUpUserinfo.vue +926 -926
  776. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2447 -2447
  777. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +591 -591
  778. package/src/filiale/zhongsheng/android.js +17 -17
  779. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  780. package/src/filiale/zhongsheng/pc/DefectPaperWeiXiu.vue +511 -511
  781. package/src/filiale/zhongsheng/pc/InfoModifyModal.vue +123 -123
  782. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1308 -1308
  783. package/src/filiale/zhongsheng/pc/UserInfoAudit.vue +252 -252
  784. package/src/filiale/zhongsheng/pc/UserinfoModify.vue +121 -121
  785. package/src/filiale/zhongsheng/pc.js +15 -15
  786. package/src/filiale/zhoukou/android/AndroidDefectDeal.vue +408 -408
  787. package/src/filiale/zhoukou/android/AreaPlan.vue +543 -543
  788. package/src/filiale/zhoukou/android/CurrentCreate.vue +1014 -1014
  789. package/src/filiale/zhoukou/android/PaperFeedback.vue +1367 -1367
  790. package/src/filiale/zhoukou/android/PhoneUpUserinfo.vue +957 -957
  791. package/src/filiale/zhoukou/android/SafecheckDevices.vue +1174 -1174
  792. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  793. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  794. package/src/filiale/zhoukou/android/UploadPage.vue +301 -301
  795. package/src/filiale/zhoukou/android.js +18 -18
  796. package/src/filiale/zhoukou/pc/CheckSearchUser.vue +923 -923
  797. package/src/filiale/zhoukou/pc/PaperDefectMain.vue +531 -531
  798. package/src/filiale/zhoukou/pc.js +15 -15
  799. package/src/index.js +17 -17
  800. package/src/main.js +33 -33
  801. package/src/plugins/EmojiData.js +514 -514
  802. package/src/plugins/GerJsonConfig.js +59 -59
  803. package/src/plugins/GerJsonObjectConfig.js +44 -44
  804. package/src/plugins/LoadData.js +10 -10
  805. package/src/plugins/LoadParams.js +24 -24
  806. package/src/plugins/LocalPagedList.js +108 -108
  807. package/src/plugins/LocalPathList.js +109 -109
  808. package/src/rongcheng-android.js +193 -193
  809. package/src/rongcheng.js +304 -304
  810. package/src/safecheck-android.js +225 -225
  811. package/src/safecheck.js +723 -723
  812. package/src/shaoguan-android.js +176 -176
  813. package/src/shaoguan.js +276 -276
  814. package/src/stores/AppData.js +46 -46
  815. package/src/stores/wxconfig.js +10 -10
  816. package/src/tongchengsafe-android.js +162 -162
  817. package/src/tongchengsafecheck.js +267 -267
  818. package/src/utils/GerJsonObjectConfig.js +51 -51
  819. package/src/utils/LdapHelper.js +99 -99
  820. package/src/utils/getNowDate.js +33 -33
  821. package/test/SearchList.test.js +14 -14
  822. package/test/e2e/custom-assertions/elementCount.js +26 -26
  823. package/test/e2e/nightwatch.conf.js +40 -40
  824. package/test/e2e/runner.js +30 -30
  825. package/test/e2e/specs/test.js +13 -13
  826. package/test/unit/.eslintrc +5 -5
  827. package/test/unit/TestUtil.js +62 -62
  828. package/test/unit/context.html +20 -20
  829. package/test/unit/index.js +13 -13
  830. package/test/unit/init.js +11 -11
  831. package/test/unit/karma.conf.js +53 -53
  832. package/test/unit/specs/Devices.spec.js +18 -18
  833. package/test/unit/specs/getArrobjconfig.spec.js +104 -104
  834. package/test/unit/specs/getobjconfig.spec.js +37 -37
  835. package/test/unit/specs/phonetest/phonesafecheck.spec.js +23 -23
  836. package/test/unit/specs/safePlanItem.spec.js +30 -30
  837. package/test/unit/specs/safecheck-android.spec.js +7 -7
  838. package/test/unit/specs/safecheck.spec.js +127 -127
  839. package/yarn-error.log +140 -140
@@ -1,975 +1,975 @@
1
- <template>
2
- <div class="flex">
3
- <work-busy :is-busy="isbusy"></work-busy>
4
- <criteria-paged :model="model" v-ref:paged>
5
- <criteria partial='criteria' @condition-changed='$parent.search' v-ref:criteria>
6
- <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
7
- <div class="row" v-if="!$parent.$parent.$parent.showItem">
8
- <div :class="$parent.$parent.style">
9
- <label class="font_normal_body">安检计划</label>
10
- <input type="text" class="input_search" v-model="$parent.$parent.f_check_plan.f_plan_name"
11
- @click="$parent.$parent.showChooser"
12
- style="width: 60%" placeholder="安检计划" readonly="readonly">
13
- </div>
14
- <div :class="$parent.$parent.style">
15
- <label class="font_normal_body">存在隐患</label>
16
- <v-select style="width:60% "
17
- class="select select_list"
18
- :value.sync="model.f_has_defect"
19
- v-model="model.f_has_defect"
20
- :options='$parent.$parent.hasDefectOptions'
21
- :placeholder='model.f_has_defect'
22
- condition="f_has_defect = '{}'"
23
- close-on-select>
24
- </v-select>
25
- </div>
26
- <div :class="$parent.$parent.style">
27
- <label class="font_normal_body">用户编号</label>
28
- <input type="text" class="input_search" v-model="model.f_userinfo_code"
29
- condition="f_userinfo_code = '{}'"
30
- style="width: 60%" placeholder="用户编号">
31
- </div>
32
- <div :class="$parent.$parent.style">
33
- <label class="font_normal_body">结果查询</label>
34
- <v-select
35
- placeholder='维修结果查询'
36
- :value-single="true"
37
- class="select select_list" style="width: 60%"
38
- v-model='model.f_is_repair'
39
- :value.sync="model.f_is_repair"
40
- :options='$parent.$parent.repaired'
41
- condition="f_is_repair = '{}'"
42
- close-on-select clear-button> </v-select>
43
- </div>
44
- <div class=" col-sm-4 form-group button-range" >
45
- <div class="span" style="float: right;margin-top: 8px">
46
- <div style="float: right" class="button_spacing"
47
- :class="{'button_shrink_left':$parent.$parent.$parent.showItem,'button_shrink_right':!$parent.$parent.$parent.showItem}"
48
- @click="$parent.$parent.hiddenr()"></div>
49
- <div style="float: right" class="button_spacing"
50
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
51
- @click="$parent.$parent.hidden()"></div>
52
- <button style="float: right" class="button_search button_spacing" @click="search">查询</button>
53
- <button style="float: right" class="button_search button_spacing" @click="$parent.$parent.toRepair">转维修</button>
54
- <div style="float: right">
55
- <export-excel-safe :data="{condition: $parent.$parent.model.condition,f_filialeids:$parent.$parent.model.f_filialeids,f_defect_content:$parent.$parent.model.f_defect_content}"
56
- :field="$parent.$parent.getfield"
57
- progress="safeGetExportProgress"
58
- sqlurl="rs/logic/SafeExportExcel" sql-name="GetCheckPaperByDefect" template-name='安检隐患明细' :choose-col="true"></export-excel-safe>
59
- </div>
60
- </div>
61
- </div>
62
- </div>
63
- <div class="row" v-if="$parent.$parent.criteriaShow&&!$parent.$parent.$parent.showItem">
64
- <div :class="$parent.$parent.style">
65
- <label class="font_normal_body">片&emsp;&emsp;区</label>
66
- <v-select class="select_list select"
67
- placeholder='片区/管理站' style="width: 60%"
68
- :value.sync="model.f_slice_area" v-model="model.f_slice_area"
69
- :options='$parent.$parent.sliceArea'
70
- filer-key="name"
71
- close-on-select clear-button
72
- condition="f_slice_area='{}'"
73
- @change="$parent.$parent.getmeterbook(model.f_slice_area)"
74
- :value-single="true">
75
- </v-select>
76
- </div>
77
- <div :class="$parent.$parent.style2" style="margin: 0">
78
- <role-selector-safe
79
- role-name="安检员"
80
- role-lable="安&nbsp;检&nbsp;员&nbsp;"
81
- @re-res="$parent.$parent.getRes"
82
- :value.sync="model.f_checker_id"
83
- v-model="model.f_checker_id"
84
- condition="f_checker_name = '{}'">
85
- </role-selector-safe>
86
- </div>
87
-
88
- <div :class="$parent.$parent.style">
89
- <label class="font_normal_body">抄&ensp;表&ensp;册</label>
90
- <v-select class="select_list select"
91
- placeholder='抄表册' style="width: 60%"
92
- :value.sync="model.f_meter_book_num" v-model="model.f_meter_book_num"
93
- :options='$parent.$parent.cbc'
94
- filer-key="name"
95
- close-on-select clear-button
96
- condition="f_meter_book_num={}"
97
- :value-single="true">
98
- </v-select>
99
- </div>
100
- <div :class="$parent.$parent.style">
101
- <label class="font_normal_body">起始时间</label>
102
- <datepicker
103
- placeholder='起始时间' style="width:60%"
104
- :disabled-days-of-week="[]"
105
- :format="'yyyy-MM-dd'"
106
- :show-rest-button="reset"
107
- :value.sync="model.f_start_time"
108
- v-model="model.f_start_time"
109
- condition="f_offsite_time >= '{} 00:00:00'">
110
- </datepicker>
111
- </div>
112
- <div :class="$parent.$parent.style">
113
- <label class="font_normal_body">结束时间</label>
114
- <datepicker
115
- placeholder='结束时间' style="width:60%"
116
- :disabled-days-of-week="[]"
117
- :format="'yyyy-MM-dd'"
118
- :show-rest-button="reset"
119
- :value.sync="model.f_end_time"
120
- v-model="model.f_end_time"
121
- condition="f_offsite_time <= '{} 23:59:59'">
122
- </datepicker>
123
- </div>
124
-
125
-
126
- </div>
127
- <div class="row" v-if="$parent.$parent.criteriaShow&&!$parent.$parent.$parent.showItem">
128
-
129
- <div :class="$parent.$parent.style">
130
- <label class="font_normal_body">维&ensp;修&ensp;员</label>
131
- <input type="text" class="input_search" v-model="model.f_repairman"
132
- condition="f_repairman = '{}'"
133
- style="width: 60%" placeholder="维修员">
134
- </div>
135
- <div :class="$parent.$parent.style">
136
- <label class="font_normal_body">处理查询</label>
137
- <v-select
138
- placeholder='处理结果查询'
139
- :value-single="true"
140
- class="select select_list" style="width: 60%"
141
- v-model='model.f_is_deal'
142
- :value.sync="model.f_is_deal"
143
- :options='$parent.$parent.deals'
144
- condition="f_is_deal = '{}'"
145
- close-on-select clear-button> </v-select>
146
- </div>
147
-
148
- </div>
149
-
150
-
151
-
152
- <div class="row" v-if="$parent.$parent.$parent.showItem">
153
- <div :class="$parent.$parent.style">
154
- <label class="font_normal_body">安检计划</label>
155
- <input type="text" class="input_search" v-model="$parent.$parent.f_check_plan.f_plan_name"
156
- @click="$parent.$parent.showChooser"
157
- style="width: 60%" placeholder="安检计划" readonly="readonly">
158
- </div>
159
- <div :class="$parent.$parent.style">
160
- <label class="font_normal_body">存在隐患</label>
161
- <v-select style="width:60% "
162
- class="select select_list"
163
- :value.sync="model.f_has_defect"
164
- v-model="model.f_has_defect"
165
- :options='$parent.$parent.hasDefectOptions'
166
- :placeholder='model.f_has_defect'
167
- condition="f_has_defect = '{}'"
168
- close-on-select>
169
- </v-select>
170
- </div>
171
-
172
- <div class=" col-sm-4 form-group button-range">
173
- <div class="span" style="float: right;margin-top: 8px;margin-right: 50px">
174
- <div style="float: right" class="button_spacing"
175
- :class="{'button_shrink_left':$parent.$parent.$parent.showItem,'button_shrink_right':!$parent.$parent.$parent.showItem}"
176
- @click="$parent.$parent.hiddenr()"></div>
177
- <div style="float: right" class="button_spacing"
178
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
179
- @click="$parent.$parent.hidden()"></div>
180
- <button style="float: right" class="button_search button_spacing" @click="search">查询</button>
181
- <button style="float: right" class="button_search button_spacing" @click="$parent.$parent.toRepair">转维修</button>
182
- <div style="float: right">
183
- <export-excel-safe :data="{condition: $parent.$parent.model.condition,f_filialeids:$parent.$parent.model.f_filialeids}"
184
- :field="$parent.$parent.getfield"
185
- progress="safeGetExportProgress"
186
- sqlurl="rs/logic/SafeExportExcel" sql-name="GetCheckPaperByDefect" template-name='安检计划明细' :choose-col="true"></export-excel-safe>
187
- </div>
188
- </div>
189
- </div>
190
-
191
-
192
-
193
- </div>
194
- <div class="row" v-if="$parent.$parent.criteriaShow&&$parent.$parent.$parent.showItem">
195
- <div :class="$parent.$parent.style">
196
- <label class="font_normal_body">用户编号</label>
197
- <input type="text" class="input_search" v-model="model.f_userinfo_code"
198
- condition="f_userinfo_code = '{}'"
199
- style="width: 60%" placeholder="用户编号">
200
- </div>
201
- <div :class="$parent.$parent.style">
202
- <label class="font_normal_body">结果查询</label>
203
- <v-select
204
- placeholder='处理结果查询'
205
- :value-single="true"
206
- class="select select_list" style="width: 60%"
207
- v-model='model.f_repaired'
208
- :value.sync="model.f_repaired"
209
- :options='$parent.$parent.repaired'
210
- condition="f_repaired = '{}'"
211
- close-on-select clear-button> </v-select>
212
- </div>
213
-
214
- <div :class="$parent.$parent.style2" style="margin: 0">
215
- <role-selector-safe
216
- role-name="安检员"
217
- role-lable="安&nbsp;检&nbsp;员&nbsp;"
218
- @re-res="$parent.$parent.getRes"
219
- :value.sync="model.f_checker_id"
220
- v-model="model.f_checker_id"
221
- condition="f_checker_name = '{}'">
222
- </role-selector-safe>
223
- </div>
224
- </div>
225
- <div class="row" v-if="$parent.$parent.criteriaShow && $parent.$parent.$parent.showItem">
226
- <div :class="$parent.$parent.style">
227
- <label class="font_normal_body">片&emsp;&emsp;区</label>
228
- <v-select class="select_list select"
229
- placeholder='片区/管理站' style="width: 60%"
230
- :value.sync="model.f_slice_area" v-model="model.f_slice_area"
231
- :options='$parent.$parent.sliceArea'
232
- filer-key="name"
233
- close-on-select clear-button
234
- condition="f_slice_area='{}'"
235
- @change="$parent.$parent.getmeterbook(model.f_slice_area)"
236
- :value-single="true">
237
- </v-select>
238
- </div>
239
- <div :class="$parent.$parent.style">
240
- <label class="font_normal_body">抄&ensp;表&ensp;册</label>
241
- <v-select class="select_list select"
242
- placeholder='抄表册' style="width: 60%"
243
- :value.sync="model.f_meter_book_num" v-model="model.f_meter_book_num"
244
- :options='$parent.$parent.cbc'
245
- filer-key="name"
246
- close-on-select clear-button
247
- condition="f_meter_book_num={}"
248
- :value-single="true">
249
- </v-select>
250
- </div>
251
- <div :class="$parent.$parent.style">
252
- <label class="font_normal_body">起始时间</label>
253
- <datepicker
254
- placeholder='起始时间' style="width:60%"
255
- :disabled-days-of-week="[]"
256
- :format="'yyyy-MM-dd'"
257
- :show-rest-button="reset"
258
- :value.sync="model.f_start_time"
259
- v-model="model.f_start_time"
260
- condition="f_offsite_time >= '{} 00:00:00'">
261
- </datepicker>
262
- </div>
263
- <div :class="$parent.$parent.style">
264
- <label class="font_normal_body">结束时间</label>
265
- <datepicker
266
- placeholder='结束时间' style="width:60%"
267
- :disabled-days-of-week="[]"
268
- :format="'yyyy-MM-dd'"
269
- :show-rest-button="reset"
270
- :value.sync="model.f_end_time"
271
- v-model="model.f_end_time"
272
- condition="f_offsite_time <= '{} 23:59:59'">
273
- </datepicker>
274
- </div>
275
-
276
-
277
- </div>
278
- <div class="row" v-if="$parent.$parent.criteriaShow && $parent.$parent.$parent.showItem">
279
-
280
- <div :class="$parent.$parent.style">
281
- <label class="font_normal_body">维&ensp;修&ensp;员</label>
282
- <input type="text" class="input_search" v-model="model.f_repairman"
283
- condition="f_repairman = '{}'"
284
- style="width: 60%" placeholder="维修员">
285
- </div>
286
- <div :class="$parent.$parent.style">
287
- <label class="font_normal_body">处理查询</label>
288
- <v-select
289
- placeholder='处理结果查询'
290
- :value-single="true"
291
- class="select select_list" style="width: 60%"
292
- v-model='model.f_is_deal'
293
- :value.sync="model.f_is_deal"
294
- :options='$parent.$parent.deals'
295
- condition="f_is_deal = '{}'"
296
- close-on-select clear-button> </v-select>
297
- </div>
298
- </div>
299
- </div>
300
- </criteria>
301
- <data-grid :model="model" partial='list' v-ref:grid class="list_area table_sy">
302
- <template partial='head'>
303
- <tr>
304
- <!-- <th><nobr><input type="checkbox" v-model="$parent.$parent.$parent.checkAll" @click.stop="()=>{return}" />全选</nobr></th>-->
305
- <th><nobr>入户状态</nobr></th>
306
- <th><nobr>用户编号</nobr></th>
307
- <th><nobr>用户名</nobr></th>
308
- <th><nobr>用户电话</nobr></th>
309
- <th><nobr>用户小区</nobr></th>
310
- <th><nobr>用户地址</nobr></th>
311
- <th><nobr>安检时间</nobr></th>
312
- <th><nobr>安检员</nobr></th>
313
- <th><nobr>计划名</nobr></th>
314
- <th><nobr>是否有隐患</nobr></th>
315
- <th><nobr>隐患数</nobr></th>
316
- <th><nobr>处理数</nobr></th>
317
- <th><nobr>完成数</nobr></th>
318
- <th><nobr>处理情况</nobr></th>
319
- <th><nobr>完成情况</nobr></th>
320
- <th><nobr>维修员</nobr></th>
321
-
322
- </tr>
323
- </template>
324
- <template partial='body'>
325
- <!-- <td style="text-align: center;white-space:nowrap;"><input type="checkbox" @click="$event.cancelBubble=true" :checked="$parent.$parent.$parent.isChecked(row.id)" @change="$parent.$parent.$parent.setCheckes(row.id)"></input></td>-->
326
- <td style="text-align: center;white-space:nowrap;">{{row.f_entry_status}}</td>
327
- <td style="text-align: center;white-space:nowrap;">{{row.f_userinfo_code}}</td>
328
- <td style="text-align: center;white-space:nowrap;">{{row.f_user_name}}</td>
329
- <td style="text-align: center;white-space:nowrap;">{{row.f_user_phone}}</td>
330
- <td style="text-align: center;white-space:nowrap;">{{row.f_residential_area}}</td>
331
- <td style="text-align: center;white-space:nowrap;">{{row.f_address}}</td>
332
- <td style="text-align: center;white-space:nowrap;">{{row.f_offsite_time}}</td>
333
- <td style="text-align: center;white-space:nowrap;">{{row.f_checker_name}}</td>
334
- <td style="text-align: center;white-space:nowrap;">{{row.f_plan_name}}</td>
335
- <td style="text-align: center;white-space:nowrap;">{{row.f_has_defect}}</td>
336
- <td style="text-align: center;white-space:nowrap;">{{row.f_defect_count}}</td>
337
- <td style="text-align: center;white-space:nowrap;">{{row.f_deal_count}}</td>
338
- <td style="text-align: center;white-space:nowrap;">{{row.f_repair_count}}</td>
339
- <td style="text-align: center;white-space:nowrap;">{{row.f_is_deal}}</td>
340
- <td style="text-align: center;white-space:nowrap;">{{row.f_is_repair}}</td>
341
- <td style="text-align: center;white-space:nowrap;">{{row.f_repairman}}</td>
342
-
343
- </template>
344
- </data-grid>
345
- </criteria-paged>
346
-
347
- <modal :show.sync="showModal" v-ref:modal>
348
- <div slot="modal-header" class="modal-header">
349
- <h4 class="modal-title">
350
- 选择计划
351
- </h4>
352
- </div>
353
- <div slot="modal-body" class="modal-body">
354
- <plan-chooser :f.sync="this.$login.f" v-ref:chooser></plan-chooser>
355
- </div>
356
- <div slot="modal-footer" class="modal-footer" style="text-align: center">
357
- <button class="button_search" @click="ok">确认</button>
358
- <button class="button_search" @click="cancel">取消</button>
359
- </div>
360
- </modal>
361
- <modal :show.sync="showModal2" :backdrop="false">
362
- <div slot="modal-header" class="modal-header">
363
- <h4 class="modal-title">
364
- 转维修
365
- </h4>
366
- </div>
367
- <div slot="modal-body" class="modal-body">
368
- <div v-if="true">
369
- <div class="row" style="margin-top: 10px">
370
- <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">派发类型</label>
371
- <div class="col-xs-8 col-md-8">
372
- <v-select :value.sync="selectData.dispatchType" :value-single="true" v-model="selectData.dispatchType"
373
- :options='dispatchTypeOptions' placeholder='派发类型'
374
- close-on-select>
375
- </v-select>
376
- </div>
377
- </div>
378
- <div class="row" style="margin-top: 10px" v-if="selectData.dispatchType=='派发给维修员'">
379
- <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">维&ensp;修&ensp;员</label>
380
- <div class="col-xs-8 col-md-8">
381
- <v-select
382
- :value.sync="selectData.f_repairman"
383
- :value-single="true"
384
- :options='repairers'
385
- placeholder='请选择维修员'
386
- close-on-select></v-select>
387
- </div>
388
- </div>
389
- <div class="row" style="margin-top: 10px" v-if="selectData.dispatchType=='派发给站点'">
390
- <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">站&ensp;&ensp;&ensp;&ensp;点</label>
391
- <div class="col-xs-8 col-md-8">
392
- <right-tree
393
- islist
394
- :userid="userid"
395
- :source="'dep=this.getParentByType($organization$).getSpecialResByType($department$),tool.getFullTree(dep.where(row.hasSpecialRole($派单员$)))'"
396
- @re-res="getSiteRes"></right-tree>
397
- </div>
398
- </div>
399
- <div class="row" style="margin-top: 10px">
400
- <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">报修类型</label>
401
- <div class="col-xs-8 col-md-8">
402
- <v-select :value.sync="selectData.f_repairtype" style="width:60%"
403
- class="select select_list"
404
- :value-single="true"
405
- :options='repairTypeOptions'
406
- close-on-select>
407
- </v-select>
408
- </div>
409
- </div>
410
- <div class="row" style="margin-top: 10px">
411
- <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">备&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;注</label>
412
- <div class="col-xs-8 col-md-8">
413
- <textarea style="width: 60%; height: 100px" v-model="selectData.f_remarks"></textarea>
414
- </div>
415
- </div>
416
- </div>
417
- </div>
418
- <div slot="modal-footer" class="modal-footer" style="text-align: center">
419
- <button class="button_search" @click="rectification">转维修</button>
420
- <button class="button_search" @click="cancel1">取消</button>
421
- </div>
422
- </modal>
423
- <modal :show.sync="showModal3">
424
- <div slot="modal-header" class="modal-header">
425
- <h4 class="modal-title">
426
- 转维修进度{{ progressbarWidth }}%
427
- </h4>
428
- </div>
429
- <div slot="modal-body" class="modal-body">
430
- <div class="progress">
431
- <div class="progress-bar" role="progressbar" aria-valuenow="60"
432
- aria-valuemin="0" aria-valuemax="100" :style="'width:'+ progressbarWidth+'%'">
433
- <!-- <span class="sr-only">40% 完成</span>-->
434
- </div>
435
- </div>
436
- </div>
437
- <div slot="modal-footer" class="modal-footer" style="text-align: center" v-show="false"></div>
438
- </modal>
439
- </div>
440
- </template>
441
- <script>
442
- import {PagedList} from 'vue-client'
443
- import HttpResetClass from "vue-client/src/plugins/HttpResetClass";
444
- import co from 'co'
445
- import Vue from 'vue'
446
- import * as Util from '../../../components/Util'
447
-
448
- let select = function* (self) {
449
- let http = new HttpResetClass()
450
- let getGasman = yield http.load('POST', '/rs/search', {
451
- source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
452
- userid: self.$login.f.id
453
- }, {resolveMsg: null, rejectMsg: null})
454
- console.log('获取安检员', getGasman)
455
- self.checkersid.push({label: '全部', value: ''})
456
- getGasman.data.forEach((checker) => {
457
- self.checkersid.push({label: checker.name, value: checker.name})
458
- })
459
- }
460
- export default {
461
- title: '隐患查询',
462
- data() {
463
- let model = new PagedList('rs/sql/GetCheckPaperByDefect', 20, {
464
- f_filialeids: 'this.f_filialeids',f_defect_content: 'this.f_defect_content'
465
- })
466
- model.f_filialeids = '(' + this.$login.f.orgid + ')'
467
- model.f_defect_content="CASE WHEN CHARINDEX( '\"result\":\"正常\"', f_defect_content ) > 0 THEN '无隐患' ELSE replace(replace(replace( replace( RIGHT ( f_defect_content, len( f_defect_content ) - 26 ), substring('{}',2,1), '' ), substring('{}',1,1), '' ),']',''),'\"','') END"
468
- return {
469
- repaired:[{label: '全部', value: ''},{label: '未完成', value: '未完成'}, {label: '已完成', value: '已完成'}],
470
- deals:[{label: '全部', value: ''},{label: '未处理', value: '未处理'}, {label: '已处理', value: '已处理'}],
471
- hasDefectOptions: [{label: '全部', value: ''}, {label: '有隐患', value: '有隐患'}, {label: '无隐患', value: '无隐患'}],
472
- f: this.$login.f,
473
- model: model,
474
- criteriaShow: false,
475
- checkAll:false,
476
- timercount:0,
477
- showModal2:false,
478
- repairTypeOptions:this.$appdata.getParam('报修类型'),
479
- dispatchTypeOptions: [{label: '派发给维修员', value: '派发给维修员'}],
480
- checkes:[],
481
- showModal: false,
482
- f_check_plan: {f_plan_name: '', id: ''},
483
- sumsmodel: {},
484
- all: false,
485
- fields: {},
486
-
487
- selectData:{
488
- dispatchType:'',
489
- f_repairman:'',
490
- f_remarks:'',
491
- f_repairtype:''
492
- },
493
- progressbarWidth:'0',
494
- modelval: [],
495
- isbusy:false,
496
- checkersid: [],
497
- showModal3:false,
498
- toRepairCount:0,
499
- sliceArea: [],
500
- callSends:[],
501
- cbc:[],
502
- repairers:[],
503
- cbcs:[],
504
- thead: '',
505
- headData: ['入户状态','用户编号','用户名','用户电话','用户小区','用户地址','安检时间','安检员','计划名','是否有隐患','隐患数','隐患情况'],
506
- bodyData: ['f_entry_status','f_userinfo_code','f_user_name','f_user_phone','f_residential_area','f_address','f_offsite_time','f_checker_name','f_plan_name','f_has_defect','f_defect_count','f_defect_content'],
507
-
508
- }
509
- },
510
- props:{
511
-
512
- style: {
513
- type: String,
514
- default: 'col-sm-2 form-group'
515
- },
516
- style2: {
517
- type: String,
518
- default: 'col-sm-4 form-group'
519
- }
520
-
521
- },
522
-
523
- methods: {
524
- getEmp() {
525
- let val = {source: 'this.getParentByType($organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$)!=null ).where(row.getAttributes().get($rolestr$).indexOf($维修员$) != -1))', userid: `${this.$login.f.id}`}
526
- let http = new HttpResetClass()
527
- http.load('POST', '/rs/search', {data: val}, {resolveMsg: null, rejectMsg: null}).then((res) => {
528
- let str=''
529
- res.data.forEach((item,idx,arr) => {
530
- console.log(idx+"----"+arr.length)
531
- if(idx+1==arr.length){
532
- str += item.id
533
- }else{
534
- str += item.id+','
535
- }
536
-
537
- })
538
- let http1 = new HttpResetClass()
539
- http1.load('POST', 'rs/sql/tel_singleTable_OrderBy', {
540
- data: {
541
- items: 'id,f_user_telephone',
542
- tablename: 't_user',
543
- condition: `id in (${str})`,
544
- orderitem: 'id'
545
- }
546
- }, {resolveMsg: null, rejectMsg: null}).then((ress) => {
547
-
548
- res.data.forEach((user)=>{
549
- try {
550
- ress.data.forEach((tel,tidx,arr)=>{
551
- console.log(`${user.id}--------------${tel.id} ----------${tidx}-------${ress.data[tidx].id}`)
552
- if(user.id==tel.id){
553
- this.repairers.push({label: `${user.name}:${tel.f_user_telephone}`, value: user.name})
554
- ress.data.splice(tidx,1)
555
- console.log(`******${ress.data[tidx].id}`)
556
- throw new Error("跳出循环");
557
- }
558
- })
559
- }catch (e) {
560
- console.log('下一次!')
561
- }
562
- })
563
- })
564
-
565
- })
566
- },
567
-
568
- toRepair(){
569
- console.log("进入转维修页面")
570
- this.showModal2=true
571
- // if(this.checkAll){
572
- // let data={
573
- // f_filialeids: this.model.params.f_filialeids,
574
- // f_defect_content: this.model.params.f_defect_content,
575
- // condition:this.model.params.condition
576
- // }
577
- // new HttpResetClass().load('post','rs/sql/GetCheckPaperByDefect',{data:data}).then(res=>{
578
- // console.log("res长度",res.data.length)
579
- // if (res.data.length>100){
580
- // this.$showMessage('单次转维修不可超过100户,请重新筛选')
581
- // return
582
- // }else{
583
-
584
-
585
- // }
586
- // })
587
- // }else{
588
- // if (this.checkes.length<1){
589
- // Vue.showAlert('未选中用户', 'warning' ,3000)
590
- // return
591
- // }
592
- // this.showModal2=true
593
- //
594
- // }
595
- },
596
- async rectification(){
597
- this.isbusy =true
598
- // if (this.checkAll){
599
- let data={
600
- f_filialeids: this.model.params.f_filialeids,
601
- f_defect_content: this.model.params.f_defect_content,
602
- condition:this.model.params.condition
603
- }
604
- let res1= await new HttpResetClass().load('post','rs/sql/GetCheckPaperByDefect',{data: data })
605
- for (let i = 0; i < res1.data.length; i++) {
606
- let data1={
607
- f_paper_id: res1.data[i].id,
608
- condition:`f_repaire_type != '无隐患'`
609
- }
610
- let res2 = await new HttpResetClass().load('POST' , 'rs/sql/GetDefectByPaperId' , {data: data1 } )
611
- console.log('resss',res2.data)
612
- const uploadData = {
613
- model: {
614
- serviceacitivity: [{
615
- f_service_acitivity_type: '派单'
616
- }],
617
- f_repairitems: {},
618
- failure: '',
619
- f_source: '安检',
620
- f_service_id: '',
621
- f_contact_phone: '',
622
- f_meetunit: '',
623
- f_phone: '',
624
- f_user_name: '',
625
- f_address: '',
626
- f_repair_date: '',
627
- f_reciever: '',
628
- f_remarks: '',
629
- f_user_type: '',
630
- f_area: '',
631
- f_unit_name: '',
632
- f_street: '',
633
- f_residential_area: '',
634
- f_building: '',
635
- f_unit: '',
636
- f_floor: '',
637
- f_room: '',
638
- aState: '',
639
- f_repairtype: '',
640
- f_userinfo_id: '',
641
- f_userinfo_code: '',
642
- f_orgstr: '',
643
- f_outlets: '',
644
- f_attendant: this.$login.f.name
645
- },
646
- loginUser: {
647
- name: this.$login.f.name,
648
- ename: this.$login.f.ename
649
- },
650
- user: {
651
- f_userinfo_id: ''
652
- },
653
- callObj: null
654
- }
655
-
656
- uploadData.model.serviceacitivity[0].f_reciever = this.selectData.f_repairman
657
- // uploadData.model.f_meetunit = self.$login.f.orgpathnames
658
- // uploadData.model.f_orgstr = self.$login.f.orgpathstr
659
- // uploadData.model.f_outlets = self.$login.f.f_parentname
660
- uploadData.model.f_meetunit = this.$login.f.deps
661
- uploadData.model.f_orgid = this.$login.f.orgid
662
- uploadData.model.f_filiale = this.$login.f.org
663
- uploadData.model.f_outlets = this.$login.f.deps
664
- uploadData.model.f_filiale_id = this.$login.f.orgid
665
- uploadData.toRepair = '一级派单'
666
- let res3 = await new HttpResetClass().load('post','/rs/sql/GetUserForRepaire', {data: {f_userinfo_id: res1.data[i].f_userinfo_id}})
667
- uploadData.model = Object.assign(uploadData.model, res3.data[0])
668
- uploadData.user.f_userinfo_id = res3.data[0].f_userinfo_id
669
- uploadData.model.f_repair_date = Util.getNowDate()
670
- uploadData.model.f_repairtype = res3.data[0].f_repairtype
671
- uploadData.model.f_remarks = res3.data[0].f_remarks
672
- let failure = []
673
- res2.data.forEach(row => {
674
- if (row.f_repaire_type == '隐患未处理') {
675
- failure.push({
676
- f_failure_type: row.f_item_name,
677
- failurecase: row.f_item_value.split(',')
678
- })
679
- }
680
- })
681
- uploadData.model.failure = failure
682
- // 拼接repairitems
683
- let rows = JSON.parse(JSON.stringify(res2.data))
684
- let repairitems = {
685
- data: []
686
- }
687
- let safecheckOptions = [{"data": "已处理"}, {"data": "未处理"}]
688
- // 取隐患未处理的
689
- rows = rows.filter(row => row.f_repaire_type == '隐患未处理')
690
- console.log('row => ' + JSON.stringify(rows))
691
- // 开始拼接
692
- rows.forEach(row => {
693
- let existIndex = -1
694
- // 判断该设备是否已经存在
695
- for (let i = 0; i < repairitems.data.length; i++) {
696
- if (repairitems.data[i].f_type == row.f_device_type) {
697
- existIndex = i
698
- break
699
- }
700
- }
701
- if (existIndex == -1) {
702
- // 不存在则新建
703
- let newItem = {
704
- f_type: row.f_device_type,
705
- details: [{
706
- f_defect_id: row.id,
707
- f_project: `${row.f_item_name}:${row.f_item_value}`,
708
- type: 'selector',
709
- options: safecheckOptions
710
- }]
711
- }
712
- repairitems.data.push(newItem)
713
- } else {
714
- // 存在则追加
715
- repairitems.data[existIndex].details.push({
716
- f_defect_id: row.id,
717
- f_project: `${row.f_item_name}:${row.f_item_value}`,
718
- type: 'selector',
719
- options: safecheckOptions
720
- })
721
- }
722
- })
723
- uploadData.model.f_repairitems = repairitems
724
- uploadData.rows=rows
725
- console.log('uploadData ---> ' + JSON.stringify(uploadData))
726
- console.log(uploadData.model.f_repairitems)
727
- if (uploadData.model.f_repairitems.data.length>0){
728
- this.callSends.push(uploadData)
729
- }else{
730
- console.log('无隐患,无需转维修')
731
- }
732
-
733
-
734
-
735
-
736
- }
737
- console.log('666666666666',JSON.stringify(this.callSends))
738
- let timer = setInterval(async ()=>{
739
- this.showModal3=true
740
- this.isbusy=false
741
- if (this.timercount<this.callSends.length){
742
- console.log('要发送的参数',JSON.stringify(this.callSends[this.timercount]))
743
- let rows=this.callSends[this.timercount].rows
744
- console.log('rows ===> ' + JSON.stringify(rows))
745
- let result = await this.$resetpost('/rs/logic/callerSend', this.callSends[this.timercount])
746
- console.log('result ===> ' + JSON.stringify(result))
747
- if (result.data.f_service_id) {
748
- let updateRes = await this.$resetpost('/rs/logic/updateDefectState', {itemsId: this.$login.convertToIn(rows.map(row => row.id))})
749
- console.log('updateRes',updateRes)
750
- }
751
- this.toRepairCount++
752
- console.log(timer,this.progressbarWidth)
753
- this.timercount++
754
- }else{
755
- clearInterval(timer)
756
- console.log('停止发送',timer)
757
- this.callSends=[]
758
- this.timercount=0
759
- this.showModal3=false
760
- this.cancel1()
761
- this.$showMessage('本次转维修成功'+this.toRepairCount+'单')
762
- this.toRepairCount=0
763
- }
764
- }, 3000)
765
-
766
-
767
- // } else {
768
- // for (let i = 0; i <this.checkes.length; i++) {
769
- // let data={
770
- // f_paper_id: this.checkes[i],
771
- // condition:`f_repaire_type != '无隐患'`
772
- // }
773
- // new HttpResetClass().load('POST','rs/sql/GetDefectByPaperId',{data:data}).then(res=>{
774
- // console.log('resss',res.data)
775
- // })
776
- // }
777
- // }
778
- },
779
- cancel1(){
780
- this.showModal2=false
781
- this.selectData={
782
- dispatchType:'',
783
- f_repairman:'',
784
- f_remarks:'',
785
- f_repairtype:''
786
- }
787
- },
788
- sleep(d){
789
- console.log('开始睡眠',Date.now())
790
- var t = Date.now()
791
- while(Date.now - t <= d)
792
- console.log('结束睡眠',Date.now())
793
- },
794
- isChecked(v) {
795
- // 如果全选,不在的按选中算,否则,在的按选中算
796
- if (this.checkAll) {
797
- return this.checkes.indexOf(v) == -1
798
- } else {
799
- return this.checkes.indexOf(v) != -1
800
- }
801
- },
802
- setCheckAll() {
803
- this.checkAll=this.checkAll?false:true;
804
- // 全选改变后,清空选中数据
805
- this.checkes = []
806
- },
807
- setCheckes(id) {
808
- let index=this.checkes.indexOf(id)
809
- if(index<0){
810
- this.checkes.push(id)
811
- }else{
812
- this.checkes.splice(index,1)
813
- }
814
- },
815
-
816
- getmeterbook(val){
817
- this.cbc=[]
818
- this.cbc.push({
819
- label:'全部',
820
- value:''
821
- })
822
- if (val==''){
823
-
824
- this.cbcs.forEach(res=>{
825
- this.cbc.push({
826
- label:res.f_book_name,
827
- value:res.id
828
- })
829
- })
830
- }else{
831
- this.cbcs.forEach(res=>{
832
- if (res.f_book_slice_area==val){
833
- this.cbc.push({
834
- label:res.f_book_name,
835
- value:res.id
836
- })
837
- }
838
- })
839
- }
840
- },
841
-
842
- Mreadibook(val){
843
- console.log("999999999")
844
- console.log(val)
845
- this.sliceArea=[]
846
- if (val){
847
- new HttpResetClass().load('POST',`/rs/sql/tel_singleTable_OrderBy`, {data: {
848
- items: 'name',
849
- tablename: 't_zone',
850
- condition: `parentid in ${val}`,
851
- orderitem: 'id'
852
- }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
853
- this.sliceArea.push({
854
- label:'全部',
855
- value:''
856
- })
857
- res.data.forEach(ress=>{
858
- this.sliceArea.push({
859
- label:ress.name,
860
- value:ress.name
861
- })
862
- })
863
-
864
- })
865
- }
866
- },
867
- getAllMeterBook(val){
868
- console.log("999999999")
869
- console.log(val)
870
- this.cbcs=[]
871
- if (val){
872
- new HttpResetClass().load('POST',`/rs/sql/tel_singleTable_OrderBy`, {data: {
873
- items: 'f_book_name,f_book_slice_area,id',
874
- tablename: 't_meter_book',
875
- condition: `f_filiale_id in ${val}`,
876
- orderitem: 'id'
877
- }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
878
- res.data.forEach(ress=>{
879
- this.cbcs.push({
880
- id:ress.id,
881
- f_book_name:ress.f_book_name,
882
- f_book_slice_area:ress.f_book_slice_area
883
- })
884
- })
885
- this.cbc=[]
886
- this.cbc.push({
887
- label:'全部',
888
- value:''
889
- })
890
- this.cbcs.forEach(res=>{
891
- this.cbc.push({
892
- label:res.f_book_name,
893
- value:res.id
894
- })
895
- })
896
- })
897
- }
898
- },
899
- hiddenr() {
900
- this.$parent.showItem = !this.$parent.showItem
901
- },
902
- hidden() {
903
- this.criteriaShow = !this.criteriaShow
904
- },
905
- search(args) {
906
- if (this.f_check_plan.f_plan_name) {
907
- args.condition += ` and f_check_plan_id = '${this.f_check_plan.id}'`
908
- }
909
- this.checkes = []
910
- this.checkAll=false
911
- this.model.search(args.condition, args.model)
912
- },
913
- getRes(obj) {
914
- this.model.f_filialeids = this.$login.convertToIn(obj.resids);
915
- this.Mreadibook(this.model.f_filialeids)
916
- this.getAllMeterBook(this.model.f_filialeids)
917
- },
918
- showChooser() {
919
- this.showModal = true
920
- },
921
- ok() {
922
- this.showModal = false
923
- if (this.$refs.modal.$children[0].selectedRow.id) {
924
- this.f_check_plan = this.$refs.modal.$children[0].selectedRow
925
- }
926
- },
927
- cancel() {
928
- this.showModal = false
929
- this.f_check_plan = {f_plan_name: '', id: ''}
930
- }
931
- },
932
- ready() {
933
- this.$refs.paged.$refs.criteria.model.f_has_defect = '有隐患'
934
- this.getEmp()
935
- let gen = select(this)
936
- // this.Mreadibook(`('${this.$login.f.orgid}')`)
937
- co(gen)
938
- },
939
- watch:{
940
- 'timercount'(){
941
- if (this.timercount===0){
942
- this.progressbarWidth = '0'
943
- }else {
944
- console.log(this.callSends.length)
945
- console.log(this.timercount)
946
- this.progressbarWidth=parseInt(this.timercount*100/(this.callSends.length+1))
947
- }
948
-
949
- }
950
- },
951
- computed: {
952
- selected() {
953
- return this.$refs.paged.$refs.grid.selected
954
- },
955
- getfield(){
956
- console.log("---------------------------------------------导出方法")
957
- let data = {}
958
- this.bodyData.forEach((value, index)=>{
959
- data[this.bodyData[index]] = this.headData[index]
960
- })
961
- //合计字段打印
962
- this.tfoot = `<tr><th colspan=${this.modelval.length}>全表汇总信息: `
963
- if(this.sumsmodel){
964
- Object.keys(this.sumsmodel).forEach((key) => {
965
- this.tfoot += this.fields[key] + '合计: ' + `<font color="blue">${this.sumsmodel[key]} </font>`
966
- })
967
- }else{
968
- this.tfoot += '暂无'
969
- }
970
- this.tfoot += '</th></tr>'
971
- return data
972
- }
973
- }
974
- }
975
- </script>
1
+ <template>
2
+ <div class="flex">
3
+ <work-busy :is-busy="isbusy"></work-busy>
4
+ <criteria-paged :model="model" v-ref:paged>
5
+ <criteria partial='criteria' @condition-changed='$parent.search' v-ref:criteria>
6
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
7
+ <div class="row" v-if="!$parent.$parent.$parent.showItem">
8
+ <div :class="$parent.$parent.style">
9
+ <label class="font_normal_body">安检计划</label>
10
+ <input type="text" class="input_search" v-model="$parent.$parent.f_check_plan.f_plan_name"
11
+ @click="$parent.$parent.showChooser"
12
+ style="width: 60%" placeholder="安检计划" readonly="readonly">
13
+ </div>
14
+ <div :class="$parent.$parent.style">
15
+ <label class="font_normal_body">存在隐患</label>
16
+ <v-select style="width:60% "
17
+ class="select select_list"
18
+ :value.sync="model.f_has_defect"
19
+ v-model="model.f_has_defect"
20
+ :options='$parent.$parent.hasDefectOptions'
21
+ :placeholder='model.f_has_defect'
22
+ condition="f_has_defect = '{}'"
23
+ close-on-select>
24
+ </v-select>
25
+ </div>
26
+ <div :class="$parent.$parent.style">
27
+ <label class="font_normal_body">用户编号</label>
28
+ <input type="text" class="input_search" v-model="model.f_userinfo_code"
29
+ condition="f_userinfo_code = '{}'"
30
+ style="width: 60%" placeholder="用户编号">
31
+ </div>
32
+ <div :class="$parent.$parent.style">
33
+ <label class="font_normal_body">结果查询</label>
34
+ <v-select
35
+ placeholder='维修结果查询'
36
+ :value-single="true"
37
+ class="select select_list" style="width: 60%"
38
+ v-model='model.f_is_repair'
39
+ :value.sync="model.f_is_repair"
40
+ :options='$parent.$parent.repaired'
41
+ condition="f_is_repair = '{}'"
42
+ close-on-select clear-button> </v-select>
43
+ </div>
44
+ <div class=" col-sm-4 form-group button-range" >
45
+ <div class="span" style="float: right;margin-top: 8px">
46
+ <div style="float: right" class="button_spacing"
47
+ :class="{'button_shrink_left':$parent.$parent.$parent.showItem,'button_shrink_right':!$parent.$parent.$parent.showItem}"
48
+ @click="$parent.$parent.hiddenr()"></div>
49
+ <div style="float: right" class="button_spacing"
50
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
51
+ @click="$parent.$parent.hidden()"></div>
52
+ <button style="float: right" class="button_search button_spacing" @click="search">查询</button>
53
+ <button style="float: right" class="button_search button_spacing" @click="$parent.$parent.toRepair">转维修</button>
54
+ <div style="float: right">
55
+ <export-excel-safe :data="{condition: $parent.$parent.model.condition,f_filialeids:$parent.$parent.model.f_filialeids,f_defect_content:$parent.$parent.model.f_defect_content}"
56
+ :field="$parent.$parent.getfield"
57
+ progress="safeGetExportProgress"
58
+ sqlurl="rs/logic/SafeExportExcel" sql-name="GetCheckPaperByDefect" template-name='安检隐患明细' :choose-col="true"></export-excel-safe>
59
+ </div>
60
+ </div>
61
+ </div>
62
+ </div>
63
+ <div class="row" v-if="$parent.$parent.criteriaShow&&!$parent.$parent.$parent.showItem">
64
+ <div :class="$parent.$parent.style">
65
+ <label class="font_normal_body">片&emsp;&emsp;区</label>
66
+ <v-select class="select_list select"
67
+ placeholder='片区/管理站' style="width: 60%"
68
+ :value.sync="model.f_slice_area" v-model="model.f_slice_area"
69
+ :options='$parent.$parent.sliceArea'
70
+ filer-key="name"
71
+ close-on-select clear-button
72
+ condition="f_slice_area='{}'"
73
+ @change="$parent.$parent.getmeterbook(model.f_slice_area)"
74
+ :value-single="true">
75
+ </v-select>
76
+ </div>
77
+ <div :class="$parent.$parent.style2" style="margin: 0">
78
+ <role-selector-safe
79
+ role-name="安检员"
80
+ role-lable="安&nbsp;检&nbsp;员&nbsp;"
81
+ @re-res="$parent.$parent.getRes"
82
+ :value.sync="model.f_checker_id"
83
+ v-model="model.f_checker_id"
84
+ condition="f_checker_name = '{}'">
85
+ </role-selector-safe>
86
+ </div>
87
+
88
+ <div :class="$parent.$parent.style">
89
+ <label class="font_normal_body">抄&ensp;表&ensp;册</label>
90
+ <v-select class="select_list select"
91
+ placeholder='抄表册' style="width: 60%"
92
+ :value.sync="model.f_meter_book_num" v-model="model.f_meter_book_num"
93
+ :options='$parent.$parent.cbc'
94
+ filer-key="name"
95
+ close-on-select clear-button
96
+ condition="f_meter_book_num={}"
97
+ :value-single="true">
98
+ </v-select>
99
+ </div>
100
+ <div :class="$parent.$parent.style">
101
+ <label class="font_normal_body">起始时间</label>
102
+ <datepicker
103
+ placeholder='起始时间' style="width:60%"
104
+ :disabled-days-of-week="[]"
105
+ :format="'yyyy-MM-dd'"
106
+ :show-rest-button="reset"
107
+ :value.sync="model.f_start_time"
108
+ v-model="model.f_start_time"
109
+ condition="f_offsite_time >= '{} 00:00:00'">
110
+ </datepicker>
111
+ </div>
112
+ <div :class="$parent.$parent.style">
113
+ <label class="font_normal_body">结束时间</label>
114
+ <datepicker
115
+ placeholder='结束时间' style="width:60%"
116
+ :disabled-days-of-week="[]"
117
+ :format="'yyyy-MM-dd'"
118
+ :show-rest-button="reset"
119
+ :value.sync="model.f_end_time"
120
+ v-model="model.f_end_time"
121
+ condition="f_offsite_time <= '{} 23:59:59'">
122
+ </datepicker>
123
+ </div>
124
+
125
+
126
+ </div>
127
+ <div class="row" v-if="$parent.$parent.criteriaShow&&!$parent.$parent.$parent.showItem">
128
+
129
+ <div :class="$parent.$parent.style">
130
+ <label class="font_normal_body">维&ensp;修&ensp;员</label>
131
+ <input type="text" class="input_search" v-model="model.f_repairman"
132
+ condition="f_repairman = '{}'"
133
+ style="width: 60%" placeholder="维修员">
134
+ </div>
135
+ <div :class="$parent.$parent.style">
136
+ <label class="font_normal_body">处理查询</label>
137
+ <v-select
138
+ placeholder='处理结果查询'
139
+ :value-single="true"
140
+ class="select select_list" style="width: 60%"
141
+ v-model='model.f_is_deal'
142
+ :value.sync="model.f_is_deal"
143
+ :options='$parent.$parent.deals'
144
+ condition="f_is_deal = '{}'"
145
+ close-on-select clear-button> </v-select>
146
+ </div>
147
+
148
+ </div>
149
+
150
+
151
+
152
+ <div class="row" v-if="$parent.$parent.$parent.showItem">
153
+ <div :class="$parent.$parent.style">
154
+ <label class="font_normal_body">安检计划</label>
155
+ <input type="text" class="input_search" v-model="$parent.$parent.f_check_plan.f_plan_name"
156
+ @click="$parent.$parent.showChooser"
157
+ style="width: 60%" placeholder="安检计划" readonly="readonly">
158
+ </div>
159
+ <div :class="$parent.$parent.style">
160
+ <label class="font_normal_body">存在隐患</label>
161
+ <v-select style="width:60% "
162
+ class="select select_list"
163
+ :value.sync="model.f_has_defect"
164
+ v-model="model.f_has_defect"
165
+ :options='$parent.$parent.hasDefectOptions'
166
+ :placeholder='model.f_has_defect'
167
+ condition="f_has_defect = '{}'"
168
+ close-on-select>
169
+ </v-select>
170
+ </div>
171
+
172
+ <div class=" col-sm-4 form-group button-range">
173
+ <div class="span" style="float: right;margin-top: 8px;margin-right: 50px">
174
+ <div style="float: right" class="button_spacing"
175
+ :class="{'button_shrink_left':$parent.$parent.$parent.showItem,'button_shrink_right':!$parent.$parent.$parent.showItem}"
176
+ @click="$parent.$parent.hiddenr()"></div>
177
+ <div style="float: right" class="button_spacing"
178
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
179
+ @click="$parent.$parent.hidden()"></div>
180
+ <button style="float: right" class="button_search button_spacing" @click="search">查询</button>
181
+ <button style="float: right" class="button_search button_spacing" @click="$parent.$parent.toRepair">转维修</button>
182
+ <div style="float: right">
183
+ <export-excel-safe :data="{condition: $parent.$parent.model.condition,f_filialeids:$parent.$parent.model.f_filialeids}"
184
+ :field="$parent.$parent.getfield"
185
+ progress="safeGetExportProgress"
186
+ sqlurl="rs/logic/SafeExportExcel" sql-name="GetCheckPaperByDefect" template-name='安检计划明细' :choose-col="true"></export-excel-safe>
187
+ </div>
188
+ </div>
189
+ </div>
190
+
191
+
192
+
193
+ </div>
194
+ <div class="row" v-if="$parent.$parent.criteriaShow&&$parent.$parent.$parent.showItem">
195
+ <div :class="$parent.$parent.style">
196
+ <label class="font_normal_body">用户编号</label>
197
+ <input type="text" class="input_search" v-model="model.f_userinfo_code"
198
+ condition="f_userinfo_code = '{}'"
199
+ style="width: 60%" placeholder="用户编号">
200
+ </div>
201
+ <div :class="$parent.$parent.style">
202
+ <label class="font_normal_body">结果查询</label>
203
+ <v-select
204
+ placeholder='处理结果查询'
205
+ :value-single="true"
206
+ class="select select_list" style="width: 60%"
207
+ v-model='model.f_repaired'
208
+ :value.sync="model.f_repaired"
209
+ :options='$parent.$parent.repaired'
210
+ condition="f_repaired = '{}'"
211
+ close-on-select clear-button> </v-select>
212
+ </div>
213
+
214
+ <div :class="$parent.$parent.style2" style="margin: 0">
215
+ <role-selector-safe
216
+ role-name="安检员"
217
+ role-lable="安&nbsp;检&nbsp;员&nbsp;"
218
+ @re-res="$parent.$parent.getRes"
219
+ :value.sync="model.f_checker_id"
220
+ v-model="model.f_checker_id"
221
+ condition="f_checker_name = '{}'">
222
+ </role-selector-safe>
223
+ </div>
224
+ </div>
225
+ <div class="row" v-if="$parent.$parent.criteriaShow && $parent.$parent.$parent.showItem">
226
+ <div :class="$parent.$parent.style">
227
+ <label class="font_normal_body">片&emsp;&emsp;区</label>
228
+ <v-select class="select_list select"
229
+ placeholder='片区/管理站' style="width: 60%"
230
+ :value.sync="model.f_slice_area" v-model="model.f_slice_area"
231
+ :options='$parent.$parent.sliceArea'
232
+ filer-key="name"
233
+ close-on-select clear-button
234
+ condition="f_slice_area='{}'"
235
+ @change="$parent.$parent.getmeterbook(model.f_slice_area)"
236
+ :value-single="true">
237
+ </v-select>
238
+ </div>
239
+ <div :class="$parent.$parent.style">
240
+ <label class="font_normal_body">抄&ensp;表&ensp;册</label>
241
+ <v-select class="select_list select"
242
+ placeholder='抄表册' style="width: 60%"
243
+ :value.sync="model.f_meter_book_num" v-model="model.f_meter_book_num"
244
+ :options='$parent.$parent.cbc'
245
+ filer-key="name"
246
+ close-on-select clear-button
247
+ condition="f_meter_book_num={}"
248
+ :value-single="true">
249
+ </v-select>
250
+ </div>
251
+ <div :class="$parent.$parent.style">
252
+ <label class="font_normal_body">起始时间</label>
253
+ <datepicker
254
+ placeholder='起始时间' style="width:60%"
255
+ :disabled-days-of-week="[]"
256
+ :format="'yyyy-MM-dd'"
257
+ :show-rest-button="reset"
258
+ :value.sync="model.f_start_time"
259
+ v-model="model.f_start_time"
260
+ condition="f_offsite_time >= '{} 00:00:00'">
261
+ </datepicker>
262
+ </div>
263
+ <div :class="$parent.$parent.style">
264
+ <label class="font_normal_body">结束时间</label>
265
+ <datepicker
266
+ placeholder='结束时间' style="width:60%"
267
+ :disabled-days-of-week="[]"
268
+ :format="'yyyy-MM-dd'"
269
+ :show-rest-button="reset"
270
+ :value.sync="model.f_end_time"
271
+ v-model="model.f_end_time"
272
+ condition="f_offsite_time <= '{} 23:59:59'">
273
+ </datepicker>
274
+ </div>
275
+
276
+
277
+ </div>
278
+ <div class="row" v-if="$parent.$parent.criteriaShow && $parent.$parent.$parent.showItem">
279
+
280
+ <div :class="$parent.$parent.style">
281
+ <label class="font_normal_body">维&ensp;修&ensp;员</label>
282
+ <input type="text" class="input_search" v-model="model.f_repairman"
283
+ condition="f_repairman = '{}'"
284
+ style="width: 60%" placeholder="维修员">
285
+ </div>
286
+ <div :class="$parent.$parent.style">
287
+ <label class="font_normal_body">处理查询</label>
288
+ <v-select
289
+ placeholder='处理结果查询'
290
+ :value-single="true"
291
+ class="select select_list" style="width: 60%"
292
+ v-model='model.f_is_deal'
293
+ :value.sync="model.f_is_deal"
294
+ :options='$parent.$parent.deals'
295
+ condition="f_is_deal = '{}'"
296
+ close-on-select clear-button> </v-select>
297
+ </div>
298
+ </div>
299
+ </div>
300
+ </criteria>
301
+ <data-grid :model="model" partial='list' v-ref:grid class="list_area table_sy">
302
+ <template partial='head'>
303
+ <tr>
304
+ <!-- <th><nobr><input type="checkbox" v-model="$parent.$parent.$parent.checkAll" @click.stop="()=>{return}" />全选</nobr></th>-->
305
+ <th><nobr>入户状态</nobr></th>
306
+ <th><nobr>用户编号</nobr></th>
307
+ <th><nobr>用户名</nobr></th>
308
+ <th><nobr>用户电话</nobr></th>
309
+ <th><nobr>用户小区</nobr></th>
310
+ <th><nobr>用户地址</nobr></th>
311
+ <th><nobr>安检时间</nobr></th>
312
+ <th><nobr>安检员</nobr></th>
313
+ <th><nobr>计划名</nobr></th>
314
+ <th><nobr>是否有隐患</nobr></th>
315
+ <th><nobr>隐患数</nobr></th>
316
+ <th><nobr>处理数</nobr></th>
317
+ <th><nobr>完成数</nobr></th>
318
+ <th><nobr>处理情况</nobr></th>
319
+ <th><nobr>完成情况</nobr></th>
320
+ <th><nobr>维修员</nobr></th>
321
+
322
+ </tr>
323
+ </template>
324
+ <template partial='body'>
325
+ <!-- <td style="text-align: center;white-space:nowrap;"><input type="checkbox" @click="$event.cancelBubble=true" :checked="$parent.$parent.$parent.isChecked(row.id)" @change="$parent.$parent.$parent.setCheckes(row.id)"></input></td>-->
326
+ <td style="text-align: center;white-space:nowrap;">{{row.f_entry_status}}</td>
327
+ <td style="text-align: center;white-space:nowrap;">{{row.f_userinfo_code}}</td>
328
+ <td style="text-align: center;white-space:nowrap;">{{row.f_user_name}}</td>
329
+ <td style="text-align: center;white-space:nowrap;">{{row.f_user_phone}}</td>
330
+ <td style="text-align: center;white-space:nowrap;">{{row.f_residential_area}}</td>
331
+ <td style="text-align: center;white-space:nowrap;">{{row.f_address}}</td>
332
+ <td style="text-align: center;white-space:nowrap;">{{row.f_offsite_time}}</td>
333
+ <td style="text-align: center;white-space:nowrap;">{{row.f_checker_name}}</td>
334
+ <td style="text-align: center;white-space:nowrap;">{{row.f_plan_name}}</td>
335
+ <td style="text-align: center;white-space:nowrap;">{{row.f_has_defect}}</td>
336
+ <td style="text-align: center;white-space:nowrap;">{{row.f_defect_count}}</td>
337
+ <td style="text-align: center;white-space:nowrap;">{{row.f_deal_count}}</td>
338
+ <td style="text-align: center;white-space:nowrap;">{{row.f_repair_count}}</td>
339
+ <td style="text-align: center;white-space:nowrap;">{{row.f_is_deal}}</td>
340
+ <td style="text-align: center;white-space:nowrap;">{{row.f_is_repair}}</td>
341
+ <td style="text-align: center;white-space:nowrap;">{{row.f_repairman}}</td>
342
+
343
+ </template>
344
+ </data-grid>
345
+ </criteria-paged>
346
+
347
+ <modal :show.sync="showModal" v-ref:modal>
348
+ <div slot="modal-header" class="modal-header">
349
+ <h4 class="modal-title">
350
+ 选择计划
351
+ </h4>
352
+ </div>
353
+ <div slot="modal-body" class="modal-body">
354
+ <plan-chooser :f.sync="this.$login.f" v-ref:chooser></plan-chooser>
355
+ </div>
356
+ <div slot="modal-footer" class="modal-footer" style="text-align: center">
357
+ <button class="button_search" @click="ok">确认</button>
358
+ <button class="button_search" @click="cancel">取消</button>
359
+ </div>
360
+ </modal>
361
+ <modal :show.sync="showModal2" :backdrop="false">
362
+ <div slot="modal-header" class="modal-header">
363
+ <h4 class="modal-title">
364
+ 转维修
365
+ </h4>
366
+ </div>
367
+ <div slot="modal-body" class="modal-body">
368
+ <div v-if="true">
369
+ <div class="row" style="margin-top: 10px">
370
+ <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">派发类型</label>
371
+ <div class="col-xs-8 col-md-8">
372
+ <v-select :value.sync="selectData.dispatchType" :value-single="true" v-model="selectData.dispatchType"
373
+ :options='dispatchTypeOptions' placeholder='派发类型'
374
+ close-on-select>
375
+ </v-select>
376
+ </div>
377
+ </div>
378
+ <div class="row" style="margin-top: 10px" v-if="selectData.dispatchType=='派发给维修员'">
379
+ <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">维&ensp;修&ensp;员</label>
380
+ <div class="col-xs-8 col-md-8">
381
+ <v-select
382
+ :value.sync="selectData.f_repairman"
383
+ :value-single="true"
384
+ :options='repairers'
385
+ placeholder='请选择维修员'
386
+ close-on-select></v-select>
387
+ </div>
388
+ </div>
389
+ <div class="row" style="margin-top: 10px" v-if="selectData.dispatchType=='派发给站点'">
390
+ <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">站&ensp;&ensp;&ensp;&ensp;点</label>
391
+ <div class="col-xs-8 col-md-8">
392
+ <right-tree
393
+ islist
394
+ :userid="userid"
395
+ :source="'dep=this.getParentByType($organization$).getSpecialResByType($department$),tool.getFullTree(dep.where(row.hasSpecialRole($派单员$)))'"
396
+ @re-res="getSiteRes"></right-tree>
397
+ </div>
398
+ </div>
399
+ <div class="row" style="margin-top: 10px">
400
+ <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">报修类型</label>
401
+ <div class="col-xs-8 col-md-8">
402
+ <v-select :value.sync="selectData.f_repairtype" style="width:60%"
403
+ class="select select_list"
404
+ :value-single="true"
405
+ :options='repairTypeOptions'
406
+ close-on-select>
407
+ </v-select>
408
+ </div>
409
+ </div>
410
+ <div class="row" style="margin-top: 10px">
411
+ <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">备&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;注</label>
412
+ <div class="col-xs-8 col-md-8">
413
+ <textarea style="width: 60%; height: 100px" v-model="selectData.f_remarks"></textarea>
414
+ </div>
415
+ </div>
416
+ </div>
417
+ </div>
418
+ <div slot="modal-footer" class="modal-footer" style="text-align: center">
419
+ <button class="button_search" @click="rectification">转维修</button>
420
+ <button class="button_search" @click="cancel1">取消</button>
421
+ </div>
422
+ </modal>
423
+ <modal :show.sync="showModal3">
424
+ <div slot="modal-header" class="modal-header">
425
+ <h4 class="modal-title">
426
+ 转维修进度{{ progressbarWidth }}%
427
+ </h4>
428
+ </div>
429
+ <div slot="modal-body" class="modal-body">
430
+ <div class="progress">
431
+ <div class="progress-bar" role="progressbar" aria-valuenow="60"
432
+ aria-valuemin="0" aria-valuemax="100" :style="'width:'+ progressbarWidth+'%'">
433
+ <!-- <span class="sr-only">40% 完成</span>-->
434
+ </div>
435
+ </div>
436
+ </div>
437
+ <div slot="modal-footer" class="modal-footer" style="text-align: center" v-show="false"></div>
438
+ </modal>
439
+ </div>
440
+ </template>
441
+ <script>
442
+ import {PagedList} from 'vue-client'
443
+ import HttpResetClass from "vue-client/src/plugins/HttpResetClass";
444
+ import co from 'co'
445
+ import Vue from 'vue'
446
+ import * as Util from '../../../components/Util'
447
+
448
+ let select = function* (self) {
449
+ let http = new HttpResetClass()
450
+ let getGasman = yield http.load('POST', '/rs/search', {
451
+ source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
452
+ userid: self.$login.f.id
453
+ }, {resolveMsg: null, rejectMsg: null})
454
+ console.log('获取安检员', getGasman)
455
+ self.checkersid.push({label: '全部', value: ''})
456
+ getGasman.data.forEach((checker) => {
457
+ self.checkersid.push({label: checker.name, value: checker.name})
458
+ })
459
+ }
460
+ export default {
461
+ title: '隐患查询',
462
+ data() {
463
+ let model = new PagedList('rs/sql/GetCheckPaperByDefect', 20, {
464
+ f_filialeids: 'this.f_filialeids',f_defect_content: 'this.f_defect_content'
465
+ })
466
+ model.f_filialeids = '(' + this.$login.f.orgid + ')'
467
+ model.f_defect_content="CASE WHEN CHARINDEX( '\"result\":\"正常\"', f_defect_content ) > 0 THEN '无隐患' ELSE replace(replace(replace( replace( RIGHT ( f_defect_content, len( f_defect_content ) - 26 ), substring('{}',2,1), '' ), substring('{}',1,1), '' ),']',''),'\"','') END"
468
+ return {
469
+ repaired:[{label: '全部', value: ''},{label: '未完成', value: '未完成'}, {label: '已完成', value: '已完成'}],
470
+ deals:[{label: '全部', value: ''},{label: '未处理', value: '未处理'}, {label: '已处理', value: '已处理'}],
471
+ hasDefectOptions: [{label: '全部', value: ''}, {label: '有隐患', value: '有隐患'}, {label: '无隐患', value: '无隐患'}],
472
+ f: this.$login.f,
473
+ model: model,
474
+ criteriaShow: false,
475
+ checkAll:false,
476
+ timercount:0,
477
+ showModal2:false,
478
+ repairTypeOptions:this.$appdata.getParam('报修类型'),
479
+ dispatchTypeOptions: [{label: '派发给维修员', value: '派发给维修员'}],
480
+ checkes:[],
481
+ showModal: false,
482
+ f_check_plan: {f_plan_name: '', id: ''},
483
+ sumsmodel: {},
484
+ all: false,
485
+ fields: {},
486
+
487
+ selectData:{
488
+ dispatchType:'',
489
+ f_repairman:'',
490
+ f_remarks:'',
491
+ f_repairtype:''
492
+ },
493
+ progressbarWidth:'0',
494
+ modelval: [],
495
+ isbusy:false,
496
+ checkersid: [],
497
+ showModal3:false,
498
+ toRepairCount:0,
499
+ sliceArea: [],
500
+ callSends:[],
501
+ cbc:[],
502
+ repairers:[],
503
+ cbcs:[],
504
+ thead: '',
505
+ headData: ['入户状态','用户编号','用户名','用户电话','用户小区','用户地址','安检时间','安检员','计划名','是否有隐患','隐患数','隐患情况'],
506
+ bodyData: ['f_entry_status','f_userinfo_code','f_user_name','f_user_phone','f_residential_area','f_address','f_offsite_time','f_checker_name','f_plan_name','f_has_defect','f_defect_count','f_defect_content'],
507
+
508
+ }
509
+ },
510
+ props:{
511
+
512
+ style: {
513
+ type: String,
514
+ default: 'col-sm-2 form-group'
515
+ },
516
+ style2: {
517
+ type: String,
518
+ default: 'col-sm-4 form-group'
519
+ }
520
+
521
+ },
522
+
523
+ methods: {
524
+ getEmp() {
525
+ let val = {source: 'this.getParentByType($organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$)!=null ).where(row.getAttributes().get($rolestr$).indexOf($维修员$) != -1))', userid: `${this.$login.f.id}`}
526
+ let http = new HttpResetClass()
527
+ http.load('POST', '/rs/search', {data: val}, {resolveMsg: null, rejectMsg: null}).then((res) => {
528
+ let str=''
529
+ res.data.forEach((item,idx,arr) => {
530
+ console.log(idx+"----"+arr.length)
531
+ if(idx+1==arr.length){
532
+ str += item.id
533
+ }else{
534
+ str += item.id+','
535
+ }
536
+
537
+ })
538
+ let http1 = new HttpResetClass()
539
+ http1.load('POST', 'rs/sql/tel_singleTable_OrderBy', {
540
+ data: {
541
+ items: 'id,f_user_telephone',
542
+ tablename: 't_user',
543
+ condition: `id in (${str})`,
544
+ orderitem: 'id'
545
+ }
546
+ }, {resolveMsg: null, rejectMsg: null}).then((ress) => {
547
+
548
+ res.data.forEach((user)=>{
549
+ try {
550
+ ress.data.forEach((tel,tidx,arr)=>{
551
+ console.log(`${user.id}--------------${tel.id} ----------${tidx}-------${ress.data[tidx].id}`)
552
+ if(user.id==tel.id){
553
+ this.repairers.push({label: `${user.name}:${tel.f_user_telephone}`, value: user.name})
554
+ ress.data.splice(tidx,1)
555
+ console.log(`******${ress.data[tidx].id}`)
556
+ throw new Error("跳出循环");
557
+ }
558
+ })
559
+ }catch (e) {
560
+ console.log('下一次!')
561
+ }
562
+ })
563
+ })
564
+
565
+ })
566
+ },
567
+
568
+ toRepair(){
569
+ console.log("进入转维修页面")
570
+ this.showModal2=true
571
+ // if(this.checkAll){
572
+ // let data={
573
+ // f_filialeids: this.model.params.f_filialeids,
574
+ // f_defect_content: this.model.params.f_defect_content,
575
+ // condition:this.model.params.condition
576
+ // }
577
+ // new HttpResetClass().load('post','rs/sql/GetCheckPaperByDefect',{data:data}).then(res=>{
578
+ // console.log("res长度",res.data.length)
579
+ // if (res.data.length>100){
580
+ // this.$showMessage('单次转维修不可超过100户,请重新筛选')
581
+ // return
582
+ // }else{
583
+
584
+
585
+ // }
586
+ // })
587
+ // }else{
588
+ // if (this.checkes.length<1){
589
+ // Vue.showAlert('未选中用户', 'warning' ,3000)
590
+ // return
591
+ // }
592
+ // this.showModal2=true
593
+ //
594
+ // }
595
+ },
596
+ async rectification(){
597
+ this.isbusy =true
598
+ // if (this.checkAll){
599
+ let data={
600
+ f_filialeids: this.model.params.f_filialeids,
601
+ f_defect_content: this.model.params.f_defect_content,
602
+ condition:this.model.params.condition
603
+ }
604
+ let res1= await new HttpResetClass().load('post','rs/sql/GetCheckPaperByDefect',{data: data })
605
+ for (let i = 0; i < res1.data.length; i++) {
606
+ let data1={
607
+ f_paper_id: res1.data[i].id,
608
+ condition:`f_repaire_type != '无隐患'`
609
+ }
610
+ let res2 = await new HttpResetClass().load('POST' , 'rs/sql/GetDefectByPaperId' , {data: data1 } )
611
+ console.log('resss',res2.data)
612
+ const uploadData = {
613
+ model: {
614
+ serviceacitivity: [{
615
+ f_service_acitivity_type: '派单'
616
+ }],
617
+ f_repairitems: {},
618
+ failure: '',
619
+ f_source: '安检',
620
+ f_service_id: '',
621
+ f_contact_phone: '',
622
+ f_meetunit: '',
623
+ f_phone: '',
624
+ f_user_name: '',
625
+ f_address: '',
626
+ f_repair_date: '',
627
+ f_reciever: '',
628
+ f_remarks: '',
629
+ f_user_type: '',
630
+ f_area: '',
631
+ f_unit_name: '',
632
+ f_street: '',
633
+ f_residential_area: '',
634
+ f_building: '',
635
+ f_unit: '',
636
+ f_floor: '',
637
+ f_room: '',
638
+ aState: '',
639
+ f_repairtype: '',
640
+ f_userinfo_id: '',
641
+ f_userinfo_code: '',
642
+ f_orgstr: '',
643
+ f_outlets: '',
644
+ f_attendant: this.$login.f.name
645
+ },
646
+ loginUser: {
647
+ name: this.$login.f.name,
648
+ ename: this.$login.f.ename
649
+ },
650
+ user: {
651
+ f_userinfo_id: ''
652
+ },
653
+ callObj: null
654
+ }
655
+
656
+ uploadData.model.serviceacitivity[0].f_reciever = this.selectData.f_repairman
657
+ // uploadData.model.f_meetunit = self.$login.f.orgpathnames
658
+ // uploadData.model.f_orgstr = self.$login.f.orgpathstr
659
+ // uploadData.model.f_outlets = self.$login.f.f_parentname
660
+ uploadData.model.f_meetunit = this.$login.f.deps
661
+ uploadData.model.f_orgid = this.$login.f.orgid
662
+ uploadData.model.f_filiale = this.$login.f.org
663
+ uploadData.model.f_outlets = this.$login.f.deps
664
+ uploadData.model.f_filiale_id = this.$login.f.orgid
665
+ uploadData.toRepair = '一级派单'
666
+ let res3 = await new HttpResetClass().load('post','/rs/sql/GetUserForRepaire', {data: {f_userinfo_id: res1.data[i].f_userinfo_id}})
667
+ uploadData.model = Object.assign(uploadData.model, res3.data[0])
668
+ uploadData.user.f_userinfo_id = res3.data[0].f_userinfo_id
669
+ uploadData.model.f_repair_date = Util.getNowDate()
670
+ uploadData.model.f_repairtype = res3.data[0].f_repairtype
671
+ uploadData.model.f_remarks = res3.data[0].f_remarks
672
+ let failure = []
673
+ res2.data.forEach(row => {
674
+ if (row.f_repaire_type == '隐患未处理') {
675
+ failure.push({
676
+ f_failure_type: row.f_item_name,
677
+ failurecase: row.f_item_value.split(',')
678
+ })
679
+ }
680
+ })
681
+ uploadData.model.failure = failure
682
+ // 拼接repairitems
683
+ let rows = JSON.parse(JSON.stringify(res2.data))
684
+ let repairitems = {
685
+ data: []
686
+ }
687
+ let safecheckOptions = [{"data": "已处理"}, {"data": "未处理"}]
688
+ // 取隐患未处理的
689
+ rows = rows.filter(row => row.f_repaire_type == '隐患未处理')
690
+ console.log('row => ' + JSON.stringify(rows))
691
+ // 开始拼接
692
+ rows.forEach(row => {
693
+ let existIndex = -1
694
+ // 判断该设备是否已经存在
695
+ for (let i = 0; i < repairitems.data.length; i++) {
696
+ if (repairitems.data[i].f_type == row.f_device_type) {
697
+ existIndex = i
698
+ break
699
+ }
700
+ }
701
+ if (existIndex == -1) {
702
+ // 不存在则新建
703
+ let newItem = {
704
+ f_type: row.f_device_type,
705
+ details: [{
706
+ f_defect_id: row.id,
707
+ f_project: `${row.f_item_name}:${row.f_item_value}`,
708
+ type: 'selector',
709
+ options: safecheckOptions
710
+ }]
711
+ }
712
+ repairitems.data.push(newItem)
713
+ } else {
714
+ // 存在则追加
715
+ repairitems.data[existIndex].details.push({
716
+ f_defect_id: row.id,
717
+ f_project: `${row.f_item_name}:${row.f_item_value}`,
718
+ type: 'selector',
719
+ options: safecheckOptions
720
+ })
721
+ }
722
+ })
723
+ uploadData.model.f_repairitems = repairitems
724
+ uploadData.rows=rows
725
+ console.log('uploadData ---> ' + JSON.stringify(uploadData))
726
+ console.log(uploadData.model.f_repairitems)
727
+ if (uploadData.model.f_repairitems.data.length>0){
728
+ this.callSends.push(uploadData)
729
+ }else{
730
+ console.log('无隐患,无需转维修')
731
+ }
732
+
733
+
734
+
735
+
736
+ }
737
+ console.log('666666666666',JSON.stringify(this.callSends))
738
+ let timer = setInterval(async ()=>{
739
+ this.showModal3=true
740
+ this.isbusy=false
741
+ if (this.timercount<this.callSends.length){
742
+ console.log('要发送的参数',JSON.stringify(this.callSends[this.timercount]))
743
+ let rows=this.callSends[this.timercount].rows
744
+ console.log('rows ===> ' + JSON.stringify(rows))
745
+ let result = await this.$resetpost('/rs/logic/callerSend', this.callSends[this.timercount])
746
+ console.log('result ===> ' + JSON.stringify(result))
747
+ if (result.data.f_service_id) {
748
+ let updateRes = await this.$resetpost('/rs/logic/updateDefectState', {itemsId: this.$login.convertToIn(rows.map(row => row.id))})
749
+ console.log('updateRes',updateRes)
750
+ }
751
+ this.toRepairCount++
752
+ console.log(timer,this.progressbarWidth)
753
+ this.timercount++
754
+ }else{
755
+ clearInterval(timer)
756
+ console.log('停止发送',timer)
757
+ this.callSends=[]
758
+ this.timercount=0
759
+ this.showModal3=false
760
+ this.cancel1()
761
+ this.$showMessage('本次转维修成功'+this.toRepairCount+'单')
762
+ this.toRepairCount=0
763
+ }
764
+ }, 3000)
765
+
766
+
767
+ // } else {
768
+ // for (let i = 0; i <this.checkes.length; i++) {
769
+ // let data={
770
+ // f_paper_id: this.checkes[i],
771
+ // condition:`f_repaire_type != '无隐患'`
772
+ // }
773
+ // new HttpResetClass().load('POST','rs/sql/GetDefectByPaperId',{data:data}).then(res=>{
774
+ // console.log('resss',res.data)
775
+ // })
776
+ // }
777
+ // }
778
+ },
779
+ cancel1(){
780
+ this.showModal2=false
781
+ this.selectData={
782
+ dispatchType:'',
783
+ f_repairman:'',
784
+ f_remarks:'',
785
+ f_repairtype:''
786
+ }
787
+ },
788
+ sleep(d){
789
+ console.log('开始睡眠',Date.now())
790
+ var t = Date.now()
791
+ while(Date.now - t <= d)
792
+ console.log('结束睡眠',Date.now())
793
+ },
794
+ isChecked(v) {
795
+ // 如果全选,不在的按选中算,否则,在的按选中算
796
+ if (this.checkAll) {
797
+ return this.checkes.indexOf(v) == -1
798
+ } else {
799
+ return this.checkes.indexOf(v) != -1
800
+ }
801
+ },
802
+ setCheckAll() {
803
+ this.checkAll=this.checkAll?false:true;
804
+ // 全选改变后,清空选中数据
805
+ this.checkes = []
806
+ },
807
+ setCheckes(id) {
808
+ let index=this.checkes.indexOf(id)
809
+ if(index<0){
810
+ this.checkes.push(id)
811
+ }else{
812
+ this.checkes.splice(index,1)
813
+ }
814
+ },
815
+
816
+ getmeterbook(val){
817
+ this.cbc=[]
818
+ this.cbc.push({
819
+ label:'全部',
820
+ value:''
821
+ })
822
+ if (val==''){
823
+
824
+ this.cbcs.forEach(res=>{
825
+ this.cbc.push({
826
+ label:res.f_book_name,
827
+ value:res.id
828
+ })
829
+ })
830
+ }else{
831
+ this.cbcs.forEach(res=>{
832
+ if (res.f_book_slice_area==val){
833
+ this.cbc.push({
834
+ label:res.f_book_name,
835
+ value:res.id
836
+ })
837
+ }
838
+ })
839
+ }
840
+ },
841
+
842
+ Mreadibook(val){
843
+ console.log("999999999")
844
+ console.log(val)
845
+ this.sliceArea=[]
846
+ if (val){
847
+ new HttpResetClass().load('POST',`/rs/sql/tel_singleTable_OrderBy`, {data: {
848
+ items: 'name',
849
+ tablename: 't_zone',
850
+ condition: `parentid in ${val}`,
851
+ orderitem: 'id'
852
+ }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
853
+ this.sliceArea.push({
854
+ label:'全部',
855
+ value:''
856
+ })
857
+ res.data.forEach(ress=>{
858
+ this.sliceArea.push({
859
+ label:ress.name,
860
+ value:ress.name
861
+ })
862
+ })
863
+
864
+ })
865
+ }
866
+ },
867
+ getAllMeterBook(val){
868
+ console.log("999999999")
869
+ console.log(val)
870
+ this.cbcs=[]
871
+ if (val){
872
+ new HttpResetClass().load('POST',`/rs/sql/tel_singleTable_OrderBy`, {data: {
873
+ items: 'f_book_name,f_book_slice_area,id',
874
+ tablename: 't_meter_book',
875
+ condition: `f_filiale_id in ${val}`,
876
+ orderitem: 'id'
877
+ }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
878
+ res.data.forEach(ress=>{
879
+ this.cbcs.push({
880
+ id:ress.id,
881
+ f_book_name:ress.f_book_name,
882
+ f_book_slice_area:ress.f_book_slice_area
883
+ })
884
+ })
885
+ this.cbc=[]
886
+ this.cbc.push({
887
+ label:'全部',
888
+ value:''
889
+ })
890
+ this.cbcs.forEach(res=>{
891
+ this.cbc.push({
892
+ label:res.f_book_name,
893
+ value:res.id
894
+ })
895
+ })
896
+ })
897
+ }
898
+ },
899
+ hiddenr() {
900
+ this.$parent.showItem = !this.$parent.showItem
901
+ },
902
+ hidden() {
903
+ this.criteriaShow = !this.criteriaShow
904
+ },
905
+ search(args) {
906
+ if (this.f_check_plan.f_plan_name) {
907
+ args.condition += ` and f_check_plan_id = '${this.f_check_plan.id}'`
908
+ }
909
+ this.checkes = []
910
+ this.checkAll=false
911
+ this.model.search(args.condition, args.model)
912
+ },
913
+ getRes(obj) {
914
+ this.model.f_filialeids = this.$login.convertToIn(obj.resids);
915
+ this.Mreadibook(this.model.f_filialeids)
916
+ this.getAllMeterBook(this.model.f_filialeids)
917
+ },
918
+ showChooser() {
919
+ this.showModal = true
920
+ },
921
+ ok() {
922
+ this.showModal = false
923
+ if (this.$refs.modal.$children[0].selectedRow.id) {
924
+ this.f_check_plan = this.$refs.modal.$children[0].selectedRow
925
+ }
926
+ },
927
+ cancel() {
928
+ this.showModal = false
929
+ this.f_check_plan = {f_plan_name: '', id: ''}
930
+ }
931
+ },
932
+ ready() {
933
+ this.$refs.paged.$refs.criteria.model.f_has_defect = '有隐患'
934
+ this.getEmp()
935
+ let gen = select(this)
936
+ // this.Mreadibook(`('${this.$login.f.orgid}')`)
937
+ co(gen)
938
+ },
939
+ watch:{
940
+ 'timercount'(){
941
+ if (this.timercount===0){
942
+ this.progressbarWidth = '0'
943
+ }else {
944
+ console.log(this.callSends.length)
945
+ console.log(this.timercount)
946
+ this.progressbarWidth=parseInt(this.timercount*100/(this.callSends.length+1))
947
+ }
948
+
949
+ }
950
+ },
951
+ computed: {
952
+ selected() {
953
+ return this.$refs.paged.$refs.grid.selected
954
+ },
955
+ getfield(){
956
+ console.log("---------------------------------------------导出方法")
957
+ let data = {}
958
+ this.bodyData.forEach((value, index)=>{
959
+ data[this.bodyData[index]] = this.headData[index]
960
+ })
961
+ //合计字段打印
962
+ this.tfoot = `<tr><th colspan=${this.modelval.length}>全表汇总信息: `
963
+ if(this.sumsmodel){
964
+ Object.keys(this.sumsmodel).forEach((key) => {
965
+ this.tfoot += this.fields[key] + '合计: ' + `<font color="blue">${this.sumsmodel[key]} </font>`
966
+ })
967
+ }else{
968
+ this.tfoot += '暂无'
969
+ }
970
+ this.tfoot += '</th></tr>'
971
+ return data
972
+ }
973
+ }
974
+ }
975
+ </script>