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

Sign up to get free protection for your applications and to get access to all the features.
Files changed (842) hide show
  1. package/.babelrc +5 -5
  2. package/.editorconfig +9 -9
  3. package/.eslintrc.js +16 -16
  4. package/.project +11 -11
  5. package/CHANGELOG.md +27 -27
  6. package/README.md +38 -38
  7. package/android.html +18 -18
  8. package/build/css-loaders.js +34 -34
  9. package/build/dev-android.js +151 -151
  10. package/build/dev-client.js +8 -8
  11. package/build/example-server.js +157 -157
  12. package/build/release.sh +28 -28
  13. package/build/utils.js +71 -71
  14. package/build/webpack.base.conf.js +88 -88
  15. package/build/webpack.baseandroid.conf.js +83 -83
  16. package/build/webpack.dev.conf.js +40 -40
  17. package/build/webpack.devandroid.conf.js +33 -33
  18. package/build/webpack.example.conf.js +49 -49
  19. package/build/webpack.hanwei.conf.js +57 -57
  20. package/build/webpack.hwbase.conf.js +78 -78
  21. package/build/webpack.prod.conf.js +80 -80
  22. package/build/webpack.prodandroid.conf.js +60 -60
  23. package/build/webpack.test.conf.js +31 -31
  24. package/build.gradle +14 -14
  25. package/config/dev.env.js +6 -6
  26. package/config/index.js +38 -38
  27. package/config/prod.env.js +3 -3
  28. package/config/test.env.js +6 -6
  29. package/docs/AppBase.md +22 -22
  30. package/docs/Busy.md +14 -14
  31. package/docs/Criteria.md +47 -47
  32. package/docs/CriteriaPaged.md +47 -47
  33. package/docs/DataGrid.md +54 -54
  34. package/docs/DataModel.md +22 -22
  35. package/docs/Dynamic.md +42 -42
  36. package/docs/FormPrint.md +18 -18
  37. package/docs/GetParams.md +11 -11
  38. package/docs/GridTree.md +47 -47
  39. package/docs/HttpBusy.md +13 -13
  40. package/docs/HttpStore.md +29 -29
  41. package/docs/MessageBox.md +28 -28
  42. package/docs/PagedList.md +29 -29
  43. package/docs/Pager.md +21 -21
  44. package/docs/PrintFile.md +38 -38
  45. package/docs/Project.md +23 -23
  46. package/docs/Route.md +105 -105
  47. package/docs/SafetyCheck/AdjustPlan.md +13 -13
  48. package/docs/SafetyCheck/CheckerPlan.md +12 -12
  49. package/docs/Task.md +46 -46
  50. package/docs/TreeList.md +28 -28
  51. package/docs/TreeMixin.md +18 -18
  52. package/docs/all.md +10 -10
  53. package/docs/list.md +42 -42
  54. package/docs/partial.md +75 -75
  55. package/docs/selector.md +82 -82
  56. package/docs/tree.md +40 -40
  57. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/Snippets.md +28 -28
  58. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue-strap/345/217/230/346/233/264/350/256/260/345/275/225.md +7 -7
  59. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue/345/217/230/346/233/264/350/256/260/345/275/225.md +13 -13
  60. package/docs//345/274/200/345/217/221/346/226/207/346/241/243//345/274/200/345/217/221/347/216/257/345/242/203/350/256/276/347/275/256.md +77 -77
  61. package/docs//347/225/214/351/235/242/345/210/266/344/275/234/350/247/204/350/214/203.md +54 -54
  62. package/examples/AddressList/App.vue +13 -13
  63. package/examples/AddressList/index.html +11 -11
  64. package/examples/AddressList/main.js +13 -13
  65. package/examples/ChangeConfig/App.vue +54 -54
  66. package/examples/ChangeConfig/comp.js +548 -548
  67. package/examples/ChangeConfig/index.html +17 -17
  68. package/examples/ChangeConfig/main.js +13 -13
  69. package/examples/CheckAdvise/App.vue +24 -24
  70. package/examples/CheckAdvise/comp.js +9 -9
  71. package/examples/CheckAdvise/index.html +18 -18
  72. package/examples/CheckAdvise/main.js +13 -13
  73. package/examples/CreatePlan/App.vue +13 -13
  74. package/examples/CreatePlan/index.html +11 -11
  75. package/examples/CreatePlan/main.js +13 -13
  76. package/examples/DispatchList/App.vue +10 -10
  77. package/examples/DispatchList/BaseTree.vue +13 -13
  78. package/examples/DispatchList/Init.vue +22 -22
  79. package/examples/DispatchList/Test.vue +20 -20
  80. package/examples/DispatchList/index.html +11 -11
  81. package/examples/DispatchList/main.js +18 -18
  82. package/examples/PhoneSafePlan/App.vue +36 -36
  83. package/examples/PhoneSafePlan/TestData.js +448 -448
  84. package/examples/PhoneSafePlan/comp.js +33 -33
  85. package/examples/PhoneSafePlan/index.html +17 -17
  86. package/examples/PhoneSafePlan/main.js +13 -13
  87. package/examples/SafePlan/App.vue +83 -83
  88. package/examples/SafePlan/TestData.js +448 -448
  89. package/examples/SafePlan/comp.js +1521 -1521
  90. package/examples/SafePlan/index.html +18 -18
  91. package/examples/SafePlan/main.js +13 -13
  92. package/examples/SafePlan-aode/App.vue +39 -39
  93. package/examples/SafePlan-aode/TestData.js +448 -448
  94. package/examples/SafePlan-aode/comp.js +1132 -1132
  95. package/examples/SafePlan-aode/index.html +17 -17
  96. package/examples/SafePlan-aode/main.js +13 -13
  97. package/examples/SafePlan-liaoyuan/App.vue +53 -53
  98. package/examples/SafePlan-liaoyuan/TestData.js +448 -448
  99. package/examples/SafePlan-liaoyuan/comp.js +1419 -1419
  100. package/examples/SafePlan-liaoyuan/index.html +18 -18
  101. package/examples/SafePlan-liaoyuan/main.js +13 -13
  102. package/examples/SafePlan-shaoguan/App.vue +52 -52
  103. package/examples/SafePlan-shaoguan/TestData.js +448 -448
  104. package/examples/SafePlan-shaoguan/comp.js +1190 -1190
  105. package/examples/SafePlan-shaoguan/index.html +18 -18
  106. package/examples/SafePlan-shaoguan/main.js +13 -13
  107. package/examples/SafePlan-tongchuan/App.vue +81 -81
  108. package/examples/SafePlan-tongchuan/TestData.js +448 -448
  109. package/examples/SafePlan-tongchuan/comp.js +1480 -1480
  110. package/examples/SafePlan-tongchuan/index.html +18 -18
  111. package/examples/SafePlan-tongchuan/main.js +13 -13
  112. package/examples/SafePlan-wenxi/App.vue +80 -80
  113. package/examples/SafePlan-wenxi/TestData.js +448 -448
  114. package/examples/SafePlan-wenxi/comp.js +1545 -1545
  115. package/examples/SafePlan-wenxi/index.html +18 -18
  116. package/examples/SafePlan-wenxi/main.js +13 -13
  117. package/examples/SafePlan-zhoukou/App.vue +81 -81
  118. package/examples/SafePlan-zhoukou/TestData.js +448 -448
  119. package/examples/SafePlan-zhoukou/comp.js +1525 -1525
  120. package/examples/SafePlan-zhoukou/index.html +18 -18
  121. package/examples/SafePlan-zhoukou/main.js +13 -13
  122. package/examples/SafePlanItem/App.vue +33 -33
  123. package/examples/SafePlanItem/TestData.js +448 -448
  124. package/examples/SafePlanItem/comp.js +69 -69
  125. package/examples/SafePlanItem/index.html +17 -17
  126. package/examples/SafePlanItem/main.js +15 -15
  127. package/examples/SafePlanrongcheng/App.vue +52 -52
  128. package/examples/SafePlanrongcheng/TestData.js +448 -448
  129. package/examples/SafePlanrongcheng/comp.js +1133 -1133
  130. package/examples/SafePlanrongcheng/index.html +18 -18
  131. package/examples/SafePlanrongcheng/main.js +13 -13
  132. package/examples/SafePlanrongcheng-gs/App.vue +52 -52
  133. package/examples/SafePlanrongcheng-gs/TestData.js +448 -448
  134. package/examples/SafePlanrongcheng-gs/comp.js +1132 -1132
  135. package/examples/SafePlanrongcheng-gs/index.html +18 -18
  136. package/examples/SafePlanrongcheng-gs/main.js +13 -13
  137. package/examples/SafePlanrongcheng-gssq/App.vue +52 -52
  138. package/examples/SafePlanrongcheng-gssq/TestData.js +448 -448
  139. package/examples/SafePlanrongcheng-gssq/comp.js +1135 -1135
  140. package/examples/SafePlanrongcheng-gssq/index.html +18 -18
  141. package/examples/SafePlanrongcheng-gssq/main.js +13 -13
  142. package/examples/SafePlanrongcheng-mysq/App.vue +52 -52
  143. package/examples/SafePlanrongcheng-mysq/TestData.js +448 -448
  144. package/examples/SafePlanrongcheng-mysq/comp.js +1136 -1136
  145. package/examples/SafePlanrongcheng-mysq/index.html +18 -18
  146. package/examples/SafePlanrongcheng-mysq/main.js +13 -13
  147. package/examples/Test/App.vue +35 -35
  148. package/examples/Test/TestData.js +489 -489
  149. package/examples/Test/index.html +17 -17
  150. package/examples/Test/main.js +13 -13
  151. package/examples/Test//350/216/267/345/217/226/345/217/230/351/207/217 +2 -2
  152. package/examples/UserFiles/App.vue +47 -47
  153. package/examples/UserFiles/TestData.js +448 -448
  154. package/examples/UserFiles/comp.js +227 -227
  155. package/examples/UserFiles/index.html +19 -19
  156. package/examples/UserFiles/main.js +13 -13
  157. package/home.html +16 -16
  158. package/index.html +23 -23
  159. package/oa.iml +8 -8
  160. package/package.json +1 -1
  161. package/publish.bat +7 -7
  162. package/release.bat +5 -5
  163. package/src/AndroidApp.vue +26 -26
  164. package/src/App.vue +27 -27
  165. package/src/Widget.vue +13 -13
  166. package/src/android-bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  167. package/src/android-bootstrap/less/.csscomb.json +304 -304
  168. package/src/android-bootstrap/less/.csslintrc +19 -19
  169. package/src/android-bootstrap/less/alerts.less +73 -73
  170. package/src/android-bootstrap/less/badges.less +66 -66
  171. package/src/android-bootstrap/less/bootstrap.less +56 -56
  172. package/src/android-bootstrap/less/breadcrumbs.less +26 -26
  173. package/src/android-bootstrap/less/button-groups.less +247 -247
  174. package/src/android-bootstrap/less/buttons.less +173 -173
  175. package/src/android-bootstrap/less/carousel.less +269 -269
  176. package/src/android-bootstrap/less/close.less +34 -34
  177. package/src/android-bootstrap/less/code.less +69 -69
  178. package/src/android-bootstrap/less/component-animations.less +33 -33
  179. package/src/android-bootstrap/less/dropdowns.less +216 -216
  180. package/src/android-bootstrap/less/forms.less +626 -626
  181. package/src/android-bootstrap/less/glyphicons.less +305 -305
  182. package/src/android-bootstrap/less/grid.less +84 -84
  183. package/src/android-bootstrap/less/input-groups.less +167 -167
  184. package/src/android-bootstrap/less/jumbotron.less +52 -52
  185. package/src/android-bootstrap/less/labels.less +64 -64
  186. package/src/android-bootstrap/less/list-group.less +141 -141
  187. package/src/android-bootstrap/less/media.less +66 -66
  188. package/src/android-bootstrap/less/mixins/alerts.less +14 -14
  189. package/src/android-bootstrap/less/mixins/background-variant.less +9 -9
  190. package/src/android-bootstrap/less/mixins/border-radius.less +18 -18
  191. package/src/android-bootstrap/less/mixins/buttons.less +69 -69
  192. package/src/android-bootstrap/less/mixins/center-block.less +7 -7
  193. package/src/android-bootstrap/less/mixins/clearfix.less +22 -22
  194. package/src/android-bootstrap/less/mixins/forms.less +90 -90
  195. package/src/android-bootstrap/less/mixins/gradients.less +59 -59
  196. package/src/android-bootstrap/less/mixins/grid-framework.less +92 -92
  197. package/src/android-bootstrap/less/mixins/grid.less +122 -122
  198. package/src/android-bootstrap/less/mixins/hide-text.less +21 -21
  199. package/src/android-bootstrap/less/mixins/image.less +33 -33
  200. package/src/android-bootstrap/less/mixins/labels.less +12 -12
  201. package/src/android-bootstrap/less/mixins/list-group.less +30 -30
  202. package/src/android-bootstrap/less/mixins/nav-divider.less +10 -10
  203. package/src/android-bootstrap/less/mixins/nav-vertical-align.less +9 -9
  204. package/src/android-bootstrap/less/mixins/opacity.less +8 -8
  205. package/src/android-bootstrap/less/mixins/pagination.less +24 -24
  206. package/src/android-bootstrap/less/mixins/panels.less +24 -24
  207. package/src/android-bootstrap/less/mixins/progress-bar.less +10 -10
  208. package/src/android-bootstrap/less/mixins/reset-filter.less +8 -8
  209. package/src/android-bootstrap/less/mixins/reset-text.less +18 -18
  210. package/src/android-bootstrap/less/mixins/resize.less +6 -6
  211. package/src/android-bootstrap/less/mixins/responsive-visibility.less +15 -15
  212. package/src/android-bootstrap/less/mixins/size.less +10 -10
  213. package/src/android-bootstrap/less/mixins/tab-focus.less +9 -9
  214. package/src/android-bootstrap/less/mixins/table-row.less +44 -44
  215. package/src/android-bootstrap/less/mixins/text-emphasis.less +9 -9
  216. package/src/android-bootstrap/less/mixins/text-overflow.less +8 -8
  217. package/src/android-bootstrap/less/mixins/vendor-prefixes.less +227 -227
  218. package/src/android-bootstrap/less/mixins.less +40 -40
  219. package/src/android-bootstrap/less/modals.less +151 -151
  220. package/src/android-bootstrap/less/navbar.less +660 -660
  221. package/src/android-bootstrap/less/navs.less +290 -290
  222. package/src/android-bootstrap/less/normalize.less +424 -424
  223. package/src/android-bootstrap/less/pager.less +76 -76
  224. package/src/android-bootstrap/less/pagination.less +89 -89
  225. package/src/android-bootstrap/less/panels.less +274 -274
  226. package/src/android-bootstrap/less/popovers.less +131 -131
  227. package/src/android-bootstrap/less/print.less +101 -101
  228. package/src/android-bootstrap/less/progress-bars.less +87 -87
  229. package/src/android-bootstrap/less/responsive-embed.less +35 -35
  230. package/src/android-bootstrap/less/responsive-utilities.less +194 -194
  231. package/src/android-bootstrap/less/scaffolding.less +161 -161
  232. package/src/android-bootstrap/less/tables.less +262 -262
  233. package/src/android-bootstrap/less/theme.less +291 -291
  234. package/src/android-bootstrap/less/thumbnails.less +36 -36
  235. package/src/android-bootstrap/less/tooltip.less +102 -102
  236. package/src/android-bootstrap/less/type.less +303 -303
  237. package/src/android-bootstrap/less/utilities.less +55 -55
  238. package/src/android-bootstrap/less/variables.less +896 -896
  239. package/src/android-bootstrap/less/wells.less +29 -29
  240. package/src/android.js +16 -16
  241. package/src/androidBase.js +177 -177
  242. package/src/androidTest.js +20 -20
  243. package/src/bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  244. package/src/bootstrap/less/.csscomb.json +304 -304
  245. package/src/bootstrap/less/.csslintrc +19 -19
  246. package/src/bootstrap/less/alerts.less +73 -73
  247. package/src/bootstrap/less/aofeng/animate.min.css +10 -10
  248. package/src/bootstrap/less/aofeng/standard.less +2121 -2121
  249. package/src/bootstrap/less/aofeng/themeOne/BinaryTemplate.less +686 -686
  250. package/src/bootstrap/less/aofeng/themeOne/loginStyle.less +1586 -1586
  251. package/src/bootstrap/less/aofeng/themeOne/systemStyle.less +2650 -2650
  252. package/src/bootstrap/less/aofeng/themeOne.less +14 -14
  253. package/src/bootstrap/less/aofeng/themeTwo/newStyle1.less +415 -415
  254. package/src/bootstrap/less/aofeng/themeTwo.less +3 -3
  255. package/src/bootstrap/less/badges.less +66 -66
  256. package/src/bootstrap/less/bootstrap.less +65 -65
  257. package/src/bootstrap/less/breadcrumbs.less +26 -26
  258. package/src/bootstrap/less/button-groups.less +247 -247
  259. package/src/bootstrap/less/buttons.less +172 -172
  260. package/src/bootstrap/less/carousel.less +269 -269
  261. package/src/bootstrap/less/close.less +34 -34
  262. package/src/bootstrap/less/code.less +69 -69
  263. package/src/bootstrap/less/component-animations.less +33 -33
  264. package/src/bootstrap/less/dropdowns.less +216 -216
  265. package/src/bootstrap/less/forms.less +626 -626
  266. package/src/bootstrap/less/glyphicons.less +305 -305
  267. package/src/bootstrap/less/grid.less +84 -84
  268. package/src/bootstrap/less/input-groups.less +167 -167
  269. package/src/bootstrap/less/jumbotron.less +52 -52
  270. package/src/bootstrap/less/labels.less +64 -64
  271. package/src/bootstrap/less/list-group.less +141 -141
  272. package/src/bootstrap/less/manageStyle/manageChile.less +180 -180
  273. package/src/bootstrap/less/manageStyle/manageStyle.less +1102 -1102
  274. package/src/bootstrap/less/manageStyle/safeStyle.less +498 -498
  275. package/src/bootstrap/less/media.less +66 -66
  276. package/src/bootstrap/less/mixins/alerts.less +14 -14
  277. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  278. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  279. package/src/bootstrap/less/mixins/buttons.less +69 -69
  280. package/src/bootstrap/less/mixins/center-block.less +7 -7
  281. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  282. package/src/bootstrap/less/mixins/forms.less +90 -90
  283. package/src/bootstrap/less/mixins/gradients.less +59 -59
  284. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  285. package/src/bootstrap/less/mixins/grid.less +122 -122
  286. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  287. package/src/bootstrap/less/mixins/image.less +33 -33
  288. package/src/bootstrap/less/mixins/labels.less +12 -12
  289. package/src/bootstrap/less/mixins/list-group.less +30 -30
  290. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  291. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  292. package/src/bootstrap/less/mixins/opacity.less +8 -8
  293. package/src/bootstrap/less/mixins/pagination.less +24 -24
  294. package/src/bootstrap/less/mixins/panels.less +24 -24
  295. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  296. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  297. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  298. package/src/bootstrap/less/mixins/resize.less +6 -6
  299. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  300. package/src/bootstrap/less/mixins/size.less +10 -10
  301. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  302. package/src/bootstrap/less/mixins/table-row.less +44 -44
  303. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  304. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  305. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  306. package/src/bootstrap/less/mixins.less +40 -40
  307. package/src/bootstrap/less/modals.less +151 -151
  308. package/src/bootstrap/less/navbar.less +660 -660
  309. package/src/bootstrap/less/navs.less +285 -285
  310. package/src/bootstrap/less/normalize.less +424 -424
  311. package/src/bootstrap/less/pager.less +76 -76
  312. package/src/bootstrap/less/pagination.less +89 -89
  313. package/src/bootstrap/less/panels.less +275 -275
  314. package/src/bootstrap/less/popovers.less +131 -131
  315. package/src/bootstrap/less/print.less +101 -101
  316. package/src/bootstrap/less/progress-bars.less +87 -87
  317. package/src/bootstrap/less/responsive-embed.less +35 -35
  318. package/src/bootstrap/less/responsive-utilities.less +194 -194
  319. package/src/bootstrap/less/scaffolding.less +161 -161
  320. package/src/bootstrap/less/stand.less +207 -207
  321. package/src/bootstrap/less/standard.less +503 -503
  322. package/src/bootstrap/less/systemStyle.less +860 -860
  323. package/src/bootstrap/less/tables.less +262 -262
  324. package/src/bootstrap/less/theme.less +291 -291
  325. package/src/bootstrap/less/themeOne.less +36 -36
  326. package/src/bootstrap/less/themeTwo.less +29 -29
  327. package/src/bootstrap/less/thumbnails.less +36 -36
  328. package/src/bootstrap/less/tooltip.less +102 -102
  329. package/src/bootstrap/less/type.less +303 -303
  330. package/src/bootstrap/less/utilities.less +55 -55
  331. package/src/bootstrap/less/variables.less +896 -896
  332. package/src/bootstrap/less/wells.less +29 -29
  333. package/src/components/AloneLoadParams.vue +25 -25
  334. package/src/components/CheckerCount/CheckCountAreaList.vue +306 -306
  335. package/src/components/CheckerCount/CheckCountAreaManage.vue +112 -112
  336. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  337. package/src/components/CheckerCount/ZhouKouCheckCount.vue +272 -272
  338. package/src/components/ExportExcel.vue +334 -334
  339. package/src/components/FileUpload.vue +696 -696
  340. package/src/components/Hello.vue +39 -39
  341. package/src/components/LeftTree.vue +27 -27
  342. package/src/components/Login.vue +459 -459
  343. package/src/components/Main.vue +393 -393
  344. package/src/components/Test.vue +1478 -1478
  345. package/src/components/Util/FileUpload.vue +138 -138
  346. package/src/components/Util/ImgSelfSafe.vue +126 -126
  347. package/src/components/Util/RightTreeSafe.vue +348 -348
  348. package/src/components/Util/SafecheckUpload.vue +265 -265
  349. package/src/components/Util.js +376 -376
  350. package/src/components/android/AddGas.vue +147 -147
  351. package/src/components/android/AddPlanItem.vue +412 -412
  352. package/src/components/android/AddressList.vue +61 -61
  353. package/src/components/android/AdviseCommit.vue +59 -59
  354. package/src/components/android/AndroidCheckResult.vue +181 -181
  355. package/src/components/android/AndroidDefectDeal.vue +397 -397
  356. package/src/components/android/Announcement.vue +167 -167
  357. package/src/components/android/AreaPlan.vue +503 -503
  358. package/src/components/android/AttendanceTally.vue +116 -116
  359. package/src/components/android/Blank.vue +10 -10
  360. package/src/components/android/CheckNotice.vue +89 -89
  361. package/src/components/android/CheckPlan.vue +257 -257
  362. package/src/components/android/CheckPlanDown.vue +216 -216
  363. package/src/components/android/CheckPlanItems.vue +423 -423
  364. package/src/components/android/CheckUnplanPage.vue +56 -56
  365. package/src/components/android/Checker.vue +12 -12
  366. package/src/components/android/CheckerAnnual.vue +81 -81
  367. package/src/components/android/CheckerAnnualDetail.vue +63 -63
  368. package/src/components/android/CheckerAvarta.vue +82 -82
  369. package/src/components/android/CheckerMonthly.vue +84 -84
  370. package/src/components/android/Checkpage.vue +102 -102
  371. package/src/components/android/CurrentCreate.vue +972 -972
  372. package/src/components/android/DailyworkloadQuery.vue +396 -396
  373. package/src/components/android/Defect.vue +119 -119
  374. package/src/components/android/DeviceDefect.vue +187 -187
  375. package/src/components/android/Devices.vue +327 -327
  376. package/src/components/android/DevicesItem.vue +495 -495
  377. package/src/components/android/DevicesItemm.vue +445 -445
  378. package/src/components/android/DevicesNoncivil.vue +214 -214
  379. package/src/components/android/Devicesm.vue +327 -327
  380. package/src/components/android/DoorService.vue +501 -501
  381. package/src/components/android/EquipmentInspection.vue +348 -348
  382. package/src/components/android/ExtractCheckPlan.vue +268 -268
  383. package/src/components/android/ExtractPlanItem.vue +516 -516
  384. package/src/components/android/FootprintMap.vue +120 -120
  385. package/src/components/android/HiddentroubleInvestigation.vue +192 -192
  386. package/src/components/android/LcheckUnplan.vue +108 -108
  387. package/src/components/android/LocalPagedList.js +108 -108
  388. package/src/components/android/LocalPathList.js +109 -109
  389. package/src/components/android/Login.vue +222 -222
  390. package/src/components/android/MasterMain.vue +77 -77
  391. package/src/components/android/Menu.vue +132 -132
  392. package/src/components/android/NavBottom.vue +157 -157
  393. package/src/components/android/PaperAlarm.vue +85 -85
  394. package/src/components/android/PaperAlarmNoncivil.vue +286 -286
  395. package/src/components/android/PaperCooker.vue +325 -325
  396. package/src/components/android/PaperDefect.vue +230 -230
  397. package/src/components/android/PaperDevice.vue +279 -279
  398. package/src/components/android/PaperDeviceNoncivil.vue +214 -214
  399. package/src/components/android/PaperFeedback.vue +1444 -1444
  400. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  401. package/src/components/android/PaperFurnace.vue +274 -274
  402. package/src/components/android/PaperFurnaceNoncivil.vue +203 -203
  403. package/src/components/android/PaperHeater.vue +287 -287
  404. package/src/components/android/PaperInnerPlumb.vue +171 -171
  405. package/src/components/android/PaperMessage.vue +1323 -1323
  406. package/src/components/android/PaperMessageNocivil.vue +1288 -1288
  407. package/src/components/android/PaperMeter.vue +351 -351
  408. package/src/components/android/PaperMeterNoncivil.vue +481 -481
  409. package/src/components/android/PaperPieceNoncivil.vue +142 -142
  410. package/src/components/android/PaperPlumb.vue +141 -141
  411. package/src/components/android/PaperPlumbNoncivil.vue +253 -253
  412. package/src/components/android/PaperSet.vue +1956 -1956
  413. package/src/components/android/PaperSetNoncivil.vue +1760 -1760
  414. package/src/components/android/PaperState.vue +390 -390
  415. package/src/components/android/PaperStateNoncivil.vue +383 -383
  416. package/src/components/android/PaperStateNoncivilm.vue +377 -377
  417. package/src/components/android/PaperStatem.vue +346 -346
  418. package/src/components/android/PaperUser.vue +606 -606
  419. package/src/components/android/PaperUserNoncivil.vue +424 -424
  420. package/src/components/android/PaperUserm.vue +356 -356
  421. package/src/components/android/PaperValve.vue +178 -178
  422. package/src/components/android/PaperValveNoncivil.vue +180 -180
  423. package/src/components/android/PhoneChangemeterInfo.vue +107 -107
  424. package/src/components/android/PhoneInfoTable.vue +40 -40
  425. package/src/components/android/PhoneSellInfo.vue +113 -113
  426. package/src/components/android/PhoneState.vue +157 -157
  427. package/src/components/android/PhoneUpUserinfo.vue +929 -929
  428. package/src/components/android/PhoneUserFind.vue +111 -111
  429. package/src/components/android/PlumberAnnual.vue +83 -83
  430. package/src/components/android/PlumberAnnualDetail.vue +65 -65
  431. package/src/components/android/PlumberMonthly.vue +84 -84
  432. package/src/components/android/PostMap.vue +83 -83
  433. package/src/components/android/PrearrangedPlan.vue +247 -247
  434. package/src/components/android/QueryCheckHistory.vue +122 -122
  435. package/src/components/android/QueryCheckHistoryItem.vue +62 -62
  436. package/src/components/android/RepairAreaList.vue +71 -71
  437. package/src/components/android/RepairList.vue +206 -206
  438. package/src/components/android/RepairMain.vue +60 -60
  439. package/src/components/android/RepairQuery.vue +262 -262
  440. package/src/components/android/Repairman.vue +12 -12
  441. package/src/components/android/ResAreaList.vue +158 -158
  442. package/src/components/android/RightTree.vue +174 -174
  443. package/src/components/android/SafecheckDevices.vue +1143 -1143
  444. package/src/components/android/SafecheckOrderV.vue +2408 -2408
  445. package/src/components/android/SafecheckState.vue +437 -437
  446. package/src/components/android/SafecheckUser.vue +580 -580
  447. package/src/components/android/ShebeiDevices.vue +980 -980
  448. package/src/components/android/StationMaster.vue +12 -12
  449. package/src/components/android/SwitchValve.vue +230 -230
  450. package/src/components/android/SystemSetting.vue +84 -84
  451. package/src/components/android/ToolsPage.vue +51 -51
  452. package/src/components/android/TrackState.vue +134 -134
  453. package/src/components/android/UploadPage.vue +338 -338
  454. package/src/components/android/checkPlanResult.vue +302 -302
  455. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  456. package/src/components/android/userinfo/SafecheckUserInfo.vue +611 -611
  457. package/src/components/android/wasm/PhoneSafePlan.vue +39 -39
  458. package/src/components/android/wasm/TestData.js +448 -448
  459. package/src/components/android/wasm/comp.js +33 -33
  460. package/src/components/attendance/DailyAttendance.vue +99 -99
  461. package/src/components/attendance/MonthlyAttendance.vue +194 -194
  462. package/src/components/callincheck/CallInCheckMain.vue +146 -146
  463. package/src/components/callincheck/CallInPlan.vue +148 -148
  464. package/src/components/callincheck/UserFileList.vue +155 -155
  465. package/src/components/checkAreaClassification.vue +285 -285
  466. package/src/components/checkerphonestate/Checker.vue +32 -32
  467. package/src/components/checkerphonestate/CheckerState.vue +97 -97
  468. package/src/components/checkplan/CheckDetail.vue +205 -205
  469. package/src/components/checkplan/CheckPlan.vue +59 -59
  470. package/src/components/checkplan/SelectCheckPlan.vue +224 -224
  471. package/src/components/checkplan/SelectMessage.vue +105 -105
  472. package/src/components/checkplan/checkmsg.vue +459 -459
  473. package/src/components/checkplan/checkmsgZG.vue +519 -519
  474. package/src/components/cockpit/Splash.vue +85 -85
  475. package/src/components/cockpit/SplashDetail.vue +66 -66
  476. package/src/components/createcheckplan/CreatePlan.vue +1052 -1052
  477. package/src/components/createcheckplan/CreatePlanWuan.vue +1024 -1024
  478. package/src/components/createcheckplan/DelPlanRepeat.vue +318 -318
  479. package/src/components/createcheckplan/DistributePlan.vue +62 -62
  480. package/src/components/createcheckplan/PlanList.vue +433 -433
  481. package/src/components/createcheckplan/PlanUersList.vue +137 -137
  482. package/src/components/defect/DefectDetail.vue +177 -177
  483. package/src/components/defect/DefectDetailWeixiu.vue +177 -177
  484. package/src/components/defect/DefectList.vue +489 -489
  485. package/src/components/defect/DefectListWeixiu.vue +479 -479
  486. package/src/components/defect/DefectMain.vue +63 -63
  487. package/src/components/defect/DefectMainWeixiu.vue +63 -63
  488. package/src/components/defect/DefectPaper.vue +874 -874
  489. package/src/components/defect/DefectPaperWeiXiu.vue +655 -655
  490. package/src/components/defect/ImageViewer.vue +350 -350
  491. package/src/components/defect/ImgButton.vue +118 -118
  492. package/src/components/defect/ImgsButton.vue +62 -62
  493. package/src/components/defects/AddDefectModal.vue +120 -120
  494. package/src/components/defects/AddDevice.vue +95 -95
  495. package/src/components/defects/CheckPaperItem.vue +92 -92
  496. package/src/components/defects/CheckPaperItems.vue +89 -89
  497. package/src/components/defects/CheckPaperSearch.vue +349 -349
  498. package/src/components/defects/CheckPaperSearchMain.vue +55 -55
  499. package/src/components/defects/DefectCondition.vue +180 -180
  500. package/src/components/defects/DefectModal.vue +101 -101
  501. package/src/components/defects/DefectSeting.vue +98 -98
  502. package/src/components/defects/DefectsQuery.vue +190 -190
  503. package/src/components/defects/DevicesAndItem.vue +39 -39
  504. package/src/components/defects/DevicesSeting.vue +106 -106
  505. package/src/components/equipment/BoilerUsage.vue +105 -105
  506. package/src/components/equipment/CheckRate.vue +324 -324
  507. package/src/components/equipment/CheckerRate.vue +333 -333
  508. package/src/components/equipment/CookerUsage.vue +105 -105
  509. package/src/components/equipment/DeviceUsage.vue +105 -105
  510. package/src/components/equipment/FurnaceUsage.vue +105 -105
  511. package/src/components/equipment/GasMeterUsage.vue +109 -109
  512. package/src/components/equipment/HeaterUsage.vue +105 -105
  513. package/src/components/equipment/MonthCheckRate.vue +340 -340
  514. package/src/components/filialCircle/AddCircleFiliale.vue +114 -114
  515. package/src/components/filialCircle/CircleList.vue +139 -139
  516. package/src/components/filialCircle/CircleManage.vue +69 -69
  517. package/src/components/gasusage/GasUsage.vue +126 -126
  518. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  519. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  520. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  521. package/src/components/inspections/Checked.vue +402 -402
  522. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  523. package/src/components/inspections/InsUploadPage.vue +251 -251
  524. package/src/components/inspections/InspectionList.vue +542 -542
  525. package/src/components/inspections/InspectionLists.vue +544 -544
  526. package/src/components/inspections/InspectionListss.vue +544 -544
  527. package/src/components/inspections/inspectionDevices.vue +986 -986
  528. package/src/components/inspections/inspectionFeedback.vue +720 -720
  529. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  530. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  531. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  532. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  533. package/src/components/issueplan/IssuePlanAction.vue +102 -102
  534. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  535. package/src/components/issueplan/IssuePlanQuery.vue +118 -118
  536. package/src/components/json-editor/SafeJsonEditor.vue +212 -212
  537. package/src/components/json-editor/assets/img/jsoneditor-icons.svg +893 -893
  538. package/src/components/json-editor/assets/jsoneditor-minimalist.js +9750 -9750
  539. package/src/components/json-editor/assets/jsoneditor.css +929 -929
  540. package/src/components/json-editor/assets/jsoneditor.js +36376 -36376
  541. package/src/components/json-editor/example/App.vue +53 -53
  542. package/src/components/json-editor/example/index.html +9 -9
  543. package/src/components/json-editor/example/main.js +10 -10
  544. package/src/components/json-editor/package.json +71 -71
  545. package/src/components/json-editor/vue-json-editor.vue +189 -189
  546. package/src/components/levelplan/AdjustPlan.vue +199 -199
  547. package/src/components/levelplan/CheckerLeft.vue +140 -140
  548. package/src/components/levelplan/CheckerPlanAdjust.vue +304 -304
  549. package/src/components/levelplan/CheckerRight.vue +123 -123
  550. package/src/components/map/AMap.vue +70 -70
  551. package/src/components/map/AMapTrailShow.vue +178 -178
  552. package/src/components/map/AMapTrailShowZk.vue +178 -178
  553. package/src/components/map/FootPrintList.vue +45 -45
  554. package/src/components/map/MapCriteriaData.vue +97 -97
  555. package/src/components/map/checkScreen.vue +727 -727
  556. package/src/components/metterfiles/AddUserfiles.vue +246 -246
  557. package/src/components/metterfiles/MetterFiles.vue +104 -104
  558. package/src/components/metterfiles/MetterfilesAdd.vue +168 -168
  559. package/src/components/metterfiles/MetterfilesChange.vue +162 -162
  560. package/src/components/metterfiles/UserFiles.vue +156 -156
  561. package/src/components/metterfiles/Userfileschange.vue +391 -391
  562. package/src/components/notice/NoticeForm.vue +100 -100
  563. package/src/components/notice/NoticeIssue.vue +20 -20
  564. package/src/components/notice/NoticeQuery.vue +76 -76
  565. package/src/components/paper/PaperList.vue +806 -806
  566. package/src/components/paper/PaperVerify.vue +256 -256
  567. package/src/components/paper/PicViewer.vue +18 -18
  568. package/src/components/paper/PlanChooser.vue +159 -159
  569. package/src/components/paper/RepairVerify.vue +139 -139
  570. package/src/components/paper/RepairVerifyForm.vue +76 -76
  571. package/src/components/paper/VerifyForm.vue +107 -107
  572. package/src/components/paper/filialeCheckInfo.vue +111 -111
  573. package/src/components/pc/AnnouncementPC.vue +524 -524
  574. package/src/components/pc/CheckBook.vue +67 -67
  575. package/src/components/pc/CheckBookList.vue +586 -586
  576. package/src/components/pc/CheckBookManage.vue +998 -998
  577. package/src/components/pc/CheckBookUser.vue +77 -77
  578. package/src/components/pc/DeviceChange.vue +1068 -1068
  579. package/src/components/pc/HiddenChart.vue +494 -494
  580. package/src/components/pc/NewCheckpaper.vue +1333 -1333
  581. package/src/components/pc/PaperChazhiMain.vue +570 -570
  582. package/src/components/pc/PaperDefectMain.vue +584 -584
  583. package/src/components/pc/RoleSelector.vue +125 -125
  584. package/src/components/phonestate/DailyTraffic.vue +57 -57
  585. package/src/components/phonestate/FootprintMap.vue +129 -129
  586. package/src/components/phonestate/LastKnownState.vue +74 -74
  587. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  588. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  589. package/src/components/phonestate/PostMap.vue +82 -82
  590. package/src/components/plancheck/CheckPlanAreaManage.vue +116 -116
  591. package/src/components/plancheck/CheckPlanList.vue +282 -282
  592. package/src/components/planmanage/PlanManage.vue +782 -782
  593. package/src/components/planmanage/checkPlanList.vue +341 -341
  594. package/src/components/planmanage/checkUserList.vue +728 -728
  595. package/src/components/querycheckpaper/CheckPaperList.vue +127 -127
  596. package/src/components/querycheckpaper/CheckPaperSearchUser.vue +67 -67
  597. package/src/components/querycheckpaper/CheckSearchUser.vue +1037 -1037
  598. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  599. package/src/components/querycheckpaper/PaperItems.vue +79 -79
  600. package/src/components/querycheckpaper/PaperSearch.vue +126 -126
  601. package/src/components/querycheckpaper/PaperSearchMain.vue +56 -56
  602. package/src/components/querycheckpaper/ShebeiPaperList.vue +121 -121
  603. package/src/components/querycheckpaper/ShebeiPaperSearchUser.vue +67 -67
  604. package/src/components/querycheckpaper/ShebeiSearchUser.vue +690 -690
  605. package/src/components/report/CheckPlanAreaManage.vue +111 -111
  606. package/src/components/report/CheckPlanUserList.vue +217 -217
  607. package/src/components/report/HiddenSituation.vue +210 -210
  608. package/src/components/report/ManageBusSummary.vue +242 -242
  609. package/src/components/report/SafePlanSale.vue +111 -111
  610. package/src/components/report/SafePlanStatistics.vue +118 -118
  611. package/src/components/rongcheng/AddPlanItem.vue +315 -315
  612. package/src/components/rongcheng/AreaPlan.vue +470 -470
  613. package/src/components/rongcheng/AspPaperFeedback.vue +1179 -1179
  614. package/src/components/rongcheng/AspPaperStatem.vue +339 -339
  615. package/src/components/rongcheng/AspiratedAreaPlan.vue +464 -464
  616. package/src/components/rongcheng/AspiratedCurrentCreate.vue +1036 -1036
  617. package/src/components/rongcheng/AspiratedDevices.vue +966 -966
  618. package/src/components/rongcheng/AspiratedOrderV.vue +2376 -2376
  619. package/src/components/rongcheng/AspiratedPaperFeedbackm.vue +1019 -1019
  620. package/src/components/rongcheng/AspiratedPaperMessage.vue +1378 -1378
  621. package/src/components/rongcheng/AspiratedPaperMessageNocivil.vue +1288 -1288
  622. package/src/components/rongcheng/AspiratedUploadPage.vue +293 -293
  623. package/src/components/rongcheng/AspiratedUserInfo.vue +399 -399
  624. package/src/components/rongcheng/CheckCurrentCreate.vue +1046 -1046
  625. package/src/components/rongcheng/CheckPaperList.vue +134 -134
  626. package/src/components/rongcheng/CheckPaperSearchUser.vue +55 -55
  627. package/src/components/rongcheng/CheckPaperSearchUserNo.vue +55 -55
  628. package/src/components/rongcheng/CheckSearchUser.vue +826 -826
  629. package/src/components/rongcheng/CheckSearchUserNo.vue +757 -757
  630. package/src/components/rongcheng/DefectList.vue +560 -560
  631. package/src/components/rongcheng/DefectPaper.vue +638 -638
  632. package/src/components/rongcheng/PaperFeedback.vue +1318 -1318
  633. package/src/components/rongcheng/PaperListAJ.vue +501 -501
  634. package/src/components/rongcheng/PaperListNPAJ.vue +498 -498
  635. package/src/components/rongcheng/PaperListNPSQ.vue +485 -485
  636. package/src/components/rongcheng/PaperListSQ.vue +483 -483
  637. package/src/components/rongcheng/PaperMessage.vue +1186 -1186
  638. package/src/components/rongcheng/PaperMessageNocivil.vue +1211 -1211
  639. package/src/components/rongcheng/PaperStateNoncivilm.vue +366 -366
  640. package/src/components/rongcheng/PaperStatem.vue +343 -343
  641. package/src/components/rongcheng/PhoneDevicesInfo.vue +233 -233
  642. package/src/components/rongcheng/SafecheckDevices.vue +998 -998
  643. package/src/components/rongcheng/SafecheckOrderV.vue +2476 -2476
  644. package/src/components/rongcheng/SafecheckOrderVCli.vue +2594 -2594
  645. package/src/components/rongcheng/SafecheckUserInfo.vue +439 -439
  646. package/src/components/rongcheng/UploadPage.vue +328 -328
  647. package/src/components/rongcheng/checkerplan/SelectCheckPlan.vue +285 -285
  648. package/src/components/rongcheng/report/CheckPlanAreaList.vue +419 -419
  649. package/src/components/rongcheng/report/CheckPlanUserList.vue +228 -228
  650. package/src/components/safecheck/common/TabButton.vue +157 -157
  651. package/src/components/safecheck/common/Tabs.vue +67 -67
  652. package/src/components/safecheck/queryManage/CheckBookAll.vue +71 -71
  653. package/src/components/safecheck/queryManage/SafeCheckManage.vue +88 -88
  654. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  655. package/src/components/sendsingle/onlineChangeMeter.vue +658 -658
  656. package/src/components/sendsingle/onlineoperation.vue +411 -411
  657. package/src/components/sendsingle/onlinequeryuser.vue +363 -363
  658. package/src/components/shaoguan/CheckPlanUserList.vue +119 -119
  659. package/src/components/shaoguan/DefectDetail.vue +177 -177
  660. package/src/components/shaoguan/DefectList.vue +473 -473
  661. package/src/components/shaoguan/DefectMain.vue +53 -53
  662. package/src/components/shaoguan/DefectPaper.vue +217 -217
  663. package/src/components/shaoguan/PaperList.vue +533 -533
  664. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  665. package/src/components/task/RepairAnnual.vue +79 -79
  666. package/src/components/task/RepairAnnualDetail.vue +49 -49
  667. package/src/components/task/RepairMonthly.vue +91 -91
  668. package/src/components/task/TaskAnnual.vue +77 -77
  669. package/src/components/task/TaskAnnualDetail.vue +47 -47
  670. package/src/components/task/TaskMonthly.vue +89 -89
  671. package/src/components/tongcheng/AreaPlan.vue +458 -458
  672. package/src/components/tongcheng/CurrentCreate.vue +625 -625
  673. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  674. package/src/components/tongcheng/PaperMessage.vue +1270 -1270
  675. package/src/components/tongcheng/PaperMessageNocivil.vue +1228 -1228
  676. package/src/components/tongcheng/PaperSet.vue +1958 -1958
  677. package/src/components/tongcheng/PaperUser.vue +533 -533
  678. package/src/components/userfile/InfoModifyModal.vue +122 -122
  679. package/src/components/userfile/MeterFile.vue +145 -145
  680. package/src/components/userfile/MeterModify.vue +46 -46
  681. package/src/components/userfile/UserFile.vue +118 -118
  682. package/src/components/userfile/UserInfoAudit.vue +252 -252
  683. package/src/components/userfile/UserfileChange.vue +277 -277
  684. package/src/components/userfile/UserinfoModify.vue +117 -117
  685. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  686. package/src/components/userfileaudit/UserFileaudit.vue +81 -81
  687. package/src/components/userfileaudit/UserfileChangeaudit.vue +239 -239
  688. package/src/expandcss.less +571 -571
  689. package/src/expandcssAndroid.less +520 -520
  690. package/src/filiale/ALshan/pc/CheckSearchUser.vue +927 -927
  691. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +473 -473
  692. package/src/filiale/ALshan/pc.js +15 -15
  693. package/src/filiale/Util.js +325 -325
  694. package/src/filiale/huatong/android/SafecheckDevices.vue +928 -928
  695. package/src/filiale/huatong/android/SafecheckOrderV.vue +2398 -2398
  696. package/src/filiale/huatong/android.js +14 -14
  697. package/src/filiale/huatong/pc.js +13 -13
  698. package/src/filiale/liaoyuan/android/SafecheckDevices.vue +928 -928
  699. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2383 -2383
  700. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +550 -550
  701. package/src/filiale/liaoyuan/android.js +14 -14
  702. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +483 -483
  703. package/src/filiale/liaoyuan/pc/DefectPaperWeiXiu.vue +975 -975
  704. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  705. package/src/filiale/liaoyuan/pc/PaperList.vue +657 -657
  706. package/src/filiale/liaoyuan/pc.js +15 -15
  707. package/src/filiale/lixian/android/SafecheckDevices.vue +1022 -1022
  708. package/src/filiale/lixian/android/SafecheckOrderV.vue +2403 -2403
  709. package/src/filiale/lixian/android/SafecheckUserInfo.vue +586 -586
  710. package/src/filiale/lixian/android.js +14 -14
  711. package/src/filiale/lixian/pc/CheckPlanAreaList.vue +461 -461
  712. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  713. package/src/filiale/lixian/pc/PaperChazhiMain.vue +607 -607
  714. package/src/filiale/lixian/pc/PaperDefectMain.vue +617 -617
  715. package/src/filiale/lixian/pc/PaperList.vue +686 -686
  716. package/src/filiale/lixian/pc.js +22 -22
  717. package/src/filiale/rongchuang/pc/checkUserList.vue +594 -594
  718. package/src/filiale/rongchuang/pc.js +13 -13
  719. package/src/filiale/shimen/android/CurrentCreate.vue +979 -979
  720. package/src/filiale/shimen/android/PaperFeedback.vue +1341 -1341
  721. package/src/filiale/shimen/android/PhoneSellInfo.vue +88 -88
  722. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  723. package/src/filiale/shimen/android.js +12 -12
  724. package/src/filiale/shimen/pc/CheckPlanAreaList.vue +463 -463
  725. package/src/filiale/shimen/pc/CheckSearchUser.vue +927 -927
  726. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  727. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  728. package/src/filiale/shimen/pc/PaperDefectMain.vue +656 -656
  729. package/src/filiale/shimen/pc/PaperList.vue +613 -613
  730. package/src/filiale/shimen/pc/checkmsg.vue +248 -248
  731. package/src/filiale/shimen/pc.js +21 -21
  732. package/src/filiale/tongchuan/android/PaperFeedback.vue +1350 -1350
  733. package/src/filiale/tongchuan/android/SafecheckDevices.vue +1112 -1112
  734. package/src/filiale/tongchuan/android/SafecheckOrderV.vue +2575 -2575
  735. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +640 -640
  736. package/src/filiale/tongchuan/android/UploadPage.vue +285 -285
  737. package/src/filiale/tongchuan/android.js +13 -13
  738. package/src/filiale/tongchuan/pc/CheckPlanUserList.vue +245 -245
  739. package/src/filiale/tongchuan/pc/CheckSearchUser.vue +956 -956
  740. package/src/filiale/tongchuan/pc/DefectPaper.vue +764 -764
  741. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +509 -509
  742. package/src/filiale/tongchuan/pc/NewCheckpaper.vue +1267 -1267
  743. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +634 -634
  744. package/src/filiale/tongchuan/pc/PaperList.vue +677 -677
  745. package/src/filiale/tongchuan/pc/checkUserList.vue +593 -593
  746. package/src/filiale/tongchuan/pc.js +21 -21
  747. package/src/filiale/wenxi/android/CurrentCreate.vue +1047 -1047
  748. package/src/filiale/wenxi/android/PaperFeedback.vue +1378 -1378
  749. package/src/filiale/wenxi/android/SafecheckDevices.vue +1053 -1053
  750. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2472 -2472
  751. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +584 -584
  752. package/src/filiale/wenxi/android/UploadPage.vue +285 -285
  753. package/src/filiale/wenxi/android.js +14 -14
  754. package/src/filiale/wenxi/pc/DefectPaper.vue +662 -662
  755. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1169 -1169
  756. package/src/filiale/wenxi/pc/PaperDefectMain.vue +634 -634
  757. package/src/filiale/wenxi/pc/PaperList.vue +860 -860
  758. package/src/filiale/wenxi/pc/checkmsg.vue +302 -302
  759. package/src/filiale/wenxi/pc.js +16 -16
  760. package/src/filiale/wuan/android/AreaPlan.vue +513 -513
  761. package/src/filiale/wuan/android/CurrentCreate.vue +985 -985
  762. package/src/filiale/wuan/android/CurrentCreateSheBei.vue +999 -999
  763. package/src/filiale/wuan/android/SafecheckDevices.vue +1150 -1150
  764. package/src/filiale/wuan/android/SafecheckOrderV.vue +2237 -2237
  765. package/src/filiale/wuan/android/SafecheckUserInfo.vue +571 -571
  766. package/src/filiale/wuan/android.js +17 -17
  767. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  768. package/src/filiale/wuan/pc/DefectPaperWeiXiu.vue +514 -514
  769. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  770. package/src/filiale/wuan/pc/PaperList.vue +628 -628
  771. package/src/filiale/wuan/pc.js +19 -19
  772. package/src/filiale/wuhai/android/AreaPlan.vue +529 -529
  773. package/src/filiale/wuhai/android/PaperFeedback.vue +1350 -1350
  774. package/src/filiale/wuhai/android.js +12 -12
  775. package/src/filiale/wuhai/pc/checkUserList.vue +594 -594
  776. package/src/filiale/wuhai/pc.js +13 -13
  777. package/src/filiale/zhongsheng/android/PaperFeedback.vue +1341 -1341
  778. package/src/filiale/zhongsheng/android/PhoneUpUserinfo.vue +926 -926
  779. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2447 -2447
  780. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +591 -591
  781. package/src/filiale/zhongsheng/android.js +17 -17
  782. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  783. package/src/filiale/zhongsheng/pc/DefectPaperWeiXiu.vue +511 -511
  784. package/src/filiale/zhongsheng/pc/InfoModifyModal.vue +123 -123
  785. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1308 -1308
  786. package/src/filiale/zhongsheng/pc/UserInfoAudit.vue +252 -252
  787. package/src/filiale/zhongsheng/pc/UserinfoModify.vue +121 -121
  788. package/src/filiale/zhongsheng/pc.js +15 -15
  789. package/src/filiale/zhoukou/android/AndroidDefectDeal.vue +408 -408
  790. package/src/filiale/zhoukou/android/AreaPlan.vue +543 -543
  791. package/src/filiale/zhoukou/android/CurrentCreate.vue +1014 -1014
  792. package/src/filiale/zhoukou/android/PaperFeedback.vue +1367 -1367
  793. package/src/filiale/zhoukou/android/PhoneUpUserinfo.vue +957 -957
  794. package/src/filiale/zhoukou/android/SafecheckDevices.vue +1174 -1174
  795. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  796. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  797. package/src/filiale/zhoukou/android/UploadPage.vue +301 -301
  798. package/src/filiale/zhoukou/android.js +18 -18
  799. package/src/filiale/zhoukou/pc/CheckSearchUser.vue +923 -923
  800. package/src/filiale/zhoukou/pc/PaperDefectMain.vue +531 -531
  801. package/src/filiale/zhoukou/pc.js +15 -15
  802. package/src/index.js +17 -17
  803. package/src/main.js +33 -33
  804. package/src/plugins/EmojiData.js +514 -514
  805. package/src/plugins/GerJsonConfig.js +59 -59
  806. package/src/plugins/GerJsonObjectConfig.js +44 -44
  807. package/src/plugins/LoadData.js +10 -10
  808. package/src/plugins/LoadParams.js +24 -24
  809. package/src/plugins/LocalPagedList.js +108 -108
  810. package/src/plugins/LocalPathList.js +109 -109
  811. package/src/rongcheng-android.js +193 -193
  812. package/src/rongcheng.js +304 -304
  813. package/src/safecheck-android.js +225 -225
  814. package/src/safecheck.js +723 -723
  815. package/src/shaoguan-android.js +176 -176
  816. package/src/shaoguan.js +276 -276
  817. package/src/stores/AppData.js +46 -46
  818. package/src/stores/wxconfig.js +10 -10
  819. package/src/tongchengsafe-android.js +162 -162
  820. package/src/tongchengsafecheck.js +267 -267
  821. package/src/utils/GerJsonObjectConfig.js +51 -51
  822. package/src/utils/LdapHelper.js +99 -99
  823. package/src/utils/getNowDate.js +33 -33
  824. package/test/SearchList.test.js +14 -14
  825. package/test/e2e/custom-assertions/elementCount.js +26 -26
  826. package/test/e2e/nightwatch.conf.js +40 -40
  827. package/test/e2e/runner.js +30 -30
  828. package/test/e2e/specs/test.js +13 -13
  829. package/test/unit/.eslintrc +5 -5
  830. package/test/unit/TestUtil.js +62 -62
  831. package/test/unit/context.html +20 -20
  832. package/test/unit/index.js +13 -13
  833. package/test/unit/init.js +11 -11
  834. package/test/unit/karma.conf.js +53 -53
  835. package/test/unit/specs/Devices.spec.js +18 -18
  836. package/test/unit/specs/getArrobjconfig.spec.js +104 -104
  837. package/test/unit/specs/getobjconfig.spec.js +37 -37
  838. package/test/unit/specs/phonetest/phonesafecheck.spec.js +23 -23
  839. package/test/unit/specs/safePlanItem.spec.js +30 -30
  840. package/test/unit/specs/safecheck-android.spec.js +7 -7
  841. package/test/unit/specs/safecheck.spec.js +127 -127
  842. package/yarn-error.log +140 -140
@@ -1,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>