safecheck-client 3.0.30-gongyi → 3.0.33-gongyi

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (839) hide show
  1. package/.babelrc +5 -5
  2. package/.editorconfig +9 -9
  3. package/.eslintrc.js +16 -16
  4. package/.project +11 -11
  5. package/CHANGELOG.md +27 -27
  6. package/README.md +38 -38
  7. package/android.html +18 -18
  8. package/build/css-loaders.js +34 -34
  9. package/build/dev-android.js +151 -151
  10. package/build/dev-client.js +8 -8
  11. package/build/example-server.js +157 -157
  12. package/build/release.sh +28 -28
  13. package/build/utils.js +71 -71
  14. package/build/webpack.base.conf.js +88 -88
  15. package/build/webpack.baseandroid.conf.js +83 -83
  16. package/build/webpack.dev.conf.js +40 -40
  17. package/build/webpack.devandroid.conf.js +33 -33
  18. package/build/webpack.example.conf.js +49 -49
  19. package/build/webpack.hanwei.conf.js +57 -57
  20. package/build/webpack.hwbase.conf.js +78 -78
  21. package/build/webpack.prod.conf.js +80 -80
  22. package/build/webpack.prodandroid.conf.js +60 -60
  23. package/build/webpack.test.conf.js +31 -31
  24. package/build.gradle +14 -14
  25. package/config/dev.env.js +6 -6
  26. package/config/index.js +38 -38
  27. package/config/prod.env.js +3 -3
  28. package/config/test.env.js +6 -6
  29. package/docs/AppBase.md +22 -22
  30. package/docs/Busy.md +14 -14
  31. package/docs/Criteria.md +47 -47
  32. package/docs/CriteriaPaged.md +47 -47
  33. package/docs/DataGrid.md +54 -54
  34. package/docs/DataModel.md +22 -22
  35. package/docs/Dynamic.md +42 -42
  36. package/docs/FormPrint.md +18 -18
  37. package/docs/GetParams.md +11 -11
  38. package/docs/GridTree.md +47 -47
  39. package/docs/HttpBusy.md +13 -13
  40. package/docs/HttpStore.md +29 -29
  41. package/docs/MessageBox.md +28 -28
  42. package/docs/PagedList.md +29 -29
  43. package/docs/Pager.md +21 -21
  44. package/docs/PrintFile.md +38 -38
  45. package/docs/Project.md +23 -23
  46. package/docs/Route.md +105 -105
  47. package/docs/SafetyCheck/AdjustPlan.md +13 -13
  48. package/docs/SafetyCheck/CheckerPlan.md +12 -12
  49. package/docs/Task.md +46 -46
  50. package/docs/TreeList.md +28 -28
  51. package/docs/TreeMixin.md +18 -18
  52. package/docs/all.md +10 -10
  53. package/docs/list.md +42 -42
  54. package/docs/partial.md +75 -75
  55. package/docs/selector.md +82 -82
  56. package/docs/tree.md +40 -40
  57. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/Snippets.md +28 -28
  58. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue-strap/345/217/230/346/233/264/350/256/260/345/275/225.md +7 -7
  59. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue/345/217/230/346/233/264/350/256/260/345/275/225.md +13 -13
  60. package/docs//345/274/200/345/217/221/346/226/207/346/241/243//345/274/200/345/217/221/347/216/257/345/242/203/350/256/276/347/275/256.md +77 -77
  61. package/docs//347/225/214/351/235/242/345/210/266/344/275/234/350/247/204/350/214/203.md +54 -54
  62. package/examples/AddressList/App.vue +13 -13
  63. package/examples/AddressList/index.html +11 -11
  64. package/examples/AddressList/main.js +13 -13
  65. package/examples/ChangeConfig/App.vue +54 -54
  66. package/examples/ChangeConfig/comp.js +548 -548
  67. package/examples/ChangeConfig/index.html +17 -17
  68. package/examples/ChangeConfig/main.js +13 -13
  69. package/examples/CheckAdvise/App.vue +24 -24
  70. package/examples/CheckAdvise/comp.js +9 -9
  71. package/examples/CheckAdvise/index.html +18 -18
  72. package/examples/CheckAdvise/main.js +13 -13
  73. package/examples/CreatePlan/App.vue +13 -13
  74. package/examples/CreatePlan/index.html +11 -11
  75. package/examples/CreatePlan/main.js +13 -13
  76. package/examples/DispatchList/App.vue +10 -10
  77. package/examples/DispatchList/BaseTree.vue +13 -13
  78. package/examples/DispatchList/Init.vue +22 -22
  79. package/examples/DispatchList/Test.vue +20 -20
  80. package/examples/DispatchList/index.html +11 -11
  81. package/examples/DispatchList/main.js +18 -18
  82. package/examples/PhoneSafePlan/App.vue +36 -36
  83. package/examples/PhoneSafePlan/TestData.js +448 -448
  84. package/examples/PhoneSafePlan/comp.js +33 -33
  85. package/examples/PhoneSafePlan/index.html +17 -17
  86. package/examples/PhoneSafePlan/main.js +13 -13
  87. package/examples/SafePlan/App.vue +83 -83
  88. package/examples/SafePlan/TestData.js +448 -448
  89. package/examples/SafePlan/comp.js +1521 -1521
  90. package/examples/SafePlan/index.html +18 -18
  91. package/examples/SafePlan/main.js +13 -13
  92. package/examples/SafePlan-aode/App.vue +39 -39
  93. package/examples/SafePlan-aode/TestData.js +448 -448
  94. package/examples/SafePlan-aode/comp.js +1132 -1132
  95. package/examples/SafePlan-aode/index.html +17 -17
  96. package/examples/SafePlan-aode/main.js +13 -13
  97. package/examples/SafePlan-liaoyuan/App.vue +53 -53
  98. package/examples/SafePlan-liaoyuan/TestData.js +448 -448
  99. package/examples/SafePlan-liaoyuan/comp.js +1419 -1419
  100. package/examples/SafePlan-liaoyuan/index.html +18 -18
  101. package/examples/SafePlan-liaoyuan/main.js +13 -13
  102. package/examples/SafePlan-shaoguan/App.vue +52 -52
  103. package/examples/SafePlan-shaoguan/TestData.js +448 -448
  104. package/examples/SafePlan-shaoguan/comp.js +1190 -1190
  105. package/examples/SafePlan-shaoguan/index.html +18 -18
  106. package/examples/SafePlan-shaoguan/main.js +13 -13
  107. package/examples/SafePlan-tongchuan/App.vue +81 -81
  108. package/examples/SafePlan-tongchuan/TestData.js +448 -448
  109. package/examples/SafePlan-tongchuan/comp.js +1480 -1480
  110. package/examples/SafePlan-tongchuan/index.html +18 -18
  111. package/examples/SafePlan-tongchuan/main.js +13 -13
  112. package/examples/SafePlan-wenxi/App.vue +80 -80
  113. package/examples/SafePlan-wenxi/TestData.js +448 -448
  114. package/examples/SafePlan-wenxi/comp.js +1545 -1545
  115. package/examples/SafePlan-wenxi/index.html +18 -18
  116. package/examples/SafePlan-wenxi/main.js +13 -13
  117. package/examples/SafePlan-zhoukou/App.vue +81 -81
  118. package/examples/SafePlan-zhoukou/TestData.js +448 -448
  119. package/examples/SafePlan-zhoukou/comp.js +1525 -1525
  120. package/examples/SafePlan-zhoukou/index.html +18 -18
  121. package/examples/SafePlan-zhoukou/main.js +13 -13
  122. package/examples/SafePlanItem/App.vue +33 -33
  123. package/examples/SafePlanItem/TestData.js +448 -448
  124. package/examples/SafePlanItem/comp.js +69 -69
  125. package/examples/SafePlanItem/index.html +17 -17
  126. package/examples/SafePlanItem/main.js +15 -15
  127. package/examples/SafePlanrongcheng/App.vue +52 -52
  128. package/examples/SafePlanrongcheng/TestData.js +448 -448
  129. package/examples/SafePlanrongcheng/comp.js +1133 -1133
  130. package/examples/SafePlanrongcheng/index.html +18 -18
  131. package/examples/SafePlanrongcheng/main.js +13 -13
  132. package/examples/SafePlanrongcheng-gs/App.vue +52 -52
  133. package/examples/SafePlanrongcheng-gs/TestData.js +448 -448
  134. package/examples/SafePlanrongcheng-gs/comp.js +1132 -1132
  135. package/examples/SafePlanrongcheng-gs/index.html +18 -18
  136. package/examples/SafePlanrongcheng-gs/main.js +13 -13
  137. package/examples/SafePlanrongcheng-gssq/App.vue +52 -52
  138. package/examples/SafePlanrongcheng-gssq/TestData.js +448 -448
  139. package/examples/SafePlanrongcheng-gssq/comp.js +1135 -1135
  140. package/examples/SafePlanrongcheng-gssq/index.html +18 -18
  141. package/examples/SafePlanrongcheng-gssq/main.js +13 -13
  142. package/examples/SafePlanrongcheng-mysq/App.vue +52 -52
  143. package/examples/SafePlanrongcheng-mysq/TestData.js +448 -448
  144. package/examples/SafePlanrongcheng-mysq/comp.js +1136 -1136
  145. package/examples/SafePlanrongcheng-mysq/index.html +18 -18
  146. package/examples/SafePlanrongcheng-mysq/main.js +13 -13
  147. package/examples/Test/App.vue +35 -35
  148. package/examples/Test/TestData.js +489 -489
  149. package/examples/Test/index.html +17 -17
  150. package/examples/Test/main.js +13 -13
  151. package/examples/Test//350/216/267/345/217/226/345/217/230/351/207/217 +2 -2
  152. package/examples/UserFiles/App.vue +47 -47
  153. package/examples/UserFiles/TestData.js +448 -448
  154. package/examples/UserFiles/comp.js +227 -227
  155. package/examples/UserFiles/index.html +19 -19
  156. package/examples/UserFiles/main.js +13 -13
  157. package/home.html +16 -16
  158. package/index.html +23 -23
  159. package/oa.iml +8 -8
  160. package/package.json +3 -3
  161. package/publish.bat +7 -7
  162. package/release.bat +5 -5
  163. package/src/AndroidApp.vue +26 -26
  164. package/src/App.vue +27 -27
  165. package/src/Widget.vue +13 -13
  166. package/src/android-bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  167. package/src/android-bootstrap/less/.csscomb.json +304 -304
  168. package/src/android-bootstrap/less/.csslintrc +19 -19
  169. package/src/android-bootstrap/less/alerts.less +73 -73
  170. package/src/android-bootstrap/less/badges.less +66 -66
  171. package/src/android-bootstrap/less/bootstrap.less +56 -56
  172. package/src/android-bootstrap/less/breadcrumbs.less +26 -26
  173. package/src/android-bootstrap/less/button-groups.less +247 -247
  174. package/src/android-bootstrap/less/buttons.less +173 -173
  175. package/src/android-bootstrap/less/carousel.less +269 -269
  176. package/src/android-bootstrap/less/close.less +34 -34
  177. package/src/android-bootstrap/less/code.less +69 -69
  178. package/src/android-bootstrap/less/component-animations.less +33 -33
  179. package/src/android-bootstrap/less/dropdowns.less +216 -216
  180. package/src/android-bootstrap/less/forms.less +626 -626
  181. package/src/android-bootstrap/less/glyphicons.less +305 -305
  182. package/src/android-bootstrap/less/grid.less +84 -84
  183. package/src/android-bootstrap/less/input-groups.less +167 -167
  184. package/src/android-bootstrap/less/jumbotron.less +52 -52
  185. package/src/android-bootstrap/less/labels.less +64 -64
  186. package/src/android-bootstrap/less/list-group.less +141 -141
  187. package/src/android-bootstrap/less/media.less +66 -66
  188. package/src/android-bootstrap/less/mixins/alerts.less +14 -14
  189. package/src/android-bootstrap/less/mixins/background-variant.less +9 -9
  190. package/src/android-bootstrap/less/mixins/border-radius.less +18 -18
  191. package/src/android-bootstrap/less/mixins/buttons.less +69 -69
  192. package/src/android-bootstrap/less/mixins/center-block.less +7 -7
  193. package/src/android-bootstrap/less/mixins/clearfix.less +22 -22
  194. package/src/android-bootstrap/less/mixins/forms.less +90 -90
  195. package/src/android-bootstrap/less/mixins/gradients.less +59 -59
  196. package/src/android-bootstrap/less/mixins/grid-framework.less +92 -92
  197. package/src/android-bootstrap/less/mixins/grid.less +122 -122
  198. package/src/android-bootstrap/less/mixins/hide-text.less +21 -21
  199. package/src/android-bootstrap/less/mixins/image.less +33 -33
  200. package/src/android-bootstrap/less/mixins/labels.less +12 -12
  201. package/src/android-bootstrap/less/mixins/list-group.less +30 -30
  202. package/src/android-bootstrap/less/mixins/nav-divider.less +10 -10
  203. package/src/android-bootstrap/less/mixins/nav-vertical-align.less +9 -9
  204. package/src/android-bootstrap/less/mixins/opacity.less +8 -8
  205. package/src/android-bootstrap/less/mixins/pagination.less +24 -24
  206. package/src/android-bootstrap/less/mixins/panels.less +24 -24
  207. package/src/android-bootstrap/less/mixins/progress-bar.less +10 -10
  208. package/src/android-bootstrap/less/mixins/reset-filter.less +8 -8
  209. package/src/android-bootstrap/less/mixins/reset-text.less +18 -18
  210. package/src/android-bootstrap/less/mixins/resize.less +6 -6
  211. package/src/android-bootstrap/less/mixins/responsive-visibility.less +15 -15
  212. package/src/android-bootstrap/less/mixins/size.less +10 -10
  213. package/src/android-bootstrap/less/mixins/tab-focus.less +9 -9
  214. package/src/android-bootstrap/less/mixins/table-row.less +44 -44
  215. package/src/android-bootstrap/less/mixins/text-emphasis.less +9 -9
  216. package/src/android-bootstrap/less/mixins/text-overflow.less +8 -8
  217. package/src/android-bootstrap/less/mixins/vendor-prefixes.less +227 -227
  218. package/src/android-bootstrap/less/mixins.less +40 -40
  219. package/src/android-bootstrap/less/modals.less +151 -151
  220. package/src/android-bootstrap/less/navbar.less +660 -660
  221. package/src/android-bootstrap/less/navs.less +290 -290
  222. package/src/android-bootstrap/less/normalize.less +424 -424
  223. package/src/android-bootstrap/less/pager.less +76 -76
  224. package/src/android-bootstrap/less/pagination.less +89 -89
  225. package/src/android-bootstrap/less/panels.less +274 -274
  226. package/src/android-bootstrap/less/popovers.less +131 -131
  227. package/src/android-bootstrap/less/print.less +101 -101
  228. package/src/android-bootstrap/less/progress-bars.less +87 -87
  229. package/src/android-bootstrap/less/responsive-embed.less +35 -35
  230. package/src/android-bootstrap/less/responsive-utilities.less +194 -194
  231. package/src/android-bootstrap/less/scaffolding.less +161 -161
  232. package/src/android-bootstrap/less/tables.less +262 -262
  233. package/src/android-bootstrap/less/theme.less +291 -291
  234. package/src/android-bootstrap/less/thumbnails.less +36 -36
  235. package/src/android-bootstrap/less/tooltip.less +102 -102
  236. package/src/android-bootstrap/less/type.less +303 -303
  237. package/src/android-bootstrap/less/utilities.less +55 -55
  238. package/src/android-bootstrap/less/variables.less +896 -896
  239. package/src/android-bootstrap/less/wells.less +29 -29
  240. package/src/android.js +16 -16
  241. package/src/androidBase.js +177 -177
  242. package/src/androidTest.js +20 -20
  243. package/src/bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  244. package/src/bootstrap/less/.csscomb.json +304 -304
  245. package/src/bootstrap/less/.csslintrc +19 -19
  246. package/src/bootstrap/less/alerts.less +73 -73
  247. package/src/bootstrap/less/aofeng/animate.min.css +10 -10
  248. package/src/bootstrap/less/aofeng/standard.less +2121 -2121
  249. package/src/bootstrap/less/aofeng/themeOne/BinaryTemplate.less +686 -686
  250. package/src/bootstrap/less/aofeng/themeOne/loginStyle.less +1586 -1586
  251. package/src/bootstrap/less/aofeng/themeOne/systemStyle.less +2650 -2650
  252. package/src/bootstrap/less/aofeng/themeOne.less +14 -14
  253. package/src/bootstrap/less/aofeng/themeTwo/newStyle1.less +415 -415
  254. package/src/bootstrap/less/aofeng/themeTwo.less +3 -3
  255. package/src/bootstrap/less/badges.less +66 -66
  256. package/src/bootstrap/less/bootstrap.less +65 -65
  257. package/src/bootstrap/less/breadcrumbs.less +26 -26
  258. package/src/bootstrap/less/button-groups.less +247 -247
  259. package/src/bootstrap/less/buttons.less +172 -172
  260. package/src/bootstrap/less/carousel.less +269 -269
  261. package/src/bootstrap/less/close.less +34 -34
  262. package/src/bootstrap/less/code.less +69 -69
  263. package/src/bootstrap/less/component-animations.less +33 -33
  264. package/src/bootstrap/less/dropdowns.less +216 -216
  265. package/src/bootstrap/less/forms.less +626 -626
  266. package/src/bootstrap/less/glyphicons.less +305 -305
  267. package/src/bootstrap/less/grid.less +84 -84
  268. package/src/bootstrap/less/input-groups.less +167 -167
  269. package/src/bootstrap/less/jumbotron.less +52 -52
  270. package/src/bootstrap/less/labels.less +64 -64
  271. package/src/bootstrap/less/list-group.less +141 -141
  272. package/src/bootstrap/less/manageStyle/manageChile.less +180 -180
  273. package/src/bootstrap/less/manageStyle/manageStyle.less +1102 -1102
  274. package/src/bootstrap/less/manageStyle/safeStyle.less +498 -498
  275. package/src/bootstrap/less/media.less +66 -66
  276. package/src/bootstrap/less/mixins/alerts.less +14 -14
  277. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  278. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  279. package/src/bootstrap/less/mixins/buttons.less +69 -69
  280. package/src/bootstrap/less/mixins/center-block.less +7 -7
  281. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  282. package/src/bootstrap/less/mixins/forms.less +90 -90
  283. package/src/bootstrap/less/mixins/gradients.less +59 -59
  284. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  285. package/src/bootstrap/less/mixins/grid.less +122 -122
  286. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  287. package/src/bootstrap/less/mixins/image.less +33 -33
  288. package/src/bootstrap/less/mixins/labels.less +12 -12
  289. package/src/bootstrap/less/mixins/list-group.less +30 -30
  290. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  291. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  292. package/src/bootstrap/less/mixins/opacity.less +8 -8
  293. package/src/bootstrap/less/mixins/pagination.less +24 -24
  294. package/src/bootstrap/less/mixins/panels.less +24 -24
  295. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  296. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  297. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  298. package/src/bootstrap/less/mixins/resize.less +6 -6
  299. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  300. package/src/bootstrap/less/mixins/size.less +10 -10
  301. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  302. package/src/bootstrap/less/mixins/table-row.less +44 -44
  303. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  304. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  305. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  306. package/src/bootstrap/less/mixins.less +40 -40
  307. package/src/bootstrap/less/modals.less +151 -151
  308. package/src/bootstrap/less/navbar.less +660 -660
  309. package/src/bootstrap/less/navs.less +285 -285
  310. package/src/bootstrap/less/normalize.less +424 -424
  311. package/src/bootstrap/less/pager.less +76 -76
  312. package/src/bootstrap/less/pagination.less +89 -89
  313. package/src/bootstrap/less/panels.less +275 -275
  314. package/src/bootstrap/less/popovers.less +131 -131
  315. package/src/bootstrap/less/print.less +101 -101
  316. package/src/bootstrap/less/progress-bars.less +87 -87
  317. package/src/bootstrap/less/responsive-embed.less +35 -35
  318. package/src/bootstrap/less/responsive-utilities.less +194 -194
  319. package/src/bootstrap/less/scaffolding.less +161 -161
  320. package/src/bootstrap/less/stand.less +207 -207
  321. package/src/bootstrap/less/standard.less +503 -503
  322. package/src/bootstrap/less/systemStyle.less +860 -860
  323. package/src/bootstrap/less/tables.less +262 -262
  324. package/src/bootstrap/less/theme.less +291 -291
  325. package/src/bootstrap/less/themeOne.less +36 -36
  326. package/src/bootstrap/less/themeTwo.less +29 -29
  327. package/src/bootstrap/less/thumbnails.less +36 -36
  328. package/src/bootstrap/less/tooltip.less +102 -102
  329. package/src/bootstrap/less/type.less +303 -303
  330. package/src/bootstrap/less/utilities.less +55 -55
  331. package/src/bootstrap/less/variables.less +896 -896
  332. package/src/bootstrap/less/wells.less +29 -29
  333. package/src/components/AloneLoadParams.vue +25 -25
  334. package/src/components/CheckerCount/CheckCountAreaList.vue +306 -306
  335. package/src/components/CheckerCount/CheckCountAreaManage.vue +112 -112
  336. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  337. package/src/components/CheckerCount/ZhouKouCheckCount.vue +272 -272
  338. package/src/components/ExportExcel.vue +334 -334
  339. package/src/components/FileUpload.vue +696 -696
  340. package/src/components/Hello.vue +39 -39
  341. package/src/components/LeftTree.vue +27 -27
  342. package/src/components/Login.vue +459 -459
  343. package/src/components/Main.vue +393 -393
  344. package/src/components/Test.vue +1478 -1478
  345. package/src/components/Util/FileUpload.vue +138 -138
  346. package/src/components/Util/ImgSelfSafe.vue +126 -126
  347. package/src/components/Util/RightTreeSafe.vue +343 -343
  348. package/src/components/Util/SafecheckUpload.vue +265 -265
  349. package/src/components/Util.js +376 -376
  350. package/src/components/android/AddGas.vue +147 -147
  351. package/src/components/android/AddPlanItem.vue +412 -412
  352. package/src/components/android/AddressList.vue +61 -61
  353. package/src/components/android/AdviseCommit.vue +59 -59
  354. package/src/components/android/AndroidCheckResult.vue +181 -181
  355. package/src/components/android/AndroidDefectDeal.vue +397 -397
  356. package/src/components/android/Announcement.vue +167 -167
  357. package/src/components/android/AreaPlan.vue +503 -503
  358. package/src/components/android/AttendanceTally.vue +116 -116
  359. package/src/components/android/Blank.vue +10 -10
  360. package/src/components/android/CheckNotice.vue +89 -89
  361. package/src/components/android/CheckPlan.vue +257 -257
  362. package/src/components/android/CheckPlanDown.vue +216 -216
  363. package/src/components/android/CheckPlanItems.vue +423 -423
  364. package/src/components/android/CheckUnplanPage.vue +56 -56
  365. package/src/components/android/Checker.vue +12 -12
  366. package/src/components/android/CheckerAnnual.vue +81 -81
  367. package/src/components/android/CheckerAnnualDetail.vue +63 -63
  368. package/src/components/android/CheckerAvarta.vue +82 -82
  369. package/src/components/android/CheckerMonthly.vue +84 -84
  370. package/src/components/android/Checkpage.vue +102 -102
  371. package/src/components/android/CurrentCreate.vue +970 -970
  372. package/src/components/android/DailyworkloadQuery.vue +396 -396
  373. package/src/components/android/Defect.vue +119 -119
  374. package/src/components/android/DeviceDefect.vue +187 -187
  375. package/src/components/android/Devices.vue +327 -327
  376. package/src/components/android/DevicesItem.vue +495 -495
  377. package/src/components/android/DevicesItemm.vue +445 -445
  378. package/src/components/android/DevicesNoncivil.vue +214 -214
  379. package/src/components/android/Devicesm.vue +327 -327
  380. package/src/components/android/DoorService.vue +501 -501
  381. package/src/components/android/EquipmentInspection.vue +348 -348
  382. package/src/components/android/ExtractCheckPlan.vue +268 -268
  383. package/src/components/android/ExtractPlanItem.vue +516 -516
  384. package/src/components/android/FootprintMap.vue +120 -120
  385. package/src/components/android/HiddentroubleInvestigation.vue +192 -192
  386. package/src/components/android/LcheckUnplan.vue +108 -108
  387. package/src/components/android/LocalPagedList.js +108 -108
  388. package/src/components/android/LocalPathList.js +109 -109
  389. package/src/components/android/Login.vue +222 -222
  390. package/src/components/android/MasterMain.vue +77 -77
  391. package/src/components/android/Menu.vue +132 -132
  392. package/src/components/android/NavBottom.vue +157 -157
  393. package/src/components/android/PaperAlarm.vue +85 -85
  394. package/src/components/android/PaperAlarmNoncivil.vue +286 -286
  395. package/src/components/android/PaperCooker.vue +325 -325
  396. package/src/components/android/PaperDefect.vue +230 -230
  397. package/src/components/android/PaperDevice.vue +279 -279
  398. package/src/components/android/PaperDeviceNoncivil.vue +214 -214
  399. package/src/components/android/PaperFeedback.vue +1444 -1444
  400. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  401. package/src/components/android/PaperFurnace.vue +274 -274
  402. package/src/components/android/PaperFurnaceNoncivil.vue +203 -203
  403. package/src/components/android/PaperHeater.vue +287 -287
  404. package/src/components/android/PaperInnerPlumb.vue +171 -171
  405. package/src/components/android/PaperMessage.vue +1323 -1323
  406. package/src/components/android/PaperMessageNocivil.vue +1288 -1288
  407. package/src/components/android/PaperMeter.vue +351 -351
  408. package/src/components/android/PaperMeterNoncivil.vue +481 -481
  409. package/src/components/android/PaperPieceNoncivil.vue +142 -142
  410. package/src/components/android/PaperPlumb.vue +141 -141
  411. package/src/components/android/PaperPlumbNoncivil.vue +253 -253
  412. package/src/components/android/PaperSet.vue +1956 -1956
  413. package/src/components/android/PaperSetNoncivil.vue +1760 -1760
  414. package/src/components/android/PaperState.vue +390 -390
  415. package/src/components/android/PaperStateNoncivil.vue +383 -383
  416. package/src/components/android/PaperStateNoncivilm.vue +377 -377
  417. package/src/components/android/PaperStatem.vue +346 -346
  418. package/src/components/android/PaperUser.vue +606 -606
  419. package/src/components/android/PaperUserNoncivil.vue +424 -424
  420. package/src/components/android/PaperUserm.vue +356 -356
  421. package/src/components/android/PaperValve.vue +178 -178
  422. package/src/components/android/PaperValveNoncivil.vue +180 -180
  423. package/src/components/android/PhoneChangemeterInfo.vue +107 -107
  424. package/src/components/android/PhoneInfoTable.vue +40 -40
  425. package/src/components/android/PhoneSellInfo.vue +113 -113
  426. package/src/components/android/PhoneState.vue +157 -157
  427. package/src/components/android/PhoneUpUserinfo.vue +929 -929
  428. package/src/components/android/PhoneUserFind.vue +111 -111
  429. package/src/components/android/PlumberAnnual.vue +83 -83
  430. package/src/components/android/PlumberAnnualDetail.vue +65 -65
  431. package/src/components/android/PlumberMonthly.vue +84 -84
  432. package/src/components/android/PostMap.vue +83 -83
  433. package/src/components/android/PrearrangedPlan.vue +247 -247
  434. package/src/components/android/QueryCheckHistory.vue +122 -122
  435. package/src/components/android/QueryCheckHistoryItem.vue +62 -62
  436. package/src/components/android/RepairAreaList.vue +71 -71
  437. package/src/components/android/RepairList.vue +206 -206
  438. package/src/components/android/RepairMain.vue +60 -60
  439. package/src/components/android/RepairQuery.vue +262 -262
  440. package/src/components/android/Repairman.vue +12 -12
  441. package/src/components/android/ResAreaList.vue +158 -158
  442. package/src/components/android/RightTree.vue +174 -174
  443. package/src/components/android/SafecheckDevices.vue +1143 -1143
  444. package/src/components/android/SafecheckState.vue +437 -437
  445. package/src/components/android/SafecheckUser.vue +580 -580
  446. package/src/components/android/ShebeiDevices.vue +980 -980
  447. package/src/components/android/StationMaster.vue +12 -12
  448. package/src/components/android/SwitchValve.vue +230 -230
  449. package/src/components/android/SystemSetting.vue +84 -84
  450. package/src/components/android/ToolsPage.vue +51 -51
  451. package/src/components/android/TrackState.vue +134 -134
  452. package/src/components/android/UploadPage.vue +338 -338
  453. package/src/components/android/checkPlanResult.vue +302 -302
  454. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  455. package/src/components/android/wasm/PhoneSafePlan.vue +39 -39
  456. package/src/components/android/wasm/TestData.js +448 -448
  457. package/src/components/android/wasm/comp.js +33 -33
  458. package/src/components/attendance/DailyAttendance.vue +99 -99
  459. package/src/components/attendance/MonthlyAttendance.vue +194 -194
  460. package/src/components/callincheck/CallInCheckMain.vue +146 -146
  461. package/src/components/callincheck/CallInPlan.vue +148 -148
  462. package/src/components/callincheck/UserFileList.vue +155 -155
  463. package/src/components/checkAreaClassification.vue +285 -285
  464. package/src/components/checkerphonestate/Checker.vue +32 -32
  465. package/src/components/checkerphonestate/CheckerState.vue +97 -97
  466. package/src/components/checkplan/CheckDetail.vue +205 -205
  467. package/src/components/checkplan/CheckPlan.vue +59 -59
  468. package/src/components/checkplan/SelectCheckPlan.vue +224 -224
  469. package/src/components/checkplan/SelectMessage.vue +105 -105
  470. package/src/components/checkplan/checkmsg.vue +459 -459
  471. package/src/components/checkplan/checkmsgZG.vue +519 -519
  472. package/src/components/cockpit/Splash.vue +85 -85
  473. package/src/components/cockpit/SplashDetail.vue +66 -66
  474. package/src/components/createcheckplan/CreatePlan.vue +1052 -1052
  475. package/src/components/createcheckplan/CreatePlanWuan.vue +1024 -1024
  476. package/src/components/createcheckplan/DelPlanRepeat.vue +318 -318
  477. package/src/components/createcheckplan/DistributePlan.vue +62 -62
  478. package/src/components/createcheckplan/PlanList.vue +433 -433
  479. package/src/components/createcheckplan/PlanUersList.vue +137 -137
  480. package/src/components/defect/DefectDetail.vue +177 -177
  481. package/src/components/defect/DefectDetailWeixiu.vue +177 -177
  482. package/src/components/defect/DefectList.vue +489 -489
  483. package/src/components/defect/DefectMain.vue +63 -63
  484. package/src/components/defect/DefectMainWeixiu.vue +63 -63
  485. package/src/components/defect/DefectPaper.vue +762 -762
  486. package/src/components/defect/DefectPaperWeiXiu.vue +508 -508
  487. package/src/components/defect/ImageViewer.vue +350 -350
  488. package/src/components/defect/ImgButton.vue +118 -118
  489. package/src/components/defect/ImgsButton.vue +62 -62
  490. package/src/components/defects/AddDefectModal.vue +120 -120
  491. package/src/components/defects/AddDevice.vue +95 -95
  492. package/src/components/defects/CheckPaperItem.vue +92 -92
  493. package/src/components/defects/CheckPaperItems.vue +89 -89
  494. package/src/components/defects/CheckPaperSearch.vue +349 -349
  495. package/src/components/defects/CheckPaperSearchMain.vue +55 -55
  496. package/src/components/defects/DefectCondition.vue +180 -180
  497. package/src/components/defects/DefectModal.vue +101 -101
  498. package/src/components/defects/DefectSeting.vue +98 -98
  499. package/src/components/defects/DefectsQuery.vue +190 -190
  500. package/src/components/defects/DevicesAndItem.vue +39 -39
  501. package/src/components/defects/DevicesSeting.vue +106 -106
  502. package/src/components/equipment/BoilerUsage.vue +105 -105
  503. package/src/components/equipment/CheckRate.vue +324 -324
  504. package/src/components/equipment/CheckerRate.vue +333 -333
  505. package/src/components/equipment/CookerUsage.vue +105 -105
  506. package/src/components/equipment/DeviceUsage.vue +105 -105
  507. package/src/components/equipment/FurnaceUsage.vue +105 -105
  508. package/src/components/equipment/GasMeterUsage.vue +109 -109
  509. package/src/components/equipment/HeaterUsage.vue +105 -105
  510. package/src/components/equipment/MonthCheckRate.vue +340 -340
  511. package/src/components/filialCircle/AddCircleFiliale.vue +114 -114
  512. package/src/components/filialCircle/CircleList.vue +139 -139
  513. package/src/components/filialCircle/CircleManage.vue +69 -69
  514. package/src/components/gasusage/GasUsage.vue +126 -126
  515. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  516. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  517. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  518. package/src/components/inspections/Checked.vue +402 -402
  519. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  520. package/src/components/inspections/InsUploadPage.vue +251 -251
  521. package/src/components/inspections/InspectionList.vue +542 -542
  522. package/src/components/inspections/InspectionLists.vue +544 -544
  523. package/src/components/inspections/InspectionListss.vue +544 -544
  524. package/src/components/inspections/inspectionDevices.vue +986 -986
  525. package/src/components/inspections/inspectionFeedback.vue +720 -720
  526. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  527. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  528. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  529. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  530. package/src/components/issueplan/IssuePlanAction.vue +102 -102
  531. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  532. package/src/components/issueplan/IssuePlanQuery.vue +118 -118
  533. package/src/components/json-editor/SafeJsonEditor.vue +212 -212
  534. package/src/components/json-editor/assets/img/jsoneditor-icons.svg +893 -893
  535. package/src/components/json-editor/assets/jsoneditor-minimalist.js +9750 -9750
  536. package/src/components/json-editor/assets/jsoneditor.css +929 -929
  537. package/src/components/json-editor/assets/jsoneditor.js +36376 -36376
  538. package/src/components/json-editor/example/App.vue +53 -53
  539. package/src/components/json-editor/example/index.html +9 -9
  540. package/src/components/json-editor/example/main.js +10 -10
  541. package/src/components/json-editor/package.json +71 -71
  542. package/src/components/json-editor/vue-json-editor.vue +189 -189
  543. package/src/components/levelplan/AdjustPlan.vue +199 -199
  544. package/src/components/levelplan/CheckerLeft.vue +140 -140
  545. package/src/components/levelplan/CheckerPlanAdjust.vue +304 -304
  546. package/src/components/levelplan/CheckerRight.vue +123 -123
  547. package/src/components/map/AMap.vue +70 -70
  548. package/src/components/map/AMapTrailShow.vue +178 -178
  549. package/src/components/map/AMapTrailShowZk.vue +178 -178
  550. package/src/components/map/FootPrintList.vue +45 -45
  551. package/src/components/map/MapCriteriaData.vue +97 -97
  552. package/src/components/map/checkScreen.vue +727 -727
  553. package/src/components/metterfiles/AddUserfiles.vue +246 -246
  554. package/src/components/metterfiles/MetterFiles.vue +104 -104
  555. package/src/components/metterfiles/MetterfilesAdd.vue +168 -168
  556. package/src/components/metterfiles/MetterfilesChange.vue +162 -162
  557. package/src/components/metterfiles/UserFiles.vue +156 -156
  558. package/src/components/metterfiles/Userfileschange.vue +391 -391
  559. package/src/components/notice/NoticeForm.vue +100 -100
  560. package/src/components/notice/NoticeIssue.vue +20 -20
  561. package/src/components/notice/NoticeQuery.vue +76 -76
  562. package/src/components/paper/PaperList.vue +75 -2
  563. package/src/components/paper/PaperVerify.vue +256 -256
  564. package/src/components/paper/PicViewer.vue +18 -18
  565. package/src/components/paper/PlanChooser.vue +159 -159
  566. package/src/components/paper/RepairVerify.vue +139 -139
  567. package/src/components/paper/RepairVerifyForm.vue +76 -76
  568. package/src/components/paper/VerifyForm.vue +107 -107
  569. package/src/components/paper/filialeCheckInfo.vue +111 -111
  570. package/src/components/pc/AnnouncementPC.vue +524 -524
  571. package/src/components/pc/CheckBook.vue +67 -67
  572. package/src/components/pc/CheckBookList.vue +6 -4
  573. package/src/components/pc/CheckBookManage.vue +903 -903
  574. package/src/components/pc/CheckBookUser.vue +77 -77
  575. package/src/components/pc/DeviceChange.vue +1068 -1068
  576. package/src/components/pc/HiddenChart.vue +494 -494
  577. package/src/components/pc/NewCheckpaper.vue +2 -2
  578. package/src/components/pc/PaperChazhiMain.vue +570 -570
  579. package/src/components/pc/PaperDefectMain.vue +584 -584
  580. package/src/components/pc/RoleSelector.vue +122 -122
  581. package/src/components/phonestate/DailyTraffic.vue +57 -57
  582. package/src/components/phonestate/FootprintMap.vue +129 -129
  583. package/src/components/phonestate/LastKnownState.vue +74 -74
  584. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  585. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  586. package/src/components/phonestate/PostMap.vue +82 -82
  587. package/src/components/plancheck/CheckPlanAreaManage.vue +116 -116
  588. package/src/components/plancheck/CheckPlanList.vue +282 -282
  589. package/src/components/planmanage/PlanManage.vue +753 -753
  590. package/src/components/planmanage/checkPlanList.vue +341 -341
  591. package/src/components/querycheckpaper/CheckPaperList.vue +127 -127
  592. package/src/components/querycheckpaper/CheckPaperSearchUser.vue +67 -67
  593. package/src/components/querycheckpaper/CheckSearchUser.vue +97 -6
  594. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  595. package/src/components/querycheckpaper/PaperItems.vue +79 -79
  596. package/src/components/querycheckpaper/PaperSearch.vue +126 -126
  597. package/src/components/querycheckpaper/PaperSearchMain.vue +56 -56
  598. package/src/components/querycheckpaper/ShebeiPaperList.vue +121 -121
  599. package/src/components/querycheckpaper/ShebeiPaperSearchUser.vue +67 -67
  600. package/src/components/querycheckpaper/ShebeiSearchUser.vue +690 -690
  601. package/src/components/report/CheckPlanAreaList.vue +449 -449
  602. package/src/components/report/CheckPlanAreaManage.vue +111 -111
  603. package/src/components/report/CheckPlanUserList.vue +216 -216
  604. package/src/components/report/HiddenSituation.vue +112 -112
  605. package/src/components/report/ManageBusSummary.vue +242 -242
  606. package/src/components/report/SafePlanSale.vue +111 -111
  607. package/src/components/report/SafePlanStatistics.vue +118 -118
  608. package/src/components/rongcheng/AddPlanItem.vue +315 -315
  609. package/src/components/rongcheng/AreaPlan.vue +470 -470
  610. package/src/components/rongcheng/AspPaperFeedback.vue +1179 -1179
  611. package/src/components/rongcheng/AspPaperStatem.vue +339 -339
  612. package/src/components/rongcheng/AspiratedAreaPlan.vue +464 -464
  613. package/src/components/rongcheng/AspiratedCurrentCreate.vue +1036 -1036
  614. package/src/components/rongcheng/AspiratedDevices.vue +966 -966
  615. package/src/components/rongcheng/AspiratedOrderV.vue +2376 -2376
  616. package/src/components/rongcheng/AspiratedPaperFeedbackm.vue +1019 -1019
  617. package/src/components/rongcheng/AspiratedPaperMessage.vue +1378 -1378
  618. package/src/components/rongcheng/AspiratedPaperMessageNocivil.vue +1288 -1288
  619. package/src/components/rongcheng/AspiratedUploadPage.vue +293 -293
  620. package/src/components/rongcheng/AspiratedUserInfo.vue +399 -399
  621. package/src/components/rongcheng/CheckCurrentCreate.vue +1046 -1046
  622. package/src/components/rongcheng/CheckPaperList.vue +134 -134
  623. package/src/components/rongcheng/CheckPaperSearchUser.vue +55 -55
  624. package/src/components/rongcheng/CheckPaperSearchUserNo.vue +55 -55
  625. package/src/components/rongcheng/CheckSearchUser.vue +826 -826
  626. package/src/components/rongcheng/CheckSearchUserNo.vue +757 -757
  627. package/src/components/rongcheng/DefectList.vue +560 -560
  628. package/src/components/rongcheng/DefectPaper.vue +638 -638
  629. package/src/components/rongcheng/PaperFeedback.vue +1318 -1318
  630. package/src/components/rongcheng/PaperListAJ.vue +501 -501
  631. package/src/components/rongcheng/PaperListNPAJ.vue +498 -498
  632. package/src/components/rongcheng/PaperListNPSQ.vue +485 -485
  633. package/src/components/rongcheng/PaperListSQ.vue +483 -483
  634. package/src/components/rongcheng/PaperMessage.vue +1186 -1186
  635. package/src/components/rongcheng/PaperMessageNocivil.vue +1211 -1211
  636. package/src/components/rongcheng/PaperStateNoncivilm.vue +366 -366
  637. package/src/components/rongcheng/PaperStatem.vue +343 -343
  638. package/src/components/rongcheng/PhoneDevicesInfo.vue +233 -233
  639. package/src/components/rongcheng/SafecheckDevices.vue +998 -998
  640. package/src/components/rongcheng/SafecheckOrderV.vue +2476 -2476
  641. package/src/components/rongcheng/SafecheckOrderVCli.vue +2594 -2594
  642. package/src/components/rongcheng/SafecheckUserInfo.vue +439 -439
  643. package/src/components/rongcheng/UploadPage.vue +328 -328
  644. package/src/components/rongcheng/checkerplan/SelectCheckPlan.vue +285 -285
  645. package/src/components/rongcheng/report/CheckPlanAreaList.vue +419 -419
  646. package/src/components/rongcheng/report/CheckPlanUserList.vue +228 -228
  647. package/src/components/safecheck/common/TabButton.vue +157 -157
  648. package/src/components/safecheck/common/Tabs.vue +67 -67
  649. package/src/components/safecheck/queryManage/CheckBookAll.vue +71 -71
  650. package/src/components/safecheck/queryManage/SafeCheckManage.vue +88 -88
  651. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  652. package/src/components/sendsingle/onlineChangeMeter.vue +658 -658
  653. package/src/components/sendsingle/onlineoperation.vue +411 -411
  654. package/src/components/sendsingle/onlinequeryuser.vue +363 -363
  655. package/src/components/shaoguan/CheckPlanUserList.vue +119 -119
  656. package/src/components/shaoguan/DefectDetail.vue +177 -177
  657. package/src/components/shaoguan/DefectList.vue +473 -473
  658. package/src/components/shaoguan/DefectMain.vue +53 -53
  659. package/src/components/shaoguan/DefectPaper.vue +217 -217
  660. package/src/components/shaoguan/PaperList.vue +533 -533
  661. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  662. package/src/components/task/RepairAnnual.vue +79 -79
  663. package/src/components/task/RepairAnnualDetail.vue +49 -49
  664. package/src/components/task/RepairMonthly.vue +91 -91
  665. package/src/components/task/TaskAnnual.vue +77 -77
  666. package/src/components/task/TaskAnnualDetail.vue +47 -47
  667. package/src/components/task/TaskMonthly.vue +89 -89
  668. package/src/components/tongcheng/AreaPlan.vue +458 -458
  669. package/src/components/tongcheng/CurrentCreate.vue +625 -625
  670. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  671. package/src/components/tongcheng/PaperMessage.vue +1270 -1270
  672. package/src/components/tongcheng/PaperMessageNocivil.vue +1228 -1228
  673. package/src/components/tongcheng/PaperSet.vue +1958 -1958
  674. package/src/components/tongcheng/PaperUser.vue +533 -533
  675. package/src/components/userfile/InfoModifyModal.vue +122 -122
  676. package/src/components/userfile/MeterFile.vue +145 -145
  677. package/src/components/userfile/MeterModify.vue +46 -46
  678. package/src/components/userfile/UserFile.vue +118 -118
  679. package/src/components/userfile/UserInfoAudit.vue +252 -252
  680. package/src/components/userfile/UserfileChange.vue +277 -277
  681. package/src/components/userfile/UserinfoModify.vue +117 -117
  682. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  683. package/src/components/userfileaudit/UserFileaudit.vue +81 -81
  684. package/src/components/userfileaudit/UserfileChangeaudit.vue +239 -239
  685. package/src/expandcss.less +571 -571
  686. package/src/expandcssAndroid.less +520 -520
  687. package/src/filiale/ALshan/pc/CheckSearchUser.vue +927 -927
  688. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +473 -473
  689. package/src/filiale/ALshan/pc.js +15 -15
  690. package/src/filiale/Util.js +325 -325
  691. package/src/filiale/huatong/android/SafecheckDevices.vue +928 -928
  692. package/src/filiale/huatong/android/SafecheckOrderV.vue +2398 -2398
  693. package/src/filiale/huatong/android.js +14 -14
  694. package/src/filiale/huatong/pc.js +13 -13
  695. package/src/filiale/liaoyuan/android/SafecheckDevices.vue +928 -928
  696. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2383 -2383
  697. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +550 -550
  698. package/src/filiale/liaoyuan/android.js +14 -14
  699. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +483 -483
  700. package/src/filiale/liaoyuan/pc/DefectPaperWeiXiu.vue +975 -975
  701. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  702. package/src/filiale/liaoyuan/pc/PaperList.vue +657 -657
  703. package/src/filiale/liaoyuan/pc.js +15 -15
  704. package/src/filiale/lixian/android/SafecheckDevices.vue +1022 -1022
  705. package/src/filiale/lixian/android/SafecheckOrderV.vue +2403 -2403
  706. package/src/filiale/lixian/android/SafecheckUserInfo.vue +586 -586
  707. package/src/filiale/lixian/android.js +14 -14
  708. package/src/filiale/lixian/pc/CheckPlanAreaList.vue +461 -461
  709. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  710. package/src/filiale/lixian/pc/PaperChazhiMain.vue +607 -607
  711. package/src/filiale/lixian/pc/PaperDefectMain.vue +617 -617
  712. package/src/filiale/lixian/pc/PaperList.vue +686 -686
  713. package/src/filiale/lixian/pc.js +22 -22
  714. package/src/filiale/rongchuang/pc/checkUserList.vue +594 -594
  715. package/src/filiale/rongchuang/pc.js +13 -13
  716. package/src/filiale/shimen/android/CurrentCreate.vue +979 -979
  717. package/src/filiale/shimen/android/PaperFeedback.vue +1341 -1341
  718. package/src/filiale/shimen/android/PhoneSellInfo.vue +88 -88
  719. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  720. package/src/filiale/shimen/android.js +12 -12
  721. package/src/filiale/shimen/pc/CheckPlanAreaList.vue +463 -463
  722. package/src/filiale/shimen/pc/CheckSearchUser.vue +927 -927
  723. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  724. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  725. package/src/filiale/shimen/pc/PaperDefectMain.vue +656 -656
  726. package/src/filiale/shimen/pc/PaperList.vue +613 -613
  727. package/src/filiale/shimen/pc/checkmsg.vue +248 -248
  728. package/src/filiale/shimen/pc.js +21 -21
  729. package/src/filiale/tongchuan/android/PaperFeedback.vue +1350 -1350
  730. package/src/filiale/tongchuan/android/SafecheckDevices.vue +1112 -1112
  731. package/src/filiale/tongchuan/android/SafecheckOrderV.vue +2575 -2575
  732. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +640 -640
  733. package/src/filiale/tongchuan/android/UploadPage.vue +285 -285
  734. package/src/filiale/tongchuan/android.js +13 -13
  735. package/src/filiale/tongchuan/pc/CheckPlanUserList.vue +245 -245
  736. package/src/filiale/tongchuan/pc/CheckSearchUser.vue +956 -956
  737. package/src/filiale/tongchuan/pc/DefectPaper.vue +764 -764
  738. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +509 -509
  739. package/src/filiale/tongchuan/pc/NewCheckpaper.vue +1267 -1267
  740. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +634 -634
  741. package/src/filiale/tongchuan/pc/PaperList.vue +677 -677
  742. package/src/filiale/tongchuan/pc/checkUserList.vue +593 -593
  743. package/src/filiale/tongchuan/pc.js +21 -21
  744. package/src/filiale/wenxi/android/CurrentCreate.vue +1047 -1047
  745. package/src/filiale/wenxi/android/PaperFeedback.vue +1378 -1378
  746. package/src/filiale/wenxi/android/SafecheckDevices.vue +1053 -1053
  747. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2472 -2472
  748. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +584 -584
  749. package/src/filiale/wenxi/android/UploadPage.vue +285 -285
  750. package/src/filiale/wenxi/android.js +14 -14
  751. package/src/filiale/wenxi/pc/DefectPaper.vue +662 -662
  752. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1169 -1169
  753. package/src/filiale/wenxi/pc/PaperDefectMain.vue +634 -634
  754. package/src/filiale/wenxi/pc/PaperList.vue +860 -860
  755. package/src/filiale/wenxi/pc/checkmsg.vue +302 -302
  756. package/src/filiale/wenxi/pc.js +16 -16
  757. package/src/filiale/wuan/android/AreaPlan.vue +513 -513
  758. package/src/filiale/wuan/android/CurrentCreate.vue +985 -985
  759. package/src/filiale/wuan/android/CurrentCreateSheBei.vue +999 -999
  760. package/src/filiale/wuan/android/SafecheckDevices.vue +1150 -1150
  761. package/src/filiale/wuan/android/SafecheckOrderV.vue +2237 -2237
  762. package/src/filiale/wuan/android/SafecheckUserInfo.vue +571 -571
  763. package/src/filiale/wuan/android.js +17 -17
  764. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  765. package/src/filiale/wuan/pc/DefectPaperWeiXiu.vue +514 -514
  766. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  767. package/src/filiale/wuan/pc/PaperList.vue +628 -628
  768. package/src/filiale/wuan/pc.js +19 -19
  769. package/src/filiale/wuhai/android/AreaPlan.vue +529 -529
  770. package/src/filiale/wuhai/android/PaperFeedback.vue +1350 -1350
  771. package/src/filiale/wuhai/android.js +12 -12
  772. package/src/filiale/wuhai/pc/checkUserList.vue +594 -594
  773. package/src/filiale/wuhai/pc.js +13 -13
  774. package/src/filiale/zhongsheng/android/PaperFeedback.vue +1341 -1341
  775. package/src/filiale/zhongsheng/android/PhoneUpUserinfo.vue +926 -926
  776. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2447 -2447
  777. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +591 -591
  778. package/src/filiale/zhongsheng/android.js +17 -17
  779. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  780. package/src/filiale/zhongsheng/pc/DefectPaperWeiXiu.vue +511 -511
  781. package/src/filiale/zhongsheng/pc/InfoModifyModal.vue +123 -123
  782. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1308 -1308
  783. package/src/filiale/zhongsheng/pc/UserInfoAudit.vue +252 -252
  784. package/src/filiale/zhongsheng/pc/UserinfoModify.vue +121 -121
  785. package/src/filiale/zhongsheng/pc.js +15 -15
  786. package/src/filiale/zhoukou/android/AndroidDefectDeal.vue +408 -408
  787. package/src/filiale/zhoukou/android/AreaPlan.vue +543 -543
  788. package/src/filiale/zhoukou/android/CurrentCreate.vue +1014 -1014
  789. package/src/filiale/zhoukou/android/PaperFeedback.vue +1367 -1367
  790. package/src/filiale/zhoukou/android/PhoneUpUserinfo.vue +957 -957
  791. package/src/filiale/zhoukou/android/SafecheckDevices.vue +1174 -1174
  792. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  793. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  794. package/src/filiale/zhoukou/android/UploadPage.vue +301 -301
  795. package/src/filiale/zhoukou/android.js +18 -18
  796. package/src/filiale/zhoukou/pc/CheckSearchUser.vue +923 -923
  797. package/src/filiale/zhoukou/pc/PaperDefectMain.vue +531 -531
  798. package/src/filiale/zhoukou/pc.js +15 -15
  799. package/src/index.js +17 -17
  800. package/src/main.js +33 -33
  801. package/src/plugins/EmojiData.js +514 -514
  802. package/src/plugins/GerJsonConfig.js +59 -59
  803. package/src/plugins/GerJsonObjectConfig.js +44 -44
  804. package/src/plugins/LoadData.js +10 -10
  805. package/src/plugins/LoadParams.js +24 -24
  806. package/src/plugins/LocalPagedList.js +108 -108
  807. package/src/plugins/LocalPathList.js +109 -109
  808. package/src/rongcheng-android.js +193 -193
  809. package/src/rongcheng.js +304 -304
  810. package/src/safecheck-android.js +225 -225
  811. package/src/safecheck.js +723 -723
  812. package/src/shaoguan-android.js +176 -176
  813. package/src/shaoguan.js +276 -276
  814. package/src/stores/AppData.js +46 -46
  815. package/src/stores/wxconfig.js +10 -10
  816. package/src/tongchengsafe-android.js +162 -162
  817. package/src/tongchengsafecheck.js +267 -267
  818. package/src/utils/GerJsonObjectConfig.js +51 -51
  819. package/src/utils/LdapHelper.js +99 -99
  820. package/src/utils/getNowDate.js +33 -33
  821. package/test/SearchList.test.js +14 -14
  822. package/test/e2e/custom-assertions/elementCount.js +26 -26
  823. package/test/e2e/nightwatch.conf.js +40 -40
  824. package/test/e2e/runner.js +30 -30
  825. package/test/e2e/specs/test.js +13 -13
  826. package/test/unit/.eslintrc +5 -5
  827. package/test/unit/TestUtil.js +62 -62
  828. package/test/unit/context.html +20 -20
  829. package/test/unit/index.js +13 -13
  830. package/test/unit/init.js +11 -11
  831. package/test/unit/karma.conf.js +53 -53
  832. package/test/unit/specs/Devices.spec.js +18 -18
  833. package/test/unit/specs/getArrobjconfig.spec.js +104 -104
  834. package/test/unit/specs/getobjconfig.spec.js +37 -37
  835. package/test/unit/specs/phonetest/phonesafecheck.spec.js +23 -23
  836. package/test/unit/specs/safePlanItem.spec.js +30 -30
  837. package/test/unit/specs/safecheck-android.spec.js +7 -7
  838. package/test/unit/specs/safecheck.spec.js +127 -127
  839. package/yarn-error.log +140 -140
@@ -1,1545 +1,1545 @@
1
- import {SearchList, date} from 'vue-client'
2
- import {PagedList} from 'vue-client'
3
- import {HttpResetClass,trans} from 'vue-client'
4
- import Vue from "vue"
5
- import ObjConfig from '../../src/plugins/GerJsonObjectConfig'
6
-
7
- export default class Comp {
8
-
9
-
10
- needconfig= {}
11
- isSend=true
12
- // 用户安检信息列表
13
- user = new SearchList(true)
14
- //遍历的按钮
15
- listbutton=[]
16
- fdevices=[]
17
- // 安检计划列表
18
- checkplan = new SearchList(true)
19
- // 安检计划的安检单列表
20
- checkplanitems = new SearchList(true)
21
- //按钮隐藏判断
22
- suppplanitem={}
23
- orderList= ['按时间降序', '按时间升序']//排序下拉框的值
24
- currentorder='按时间降序'//排序下拉框当前选中的值
25
- // 新增安检计划时保存的数据
26
- newPlan = {f_issued:"否",f_safecheck_type:""}
27
- http = new HttpResetClass()
28
- //查询计划弹框中是否共享选项
29
- isAndNot = ["是", "否"]
30
- //是否开启共享计划
31
- disableIssude=false
32
- //是否显示添加用户删除用户按钮
33
- disableButton=false
34
-
35
- //用户类型
36
- userType=["民用","非民用"]
37
- listbuttona=[]
38
- listbuttonb=[]
39
- listbuttonc=[]
40
- listbuttond=[]
41
- //安检计划查询中的是否是共享计划单选的当前选中值
42
- sIsAndNotSelect=''
43
- //用户列表的自选查询条件的值
44
- userCondition=["请选择条件","用户类型","地址"]
45
- //当前选中的下拉值
46
- userConditionSelect="请选择条件"
47
- //当前输入的值
48
- userConditionValue=""
49
- //计划项列表自选查询条件的值
50
- planItemCondition=["请选择条件","用户编号","用户名称"]
51
- //
52
- planItemConditional={}
53
- //入户状态
54
- userState=["到访不遇","拒检","入户"]
55
- //燃气使用
56
- gasUse=["已使用","未使用"]
57
- //当前选中的下拉值
58
- planItemConditionSelect="请选择条件"
59
- //当前输入的值
60
- planItemConditionValue=""
61
- sudeState=['全部','是','否']
62
- issude=''
63
- //safecheckTypeList=Vue.$appdata.getParam("安检类型")
64
- safecheckTypeList=[]
65
- //片区列表
66
- sliceArea=[]
67
- //抄表册
68
- cbc=[]
69
- //保存当前公司所有抄表册
70
- meterbooks=[]
71
- //分公司列表
72
- orgs=[]
73
- //安检员列表
74
- checker=[]
75
- checkersname=[]
76
- //新建计划时保存是否共享计划的值,
77
- isShare="否"
78
- //安检类型
79
- safecheckList=[]
80
- //时间单位
81
- unitTime=["天","月"]
82
- selectTime="天"
83
- startday=""
84
- endday=""
85
- str=[]
86
- //用气性质
87
- gasproperties=[]
88
- //当前打开的安检计划id
89
- SelectedPlan=""
90
- //燃气表增添项
91
- //excel导入组件显示控制
92
- showModel=false
93
- gasexpress=[{"lname":"燃气表照片","type":"picture"},
94
- {"lname":"表品牌","type":"string","readonly":true},
95
- {"lname":"表号","type":"string","readonly":true},
96
- {"lname":"表封号","type":"number","readonly":true},
97
- {"lname":"表型号","type":"string","readonly":true},
98
- {"lname":"位置","type":"string","readonly":true},
99
- {"lname":"表底数","type":"number","readonly":true},
100
- {"lname":"左右表","type":"string","readonly":true}]
101
- //当前分公司id
102
- filialeid=global.login.orgid
103
- filialeidname=global.login.orgs
104
-
105
- //filialeid=287
106
- //filialeidname="梁平区聚源天然气有限公司"
107
- yearCheckList=['全部','已在计划中','未在计划中']
108
- yChecked=""
109
- //用户列表查询条件json
110
- conditionJson=[
111
- {column:"f_residential_area",checkname:"小区名称",type:"input"},
112
- {column:"f_building",checkname:"楼栋号码",type:"input"},
113
- {column:"f_unit",checkname:"单元号码",type:"input"},
114
- {column:"userType",checkname:"用户类型",type:"selector",options:['民用','非民用']},
115
- {column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用','待审核','销户']},
116
- {column:"user_start",checkname:"开户起始",type:"date"},
117
- {column:"user_end",checkname:"开户结束",type:"date"},
118
- {column:"check_start",checkname:"安检起始",type:"date"},
119
- {column:"check_end",checkname:"安检结束",type:"date"},
120
- {column:"f_metertitles",checkname:"表箱号",type:"input"},
121
- {column:"f_gasproperties",checkname:"用气性质",type:"selector",options:this.gasproperties}
122
- //{column:"f_backlist",checkname:"是否拉黑",type:"selector",options:['是','否']}
123
- ]
124
- /* conditionList=[
125
- {selectitem:{column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用','待审核','销户']},selectValue:'正常',num:0},
126
- {selectitem:{column:"f_metertitles",checkname:"表箱号",type:"input"},selectValue:'',num:1},
127
- {selectitem:{column:"f_gasproperties",checkname:"用气性质",type:"selector",options:this.gasproperties},selectValue:'',num:2},
128
- //{selectitem:{column:"f_backlist",checkname:"是否拉黑",type:"selector",options:['是','否']},selectValue:'',num:3},
129
- {selectitem:{column:"user_start",checkname:"开户起始",type:"date"},selectValue:'',num:3},
130
- {selectitem:{column:"user_end",checkname:"开户结束",type:"date"},selectValue:'',num:4},
131
- {selectitem:{column:"check_start",checkname:"安检起始",type:"date"},selectValue:'',num:5},
132
- {selectitem:{column:"check_end",checkname:"安检结束",type:"date"},selectValue:'',num:6}
133
- ]*/
134
- conditionList=[
135
- {selectitem:{column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用','待审核','销户']},selectValue:'',num:0},
136
- {selectitem:{column:"f_metertitles",checkname:"表箱号",type:"input"},selectValue:'',num:1},
137
- {selectitem:{column:"f_gasproperties",checkname:"用气性质",type:"selector",options:this.gasproperties},selectValue:'',num:2},
138
- //{selectitem:{column:"f_backlist",checkname:"是否拉黑",type:"selector",options:['是','否']},selectValue:'',num:3},
139
- {selectitem:{column:"user_start",checkname:"开户起始",type:"date"},selectValue:'',num:3},
140
- {selectitem:{column:"user_end",checkname:"开户结束",type:"date"},selectValue:'',num:4},
141
- {selectitem:{column:"check_start",checkname:"安检起始",type:"date"},selectValue:'',num:5},
142
- {selectitem:{column:"check_end",checkname:"安检结束",type:"date"},selectValue:'',num:6}
143
- ]
144
- //安检项列表查询条件
145
- planitemconditionJson=[
146
- {column:"f_last_check_state",checkname:"安检状态",type:"selector",options:['入户','拒检','到访不遇','未使用']},
147
- {column:"f_start_time",checkname:"开始时间",type:"date"},
148
- {column:"f_end_time",checkname:"结束时间",type:"date"},
149
- {column:"f_last_check_result",checkname:"隐患状态",type:"selector",options:['正常','有隐患']},
150
- {column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用','待审核','销户']},
151
- {column:"f_state1",checkname:"安检结果",type:"selector",options:['已检','未检']}
152
- ]
153
- planitemconditionList=[
154
- {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:0},
155
- {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:1},
156
- {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:2}
157
- ]
158
- //下拉框条件改变json数组
159
- conditionListChange(modelname,ind,key,value,f){
160
- console.log("------------"+ind+"-------------")
161
- this[modelname][ind]["num"]=ind
162
- this[modelname][ind][key]=value
163
- f()
164
- }
165
- //添加选择条件下拉框事件
166
-
167
- addconditionList(field,f){
168
- this[field].push({selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:this.conditionList.length})
169
- f()
170
- }
171
- //删除选择条件下拉框事件
172
- deletecondition(field,modelname,index,f){
173
- //如果有这个属性,说明已经选择过,去清空条件数组里的值
174
- if(this[field][index].selectitem.column){
175
- this.setProperty(modelname,this[field][index].selectitem.column,"")
176
- }
177
- this[field].splice(index,1)
178
-
179
- for (let i =0 ;i<this[field].length;i++){
180
- this.conditionList[i].num=i
181
- }
182
- f()
183
- }
184
- async ready() {
185
- await this.getOrgs()
186
- // 加载所有安检计划
187
- await this.checkplan.searchList("/rs/sql/预约计划下发", {},{groupitem:"",f_filialeids:"("+this.filialeid+")",orderitem:"f_create_time desc"})
188
- // this.getAreaList()
189
- //加载安检员名单
190
- console.log("-----------------")
191
- console.log(Vue.$appdata)
192
- console.log("当前加载到的信息:"+JSON.stringify(global.login))
193
- this.disableIssude=Vue.$appdata.getSingleValue('共享计划')
194
- this.disableButton=Vue.$appdata.getSingleValue('派发按钮')
195
- this.formatArrayFun('gasproperties',Vue.$appdata.getParam('用气性质'))
196
- this.formatArrayFun('safecheckTypeList',Vue.$appdata.getParam('安检类型'))
197
- this.formatArrayFun('safecheckList',Vue.$appdata.getParam('安检类型'))
198
- this.searchChecker(global.login.id)
199
- /*this.setProperty('checkplan','safechecktype','年度普检')*/
200
- await this.Mreadibook()
201
- await this.getSliceArea()
202
- }
203
- //补录功能组装数据
204
- zzsj(){
205
- let deviceconfig=ObjConfig.getObjConfig(this.needconfig.safecheck.DevicesConfig)
206
- console.log("=============ZZSJ1>"+JSON.stringify(deviceconfig))
207
- for (let i = 0; i < deviceconfig.length; i++) {
208
- console.log("==============>"+JSON.stringify(deviceconfig[i]))
209
- console.log("==============>"+JSON.stringify(deviceconfig[i].index))
210
- this.str[deviceconfig[i].index-1]=deviceconfig[i]
211
- console.log("===========ZZSJ2>"+JSON.stringify(this.str[deviceconfig[i].index]))
212
- }
213
- }
214
- readConfig () {
215
- let http = new HttpResetClass()
216
- http.load('GET', `/phone/rs/vue`, {}, {resolveMsg: null, rejectMsg: null}).then(res => {
217
- this.needconfig = res.data
218
- console.log("请求得到的数据"+JSON.stringify(this.needconfig))
219
- let aa=this.needconfig.safecheck.DevicesConfig
220
- this.zzsj()
221
- })
222
-
223
- }
224
- //当前页面属性发生改变事件
225
- fieldChange(modelname,value,f){
226
- console.log("-------fieldChange"+value)
227
- if(modelname=="user" || modelname=="checkplan" || modelname=="checkplanitems"){
228
- this.setProperty(modelname,"checkername",value.name)
229
- this.setProperty(modelname,"checkerid",value.id)
230
- f()
231
- return
232
- }
233
- if(modelname=="createPlan"){
234
- this.newPlan.f_checker_id=value.id
235
- this.newPlan.f_checker=value.name
236
- f()
237
- return
238
- }
239
- if(modelname=="upPlan"){
240
- this.plan.f_checker= value.name
241
- this.plan.f_checker_id=value.id
242
- f()
243
- return
244
- }
245
- if(value=='全部'){
246
- this[modelname]=''
247
- }else{
248
- this[modelname]=value
249
- }
250
- f()
251
- }
252
- async orgChange(value,f){
253
- console.log("----orgChange"+JSON.stringify(value))
254
- if(value.value==this.filialeid){
255
- f()
256
- return
257
- }
258
- this.filialeid=value.value
259
- this.filialeidname=value.label
260
- this.user = new SearchList(true)
261
- this.checkplanitems = new SearchList(true)
262
- this.searchChecker(global.login.id)
263
- await this.Mreadibook()
264
- await this.getSliceArea()
265
- await this.checkplan.searchList("/rs/sql/预约计划下发", {},{groupitem:"",f_filialeids:"("+this.filialeid+")",orderitem:"f_create_time desc"})
266
- f()
267
- }
268
- //json下拉改变时间
269
- selectChanged(modelname,key,valuename,value,f){
270
- console.log('value[valuename]'+modelname+key+valuename+'----'+JSON.stringify(value))
271
- if(value.label=='全部' || !value){
272
- this[modelname].search.setField(key, '')
273
- this[modelname].search.setField(key+'name', '全部')
274
- }else{
275
- console.log("value[valuename]"+value[valuename])
276
- this[modelname].search.setField(key, value.value)
277
- this[modelname].search.setField(key+'name', value.label)
278
- }
279
- f()
280
- }
281
- jointCondition1(field,modelname){
282
- for (let i =0 ;i<this[field].length;i++){
283
- if(!this[field][i].selectValue){
284
- continue
285
- }
286
- console.log("this[field][i].column:"+this[field][i].column+"---"+"this[field][i].selectValue"+this[field][i].selectValue)
287
- this.setProperty(modelname,this[field][i].selectitem.column,this[field][i].selectValue)
288
- }
289
- }
290
- //根据选择框内容设置属性值
291
- jointCondition(modelname){
292
-
293
- if(modelname="user"){
294
- this.setProperty("user","usertype","")
295
- this.setProperty("user","address","")
296
- switch(this.userConditionSelect){
297
- case "用户类型":
298
- this.setProperty("user","usertype",this.userConditionValue)
299
- break;
300
- case "地址":
301
- this.setProperty("user","address",this.userConditionValue)
302
- break;
303
- }
304
- }
305
- if(modelname="checkplanitems"){
306
- this.setProperty("checkplanitems","usercode","")
307
- this.setProperty("checkplanitems","username","")
308
- switch(this.planItemConditionSelect){
309
- case "用户编号":
310
- this.setProperty("checkplanitems","usercode",this.planItemConditionValue)
311
- break;
312
- case "用户名称":
313
- this.setProperty("checkplanitems","username",this.planItemConditionValue)
314
- break;
315
- }
316
- }
317
- }
318
-
319
- //是否共享计划单选按钮事件
320
- isAndNotChange(isAndNotselect){
321
- this.sIsAndNotSelect=isAndNotselect
322
- if(this.sIsAndNotSelect=="是"){
323
- this.setProperty("checkplan","isAndNot","is null")
324
- }
325
- if(this.sIsAndNotSelect=="否"){
326
- this.setProperty("checkplan","isAndNot","is not null")
327
- }
328
- }
329
-
330
- //按条件查询所有安检计划
331
- async loadCheckPlan(sortfield,f) {
332
- this.isSend=true
333
- this.checkplan.check.checkes=[]
334
- if(sortfield){//如果传入空串说明是查询 传入非空串就是排序
335
- console.log("进入排序")
336
- if(sortfield==this.currentorder){
337
- this.isSend=false
338
- return
339
- }else{
340
- this.currentorder=sortfield
341
- }
342
- }
343
- let fieldValue=''
344
- switch(this.currentorder){
345
- case "按时间降序":
346
- fieldValue='f_create_time desc'
347
- break
348
- case "按时间升序":
349
- fieldValue='f_create_time'
350
- break
351
- }
352
- console.log("值"+sortfield+"--当前值"+this.currentorder+"---排序值:"+fieldValue)
353
- await this.checkplan.searchList("/rs/sql/预约计划下发",
354
- {"f_plan_name": "f_plan_name like '%{}%'",
355
- "f_plan_year":"f_plan_year={}",
356
- "f_plan_month":"f_plan_month={}",
357
- "checkerid":"f_checker_id={}",
358
- "isAndNot":"f_checker {}",
359
- "safechecktype":"f_safecheck_type='{}'",
360
- "issude":"f_issued = '{}'"
361
- },
362
- {orderitem:fieldValue,
363
- f_filialeids:"("+this.filialeid+")",
364
- groupitem:""
365
- }
366
- )
367
- //调刷新函数????
368
- console.log('调刷新函数????--')
369
- f()
370
- this.isSend=false
371
- }
372
-
373
- // 查询待检用户
374
- async searchUser(f) {
375
- this.isSend=true
376
- this.user.check.checkes=[]
377
- this.jointCondition1("conditionList","user")
378
- let sday=''
379
- let eday=''
380
- if(this.startday.trim()!=''){
381
- if(isNaN(this.startday) || isNaN(this.endday)){
382
- Vue.showMessage("请输入数字!")
383
- return
384
- }
385
- if(this.selectTime=="月"){
386
- sday= this.startday*30
387
- this.endday.trim()!=''?eday= this.endday*30:eday=''
388
- }else{
389
- sday= this.startday
390
- this.endday.trim()!=''?eday= this.endday:eday=''
391
- }
392
- if(eday){
393
- this.setProperty("user","checkTime"," DATEDIFF(dd,ua.f_last_check_date,GETDATE())>="+parseInt(sday,10)+" and DATEDIFF(dd,ua.f_last_check_date,GETDATE())<="+parseInt(eday,10))
394
- }else{
395
- this.setProperty("user","checkTime"," DATEDIFF(dd,ua.f_last_check_date,GETDATE())>="+parseInt(sday,10))
396
- }
397
- }else{
398
- this.setProperty("user","checkTime","")
399
- }
400
- if(this.yChecked=='已在计划中'){
401
- this.setProperty("user","ychecked","ua.f_plan_id is not null")
402
- }else if(this.yChecked=='未在计划中'){
403
- this.setProperty("user","ychecked","ua.f_plan_id is null")
404
- }else{
405
- this.setProperty("user","ychecked","")
406
- }
407
- if(this.user.search.model.f_backlist){
408
- if(this.user.search.model.f_backlist=='是'){
409
- this.setProperty("user","f_backlist"," up.id is not null")
410
- }else if(this.user.search.model.f_backlist=='否'){
411
- this.setProperty("user","f_backlist"," up.id is null")
412
- }else{
413
- this.setProperty("user","f_backlist","")
414
- }
415
- }
416
- this.user.search.setField("f_filialeid",this.filialeid)
417
- await this.user.searchList("/rs/sql/FetchUserFileByOrgNoRuHuSXQ", {
418
- "f_filialeid": "ui.f_filialeid={}",
419
- "userinfocode": "ui.f_userinfo_code='{}'",
420
- "username": "ui.f_user_name like '%{}%'",
421
- "useraddress": "ua.f_address like '%{}%'",
422
- "userType":"uf.f_user_type='{}'",
423
- "f_residential_area":"ua.f_residential_area = '{}'",
424
- "f_building":"ua.f_building='{}'",
425
- "f_unit":"ua.f_unit='{}'",
426
- "f_user_state":"ui.f_user_state='{}'",
427
- "checkTime":" {}",
428
- "meterbook":"uf.f_meter_book_num='{}'",
429
- "user_start":" uf2.f_dateofopening >='{}'",
430
- "user_end":" uf2.f_dateofopening <='{}'",
431
- "check_start":" ua.f_last_check_date >='{}'",
432
- "check_end":" ua.f_last_check_date<= '{}'",
433
- "area":" f_book_slice_area ='{}'",
434
- "ychecked":" {}",
435
- "f_metertitles":" uf2.f_metertitles='{}'",
436
- "f_gasproperties":" uf.f_gasproperties='{}'",
437
- "uploadCondition":" {}",
438
- "f_backlist":" {}"
439
- }, {
440
- "orderitem": 'f_residential_area,f_building,f_unit,f_floor,f_room',
441
- "f_usertype": '',
442
- "month": '',
443
- "SafeCheckSX": {"f_check_start": '', "f_check_end": ''},
444
- "SafeCheckCQ": '',
445
- "startday":"",
446
- "endday":""
447
- })
448
- f()
449
- this.isSend=false
450
- }
451
-
452
- //查询安检员selectChanged
453
- async searchChecker(id){
454
- let res=await this.http.load('POST', '/rs/search', {
455
- source: 'tool.getChildrenOfResName($安检员$)',
456
- userid: id
457
- }, {resolveMsg: null, rejectMsg: null})
458
- this.checker=[]
459
- res.data.forEach((resRow) => {
460
- if(resRow.orgid==this.filialeid){
461
- this.checker.push(resRow)
462
- }
463
- })
464
- console.log("安检员列表---"+JSON.stringify(res)+"---id"+this.filialeid)
465
- }
466
-
467
- async searchPlanItems(f) {
468
- await this.checkplanitems.searchList("/rs/sql/planItem", {"f_plan_id": "f_plan_id={}"}, {})
469
- f()
470
- }
471
- //得到更新数据
472
- async getPaper(id,f) {
473
- let res=await this.http.load("POST", "/rs/path/getUserinfomation", {
474
- data:{
475
- condition:"f_check_item_id='"+id+"'"
476
- }
477
- })
478
-
479
-
480
- this.suppplanitem=res.data[0]
481
- if (this.suppplanitem.f_check_type!=null) {
482
- this.suppplanitem["f_user_type"]=this.suppplanitem.f_check_type
483
- }
484
- this.fdevices=[]
485
-
486
- if(this.suppplanitem.f_devices.length!=0){
487
-
488
- for (let i = 0; i <this.str.length ; i++) {
489
- if (this.suppplanitem.f_devices[i]==undefined) {
490
- this.fdevices.push({
491
- f_device_type: this.str[i].checkname,
492
- f_items: []
493
- //id: this.suppplanitem.f_devices[i] == undefined ? "" : this.suppplanitem.f_devices[i].id
494
- })
495
- }else {
496
- this.fdevices.push({
497
- f_device_type: this.str[i].checkname,
498
- f_items: [],
499
- id:this.suppplanitem.f_devices[i].id
500
- })
501
- }
502
- }
503
- }else{for (let i = 0; i <this.str.length ; i++) {
504
-
505
- this.fdevices.push({f_device_type:this.str[i].checkname,f_items:[]})
506
- }}
507
-
508
- this.setFitemvalue()
509
- f()
510
-
511
-
512
-
513
- }
514
-
515
- //补录时改变fdevice
516
- suppfdevice(){
517
- for (let i = 0; i <this.str.length ; i++) {
518
- this.fdevices.push({f_device_type:this.str[i].checkname,f_items:[]})
519
- }
520
- console.log("supp最后的listbutton"+JSON.stringify(this.listbutton))
521
- this.changeListButton()
522
- }
523
- //改变数组的样式
524
- changeListButton(){
525
- let listarray=[]
526
- for (let i = 0; i < this.listbutton.length; i++) {
527
- if (!this.listbutton[i].mname){
528
- console.log("这是"+this.listbutton[i].lname.length)
529
- listarray.push(this.listbutton[i])
530
- listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
531
- listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
532
- listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
533
- let count=0
534
- for (let j = 0; j < this.listbutton.length; j++) {
535
- if(this.listbutton[i].lname.substring(0,this.listbutton[i].lname.length-1)==this.listbutton[j].mname){
536
-
537
- listarray.push(this.listbutton[j])
538
- count++
539
- }
540
- }
541
- if (count%4!=0){
542
- for (let j = 0; j <4-count%4; j++) {
543
- listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
544
- }
545
- }
546
- }
547
- }
548
- console.log("需要的数据"+JSON.stringify(listarray))
549
- this.listbutton=listarray
550
- this.tranlistbutton()
551
- }
552
- //横向分开list
553
- tranlistbutton(){
554
- console.log("jinru111111111111")
555
- for (let i = 0; i < this.listbutton.length; i++) {
556
- if((i+1)%4==1){
557
- this.listbuttona.push(this.listbutton[i])
558
- }else if((i+1)%4==2){
559
- this.listbuttonb.push(this.listbutton[i])
560
- }else if((i+1)%4==3){
561
- this.listbuttonc.push(this.listbutton[i])
562
- }else if((i+1)%4==0){
563
- this.listbuttond.push(this.listbutton[i])
564
- }
565
- }
566
- }
567
- SelectedPlanType=''
568
- // 打开安检计划,加载安检计划的所有安检单
569
- async openPlan(plan, f) {
570
- this.isSend=true
571
- this.checkplanitems.check.checkes=[]
572
- this.SelectedPlan=plan.id
573
- this.SelectedPlanType=plan.f_safecheck_type
574
- this.plan=plan
575
- this.checkplanitems.search.setField("f_plan_id", plan.id)
576
- this.checkplanitems.search.setField("f_state", "作废")
577
- await this.checkplanitems.searchList("/rs/sql/planItem", {"f_plan_id": "i.f_plan_id='{}'","f_state": "i.f_state !='{}'"}, {})
578
- f()
579
- //this.checkplanitems.search.model.f_plan_id
580
- this.isSend=false
581
- }
582
-
583
- //根据条件查询某个安检计划下的安检单
584
- async searchPlanItem(f) {
585
- this.checkplanitems.check.checkes=[]
586
- if(this.checkplanitems.search.model.f_plan_id){
587
- this.isSend=true
588
- console.log("进入加载安检计划项"+this.checkplanitems.search.model.f_plan_id)
589
- this.jointCondition1("planitemconditionList","checkplanitems")
590
- await this.checkplanitems.searchList("/rs/sql/planItem",
591
- {"f_plan_id": "i.f_plan_id='{}'",
592
- "usercode": "i.f_userinfo_code='{}'",
593
- "username": "i.f_user_name='{}'",
594
- "f_address": "i.f_address like '%{}%'",
595
- "f_last_check_state": "i.f_last_check_state='{}' ",
596
- "f_start_time": "i.f_last_check_date >='{}'",
597
- "f_end_time": "i.f_last_check_date <='{}'",
598
- "f_last_check_result":"i.f_last_check_result like '%{}%'",
599
- 'f_user_state':"uf.f_userstate='{}'",
600
- "f_state": "i.f_state !='{}'",
601
- "f_state1": "i.f_state ='{}'"
602
- },
603
- {})
604
- f()
605
- this.isSend=false
606
- }else{
607
- Vue.showMessage("请选择安检计划")
608
- }
609
- }
610
- //加载更多数据
611
- async loadMore(modelname,f) {
612
- this.isSend=true
613
- await this[modelname].list.loadMore()
614
- f()
615
- this.isSend=false
616
- }
617
-
618
- //点击全选按钮事件 user-用户列表 planitem-计划项列表
619
- changeCheckAll(modulename, f) {
620
- this[modulename].check.setCheckAll()
621
- f()
622
- }
623
-
624
- //当选中列表中某项时触发
625
- addParam(modulename, id) {
626
- console.log("当前值"+modulename+"--------"+id)
627
- this[modulename].check.setCheckes(id)
628
- }
629
-
630
- //设置属性值
631
- setProperty(modulename, property, value,f) {
632
-
633
- console.log(modulename+"新添--"+property+"--"+value)
634
- if(property=='area'){
635
- this.selectChanged("user","meterbook","","",f)
636
- if(value=='全部'){
637
- this[modulename].search.setField(property, '')
638
- this.cbc=[]
639
- this.meterbooks.forEach((res) => {
640
- this.cbc.push({label: res.f_book_name, value: res.id})
641
- /*if(res.f_book_slice_area){
642
- if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
643
- this.sliceArea.push(res.f_book_slice_area)
644
- }
645
- }*/
646
- })
647
- f()
648
- return
649
- }
650
- this[modulename].search.setField(property, value)
651
- this.cbc=[]
652
- this.meterbooks.forEach((res) => {
653
- if(res.f_book_slice_area==value){
654
- this.cbc.push({label: res.f_book_name, value: res.id})
655
- }
656
-
657
- /*if(res.f_book_slice_area){
658
- if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
659
- this.sliceArea.push(res.f_book_slice_area)
660
- }
661
- }*/
662
- })
663
- f()
664
- }else if(value=='全部'){
665
- this[modulename].search.setField(property, '')
666
- }else{
667
- this[modulename].search.setField(property, value)
668
- }
669
- }
670
-
671
- //列表中的选择框是否被选中
672
- hasValue(modulename,value){
673
- this[modulename].check.checks.has()
674
- }
675
- // 给新建安检计划设置属性值
676
- setNewPlan(property, value) {
677
- console.log(value)
678
- this.newPlan[property] = value
679
- return this
680
- }
681
- //将某项拖动到计划中
682
- //dragParam:从拖动的起始位置传入的参数
683
- async dragtoPlan(f_plan_id,f_safecheck_type,f_filialeid,dragParam,f){
684
- console.log("当前传入:"+dragParam)
685
- await this.dragtoPlanItem(f_plan_id,f_safecheck_type,dragParam,f)
686
- await this.dragtoOtherPlanIteem(f_plan_id,dragParam,f)
687
- }
688
-
689
- //将客户信息拖至计划中
690
- async dragtoPlanItem(f_plan_id,f_safecheck_type,dragParam,f) {
691
-
692
- console.log("计划id:"+f_plan_id+"公司id:"+this.filialeid)
693
- if(dragParam=='user'){
694
- this.jointCondition("user")
695
- if(this.checkplanitems.search.model.f_plan_id){
696
- this.isSend=true
697
- let res=await this.http.load("POST", "/rs/logic/AddCheckPlanItem", {
698
- data:{
699
- f_operator:global.login.name,
700
- f_plan_id:f_plan_id,
701
- f_safecheck_type:f_safecheck_type,
702
- f_filialeid:this.filialeid,
703
- f_subscribe_date:'',
704
- condition:this.user.search.search({
705
- "f_filialeid": "ui.f_filialeid={}",
706
- "userinfocode": "ui.f_userinfo_code='{}'",
707
- "username": "ui.f_user_name like '%{}%'",
708
- "useraddress": "ua.f_address like '%{}%'",
709
- "userType":"uf.f_user_type='{}'",
710
- "f_residential_area":"ua.f_residential_area = '{}'",
711
- "f_building":"ua.f_building='{}'",
712
- "f_unit":"ua.f_unit='{}'",
713
- "f_user_state":"ui.f_user_state='{}'",
714
- "checkTime":" {}",
715
- "meterbook":"uf.f_meter_book_num='{}'",
716
- "user_start":" uf2.f_dateofopening >='{}'",
717
- "user_end":" uf2.f_dateofopening <='{}'",
718
- "check_start":" ua.f_last_check_date >='{}'",
719
- "check_end":" ua.f_last_check_date<= '{}'",
720
- "area":" ua.f_slice_area='{}'",
721
- "ychecked":" {}",
722
- "f_metertitles":" uf2.f_metertitles='{}'",
723
- "f_gasproperties":" uf.f_gasproperties='{}'",
724
- "uploadCondition":" {}",
725
- "f_backlist":" {}"
726
- }),
727
- switchCheckAll:this.user.check.switchCheckAll,
728
- checkAll:this.user.check.checkAll,
729
- param:this.user.check.checkes,
730
- columnName: "ua.id"
731
- }
732
- }, {resolveMsg: null, rejectMsg: null})
733
- console.log("重复数量-"+JSON.stringify(res.data.result)+"---"+res.data.result.length)
734
- if(res.data.code==200){
735
- //alert("添加成功!有"+res.data.result.length+"条用户地址已经存在于其他计划中: \n"+res.data.result.reduce((c,v)=>{c += v.f_user_name+":"+v.f_address+"\n"}),0)
736
- Vue.showMessage("添加成功!"+(res.data.result.length>0?"有"+res.data.result.length+"条用户地址已经存在于其他计划中":""))
737
- }else{
738
- Vue.showMessage("添加失败!")
739
- }
740
- this.user.check.checkes=[]
741
- await this.searchUser(()=>{})
742
- await this.searchPlanItem(()=>{})
743
- await this.loadCheckPlan("",()=>{})
744
- f()
745
- this.isSend=false
746
- }else{
747
- Vue.showMessage("请先打开一个计划再进行操作")
748
- }
749
- }
750
- }
751
-
752
- //将某个计划下的一项拖到另一个计划
753
- async dragtoOtherPlanIteem(checkplanid,dragParam,f) {
754
- if(dragParam=='item'){
755
- this.isSend=true
756
- let res=await this.http.load("POST", "/rs/logic/UpCheckPlanItem", {
757
- data:{
758
- f_operator:global.login.name,
759
- f_plan_id:checkplanid,
760
- condition:this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
761
- "usercode": "it.f_userinfo_code='{}'",
762
- "username": "it.f_user_name='{}'",
763
- "f_address": "it.f_address like '%{}%'",
764
- "f_last_check_state": "it.f_last_check_state='{}' ",
765
- "f_start_time": "it.f_last_check_date >='{}'",
766
- "f_end_time": "it.f_last_check_date <='{}'",
767
- "f_last_check_result":"it.f_last_check_result like '%{}%'",
768
- 'f_user_state':"uf.f_userstate='{}'",
769
- "f_state": "it.f_state !='{}'",
770
- "f_state1": "it.f_state ='{}'"
771
- }),
772
- switchCheckAll:this.checkplanitems.check.switchCheckAll,
773
- checkAll:this.checkplanitems.check.checkAll,
774
- param:this.checkplanitems.check.checkes,
775
- columnName: "it.id"
776
- }
777
- }, {resolveMsg: null, rejectMsg: null})
778
- if(res.data.code==200){
779
- await this.searchUser(()=>{})
780
- await this.searchPlanItem(()=>{})
781
- await this.loadCheckPlan("",()=>{})
782
- f()
783
- Vue.showMessage("更换安检计划成功!")
784
- }else{
785
- Vue.showMessage("更换安检计划失败!")
786
- }
787
- f()
788
- this.isSend=false
789
- }
790
-
791
- }
792
-
793
- //修改计划项状态为作废
794
- async delPlanItem(dragParam,f) {
795
- console.log("进入作废计划项方法")
796
- if(dragParam=='item'){
797
- Vue.showMessage("此操作无法撤回,确定要执行作废安检单操作吗?",['confirm','cancel']).then((button)=>{
798
- if(button=='confirm'){
799
- this.isSend=true
800
- let resu=this.http.load("POST", "/rs/logic/UpCheckPlanItemState", {
801
- data: {
802
- f_operator:global.login.name,
803
- condition:this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
804
- "usercode": "i.f_userinfo_code='{}'",
805
- "username": "i.f_user_name='{}'",
806
- "f_address": "i.f_address like '%{}%'",
807
- "f_last_check_state": "i.f_last_check_state='{}' ",
808
- "f_start_time": "i.f_last_check_date >='{}'",
809
- "f_end_time": "i.f_last_check_date <='{}'",
810
- "f_last_check_result":"i.f_last_check_result like '%{}%'",
811
- 'f_user_state':"uf.f_userstate='{}'",
812
- "f_state": "i.f_state !='{}'",
813
- "f_state1": "i.f_state ='{}'"
814
- }),
815
- switchCheckAll:this.checkplanitems.check.switchCheckAll,
816
- checkAll:this.checkplanitems.check.checkAll,
817
- param:this.checkplanitems.check.checkes,
818
- columnName: "i.id"
819
- }
820
- }, {resolveMsg: null, rejectMsg: null}).then((resu)=>{
821
-
822
- console.log("-----------"+JSON.stringify(resu.data))
823
- if(resu.data.code==200){
824
- Vue.showMessage("移除安检单成功! 成功移除:"+resu.data.res.up+"条"+(resu.data.res.noup>0?"有"+resu.data.res.noup+"条已经不是 ‘未检’ 状态!":""))
825
- this.searchUser(f)
826
- this.searchPlanItem(f)
827
- this.loadCheckPlan("",f)
828
- }else{
829
- Vue.showMessage("取消安检计划失败!")
830
- }
831
- this.isSend=false
832
- })
833
-
834
- }
835
-
836
- })
837
-
838
- }
839
-
840
- }
841
-
842
- //新建计划
843
- async addNewPlan(f) {
844
- if(!this.validationCreatePlan()){
845
- return
846
- }
847
- this.isSend=true
848
- let res=await this.http.load("POST","/rs/sql/getCheckplan", {data: {condition:"f_plan_name='"+this.newPlan.f_plan_name+"'",sortfield:'f_create_time desc'}})
849
- console.log("结果-"+res.data.length)
850
- if(res.data.length>0){
851
- Vue.showMessage("计划名称不能重复!")
852
- this.isSend=false
853
- return
854
- }
855
- if(this.isShare=="是"){
856
- this.newPlan.f_checker_id=null
857
- this.newPlan.f_checker=null
858
- }
859
- this.newPlan.f_plan_type='预约计划'
860
- this.newPlan.f_subcompany=global.login.orgs
861
- this.newPlan.f_filialeid=this.filialeid
862
- this.newPlan.f_create_operator=global.login.name
863
- this.newPlan.f_create_time=this.getNowFormatDate()
864
- await Vue.resetpost("/rs/logic/createCheckPlan", {"data": this.newPlan},{resolveMsg : '新建计划成功!', rejectMsg : '新建计划失败!'})
865
- //await this.loadCheckPlan('',()=>{})
866
- this.newPlan={f_issued:"否"}
867
- this.isShare="否"
868
- await this.loadCheckPlan('',()=>{})
869
- f()
870
- window.dispatchEvent(new CustomEvent("goRefresh"),{})
871
- this.isSend=false
872
-
873
- }
874
-
875
- // 取消新建安检计划
876
- cancel() {
877
- this.newPlan={f_issued:"否"}
878
- this.isShare="否"
879
- this.plan={}
880
- }
881
-
882
- // 取年的选择项目
883
- years() {
884
- return date.yearSelects
885
- }
886
- /*
887
- 1.获取配置文件
888
- 2.组装配置文件 (配置文件[] JS提前固定的数组[] return [])
889
- */
890
-
891
- // str = [
892
- // {
893
- // "checkname": "燃气表",
894
- // "checkmust":false,
895
- // "items":[
896
- // {"lname": "表具状态","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"包裹","isdefect":true,"level":"C2","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"},{"data":"漏气","isdefect":true,"level":"A1","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"}]},
897
- // {"lname": "表故障","multiple":true,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"破损变形","isdefect":true,"level":"B2","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"},{"data":"失效","isdefect":true,"level":"B2","isdefault": false},{"data":"不走字","isdefect":true,"level":"B2","isdefault": false},{"data":"铅封损坏","isdefect":true,"level":"B2","isdefault": false},{"data":"气表到期(使用年限超过八年)","isdefect":true,"level":"B2","isdefault": false}]},
898
- // {"lname": "腐蚀","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"轻微","isdefect":false,"isdefault": false},{"data":"中度","isdefect":false,"isdefault": false},{"data":"严重","isdefect":true,"level":"A2","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"}]},
899
- // {"lname": "使用年限","type":"string", "data": 8,"isshow": false}
900
- // ]
901
- // },
902
- // {
903
- // "checkname": "阀门",
904
- // "checkmust":true,
905
- // "items":[
906
- // {"lname": "阀门","multiple":true,"type":"selector","options":[{"data":"无阀门","isdefect":true,"level":"A2"},{"data":"无阀柄","isdefect":true,"level":"A2"},{"data":"失效","isdefect":true,"level":"A2"}]},
907
- // {"lname": "表前阀","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A1","isdefault": false}]},
908
- // {"lname": "灶前阀","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A1","isdefault": false}]},
909
- // {"lname":"使用年限","type":"string", "data": 8,"isshow": false}
910
- // ]
911
- // },
912
- // {
913
- // "checkname": "户内管",
914
- // "quantity": 2,
915
- // "checkmust":true,
916
- // "items":[
917
- // {"lname": "穿墙管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
918
- // {"lname": "胶管","multiple":true,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"老化、超期使用","isdefect":true,"level":"A8"},{"data":"未紧箍","isdefect":true,"level":"C2"},
919
- // {"data":"软管穿墙","isdefect":true,"level":"C2"},{"data":"软管超长(长度超过两米)","isdefect":true,"level":"C2"},{"data":"非专用软管","isdefect":true,"level":"C2"}]},
920
- // {"lname": "镀锌管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
921
- // {"lname": "铝塑管、波纹管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
922
- // {"lname": "热水器管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
923
- // {"lname":"使用年限","type":"string", "data": 8,"isshow": false}
924
- // ]
925
- // },
926
- // {
927
- // "checkname": "热水器",
928
- // "quantity": 0,
929
- // "checkmust":false,
930
- // "items":[
931
- // {"lname": "热水器品牌","type":"string"},
932
- // {"lname": "热水器烟道","multiple":true,"type":"selector","options":[{"data":"正常","isdefect":false},{"data":"未安装烟道","isdefect":true,"level":"A8","tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"},{"data":"烟道未与大气直接连通","isdefect":true,"level":"A8"},{"data":"安装不规范","isdefect":true,"level":"A8"}]},
933
- // {"lname": "安装位置","multiple":false,"type":"selector","options":[{"data":"卫生间","isdefect":false},{"data":"卧室","isdefect":true,"level":"A8"},
934
- // {"data":"客厅过道","isdefect":true,"level":"A8"},{"data":"内厨房","isdefect":true,"level":"A8"},{"data":"其他密封或通风不良房间","isdefect":true,"level":"A8"}]},
935
- // {"lname": "工作状态","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false},{"data":"异常","isdefect":true,"level":"A8"}]},
936
- // {"lname":"使用年限","type":"string", "data": 4,"isshow": false}
937
- // ]
938
- // },
939
- // {
940
- // "checkname": "燃气具",
941
- // "checkmust":false,
942
- // "items":[
943
- // {"lname": "燃气具品牌","type":"string"},
944
- // {"lname": "安装位置","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8","isdefault": false}]},
945
- // {"lname": "安装状况","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"超年限(使用年限为8年)","isdefect":true,"level":"A8","isdefault": false}]},
946
- // {"lname":"使用年限","multiple":false,"type":"string", "data": 4}
947
- // ]
948
- // },
949
- // {
950
- // "checkname": "其他",
951
- // "checkmust":false,
952
- // "items":[
953
- // {"lname": "使用简易三通","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]},
954
- // {"lname": "私自安装、改迁燃气设施及设备","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8","tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"}]},
955
- // {"lname": "违反安全间距规定","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]},
956
- // {"lname": "燃气设施及设备上搭挂重物","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]},
957
- // {"lname": "燃气管道被作电器接地线使用","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]}
958
- // ]
959
- // }
960
- // ]
961
- //str=[{"checkname":"热水器","index":3,"items":[{"lname":"烟道式安装在卫生间","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"已过八年强制报废期","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"热水器泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"热水器品牌","index":5,"type":"string"},{"lname":"启用时间","index":6,"type":"date"},{"lname":"强制式安排在卫生间","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"}]},{"checkname":"炉","index":2,"items":[{"lname":"嵌入式炉子下面柜门无通风口","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"炉泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"已过8年强制报废期","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"},{"lname":"炉子品牌","index":5,"type":"string"},{"lname":"无自动熄火保护装置","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"启用时间","index":6,"type":"date"}]},{"checkname":"灶前阀","index":4,"items":[{"lname":"无把柄","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"开关不便","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"}]},{"checkname":"其他","index":7,"items":[{"lname":"其他/压力","index":1,"type":"string"}]},{"checkname":"胶管","index":5,"items":[{"lname":"超2年","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"},{"lname":"超2米","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"穿墙","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":5,"type":"selector"},{"lname":"老化","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"无管卡","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"}]},{"checkname":"管道","index":6,"items":[{"lname":"泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"一般锈蚀","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"暗埋","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"},{"lname":"严重锈蚀","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"悬挂物品","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":5,"type":"selector"}]},{"checkname":"燃气表","index":1,"items":[{"lname":"表前阀无把柄","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":16,"type":"selector"},{"lname":"运转正常","multiple":false,"options":[{"isdefect":false,"data":"是"},{"isdefect":false,"data":"否","isdefault":true}],"index":11,"type":"selector"},{"lname":"表不转动","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":12,"type":"selector"},{"lname":"表前阀泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":15,"type":"selector"},{"lname":"表前阀开关不便","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":17,"type":"selector"},{"lname":"未封表","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":13,"type":"selector"},{"lname":"封闭无通风","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":14,"type":"selector"}]}]
962
-
963
-
964
- //遍历选择框以及得到list
965
- getselector(){
966
- this.listbutton=[]
967
-
968
- for (let i = 0; i <this.str.length ; i++) {
969
- let strlist=[]
970
- strlist=this.str[i].items.concat()
971
- for (let j = 0; j <strlist.length ; j++) {
972
- strlist[j]["mname"]=this.str[i].checkname
973
- }
974
- strlist.splice(0,0,{lname:this.str[i].checkname+":",type:"",mname:""})
975
- let bb=this.listbutton
976
- this.listbutton=bb.concat(strlist)
977
-
978
-
979
- }
980
-
981
- let h=this.listbutton
982
- for (let i = 0; i <h.length ; i++) {
983
-
984
- h[i]["selected"]=""
985
- h[i]["level"]=""
986
- h[i]["isdefect"]=""
987
- if (h[i].type =="selector"){
988
- let size=h[i].options.length
989
-
990
- let pl=[]
991
- for (let j = 0; j <size ; j++) {
992
- let n=h[i].lname+h[i].mname
993
-
994
- pl.push(h[i].options[j].data)
995
- this.planItemConditional[n]=pl
996
-
997
- }
998
- }
999
- }
1000
-
1001
- console.log("get最后的listbutton"+JSON.stringify(this.listbutton))
1002
- }
1003
- //返回遍历的option
1004
- reoption(key1,key2){
1005
-
1006
- let modelname=key1+key2
1007
- return this.planItemConditional[modelname]
1008
-
1009
- }
1010
-
1011
-
1012
- // 取月的选择项目
1013
- months() {
1014
- return date.monthSelects
1015
- }
1016
-
1017
- //下发安检计划
1018
- async sendCheckPlan(f){
1019
- if(this.checkplan.check.checkes.length<1){
1020
- Vue.showMessage("请选择要下发的安检计划")
1021
- return
1022
- }
1023
- this.isSend=true
1024
- let res=await this.http.load("POST", "/rs/logic/NewBespeakCheckPlan", {
1025
- data:{
1026
- f_issued:'是',
1027
- f_issue_time:this.getNowFormatDate(),
1028
- f_send_operator:global.login.name,
1029
- param:this.checkplan.check.checkes,
1030
- }
1031
- }, {resolveMsg: null, rejectMsg: null})
1032
- if(res.data.code==200){
1033
- //Vue.showMessage("下发成功!其中有"+res.data.repet+"个计划己经是下发状态")
1034
- Vue.showMessage("下发成功!")
1035
- await this.loadCheckPlan('',()=>{})
1036
- f()
1037
- }else{
1038
- Vue.showMessage("下发失败!")
1039
- }
1040
- this.isSend=false
1041
- }
1042
-
1043
- //删除安检计划
1044
- async delCheckPlan(f){
1045
- if(this.checkplan.check.checkes.length<1){
1046
- Vue.showMessage("请选择要删除的安检计划")
1047
- return
1048
- }
1049
- this.isSend=true
1050
- let res=await this.http.load("POST", "/rs/logic/deleteCheckPlan", {
1051
- data:{
1052
- f_operator:global.login.name,//global.login.name,
1053
- condition:this.checkplan.search.search({}),
1054
- switchCheckAll:this.checkplan.check.switchCheckAll,
1055
- checkAll:this.checkplan.check.checkAll,
1056
- param:this.checkplan.check.checkes,
1057
- columnName: "f_plan_id"
1058
- }
1059
- }, {resolveMsg: "删除成功!", rejectMsg: "删除失败!"})
1060
- console.log(JSON.stringify(res))
1061
- if(res.data.code==200){
1062
- Vue.showMessage("删除成功!"+res.data.message,"success",2500)
1063
- await this.loadCheckPlan('',()=>{})
1064
- }else{
1065
- Vue.showMessage("删除失败!"+res.data.message,"success",2500)
1066
- }
1067
- this.checkplanitems.search.model.f_plan_id=""
1068
- this.checkplanitems.list.data=[]
1069
- f()
1070
- this.isSend=false
1071
- }
1072
- //修改计划时 用来存储当前选中要修改的计划
1073
- plan={}
1074
- setPlanVal(value){
1075
- console.log(value)
1076
- this.plan=JSON.parse(JSON.stringify( value ))
1077
- }
1078
- setPlan(key,val){
1079
- this.plan[key]=val
1080
- }
1081
- isUpdate(key1,key2){
1082
- if (key1=="已检"&&key2!="补录"){
1083
- return true;
1084
- }
1085
- return false;
1086
- }
1087
- //修改安检计划
1088
- async upCheckPlan(f){
1089
- if(this.plan.f_issued=='已下发'){
1090
- Vue.showMessage("该计划已下发,无法进行修改!")
1091
- return
1092
- }
1093
- this.isSend=true
1094
- let res=await this.http.load("POST", "/rs/logic/updateCheckPlan", {
1095
- data:{
1096
- f_checker:this.plan.f_checker,
1097
- f_checker_id:this.plan.f_checker_id,
1098
- f_plan_name:this.plan.f_plan_name,
1099
- f_plan_year:this.plan.f_plan_year,
1100
- f_plan_month:this.plan.f_plan_month,
1101
- f_plan_id:this.plan.id
1102
- }
1103
- }, {resolveMsg: null, rejectMsg: null})
1104
- if(res.data.code==200){
1105
- Vue.showMessage("修改成功!"+res.data.message,"success",2500)
1106
- await this.loadCheckPlan('',()=>{})
1107
- }else{
1108
- Vue.showMessage("修改失败!"+res.data.message,"success",2500)
1109
- }
1110
- f()
1111
- this.isSend=false
1112
- }
1113
-
1114
- /* getDataLength(modelname){
1115
- console.log("sdadasdasdasdadasdadddddddddddddddddddddddddddddddddddddddddddd")
1116
- let l=this[modelname].list.data.length
1117
- console.log("--"+l)
1118
- return l
1119
- }*/
1120
- //新建安检计划非空判断
1121
- validationCreatePlan(){
1122
- if(!this.newPlan.f_plan_name){
1123
- Vue.showMessage("请输入安检计划名称!")
1124
- return false
1125
- }
1126
- if(!this.newPlan.f_plan_year){
1127
- Vue.showMessage("请选择安检年份!")
1128
- return false
1129
- }
1130
- if(!this.newPlan.f_plan_month){
1131
- Vue.showMessage("请选择安检月份!")
1132
- return false
1133
- }
1134
- if(this.isShare=="否"){
1135
- if(!this.newPlan.f_checker){
1136
- Vue.showMessage("请选择安检人员!")
1137
- return false
1138
- }
1139
- }else{
1140
- this.newPlan.f_checker=''
1141
- }
1142
- if(!this.newPlan.f_safecheck_type){
1143
- Vue.showMessage("请选择安检类型!")
1144
- return false
1145
- }
1146
- return true
1147
- }
1148
-
1149
- //调用updatecheckpaper
1150
- async addNewPaper(f){
1151
- this.setFdevices()
1152
- this.setfDevicesid()
1153
- //return;
1154
- for (var i = 0; i <this.checkerMess.length ; i++) {
1155
- if (this.checkerMess[i].name==this.suppplanitem.f_checker_name){
1156
- this.suppplanitem["f_checker_id"]=this.checkerMess[i].id
1157
- }
1158
- }
1159
- //console.log(this.fdevices)
1160
- //return;
1161
- this.suppplanitem["f_devices"]=this.fdevices
1162
- this.suppplanitem.f_check_type=this.suppplanitem.f_user_type
1163
- this.suppplanitem.f_state = "已检"
1164
- this.suppplanitem.f_approved = "未审核"
1165
- this.suppplanitem.f_complete = "已完成"
1166
- this.suppplanitem.f_no_checkplan ="有计划安检"
1167
- //return;
1168
- this.suppplanitem.f_check_plan_id=this.suppplanitem.f_plan_id
1169
-
1170
- let res=await this.http.load("POST", "/rs/logic/SuppCheckPaper", {data:{paper:this.suppplanitem}})
1171
-
1172
- this.openPlan(this.plan,f)
1173
- f()
1174
- window.dispatchEvent(new CustomEvent("goRefresh"),{})
1175
- }
1176
- addnewPaper(f){
1177
- delete this.suppplanitem.id
1178
- if(!this.suppplanitem.f_onsite_time){
1179
- Vue.showMessage("提交失败,请输入开始时间!")
1180
- return false
1181
- }
1182
- if(!this.suppplanitem.f_offsite_time){
1183
- Vue.showMessage("提交失败,请输入结束时间!")
1184
- return false
1185
- }
1186
- if(!this.suppplanitem.f_entry_status){
1187
- Vue.showMessage("提交失败,请输入入户状态!")
1188
- return false
1189
- }
1190
- if(!this.suppplanitem.f_usegas&&this.suppplanitem.f_entry_status=='入户'){
1191
- Vue.showMessage("提交失败,请输入燃气使用状态!")
1192
- return false
1193
- }
1194
- // if(!this.suppplanitem.f_checker_name){
1195
- // Vue.showMessage("提交失败,请输入安检员!")
1196
- // }
1197
- this.addNewPaper(f)
1198
- }
1199
- updatePaper(f){
1200
- this.addNewPaper(f)
1201
- }
1202
- setNewPaper(property,value){
1203
- this.suppplanitem[property] = value
1204
-
1205
-
1206
-
1207
- return this
1208
- }
1209
-
1210
- setFdevices(){
1211
-
1212
-
1213
- var ar=this.listbutton
1214
- var br=this.fdevices
1215
- for (var i = 0; i <br .length; i++) {
1216
- for (var j = 0; j < ar.length; j++) {
1217
- if (br[i].f_device_type == ar[j].mname) {
1218
- br[i].f_items.push({
1219
- f_item_name: ar[j].lname,
1220
- f_item_value: ar[j].selected,
1221
- type: ar[j].type,
1222
- f_is_defect: ar[j].isdefect,
1223
- f_defect_level: ar[j].level,
1224
- f_item_lists:[{
1225
- //f_item_id: "",
1226
- f_item_value: ar[j].selected,
1227
- //id:""
1228
- }]
1229
- })
1230
- }
1231
- }
1232
- }
1233
- }
1234
- //给fdevices赋值id
1235
- setfDevicesid(){
1236
- var suppf=this.suppplanitem.f_devices
1237
- var fde=this.fdevices
1238
- if (this.suppplanitem.hasOwnProperty("f_devices")){
1239
- for (let i = 0; i <suppf.length ; i++) {
1240
- for (let j = 0; j <fde.length; j++) {
1241
- if (suppf[i].f_device_type==fde[j].f_device_type){
1242
- for (let k = 0; k <suppf[i].f_items.length ; k++) {
1243
- // console.log("789456123")
1244
- for (let l = 0; l <fde[j].f_items.length ; l++) {
1245
- // console.log("11111111111111")
1246
- if (suppf[i].f_items[k].f_item_name==fde[j].f_items[l].f_item_name) {
1247
- fde[j].f_items[l]["id"]=suppf[i].f_items[k].id
1248
- if (suppf[i].f_items[k].f_item_lists.length!=0){
1249
- fde[j].f_items[l].f_item_lists[0]["id"]=suppf[i].f_items[k].f_item_lists[0].id
1250
- fde[j].f_items[l].f_item_lists[0]["f_item_id"]=suppf[i].f_items[k].f_item_lists[0].f_item_id
1251
- }
1252
- }
1253
- }
1254
- }
1255
- }
1256
- }
1257
- }
1258
- }else {
1259
- this.suppplanitem.f_upload_date=this.getNowFormatDate()
1260
- }
1261
- }
1262
- //
1263
- setFitemvalue(){
1264
- for (var k = 0; k <this.listbutton.length ; k++) {
1265
- for (var i = 0; i <this.suppplanitem.f_devices.length ; i++) {
1266
- for (var j = 0; j < this.suppplanitem.f_devices[i].f_items.length; j++) {
1267
- if (this.listbutton[k].lname==this.suppplanitem.f_devices[i].f_items[j].f_item_name){
1268
- this.listbutton[k].selected=this.suppplanitem.f_devices[i].f_items[j].f_item_value
1269
- }
1270
- }
1271
- }
1272
- }
1273
- }
1274
- //改变selected属性
1275
- changeSelected(selectedname,selectedmname,selectedvalue){
1276
- var sa=this.listbutton
1277
- for (var i = 0; i <sa.length; i++) {
1278
- if (sa[i].lname==selectedname&&sa[i].mname==selectedmname){
1279
- sa[i].selected=selectedvalue
1280
- if (sa[i].type=="selector"){//判断是否是选择类型
1281
- for (var j = 0; j < sa[i].options.length; j++) {
1282
- if (sa[i].options[j].data==selectedvalue){//赋值为json的level和isdefect
1283
- sa[i].level=sa[i].options[j].level
1284
- sa[i].isdefect=sa[i].options[j].isdefect
1285
- }
1286
- }
1287
- }
1288
- }
1289
- }
1290
- //console.log(this.fdevices)
1291
- }
1292
- getAreaList() {
1293
- let res = this.http.load('POST', '/rs/sql/safe_singleTable_GroupBy', {
1294
- data: {
1295
- items: 'f_residential_area',
1296
- tablename: 't_area',
1297
- condition: 'f_filialeid = '+this.filialeid,
1298
- groupitem: 'f_residential_area'
1299
- }
1300
- }, {resolveMsg: null, rejectMsg: null}).then((res)=>{
1301
- if (res.data) {
1302
- let arr=[]
1303
- for(let i =0 ;i<res.data.length;i++){
1304
- arr.push(res.data[i].f_residential_area)
1305
- }
1306
- this.conditionJson[0].options=arr
1307
- }
1308
- })
1309
-
1310
- }
1311
- //获取当前时间
1312
- getNowFormatDate() {
1313
- let date = new Date();
1314
- let seperator1 = "-";
1315
- let seperator2 = ":";
1316
- let month = date.getMonth() + 1;
1317
- let strDate = date.getDate();
1318
- let hour = date.getHours();
1319
- let min = date.getMinutes();
1320
- let second = date.getSeconds();
1321
- if (month >= 1 && month <= 9) {
1322
- month = "0" + month;
1323
- }
1324
- if (strDate >= 0 && strDate <= 9) {
1325
- strDate = "0" + strDate;
1326
- }
1327
- if (hour >= 0 && hour <= 9) {
1328
- hour = "0" + hour;
1329
- }
1330
- if (min >= 0 && min <= 9) {
1331
- min = "0" + min;
1332
- }
1333
- if (second >= 0 && second <= 9) {
1334
- second = "0" + second;
1335
- }
1336
- let currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
1337
- + " " + hour + seperator2 + min
1338
- + seperator2 + second;
1339
- return currentdate;
1340
- }
1341
- //excel导出
1342
- async exportFile(){
1343
- if(!this.checkplanitems.search.model.f_plan_id){
1344
- Vue.showMessage("请选择先打开一个安检计划!")
1345
- return
1346
- }
1347
- this.isSend=true
1348
- this.jointCondition1("planitemconditionList","checkplanitems")
1349
- let res=await this.http.load('POST','rs/logic/SafeExportExcel',
1350
- {
1351
- "data": {
1352
- "body": {
1353
- "data": {
1354
- "condition": this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
1355
- "usercode": "i.f_userinfo_code='{}'",
1356
- "username": "i.f_user_name='{}'",
1357
- "f_address": "i.f_address like '%{}%'",
1358
- "f_last_check_state": "i.f_last_check_state='{}' ",
1359
- "f_start_time": "i.f_last_check_date >='{}'",
1360
- "f_end_time": "i.f_last_check_date <='{}'",
1361
- "f_last_check_result":"i.f_last_check_result like '%{}%'",
1362
- 'f_user_state':"uf.f_userstate='{}'",
1363
- "f_state": "i.f_state !='{}'",
1364
- "f_state1": "i.f_state ='{}'"
1365
- })
1366
- },
1367
- "field": ["f_userinfo_code:用户编号","f_user_name:用户名称",
1368
- "f_user_type:用户类型","f_userstate:用户状态","f_hetongdate:合同日期","f_residential_area:小区名称",
1369
- "f_state:安检状态","f_buildtype:房屋类型","f_meternumber:表号",
1370
- "f_metertitles:表封号","f_aroundmeter:左右表","f_gaswatchbrand:气表品牌",
1371
- "f_neiwaibiao:气表位置","f_phone:电话","f_dateofopening:开户日期",
1372
- "f_address:详细地址"
1373
- ],
1374
- "templateName": this.plan.f_plan_name,
1375
- "sqlName": "planItem",
1376
- "uuid": this.guid()
1377
- },
1378
- }
1379
- }
1380
- ,{resolveMsg: null, rejectMsg: null})
1381
- console.log("excel结果---"+JSON.stringify(res))
1382
- let link = document.createElement('a');
1383
- let path = res.data[0].filename
1384
- //webapps这个是在服务器上导出用的
1385
- let pathName = "http://" + location.host + "/webapps" + path.split('webapps')[1]
1386
- //excel这个是在本地导出用的
1387
- link.href = pathName;
1388
- link.download = path.split('excel/')[1];
1389
- link.dispatchEvent(new MouseEvent('click'));
1390
- this.isSend=false
1391
- }
1392
- guid() {
1393
- return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
1394
- let r = Math.random() * 16 | 0,
1395
- v = c == 'x' ? r : (r & 0x3 | 0x8)
1396
- return v.toString(16)
1397
- })
1398
- }
1399
- //excel导出
1400
- async userexportFile(){
1401
-
1402
- this.isSend=true
1403
- let res=await this.http.load('POST','rs/logic/SafeExportExcel',
1404
- {
1405
- "data": {
1406
- "body": {
1407
- "data": {
1408
- "condition": this.user.search.search({
1409
- "f_filialeid": "ui.f_filialeid={}",
1410
- "userinfocode": "ui.f_userinfo_code='{}'",
1411
- "username": "ui.f_user_name like '%{}%'",
1412
- "useraddress": "ua.f_address like '%{}%'",
1413
- "userType":"uf.f_user_type='{}'",
1414
- "f_residential_area":"ua.f_residential_area = '{}'",
1415
- "f_building":"ua.f_building='{}'",
1416
- "f_unit":"ua.f_unit='{}'",
1417
- "f_user_state":"ui.f_user_state='{}'",
1418
- "checkTime":" {}",
1419
- "meterbook":"uf.f_meter_book_num='{}'",
1420
- "user_start":" uf2.f_dateofopening >='{}'",
1421
- "user_end":" uf2.f_dateofopening <='{}'",
1422
- "check_start":" ua.f_last_check_date >='{}'",
1423
- "check_end":" ua.f_last_check_date<= '{}'",
1424
- "area":" f_book_slice_area ='{}'",
1425
- "ychecked":" {}",
1426
- "f_metertitles":" uf2.f_metertitles='{}'",
1427
- "f_gasproperties":" uf.f_gasproperties='{}'",
1428
- "uploadCondition":" {}",
1429
- "f_backlist":" {}"
1430
- }),
1431
- "orderitem": 'f_residential_area,f_building,f_unit,f_floor,f_room',
1432
- "f_usertype": '',
1433
- "month": '',
1434
- "SafeCheckSX": {"f_check_start": '', "f_check_end": ''},
1435
- "SafeCheckCQ": '',
1436
- "startday":"",
1437
- "endday":""
1438
- },
1439
- "field": ["f_userinfo_code:用户编号","f_user_name:用户名称",
1440
- "f_user_type:用户类型", "f_residential_area:小区名称",
1441
- "f_metertitles:表箱号", "f_meternumber:表号",
1442
- "f_userstate:用户状态", "f_dateofopening:开户时间",
1443
- "f_yytdate:建档时间",
1444
- "f_user_phone:用户电话","f_address:详细地址"
1445
- ],
1446
- "templateName": '安检用户信息',
1447
- "sqlName": "FetchUserFileByOrgNoRuHuSXQ",
1448
- "uuid": this.guid()
1449
- },
1450
- }
1451
- }
1452
- ,{resolveMsg: null, rejectMsg: null})
1453
- console.log("excel结果---"+JSON.stringify(res))
1454
- let link = document.createElement('a');
1455
- let path = res.data[0].filename
1456
- //webapps这个是在服务器上导出用的
1457
- let pathName = "http://" + location.host + "/webapps" + path.split('webapps')[1]
1458
- //excel这个是在本地导出用的
1459
- link.href = pathName;
1460
- link.download = path.split('excel/')[1];
1461
- link.dispatchEvent(new MouseEvent('click'));
1462
- this.isSend=false
1463
- }
1464
-
1465
- //获取抄表册
1466
- async Mreadibook(){
1467
- this.cbc=[]
1468
- this.sliceArea=[]
1469
- let http = new HttpResetClass()
1470
- let getMeterReadingBooks = await http.load('POST','rs/logic/getMeterBooksData',
1471
- {data: {f_orgid: "('"+this.filialeid+"')"}},
1472
- {resolveMsg: null, rejectMsg: '获取失败!!!'})
1473
- this.cbc = [{label: '全部', value: '全部'}]
1474
- console.log('22222222222222222222222222222222222222')
1475
- console.log(JSON.stringify(getMeterReadingBooks))
1476
- console.log('22222222222222222222222222222222222222')
1477
- this.meterbooks=[]
1478
- this.meterbooks=getMeterReadingBooks.data.meterbooks
1479
- this.meterbooks.forEach((res) => {
1480
- this.cbc.push({label: res.f_book_name, value: res.id})
1481
- /*if(res.f_book_slice_area){
1482
- if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
1483
- this.sliceArea.push(res.f_book_slice_area)
1484
- }
1485
- }*/
1486
- })
1487
-
1488
- }
1489
- //获取子公司
1490
- async getOrgs(){
1491
- let http = new HttpResetClass()
1492
- let orgs = await http.load('POST', '/rs/search', {
1493
- source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $organization$)',
1494
- userid: global.login.id
1495
- //userid:"15130"
1496
- }, {resolveMsg: null, rejectMsg: '获取分公司出错!!!'})
1497
- console.log("分公司--"+JSON.stringify(orgs))
1498
- this.orgs = []
1499
- if(orgs.data.length>0){
1500
- orgs.data.forEach((res) => {
1501
- this.orgs.push({label: res.name, value: res.id})
1502
- })
1503
- }else{
1504
- this.orgs.push({label: this.filialeidname, value:this.filialeid})
1505
- // this.orgs.push({label: '测试公司', value:222})
1506
- }
1507
-
1508
-
1509
- }
1510
- //片区获取
1511
- async getSliceArea() {
1512
- let http = new HttpResetClass()
1513
- let getAllArea = await http.load('POST', '/rs/search', {
1514
- source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
1515
- userid: global.login.id
1516
- }, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
1517
- this.sliceArea = ['全部']
1518
- console.log('11111111111111111111111111111111111111')
1519
- console.log(getAllArea.data)
1520
- console.log('11111111111111111111111111111111111111')
1521
- getAllArea.data.forEach((res) => {
1522
- if(res.parentid==this.filialeid){
1523
- this.sliceArea.push(res.name)
1524
- }
1525
- })
1526
- console.log('片区' + this.sliceArea)
1527
- }
1528
-
1529
- show1(){
1530
- this.showModel=true
1531
- }
1532
- //清空用户编号
1533
- clearUserInfoId(){
1534
- this.setProperty("user","uploadCondition",'')
1535
- Vue.showMessage("已清空用户编号")
1536
- }
1537
- formatArrayFun(type,arr){
1538
- arr.forEach((result)=>{
1539
- this[type].push(result.value)
1540
- })
1541
- }
1542
- flush(f){
1543
- f()
1544
- }
1545
- }
1
+ import {SearchList, date} from 'vue-client'
2
+ import {PagedList} from 'vue-client'
3
+ import {HttpResetClass,trans} from 'vue-client'
4
+ import Vue from "vue"
5
+ import ObjConfig from '../../src/plugins/GerJsonObjectConfig'
6
+
7
+ export default class Comp {
8
+
9
+
10
+ needconfig= {}
11
+ isSend=true
12
+ // 用户安检信息列表
13
+ user = new SearchList(true)
14
+ //遍历的按钮
15
+ listbutton=[]
16
+ fdevices=[]
17
+ // 安检计划列表
18
+ checkplan = new SearchList(true)
19
+ // 安检计划的安检单列表
20
+ checkplanitems = new SearchList(true)
21
+ //按钮隐藏判断
22
+ suppplanitem={}
23
+ orderList= ['按时间降序', '按时间升序']//排序下拉框的值
24
+ currentorder='按时间降序'//排序下拉框当前选中的值
25
+ // 新增安检计划时保存的数据
26
+ newPlan = {f_issued:"否",f_safecheck_type:""}
27
+ http = new HttpResetClass()
28
+ //查询计划弹框中是否共享选项
29
+ isAndNot = ["是", "否"]
30
+ //是否开启共享计划
31
+ disableIssude=false
32
+ //是否显示添加用户删除用户按钮
33
+ disableButton=false
34
+
35
+ //用户类型
36
+ userType=["民用","非民用"]
37
+ listbuttona=[]
38
+ listbuttonb=[]
39
+ listbuttonc=[]
40
+ listbuttond=[]
41
+ //安检计划查询中的是否是共享计划单选的当前选中值
42
+ sIsAndNotSelect=''
43
+ //用户列表的自选查询条件的值
44
+ userCondition=["请选择条件","用户类型","地址"]
45
+ //当前选中的下拉值
46
+ userConditionSelect="请选择条件"
47
+ //当前输入的值
48
+ userConditionValue=""
49
+ //计划项列表自选查询条件的值
50
+ planItemCondition=["请选择条件","用户编号","用户名称"]
51
+ //
52
+ planItemConditional={}
53
+ //入户状态
54
+ userState=["到访不遇","拒检","入户"]
55
+ //燃气使用
56
+ gasUse=["已使用","未使用"]
57
+ //当前选中的下拉值
58
+ planItemConditionSelect="请选择条件"
59
+ //当前输入的值
60
+ planItemConditionValue=""
61
+ sudeState=['全部','是','否']
62
+ issude=''
63
+ //safecheckTypeList=Vue.$appdata.getParam("安检类型")
64
+ safecheckTypeList=[]
65
+ //片区列表
66
+ sliceArea=[]
67
+ //抄表册
68
+ cbc=[]
69
+ //保存当前公司所有抄表册
70
+ meterbooks=[]
71
+ //分公司列表
72
+ orgs=[]
73
+ //安检员列表
74
+ checker=[]
75
+ checkersname=[]
76
+ //新建计划时保存是否共享计划的值,
77
+ isShare="否"
78
+ //安检类型
79
+ safecheckList=[]
80
+ //时间单位
81
+ unitTime=["天","月"]
82
+ selectTime="天"
83
+ startday=""
84
+ endday=""
85
+ str=[]
86
+ //用气性质
87
+ gasproperties=[]
88
+ //当前打开的安检计划id
89
+ SelectedPlan=""
90
+ //燃气表增添项
91
+ //excel导入组件显示控制
92
+ showModel=false
93
+ gasexpress=[{"lname":"燃气表照片","type":"picture"},
94
+ {"lname":"表品牌","type":"string","readonly":true},
95
+ {"lname":"表号","type":"string","readonly":true},
96
+ {"lname":"表封号","type":"number","readonly":true},
97
+ {"lname":"表型号","type":"string","readonly":true},
98
+ {"lname":"位置","type":"string","readonly":true},
99
+ {"lname":"表底数","type":"number","readonly":true},
100
+ {"lname":"左右表","type":"string","readonly":true}]
101
+ //当前分公司id
102
+ filialeid=global.login.orgid
103
+ filialeidname=global.login.orgs
104
+
105
+ //filialeid=287
106
+ //filialeidname="梁平区聚源天然气有限公司"
107
+ yearCheckList=['全部','已在计划中','未在计划中']
108
+ yChecked=""
109
+ //用户列表查询条件json
110
+ conditionJson=[
111
+ {column:"f_residential_area",checkname:"小区名称",type:"input"},
112
+ {column:"f_building",checkname:"楼栋号码",type:"input"},
113
+ {column:"f_unit",checkname:"单元号码",type:"input"},
114
+ {column:"userType",checkname:"用户类型",type:"selector",options:['民用','非民用']},
115
+ {column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用','待审核','销户']},
116
+ {column:"user_start",checkname:"开户起始",type:"date"},
117
+ {column:"user_end",checkname:"开户结束",type:"date"},
118
+ {column:"check_start",checkname:"安检起始",type:"date"},
119
+ {column:"check_end",checkname:"安检结束",type:"date"},
120
+ {column:"f_metertitles",checkname:"表箱号",type:"input"},
121
+ {column:"f_gasproperties",checkname:"用气性质",type:"selector",options:this.gasproperties}
122
+ //{column:"f_backlist",checkname:"是否拉黑",type:"selector",options:['是','否']}
123
+ ]
124
+ /* conditionList=[
125
+ {selectitem:{column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用','待审核','销户']},selectValue:'正常',num:0},
126
+ {selectitem:{column:"f_metertitles",checkname:"表箱号",type:"input"},selectValue:'',num:1},
127
+ {selectitem:{column:"f_gasproperties",checkname:"用气性质",type:"selector",options:this.gasproperties},selectValue:'',num:2},
128
+ //{selectitem:{column:"f_backlist",checkname:"是否拉黑",type:"selector",options:['是','否']},selectValue:'',num:3},
129
+ {selectitem:{column:"user_start",checkname:"开户起始",type:"date"},selectValue:'',num:3},
130
+ {selectitem:{column:"user_end",checkname:"开户结束",type:"date"},selectValue:'',num:4},
131
+ {selectitem:{column:"check_start",checkname:"安检起始",type:"date"},selectValue:'',num:5},
132
+ {selectitem:{column:"check_end",checkname:"安检结束",type:"date"},selectValue:'',num:6}
133
+ ]*/
134
+ conditionList=[
135
+ {selectitem:{column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用','待审核','销户']},selectValue:'',num:0},
136
+ {selectitem:{column:"f_metertitles",checkname:"表箱号",type:"input"},selectValue:'',num:1},
137
+ {selectitem:{column:"f_gasproperties",checkname:"用气性质",type:"selector",options:this.gasproperties},selectValue:'',num:2},
138
+ //{selectitem:{column:"f_backlist",checkname:"是否拉黑",type:"selector",options:['是','否']},selectValue:'',num:3},
139
+ {selectitem:{column:"user_start",checkname:"开户起始",type:"date"},selectValue:'',num:3},
140
+ {selectitem:{column:"user_end",checkname:"开户结束",type:"date"},selectValue:'',num:4},
141
+ {selectitem:{column:"check_start",checkname:"安检起始",type:"date"},selectValue:'',num:5},
142
+ {selectitem:{column:"check_end",checkname:"安检结束",type:"date"},selectValue:'',num:6}
143
+ ]
144
+ //安检项列表查询条件
145
+ planitemconditionJson=[
146
+ {column:"f_last_check_state",checkname:"安检状态",type:"selector",options:['入户','拒检','到访不遇','未使用']},
147
+ {column:"f_start_time",checkname:"开始时间",type:"date"},
148
+ {column:"f_end_time",checkname:"结束时间",type:"date"},
149
+ {column:"f_last_check_result",checkname:"隐患状态",type:"selector",options:['正常','有隐患']},
150
+ {column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用','待审核','销户']},
151
+ {column:"f_state1",checkname:"安检结果",type:"selector",options:['已检','未检']}
152
+ ]
153
+ planitemconditionList=[
154
+ {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:0},
155
+ {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:1},
156
+ {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:2}
157
+ ]
158
+ //下拉框条件改变json数组
159
+ conditionListChange(modelname,ind,key,value,f){
160
+ console.log("------------"+ind+"-------------")
161
+ this[modelname][ind]["num"]=ind
162
+ this[modelname][ind][key]=value
163
+ f()
164
+ }
165
+ //添加选择条件下拉框事件
166
+
167
+ addconditionList(field,f){
168
+ this[field].push({selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:this.conditionList.length})
169
+ f()
170
+ }
171
+ //删除选择条件下拉框事件
172
+ deletecondition(field,modelname,index,f){
173
+ //如果有这个属性,说明已经选择过,去清空条件数组里的值
174
+ if(this[field][index].selectitem.column){
175
+ this.setProperty(modelname,this[field][index].selectitem.column,"")
176
+ }
177
+ this[field].splice(index,1)
178
+
179
+ for (let i =0 ;i<this[field].length;i++){
180
+ this.conditionList[i].num=i
181
+ }
182
+ f()
183
+ }
184
+ async ready() {
185
+ await this.getOrgs()
186
+ // 加载所有安检计划
187
+ await this.checkplan.searchList("/rs/sql/预约计划下发", {},{groupitem:"",f_filialeids:"("+this.filialeid+")",orderitem:"f_create_time desc"})
188
+ // this.getAreaList()
189
+ //加载安检员名单
190
+ console.log("-----------------")
191
+ console.log(Vue.$appdata)
192
+ console.log("当前加载到的信息:"+JSON.stringify(global.login))
193
+ this.disableIssude=Vue.$appdata.getSingleValue('共享计划')
194
+ this.disableButton=Vue.$appdata.getSingleValue('派发按钮')
195
+ this.formatArrayFun('gasproperties',Vue.$appdata.getParam('用气性质'))
196
+ this.formatArrayFun('safecheckTypeList',Vue.$appdata.getParam('安检类型'))
197
+ this.formatArrayFun('safecheckList',Vue.$appdata.getParam('安检类型'))
198
+ this.searchChecker(global.login.id)
199
+ /*this.setProperty('checkplan','safechecktype','年度普检')*/
200
+ await this.Mreadibook()
201
+ await this.getSliceArea()
202
+ }
203
+ //补录功能组装数据
204
+ zzsj(){
205
+ let deviceconfig=ObjConfig.getObjConfig(this.needconfig.safecheck.DevicesConfig)
206
+ console.log("=============ZZSJ1>"+JSON.stringify(deviceconfig))
207
+ for (let i = 0; i < deviceconfig.length; i++) {
208
+ console.log("==============>"+JSON.stringify(deviceconfig[i]))
209
+ console.log("==============>"+JSON.stringify(deviceconfig[i].index))
210
+ this.str[deviceconfig[i].index-1]=deviceconfig[i]
211
+ console.log("===========ZZSJ2>"+JSON.stringify(this.str[deviceconfig[i].index]))
212
+ }
213
+ }
214
+ readConfig () {
215
+ let http = new HttpResetClass()
216
+ http.load('GET', `/phone/rs/vue`, {}, {resolveMsg: null, rejectMsg: null}).then(res => {
217
+ this.needconfig = res.data
218
+ console.log("请求得到的数据"+JSON.stringify(this.needconfig))
219
+ let aa=this.needconfig.safecheck.DevicesConfig
220
+ this.zzsj()
221
+ })
222
+
223
+ }
224
+ //当前页面属性发生改变事件
225
+ fieldChange(modelname,value,f){
226
+ console.log("-------fieldChange"+value)
227
+ if(modelname=="user" || modelname=="checkplan" || modelname=="checkplanitems"){
228
+ this.setProperty(modelname,"checkername",value.name)
229
+ this.setProperty(modelname,"checkerid",value.id)
230
+ f()
231
+ return
232
+ }
233
+ if(modelname=="createPlan"){
234
+ this.newPlan.f_checker_id=value.id
235
+ this.newPlan.f_checker=value.name
236
+ f()
237
+ return
238
+ }
239
+ if(modelname=="upPlan"){
240
+ this.plan.f_checker= value.name
241
+ this.plan.f_checker_id=value.id
242
+ f()
243
+ return
244
+ }
245
+ if(value=='全部'){
246
+ this[modelname]=''
247
+ }else{
248
+ this[modelname]=value
249
+ }
250
+ f()
251
+ }
252
+ async orgChange(value,f){
253
+ console.log("----orgChange"+JSON.stringify(value))
254
+ if(value.value==this.filialeid){
255
+ f()
256
+ return
257
+ }
258
+ this.filialeid=value.value
259
+ this.filialeidname=value.label
260
+ this.user = new SearchList(true)
261
+ this.checkplanitems = new SearchList(true)
262
+ this.searchChecker(global.login.id)
263
+ await this.Mreadibook()
264
+ await this.getSliceArea()
265
+ await this.checkplan.searchList("/rs/sql/预约计划下发", {},{groupitem:"",f_filialeids:"("+this.filialeid+")",orderitem:"f_create_time desc"})
266
+ f()
267
+ }
268
+ //json下拉改变时间
269
+ selectChanged(modelname,key,valuename,value,f){
270
+ console.log('value[valuename]'+modelname+key+valuename+'----'+JSON.stringify(value))
271
+ if(value.label=='全部' || !value){
272
+ this[modelname].search.setField(key, '')
273
+ this[modelname].search.setField(key+'name', '全部')
274
+ }else{
275
+ console.log("value[valuename]"+value[valuename])
276
+ this[modelname].search.setField(key, value.value)
277
+ this[modelname].search.setField(key+'name', value.label)
278
+ }
279
+ f()
280
+ }
281
+ jointCondition1(field,modelname){
282
+ for (let i =0 ;i<this[field].length;i++){
283
+ if(!this[field][i].selectValue){
284
+ continue
285
+ }
286
+ console.log("this[field][i].column:"+this[field][i].column+"---"+"this[field][i].selectValue"+this[field][i].selectValue)
287
+ this.setProperty(modelname,this[field][i].selectitem.column,this[field][i].selectValue)
288
+ }
289
+ }
290
+ //根据选择框内容设置属性值
291
+ jointCondition(modelname){
292
+
293
+ if(modelname="user"){
294
+ this.setProperty("user","usertype","")
295
+ this.setProperty("user","address","")
296
+ switch(this.userConditionSelect){
297
+ case "用户类型":
298
+ this.setProperty("user","usertype",this.userConditionValue)
299
+ break;
300
+ case "地址":
301
+ this.setProperty("user","address",this.userConditionValue)
302
+ break;
303
+ }
304
+ }
305
+ if(modelname="checkplanitems"){
306
+ this.setProperty("checkplanitems","usercode","")
307
+ this.setProperty("checkplanitems","username","")
308
+ switch(this.planItemConditionSelect){
309
+ case "用户编号":
310
+ this.setProperty("checkplanitems","usercode",this.planItemConditionValue)
311
+ break;
312
+ case "用户名称":
313
+ this.setProperty("checkplanitems","username",this.planItemConditionValue)
314
+ break;
315
+ }
316
+ }
317
+ }
318
+
319
+ //是否共享计划单选按钮事件
320
+ isAndNotChange(isAndNotselect){
321
+ this.sIsAndNotSelect=isAndNotselect
322
+ if(this.sIsAndNotSelect=="是"){
323
+ this.setProperty("checkplan","isAndNot","is null")
324
+ }
325
+ if(this.sIsAndNotSelect=="否"){
326
+ this.setProperty("checkplan","isAndNot","is not null")
327
+ }
328
+ }
329
+
330
+ //按条件查询所有安检计划
331
+ async loadCheckPlan(sortfield,f) {
332
+ this.isSend=true
333
+ this.checkplan.check.checkes=[]
334
+ if(sortfield){//如果传入空串说明是查询 传入非空串就是排序
335
+ console.log("进入排序")
336
+ if(sortfield==this.currentorder){
337
+ this.isSend=false
338
+ return
339
+ }else{
340
+ this.currentorder=sortfield
341
+ }
342
+ }
343
+ let fieldValue=''
344
+ switch(this.currentorder){
345
+ case "按时间降序":
346
+ fieldValue='f_create_time desc'
347
+ break
348
+ case "按时间升序":
349
+ fieldValue='f_create_time'
350
+ break
351
+ }
352
+ console.log("值"+sortfield+"--当前值"+this.currentorder+"---排序值:"+fieldValue)
353
+ await this.checkplan.searchList("/rs/sql/预约计划下发",
354
+ {"f_plan_name": "f_plan_name like '%{}%'",
355
+ "f_plan_year":"f_plan_year={}",
356
+ "f_plan_month":"f_plan_month={}",
357
+ "checkerid":"f_checker_id={}",
358
+ "isAndNot":"f_checker {}",
359
+ "safechecktype":"f_safecheck_type='{}'",
360
+ "issude":"f_issued = '{}'"
361
+ },
362
+ {orderitem:fieldValue,
363
+ f_filialeids:"("+this.filialeid+")",
364
+ groupitem:""
365
+ }
366
+ )
367
+ //调刷新函数????
368
+ console.log('调刷新函数????--')
369
+ f()
370
+ this.isSend=false
371
+ }
372
+
373
+ // 查询待检用户
374
+ async searchUser(f) {
375
+ this.isSend=true
376
+ this.user.check.checkes=[]
377
+ this.jointCondition1("conditionList","user")
378
+ let sday=''
379
+ let eday=''
380
+ if(this.startday.trim()!=''){
381
+ if(isNaN(this.startday) || isNaN(this.endday)){
382
+ Vue.showMessage("请输入数字!")
383
+ return
384
+ }
385
+ if(this.selectTime=="月"){
386
+ sday= this.startday*30
387
+ this.endday.trim()!=''?eday= this.endday*30:eday=''
388
+ }else{
389
+ sday= this.startday
390
+ this.endday.trim()!=''?eday= this.endday:eday=''
391
+ }
392
+ if(eday){
393
+ this.setProperty("user","checkTime"," DATEDIFF(dd,ua.f_last_check_date,GETDATE())>="+parseInt(sday,10)+" and DATEDIFF(dd,ua.f_last_check_date,GETDATE())<="+parseInt(eday,10))
394
+ }else{
395
+ this.setProperty("user","checkTime"," DATEDIFF(dd,ua.f_last_check_date,GETDATE())>="+parseInt(sday,10))
396
+ }
397
+ }else{
398
+ this.setProperty("user","checkTime","")
399
+ }
400
+ if(this.yChecked=='已在计划中'){
401
+ this.setProperty("user","ychecked","ua.f_plan_id is not null")
402
+ }else if(this.yChecked=='未在计划中'){
403
+ this.setProperty("user","ychecked","ua.f_plan_id is null")
404
+ }else{
405
+ this.setProperty("user","ychecked","")
406
+ }
407
+ if(this.user.search.model.f_backlist){
408
+ if(this.user.search.model.f_backlist=='是'){
409
+ this.setProperty("user","f_backlist"," up.id is not null")
410
+ }else if(this.user.search.model.f_backlist=='否'){
411
+ this.setProperty("user","f_backlist"," up.id is null")
412
+ }else{
413
+ this.setProperty("user","f_backlist","")
414
+ }
415
+ }
416
+ this.user.search.setField("f_filialeid",this.filialeid)
417
+ await this.user.searchList("/rs/sql/FetchUserFileByOrgNoRuHuSXQ", {
418
+ "f_filialeid": "ui.f_filialeid={}",
419
+ "userinfocode": "ui.f_userinfo_code='{}'",
420
+ "username": "ui.f_user_name like '%{}%'",
421
+ "useraddress": "ua.f_address like '%{}%'",
422
+ "userType":"uf.f_user_type='{}'",
423
+ "f_residential_area":"ua.f_residential_area = '{}'",
424
+ "f_building":"ua.f_building='{}'",
425
+ "f_unit":"ua.f_unit='{}'",
426
+ "f_user_state":"ui.f_user_state='{}'",
427
+ "checkTime":" {}",
428
+ "meterbook":"uf.f_meter_book_num='{}'",
429
+ "user_start":" uf2.f_dateofopening >='{}'",
430
+ "user_end":" uf2.f_dateofopening <='{}'",
431
+ "check_start":" ua.f_last_check_date >='{}'",
432
+ "check_end":" ua.f_last_check_date<= '{}'",
433
+ "area":" f_book_slice_area ='{}'",
434
+ "ychecked":" {}",
435
+ "f_metertitles":" uf2.f_metertitles='{}'",
436
+ "f_gasproperties":" uf.f_gasproperties='{}'",
437
+ "uploadCondition":" {}",
438
+ "f_backlist":" {}"
439
+ }, {
440
+ "orderitem": 'f_residential_area,f_building,f_unit,f_floor,f_room',
441
+ "f_usertype": '',
442
+ "month": '',
443
+ "SafeCheckSX": {"f_check_start": '', "f_check_end": ''},
444
+ "SafeCheckCQ": '',
445
+ "startday":"",
446
+ "endday":""
447
+ })
448
+ f()
449
+ this.isSend=false
450
+ }
451
+
452
+ //查询安检员selectChanged
453
+ async searchChecker(id){
454
+ let res=await this.http.load('POST', '/rs/search', {
455
+ source: 'tool.getChildrenOfResName($安检员$)',
456
+ userid: id
457
+ }, {resolveMsg: null, rejectMsg: null})
458
+ this.checker=[]
459
+ res.data.forEach((resRow) => {
460
+ if(resRow.orgid==this.filialeid){
461
+ this.checker.push(resRow)
462
+ }
463
+ })
464
+ console.log("安检员列表---"+JSON.stringify(res)+"---id"+this.filialeid)
465
+ }
466
+
467
+ async searchPlanItems(f) {
468
+ await this.checkplanitems.searchList("/rs/sql/planItem", {"f_plan_id": "f_plan_id={}"}, {})
469
+ f()
470
+ }
471
+ //得到更新数据
472
+ async getPaper(id,f) {
473
+ let res=await this.http.load("POST", "/rs/path/getUserinfomation", {
474
+ data:{
475
+ condition:"f_check_item_id='"+id+"'"
476
+ }
477
+ })
478
+
479
+
480
+ this.suppplanitem=res.data[0]
481
+ if (this.suppplanitem.f_check_type!=null) {
482
+ this.suppplanitem["f_user_type"]=this.suppplanitem.f_check_type
483
+ }
484
+ this.fdevices=[]
485
+
486
+ if(this.suppplanitem.f_devices.length!=0){
487
+
488
+ for (let i = 0; i <this.str.length ; i++) {
489
+ if (this.suppplanitem.f_devices[i]==undefined) {
490
+ this.fdevices.push({
491
+ f_device_type: this.str[i].checkname,
492
+ f_items: []
493
+ //id: this.suppplanitem.f_devices[i] == undefined ? "" : this.suppplanitem.f_devices[i].id
494
+ })
495
+ }else {
496
+ this.fdevices.push({
497
+ f_device_type: this.str[i].checkname,
498
+ f_items: [],
499
+ id:this.suppplanitem.f_devices[i].id
500
+ })
501
+ }
502
+ }
503
+ }else{for (let i = 0; i <this.str.length ; i++) {
504
+
505
+ this.fdevices.push({f_device_type:this.str[i].checkname,f_items:[]})
506
+ }}
507
+
508
+ this.setFitemvalue()
509
+ f()
510
+
511
+
512
+
513
+ }
514
+
515
+ //补录时改变fdevice
516
+ suppfdevice(){
517
+ for (let i = 0; i <this.str.length ; i++) {
518
+ this.fdevices.push({f_device_type:this.str[i].checkname,f_items:[]})
519
+ }
520
+ console.log("supp最后的listbutton"+JSON.stringify(this.listbutton))
521
+ this.changeListButton()
522
+ }
523
+ //改变数组的样式
524
+ changeListButton(){
525
+ let listarray=[]
526
+ for (let i = 0; i < this.listbutton.length; i++) {
527
+ if (!this.listbutton[i].mname){
528
+ console.log("这是"+this.listbutton[i].lname.length)
529
+ listarray.push(this.listbutton[i])
530
+ listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
531
+ listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
532
+ listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
533
+ let count=0
534
+ for (let j = 0; j < this.listbutton.length; j++) {
535
+ if(this.listbutton[i].lname.substring(0,this.listbutton[i].lname.length-1)==this.listbutton[j].mname){
536
+
537
+ listarray.push(this.listbutton[j])
538
+ count++
539
+ }
540
+ }
541
+ if (count%4!=0){
542
+ for (let j = 0; j <4-count%4; j++) {
543
+ listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
544
+ }
545
+ }
546
+ }
547
+ }
548
+ console.log("需要的数据"+JSON.stringify(listarray))
549
+ this.listbutton=listarray
550
+ this.tranlistbutton()
551
+ }
552
+ //横向分开list
553
+ tranlistbutton(){
554
+ console.log("jinru111111111111")
555
+ for (let i = 0; i < this.listbutton.length; i++) {
556
+ if((i+1)%4==1){
557
+ this.listbuttona.push(this.listbutton[i])
558
+ }else if((i+1)%4==2){
559
+ this.listbuttonb.push(this.listbutton[i])
560
+ }else if((i+1)%4==3){
561
+ this.listbuttonc.push(this.listbutton[i])
562
+ }else if((i+1)%4==0){
563
+ this.listbuttond.push(this.listbutton[i])
564
+ }
565
+ }
566
+ }
567
+ SelectedPlanType=''
568
+ // 打开安检计划,加载安检计划的所有安检单
569
+ async openPlan(plan, f) {
570
+ this.isSend=true
571
+ this.checkplanitems.check.checkes=[]
572
+ this.SelectedPlan=plan.id
573
+ this.SelectedPlanType=plan.f_safecheck_type
574
+ this.plan=plan
575
+ this.checkplanitems.search.setField("f_plan_id", plan.id)
576
+ this.checkplanitems.search.setField("f_state", "作废")
577
+ await this.checkplanitems.searchList("/rs/sql/planItem", {"f_plan_id": "i.f_plan_id='{}'","f_state": "i.f_state !='{}'"}, {})
578
+ f()
579
+ //this.checkplanitems.search.model.f_plan_id
580
+ this.isSend=false
581
+ }
582
+
583
+ //根据条件查询某个安检计划下的安检单
584
+ async searchPlanItem(f) {
585
+ this.checkplanitems.check.checkes=[]
586
+ if(this.checkplanitems.search.model.f_plan_id){
587
+ this.isSend=true
588
+ console.log("进入加载安检计划项"+this.checkplanitems.search.model.f_plan_id)
589
+ this.jointCondition1("planitemconditionList","checkplanitems")
590
+ await this.checkplanitems.searchList("/rs/sql/planItem",
591
+ {"f_plan_id": "i.f_plan_id='{}'",
592
+ "usercode": "i.f_userinfo_code='{}'",
593
+ "username": "i.f_user_name='{}'",
594
+ "f_address": "i.f_address like '%{}%'",
595
+ "f_last_check_state": "i.f_last_check_state='{}' ",
596
+ "f_start_time": "i.f_last_check_date >='{}'",
597
+ "f_end_time": "i.f_last_check_date <='{}'",
598
+ "f_last_check_result":"i.f_last_check_result like '%{}%'",
599
+ 'f_user_state':"uf.f_userstate='{}'",
600
+ "f_state": "i.f_state !='{}'",
601
+ "f_state1": "i.f_state ='{}'"
602
+ },
603
+ {})
604
+ f()
605
+ this.isSend=false
606
+ }else{
607
+ Vue.showMessage("请选择安检计划")
608
+ }
609
+ }
610
+ //加载更多数据
611
+ async loadMore(modelname,f) {
612
+ this.isSend=true
613
+ await this[modelname].list.loadMore()
614
+ f()
615
+ this.isSend=false
616
+ }
617
+
618
+ //点击全选按钮事件 user-用户列表 planitem-计划项列表
619
+ changeCheckAll(modulename, f) {
620
+ this[modulename].check.setCheckAll()
621
+ f()
622
+ }
623
+
624
+ //当选中列表中某项时触发
625
+ addParam(modulename, id) {
626
+ console.log("当前值"+modulename+"--------"+id)
627
+ this[modulename].check.setCheckes(id)
628
+ }
629
+
630
+ //设置属性值
631
+ setProperty(modulename, property, value,f) {
632
+
633
+ console.log(modulename+"新添--"+property+"--"+value)
634
+ if(property=='area'){
635
+ this.selectChanged("user","meterbook","","",f)
636
+ if(value=='全部'){
637
+ this[modulename].search.setField(property, '')
638
+ this.cbc=[]
639
+ this.meterbooks.forEach((res) => {
640
+ this.cbc.push({label: res.f_book_name, value: res.id})
641
+ /*if(res.f_book_slice_area){
642
+ if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
643
+ this.sliceArea.push(res.f_book_slice_area)
644
+ }
645
+ }*/
646
+ })
647
+ f()
648
+ return
649
+ }
650
+ this[modulename].search.setField(property, value)
651
+ this.cbc=[]
652
+ this.meterbooks.forEach((res) => {
653
+ if(res.f_book_slice_area==value){
654
+ this.cbc.push({label: res.f_book_name, value: res.id})
655
+ }
656
+
657
+ /*if(res.f_book_slice_area){
658
+ if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
659
+ this.sliceArea.push(res.f_book_slice_area)
660
+ }
661
+ }*/
662
+ })
663
+ f()
664
+ }else if(value=='全部'){
665
+ this[modulename].search.setField(property, '')
666
+ }else{
667
+ this[modulename].search.setField(property, value)
668
+ }
669
+ }
670
+
671
+ //列表中的选择框是否被选中
672
+ hasValue(modulename,value){
673
+ this[modulename].check.checks.has()
674
+ }
675
+ // 给新建安检计划设置属性值
676
+ setNewPlan(property, value) {
677
+ console.log(value)
678
+ this.newPlan[property] = value
679
+ return this
680
+ }
681
+ //将某项拖动到计划中
682
+ //dragParam:从拖动的起始位置传入的参数
683
+ async dragtoPlan(f_plan_id,f_safecheck_type,f_filialeid,dragParam,f){
684
+ console.log("当前传入:"+dragParam)
685
+ await this.dragtoPlanItem(f_plan_id,f_safecheck_type,dragParam,f)
686
+ await this.dragtoOtherPlanIteem(f_plan_id,dragParam,f)
687
+ }
688
+
689
+ //将客户信息拖至计划中
690
+ async dragtoPlanItem(f_plan_id,f_safecheck_type,dragParam,f) {
691
+
692
+ console.log("计划id:"+f_plan_id+"公司id:"+this.filialeid)
693
+ if(dragParam=='user'){
694
+ this.jointCondition("user")
695
+ if(this.checkplanitems.search.model.f_plan_id){
696
+ this.isSend=true
697
+ let res=await this.http.load("POST", "/rs/logic/AddCheckPlanItem", {
698
+ data:{
699
+ f_operator:global.login.name,
700
+ f_plan_id:f_plan_id,
701
+ f_safecheck_type:f_safecheck_type,
702
+ f_filialeid:this.filialeid,
703
+ f_subscribe_date:'',
704
+ condition:this.user.search.search({
705
+ "f_filialeid": "ui.f_filialeid={}",
706
+ "userinfocode": "ui.f_userinfo_code='{}'",
707
+ "username": "ui.f_user_name like '%{}%'",
708
+ "useraddress": "ua.f_address like '%{}%'",
709
+ "userType":"uf.f_user_type='{}'",
710
+ "f_residential_area":"ua.f_residential_area = '{}'",
711
+ "f_building":"ua.f_building='{}'",
712
+ "f_unit":"ua.f_unit='{}'",
713
+ "f_user_state":"ui.f_user_state='{}'",
714
+ "checkTime":" {}",
715
+ "meterbook":"uf.f_meter_book_num='{}'",
716
+ "user_start":" uf2.f_dateofopening >='{}'",
717
+ "user_end":" uf2.f_dateofopening <='{}'",
718
+ "check_start":" ua.f_last_check_date >='{}'",
719
+ "check_end":" ua.f_last_check_date<= '{}'",
720
+ "area":" ua.f_slice_area='{}'",
721
+ "ychecked":" {}",
722
+ "f_metertitles":" uf2.f_metertitles='{}'",
723
+ "f_gasproperties":" uf.f_gasproperties='{}'",
724
+ "uploadCondition":" {}",
725
+ "f_backlist":" {}"
726
+ }),
727
+ switchCheckAll:this.user.check.switchCheckAll,
728
+ checkAll:this.user.check.checkAll,
729
+ param:this.user.check.checkes,
730
+ columnName: "ua.id"
731
+ }
732
+ }, {resolveMsg: null, rejectMsg: null})
733
+ console.log("重复数量-"+JSON.stringify(res.data.result)+"---"+res.data.result.length)
734
+ if(res.data.code==200){
735
+ //alert("添加成功!有"+res.data.result.length+"条用户地址已经存在于其他计划中: \n"+res.data.result.reduce((c,v)=>{c += v.f_user_name+":"+v.f_address+"\n"}),0)
736
+ Vue.showMessage("添加成功!"+(res.data.result.length>0?"有"+res.data.result.length+"条用户地址已经存在于其他计划中":""))
737
+ }else{
738
+ Vue.showMessage("添加失败!")
739
+ }
740
+ this.user.check.checkes=[]
741
+ await this.searchUser(()=>{})
742
+ await this.searchPlanItem(()=>{})
743
+ await this.loadCheckPlan("",()=>{})
744
+ f()
745
+ this.isSend=false
746
+ }else{
747
+ Vue.showMessage("请先打开一个计划再进行操作")
748
+ }
749
+ }
750
+ }
751
+
752
+ //将某个计划下的一项拖到另一个计划
753
+ async dragtoOtherPlanIteem(checkplanid,dragParam,f) {
754
+ if(dragParam=='item'){
755
+ this.isSend=true
756
+ let res=await this.http.load("POST", "/rs/logic/UpCheckPlanItem", {
757
+ data:{
758
+ f_operator:global.login.name,
759
+ f_plan_id:checkplanid,
760
+ condition:this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
761
+ "usercode": "it.f_userinfo_code='{}'",
762
+ "username": "it.f_user_name='{}'",
763
+ "f_address": "it.f_address like '%{}%'",
764
+ "f_last_check_state": "it.f_last_check_state='{}' ",
765
+ "f_start_time": "it.f_last_check_date >='{}'",
766
+ "f_end_time": "it.f_last_check_date <='{}'",
767
+ "f_last_check_result":"it.f_last_check_result like '%{}%'",
768
+ 'f_user_state':"uf.f_userstate='{}'",
769
+ "f_state": "it.f_state !='{}'",
770
+ "f_state1": "it.f_state ='{}'"
771
+ }),
772
+ switchCheckAll:this.checkplanitems.check.switchCheckAll,
773
+ checkAll:this.checkplanitems.check.checkAll,
774
+ param:this.checkplanitems.check.checkes,
775
+ columnName: "it.id"
776
+ }
777
+ }, {resolveMsg: null, rejectMsg: null})
778
+ if(res.data.code==200){
779
+ await this.searchUser(()=>{})
780
+ await this.searchPlanItem(()=>{})
781
+ await this.loadCheckPlan("",()=>{})
782
+ f()
783
+ Vue.showMessage("更换安检计划成功!")
784
+ }else{
785
+ Vue.showMessage("更换安检计划失败!")
786
+ }
787
+ f()
788
+ this.isSend=false
789
+ }
790
+
791
+ }
792
+
793
+ //修改计划项状态为作废
794
+ async delPlanItem(dragParam,f) {
795
+ console.log("进入作废计划项方法")
796
+ if(dragParam=='item'){
797
+ Vue.showMessage("此操作无法撤回,确定要执行作废安检单操作吗?",['confirm','cancel']).then((button)=>{
798
+ if(button=='confirm'){
799
+ this.isSend=true
800
+ let resu=this.http.load("POST", "/rs/logic/UpCheckPlanItemState", {
801
+ data: {
802
+ f_operator:global.login.name,
803
+ condition:this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
804
+ "usercode": "i.f_userinfo_code='{}'",
805
+ "username": "i.f_user_name='{}'",
806
+ "f_address": "i.f_address like '%{}%'",
807
+ "f_last_check_state": "i.f_last_check_state='{}' ",
808
+ "f_start_time": "i.f_last_check_date >='{}'",
809
+ "f_end_time": "i.f_last_check_date <='{}'",
810
+ "f_last_check_result":"i.f_last_check_result like '%{}%'",
811
+ 'f_user_state':"uf.f_userstate='{}'",
812
+ "f_state": "i.f_state !='{}'",
813
+ "f_state1": "i.f_state ='{}'"
814
+ }),
815
+ switchCheckAll:this.checkplanitems.check.switchCheckAll,
816
+ checkAll:this.checkplanitems.check.checkAll,
817
+ param:this.checkplanitems.check.checkes,
818
+ columnName: "i.id"
819
+ }
820
+ }, {resolveMsg: null, rejectMsg: null}).then((resu)=>{
821
+
822
+ console.log("-----------"+JSON.stringify(resu.data))
823
+ if(resu.data.code==200){
824
+ Vue.showMessage("移除安检单成功! 成功移除:"+resu.data.res.up+"条"+(resu.data.res.noup>0?"有"+resu.data.res.noup+"条已经不是 ‘未检’ 状态!":""))
825
+ this.searchUser(f)
826
+ this.searchPlanItem(f)
827
+ this.loadCheckPlan("",f)
828
+ }else{
829
+ Vue.showMessage("取消安检计划失败!")
830
+ }
831
+ this.isSend=false
832
+ })
833
+
834
+ }
835
+
836
+ })
837
+
838
+ }
839
+
840
+ }
841
+
842
+ //新建计划
843
+ async addNewPlan(f) {
844
+ if(!this.validationCreatePlan()){
845
+ return
846
+ }
847
+ this.isSend=true
848
+ let res=await this.http.load("POST","/rs/sql/getCheckplan", {data: {condition:"f_plan_name='"+this.newPlan.f_plan_name+"'",sortfield:'f_create_time desc'}})
849
+ console.log("结果-"+res.data.length)
850
+ if(res.data.length>0){
851
+ Vue.showMessage("计划名称不能重复!")
852
+ this.isSend=false
853
+ return
854
+ }
855
+ if(this.isShare=="是"){
856
+ this.newPlan.f_checker_id=null
857
+ this.newPlan.f_checker=null
858
+ }
859
+ this.newPlan.f_plan_type='预约计划'
860
+ this.newPlan.f_subcompany=global.login.orgs
861
+ this.newPlan.f_filialeid=this.filialeid
862
+ this.newPlan.f_create_operator=global.login.name
863
+ this.newPlan.f_create_time=this.getNowFormatDate()
864
+ await Vue.resetpost("/rs/logic/createCheckPlan", {"data": this.newPlan},{resolveMsg : '新建计划成功!', rejectMsg : '新建计划失败!'})
865
+ //await this.loadCheckPlan('',()=>{})
866
+ this.newPlan={f_issued:"否"}
867
+ this.isShare="否"
868
+ await this.loadCheckPlan('',()=>{})
869
+ f()
870
+ window.dispatchEvent(new CustomEvent("goRefresh"),{})
871
+ this.isSend=false
872
+
873
+ }
874
+
875
+ // 取消新建安检计划
876
+ cancel() {
877
+ this.newPlan={f_issued:"否"}
878
+ this.isShare="否"
879
+ this.plan={}
880
+ }
881
+
882
+ // 取年的选择项目
883
+ years() {
884
+ return date.yearSelects
885
+ }
886
+ /*
887
+ 1.获取配置文件
888
+ 2.组装配置文件 (配置文件[] JS提前固定的数组[] return [])
889
+ */
890
+
891
+ // str = [
892
+ // {
893
+ // "checkname": "燃气表",
894
+ // "checkmust":false,
895
+ // "items":[
896
+ // {"lname": "表具状态","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"包裹","isdefect":true,"level":"C2","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"},{"data":"漏气","isdefect":true,"level":"A1","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"}]},
897
+ // {"lname": "表故障","multiple":true,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"破损变形","isdefect":true,"level":"B2","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"},{"data":"失效","isdefect":true,"level":"B2","isdefault": false},{"data":"不走字","isdefect":true,"level":"B2","isdefault": false},{"data":"铅封损坏","isdefect":true,"level":"B2","isdefault": false},{"data":"气表到期(使用年限超过八年)","isdefect":true,"level":"B2","isdefault": false}]},
898
+ // {"lname": "腐蚀","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"轻微","isdefect":false,"isdefault": false},{"data":"中度","isdefect":false,"isdefault": false},{"data":"严重","isdefect":true,"level":"A2","isdefault": false,"tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"}]},
899
+ // {"lname": "使用年限","type":"string", "data": 8,"isshow": false}
900
+ // ]
901
+ // },
902
+ // {
903
+ // "checkname": "阀门",
904
+ // "checkmust":true,
905
+ // "items":[
906
+ // {"lname": "阀门","multiple":true,"type":"selector","options":[{"data":"无阀门","isdefect":true,"level":"A2"},{"data":"无阀柄","isdefect":true,"level":"A2"},{"data":"失效","isdefect":true,"level":"A2"}]},
907
+ // {"lname": "表前阀","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A1","isdefault": false}]},
908
+ // {"lname": "灶前阀","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A1","isdefault": false}]},
909
+ // {"lname":"使用年限","type":"string", "data": 8,"isshow": false}
910
+ // ]
911
+ // },
912
+ // {
913
+ // "checkname": "户内管",
914
+ // "quantity": 2,
915
+ // "checkmust":true,
916
+ // "items":[
917
+ // {"lname": "穿墙管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
918
+ // {"lname": "胶管","multiple":true,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"老化、超期使用","isdefect":true,"level":"A8"},{"data":"未紧箍","isdefect":true,"level":"C2"},
919
+ // {"data":"软管穿墙","isdefect":true,"level":"C2"},{"data":"软管超长(长度超过两米)","isdefect":true,"level":"C2"},{"data":"非专用软管","isdefect":true,"level":"C2"}]},
920
+ // {"lname": "镀锌管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
921
+ // {"lname": "铝塑管、波纹管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
922
+ // {"lname": "热水器管","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8"}]},
923
+ // {"lname":"使用年限","type":"string", "data": 8,"isshow": false}
924
+ // ]
925
+ // },
926
+ // {
927
+ // "checkname": "热水器",
928
+ // "quantity": 0,
929
+ // "checkmust":false,
930
+ // "items":[
931
+ // {"lname": "热水器品牌","type":"string"},
932
+ // {"lname": "热水器烟道","multiple":true,"type":"selector","options":[{"data":"正常","isdefect":false},{"data":"未安装烟道","isdefect":true,"level":"A8","tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"},{"data":"烟道未与大气直接连通","isdefect":true,"level":"A8"},{"data":"安装不规范","isdefect":true,"level":"A8"}]},
933
+ // {"lname": "安装位置","multiple":false,"type":"selector","options":[{"data":"卫生间","isdefect":false},{"data":"卧室","isdefect":true,"level":"A8"},
934
+ // {"data":"客厅过道","isdefect":true,"level":"A8"},{"data":"内厨房","isdefect":true,"level":"A8"},{"data":"其他密封或通风不良房间","isdefect":true,"level":"A8"}]},
935
+ // {"lname": "工作状态","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false},{"data":"异常","isdefect":true,"level":"A8"}]},
936
+ // {"lname":"使用年限","type":"string", "data": 4,"isshow": false}
937
+ // ]
938
+ // },
939
+ // {
940
+ // "checkname": "燃气具",
941
+ // "checkmust":false,
942
+ // "items":[
943
+ // {"lname": "燃气具品牌","type":"string"},
944
+ // {"lname": "安装位置","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"异常","isdefect":true,"level":"A8","isdefault": false}]},
945
+ // {"lname": "安装状况","multiple":false,"type":"selector","options":[{"data":"正常","isdefect":false,"isdefault": true},{"data":"超年限(使用年限为8年)","isdefect":true,"level":"A8","isdefault": false}]},
946
+ // {"lname":"使用年限","multiple":false,"type":"string", "data": 4}
947
+ // ]
948
+ // },
949
+ // {
950
+ // "checkname": "其他",
951
+ // "checkmust":false,
952
+ // "items":[
953
+ // {"lname": "使用简易三通","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]},
954
+ // {"lname": "私自安装、改迁燃气设施及设备","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8","tooltip":"1.整改时限1日,2,禁止使用,及时联系公司客服"}]},
955
+ // {"lname": "违反安全间距规定","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]},
956
+ // {"lname": "燃气设施及设备上搭挂重物","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]},
957
+ // {"lname": "燃气管道被作电器接地线使用","multiple":false,"type":"selector","options":[{"data":"否","isdefect":false},{"data":"是","isdefect":true,"level":"A8"}]}
958
+ // ]
959
+ // }
960
+ // ]
961
+ //str=[{"checkname":"热水器","index":3,"items":[{"lname":"烟道式安装在卫生间","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"已过八年强制报废期","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"热水器泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"热水器品牌","index":5,"type":"string"},{"lname":"启用时间","index":6,"type":"date"},{"lname":"强制式安排在卫生间","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"}]},{"checkname":"炉","index":2,"items":[{"lname":"嵌入式炉子下面柜门无通风口","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"炉泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"已过8年强制报废期","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"},{"lname":"炉子品牌","index":5,"type":"string"},{"lname":"无自动熄火保护装置","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"启用时间","index":6,"type":"date"}]},{"checkname":"灶前阀","index":4,"items":[{"lname":"无把柄","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"开关不便","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"}]},{"checkname":"其他","index":7,"items":[{"lname":"其他/压力","index":1,"type":"string"}]},{"checkname":"胶管","index":5,"items":[{"lname":"超2年","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"},{"lname":"超2米","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"穿墙","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":5,"type":"selector"},{"lname":"老化","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"无管卡","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"}]},{"checkname":"管道","index":6,"items":[{"lname":"泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":1,"type":"selector"},{"lname":"一般锈蚀","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":4,"type":"selector"},{"lname":"暗埋","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":2,"type":"selector"},{"lname":"严重锈蚀","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":3,"type":"selector"},{"lname":"悬挂物品","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":5,"type":"selector"}]},{"checkname":"燃气表","index":1,"items":[{"lname":"表前阀无把柄","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":16,"type":"selector"},{"lname":"运转正常","multiple":false,"options":[{"isdefect":false,"data":"是"},{"isdefect":false,"data":"否","isdefault":true}],"index":11,"type":"selector"},{"lname":"表不转动","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":12,"type":"selector"},{"lname":"表前阀泄露","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":15,"type":"selector"},{"lname":"表前阀开关不便","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":17,"type":"selector"},{"lname":"未封表","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":13,"type":"selector"},{"lname":"封闭无通风","multiple":false,"options":[{"isdefect":true,"data":"是","isdefault":false},{"isdefect":false,"data":"否","isdefault":true}],"index":14,"type":"selector"}]}]
962
+
963
+
964
+ //遍历选择框以及得到list
965
+ getselector(){
966
+ this.listbutton=[]
967
+
968
+ for (let i = 0; i <this.str.length ; i++) {
969
+ let strlist=[]
970
+ strlist=this.str[i].items.concat()
971
+ for (let j = 0; j <strlist.length ; j++) {
972
+ strlist[j]["mname"]=this.str[i].checkname
973
+ }
974
+ strlist.splice(0,0,{lname:this.str[i].checkname+":",type:"",mname:""})
975
+ let bb=this.listbutton
976
+ this.listbutton=bb.concat(strlist)
977
+
978
+
979
+ }
980
+
981
+ let h=this.listbutton
982
+ for (let i = 0; i <h.length ; i++) {
983
+
984
+ h[i]["selected"]=""
985
+ h[i]["level"]=""
986
+ h[i]["isdefect"]=""
987
+ if (h[i].type =="selector"){
988
+ let size=h[i].options.length
989
+
990
+ let pl=[]
991
+ for (let j = 0; j <size ; j++) {
992
+ let n=h[i].lname+h[i].mname
993
+
994
+ pl.push(h[i].options[j].data)
995
+ this.planItemConditional[n]=pl
996
+
997
+ }
998
+ }
999
+ }
1000
+
1001
+ console.log("get最后的listbutton"+JSON.stringify(this.listbutton))
1002
+ }
1003
+ //返回遍历的option
1004
+ reoption(key1,key2){
1005
+
1006
+ let modelname=key1+key2
1007
+ return this.planItemConditional[modelname]
1008
+
1009
+ }
1010
+
1011
+
1012
+ // 取月的选择项目
1013
+ months() {
1014
+ return date.monthSelects
1015
+ }
1016
+
1017
+ //下发安检计划
1018
+ async sendCheckPlan(f){
1019
+ if(this.checkplan.check.checkes.length<1){
1020
+ Vue.showMessage("请选择要下发的安检计划")
1021
+ return
1022
+ }
1023
+ this.isSend=true
1024
+ let res=await this.http.load("POST", "/rs/logic/NewBespeakCheckPlan", {
1025
+ data:{
1026
+ f_issued:'是',
1027
+ f_issue_time:this.getNowFormatDate(),
1028
+ f_send_operator:global.login.name,
1029
+ param:this.checkplan.check.checkes,
1030
+ }
1031
+ }, {resolveMsg: null, rejectMsg: null})
1032
+ if(res.data.code==200){
1033
+ //Vue.showMessage("下发成功!其中有"+res.data.repet+"个计划己经是下发状态")
1034
+ Vue.showMessage("下发成功!")
1035
+ await this.loadCheckPlan('',()=>{})
1036
+ f()
1037
+ }else{
1038
+ Vue.showMessage("下发失败!")
1039
+ }
1040
+ this.isSend=false
1041
+ }
1042
+
1043
+ //删除安检计划
1044
+ async delCheckPlan(f){
1045
+ if(this.checkplan.check.checkes.length<1){
1046
+ Vue.showMessage("请选择要删除的安检计划")
1047
+ return
1048
+ }
1049
+ this.isSend=true
1050
+ let res=await this.http.load("POST", "/rs/logic/deleteCheckPlan", {
1051
+ data:{
1052
+ f_operator:global.login.name,//global.login.name,
1053
+ condition:this.checkplan.search.search({}),
1054
+ switchCheckAll:this.checkplan.check.switchCheckAll,
1055
+ checkAll:this.checkplan.check.checkAll,
1056
+ param:this.checkplan.check.checkes,
1057
+ columnName: "f_plan_id"
1058
+ }
1059
+ }, {resolveMsg: "删除成功!", rejectMsg: "删除失败!"})
1060
+ console.log(JSON.stringify(res))
1061
+ if(res.data.code==200){
1062
+ Vue.showMessage("删除成功!"+res.data.message,"success",2500)
1063
+ await this.loadCheckPlan('',()=>{})
1064
+ }else{
1065
+ Vue.showMessage("删除失败!"+res.data.message,"success",2500)
1066
+ }
1067
+ this.checkplanitems.search.model.f_plan_id=""
1068
+ this.checkplanitems.list.data=[]
1069
+ f()
1070
+ this.isSend=false
1071
+ }
1072
+ //修改计划时 用来存储当前选中要修改的计划
1073
+ plan={}
1074
+ setPlanVal(value){
1075
+ console.log(value)
1076
+ this.plan=JSON.parse(JSON.stringify( value ))
1077
+ }
1078
+ setPlan(key,val){
1079
+ this.plan[key]=val
1080
+ }
1081
+ isUpdate(key1,key2){
1082
+ if (key1=="已检"&&key2!="补录"){
1083
+ return true;
1084
+ }
1085
+ return false;
1086
+ }
1087
+ //修改安检计划
1088
+ async upCheckPlan(f){
1089
+ if(this.plan.f_issued=='已下发'){
1090
+ Vue.showMessage("该计划已下发,无法进行修改!")
1091
+ return
1092
+ }
1093
+ this.isSend=true
1094
+ let res=await this.http.load("POST", "/rs/logic/updateCheckPlan", {
1095
+ data:{
1096
+ f_checker:this.plan.f_checker,
1097
+ f_checker_id:this.plan.f_checker_id,
1098
+ f_plan_name:this.plan.f_plan_name,
1099
+ f_plan_year:this.plan.f_plan_year,
1100
+ f_plan_month:this.plan.f_plan_month,
1101
+ f_plan_id:this.plan.id
1102
+ }
1103
+ }, {resolveMsg: null, rejectMsg: null})
1104
+ if(res.data.code==200){
1105
+ Vue.showMessage("修改成功!"+res.data.message,"success",2500)
1106
+ await this.loadCheckPlan('',()=>{})
1107
+ }else{
1108
+ Vue.showMessage("修改失败!"+res.data.message,"success",2500)
1109
+ }
1110
+ f()
1111
+ this.isSend=false
1112
+ }
1113
+
1114
+ /* getDataLength(modelname){
1115
+ console.log("sdadasdasdasdadasdadddddddddddddddddddddddddddddddddddddddddddd")
1116
+ let l=this[modelname].list.data.length
1117
+ console.log("--"+l)
1118
+ return l
1119
+ }*/
1120
+ //新建安检计划非空判断
1121
+ validationCreatePlan(){
1122
+ if(!this.newPlan.f_plan_name){
1123
+ Vue.showMessage("请输入安检计划名称!")
1124
+ return false
1125
+ }
1126
+ if(!this.newPlan.f_plan_year){
1127
+ Vue.showMessage("请选择安检年份!")
1128
+ return false
1129
+ }
1130
+ if(!this.newPlan.f_plan_month){
1131
+ Vue.showMessage("请选择安检月份!")
1132
+ return false
1133
+ }
1134
+ if(this.isShare=="否"){
1135
+ if(!this.newPlan.f_checker){
1136
+ Vue.showMessage("请选择安检人员!")
1137
+ return false
1138
+ }
1139
+ }else{
1140
+ this.newPlan.f_checker=''
1141
+ }
1142
+ if(!this.newPlan.f_safecheck_type){
1143
+ Vue.showMessage("请选择安检类型!")
1144
+ return false
1145
+ }
1146
+ return true
1147
+ }
1148
+
1149
+ //调用updatecheckpaper
1150
+ async addNewPaper(f){
1151
+ this.setFdevices()
1152
+ this.setfDevicesid()
1153
+ //return;
1154
+ for (var i = 0; i <this.checkerMess.length ; i++) {
1155
+ if (this.checkerMess[i].name==this.suppplanitem.f_checker_name){
1156
+ this.suppplanitem["f_checker_id"]=this.checkerMess[i].id
1157
+ }
1158
+ }
1159
+ //console.log(this.fdevices)
1160
+ //return;
1161
+ this.suppplanitem["f_devices"]=this.fdevices
1162
+ this.suppplanitem.f_check_type=this.suppplanitem.f_user_type
1163
+ this.suppplanitem.f_state = "已检"
1164
+ this.suppplanitem.f_approved = "未审核"
1165
+ this.suppplanitem.f_complete = "已完成"
1166
+ this.suppplanitem.f_no_checkplan ="有计划安检"
1167
+ //return;
1168
+ this.suppplanitem.f_check_plan_id=this.suppplanitem.f_plan_id
1169
+
1170
+ let res=await this.http.load("POST", "/rs/logic/SuppCheckPaper", {data:{paper:this.suppplanitem}})
1171
+
1172
+ this.openPlan(this.plan,f)
1173
+ f()
1174
+ window.dispatchEvent(new CustomEvent("goRefresh"),{})
1175
+ }
1176
+ addnewPaper(f){
1177
+ delete this.suppplanitem.id
1178
+ if(!this.suppplanitem.f_onsite_time){
1179
+ Vue.showMessage("提交失败,请输入开始时间!")
1180
+ return false
1181
+ }
1182
+ if(!this.suppplanitem.f_offsite_time){
1183
+ Vue.showMessage("提交失败,请输入结束时间!")
1184
+ return false
1185
+ }
1186
+ if(!this.suppplanitem.f_entry_status){
1187
+ Vue.showMessage("提交失败,请输入入户状态!")
1188
+ return false
1189
+ }
1190
+ if(!this.suppplanitem.f_usegas&&this.suppplanitem.f_entry_status=='入户'){
1191
+ Vue.showMessage("提交失败,请输入燃气使用状态!")
1192
+ return false
1193
+ }
1194
+ // if(!this.suppplanitem.f_checker_name){
1195
+ // Vue.showMessage("提交失败,请输入安检员!")
1196
+ // }
1197
+ this.addNewPaper(f)
1198
+ }
1199
+ updatePaper(f){
1200
+ this.addNewPaper(f)
1201
+ }
1202
+ setNewPaper(property,value){
1203
+ this.suppplanitem[property] = value
1204
+
1205
+
1206
+
1207
+ return this
1208
+ }
1209
+
1210
+ setFdevices(){
1211
+
1212
+
1213
+ var ar=this.listbutton
1214
+ var br=this.fdevices
1215
+ for (var i = 0; i <br .length; i++) {
1216
+ for (var j = 0; j < ar.length; j++) {
1217
+ if (br[i].f_device_type == ar[j].mname) {
1218
+ br[i].f_items.push({
1219
+ f_item_name: ar[j].lname,
1220
+ f_item_value: ar[j].selected,
1221
+ type: ar[j].type,
1222
+ f_is_defect: ar[j].isdefect,
1223
+ f_defect_level: ar[j].level,
1224
+ f_item_lists:[{
1225
+ //f_item_id: "",
1226
+ f_item_value: ar[j].selected,
1227
+ //id:""
1228
+ }]
1229
+ })
1230
+ }
1231
+ }
1232
+ }
1233
+ }
1234
+ //给fdevices赋值id
1235
+ setfDevicesid(){
1236
+ var suppf=this.suppplanitem.f_devices
1237
+ var fde=this.fdevices
1238
+ if (this.suppplanitem.hasOwnProperty("f_devices")){
1239
+ for (let i = 0; i <suppf.length ; i++) {
1240
+ for (let j = 0; j <fde.length; j++) {
1241
+ if (suppf[i].f_device_type==fde[j].f_device_type){
1242
+ for (let k = 0; k <suppf[i].f_items.length ; k++) {
1243
+ // console.log("789456123")
1244
+ for (let l = 0; l <fde[j].f_items.length ; l++) {
1245
+ // console.log("11111111111111")
1246
+ if (suppf[i].f_items[k].f_item_name==fde[j].f_items[l].f_item_name) {
1247
+ fde[j].f_items[l]["id"]=suppf[i].f_items[k].id
1248
+ if (suppf[i].f_items[k].f_item_lists.length!=0){
1249
+ fde[j].f_items[l].f_item_lists[0]["id"]=suppf[i].f_items[k].f_item_lists[0].id
1250
+ fde[j].f_items[l].f_item_lists[0]["f_item_id"]=suppf[i].f_items[k].f_item_lists[0].f_item_id
1251
+ }
1252
+ }
1253
+ }
1254
+ }
1255
+ }
1256
+ }
1257
+ }
1258
+ }else {
1259
+ this.suppplanitem.f_upload_date=this.getNowFormatDate()
1260
+ }
1261
+ }
1262
+ //
1263
+ setFitemvalue(){
1264
+ for (var k = 0; k <this.listbutton.length ; k++) {
1265
+ for (var i = 0; i <this.suppplanitem.f_devices.length ; i++) {
1266
+ for (var j = 0; j < this.suppplanitem.f_devices[i].f_items.length; j++) {
1267
+ if (this.listbutton[k].lname==this.suppplanitem.f_devices[i].f_items[j].f_item_name){
1268
+ this.listbutton[k].selected=this.suppplanitem.f_devices[i].f_items[j].f_item_value
1269
+ }
1270
+ }
1271
+ }
1272
+ }
1273
+ }
1274
+ //改变selected属性
1275
+ changeSelected(selectedname,selectedmname,selectedvalue){
1276
+ var sa=this.listbutton
1277
+ for (var i = 0; i <sa.length; i++) {
1278
+ if (sa[i].lname==selectedname&&sa[i].mname==selectedmname){
1279
+ sa[i].selected=selectedvalue
1280
+ if (sa[i].type=="selector"){//判断是否是选择类型
1281
+ for (var j = 0; j < sa[i].options.length; j++) {
1282
+ if (sa[i].options[j].data==selectedvalue){//赋值为json的level和isdefect
1283
+ sa[i].level=sa[i].options[j].level
1284
+ sa[i].isdefect=sa[i].options[j].isdefect
1285
+ }
1286
+ }
1287
+ }
1288
+ }
1289
+ }
1290
+ //console.log(this.fdevices)
1291
+ }
1292
+ getAreaList() {
1293
+ let res = this.http.load('POST', '/rs/sql/safe_singleTable_GroupBy', {
1294
+ data: {
1295
+ items: 'f_residential_area',
1296
+ tablename: 't_area',
1297
+ condition: 'f_filialeid = '+this.filialeid,
1298
+ groupitem: 'f_residential_area'
1299
+ }
1300
+ }, {resolveMsg: null, rejectMsg: null}).then((res)=>{
1301
+ if (res.data) {
1302
+ let arr=[]
1303
+ for(let i =0 ;i<res.data.length;i++){
1304
+ arr.push(res.data[i].f_residential_area)
1305
+ }
1306
+ this.conditionJson[0].options=arr
1307
+ }
1308
+ })
1309
+
1310
+ }
1311
+ //获取当前时间
1312
+ getNowFormatDate() {
1313
+ let date = new Date();
1314
+ let seperator1 = "-";
1315
+ let seperator2 = ":";
1316
+ let month = date.getMonth() + 1;
1317
+ let strDate = date.getDate();
1318
+ let hour = date.getHours();
1319
+ let min = date.getMinutes();
1320
+ let second = date.getSeconds();
1321
+ if (month >= 1 && month <= 9) {
1322
+ month = "0" + month;
1323
+ }
1324
+ if (strDate >= 0 && strDate <= 9) {
1325
+ strDate = "0" + strDate;
1326
+ }
1327
+ if (hour >= 0 && hour <= 9) {
1328
+ hour = "0" + hour;
1329
+ }
1330
+ if (min >= 0 && min <= 9) {
1331
+ min = "0" + min;
1332
+ }
1333
+ if (second >= 0 && second <= 9) {
1334
+ second = "0" + second;
1335
+ }
1336
+ let currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
1337
+ + " " + hour + seperator2 + min
1338
+ + seperator2 + second;
1339
+ return currentdate;
1340
+ }
1341
+ //excel导出
1342
+ async exportFile(){
1343
+ if(!this.checkplanitems.search.model.f_plan_id){
1344
+ Vue.showMessage("请选择先打开一个安检计划!")
1345
+ return
1346
+ }
1347
+ this.isSend=true
1348
+ this.jointCondition1("planitemconditionList","checkplanitems")
1349
+ let res=await this.http.load('POST','rs/logic/SafeExportExcel',
1350
+ {
1351
+ "data": {
1352
+ "body": {
1353
+ "data": {
1354
+ "condition": this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
1355
+ "usercode": "i.f_userinfo_code='{}'",
1356
+ "username": "i.f_user_name='{}'",
1357
+ "f_address": "i.f_address like '%{}%'",
1358
+ "f_last_check_state": "i.f_last_check_state='{}' ",
1359
+ "f_start_time": "i.f_last_check_date >='{}'",
1360
+ "f_end_time": "i.f_last_check_date <='{}'",
1361
+ "f_last_check_result":"i.f_last_check_result like '%{}%'",
1362
+ 'f_user_state':"uf.f_userstate='{}'",
1363
+ "f_state": "i.f_state !='{}'",
1364
+ "f_state1": "i.f_state ='{}'"
1365
+ })
1366
+ },
1367
+ "field": ["f_userinfo_code:用户编号","f_user_name:用户名称",
1368
+ "f_user_type:用户类型","f_userstate:用户状态","f_hetongdate:合同日期","f_residential_area:小区名称",
1369
+ "f_state:安检状态","f_buildtype:房屋类型","f_meternumber:表号",
1370
+ "f_metertitles:表封号","f_aroundmeter:左右表","f_gaswatchbrand:气表品牌",
1371
+ "f_neiwaibiao:气表位置","f_phone:电话","f_dateofopening:开户日期",
1372
+ "f_address:详细地址"
1373
+ ],
1374
+ "templateName": this.plan.f_plan_name,
1375
+ "sqlName": "planItem",
1376
+ "uuid": this.guid()
1377
+ },
1378
+ }
1379
+ }
1380
+ ,{resolveMsg: null, rejectMsg: null})
1381
+ console.log("excel结果---"+JSON.stringify(res))
1382
+ let link = document.createElement('a');
1383
+ let path = res.data[0].filename
1384
+ //webapps这个是在服务器上导出用的
1385
+ let pathName = "http://" + location.host + "/webapps" + path.split('webapps')[1]
1386
+ //excel这个是在本地导出用的
1387
+ link.href = pathName;
1388
+ link.download = path.split('excel/')[1];
1389
+ link.dispatchEvent(new MouseEvent('click'));
1390
+ this.isSend=false
1391
+ }
1392
+ guid() {
1393
+ return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
1394
+ let r = Math.random() * 16 | 0,
1395
+ v = c == 'x' ? r : (r & 0x3 | 0x8)
1396
+ return v.toString(16)
1397
+ })
1398
+ }
1399
+ //excel导出
1400
+ async userexportFile(){
1401
+
1402
+ this.isSend=true
1403
+ let res=await this.http.load('POST','rs/logic/SafeExportExcel',
1404
+ {
1405
+ "data": {
1406
+ "body": {
1407
+ "data": {
1408
+ "condition": this.user.search.search({
1409
+ "f_filialeid": "ui.f_filialeid={}",
1410
+ "userinfocode": "ui.f_userinfo_code='{}'",
1411
+ "username": "ui.f_user_name like '%{}%'",
1412
+ "useraddress": "ua.f_address like '%{}%'",
1413
+ "userType":"uf.f_user_type='{}'",
1414
+ "f_residential_area":"ua.f_residential_area = '{}'",
1415
+ "f_building":"ua.f_building='{}'",
1416
+ "f_unit":"ua.f_unit='{}'",
1417
+ "f_user_state":"ui.f_user_state='{}'",
1418
+ "checkTime":" {}",
1419
+ "meterbook":"uf.f_meter_book_num='{}'",
1420
+ "user_start":" uf2.f_dateofopening >='{}'",
1421
+ "user_end":" uf2.f_dateofopening <='{}'",
1422
+ "check_start":" ua.f_last_check_date >='{}'",
1423
+ "check_end":" ua.f_last_check_date<= '{}'",
1424
+ "area":" f_book_slice_area ='{}'",
1425
+ "ychecked":" {}",
1426
+ "f_metertitles":" uf2.f_metertitles='{}'",
1427
+ "f_gasproperties":" uf.f_gasproperties='{}'",
1428
+ "uploadCondition":" {}",
1429
+ "f_backlist":" {}"
1430
+ }),
1431
+ "orderitem": 'f_residential_area,f_building,f_unit,f_floor,f_room',
1432
+ "f_usertype": '',
1433
+ "month": '',
1434
+ "SafeCheckSX": {"f_check_start": '', "f_check_end": ''},
1435
+ "SafeCheckCQ": '',
1436
+ "startday":"",
1437
+ "endday":""
1438
+ },
1439
+ "field": ["f_userinfo_code:用户编号","f_user_name:用户名称",
1440
+ "f_user_type:用户类型", "f_residential_area:小区名称",
1441
+ "f_metertitles:表箱号", "f_meternumber:表号",
1442
+ "f_userstate:用户状态", "f_dateofopening:开户时间",
1443
+ "f_yytdate:建档时间",
1444
+ "f_user_phone:用户电话","f_address:详细地址"
1445
+ ],
1446
+ "templateName": '安检用户信息',
1447
+ "sqlName": "FetchUserFileByOrgNoRuHuSXQ",
1448
+ "uuid": this.guid()
1449
+ },
1450
+ }
1451
+ }
1452
+ ,{resolveMsg: null, rejectMsg: null})
1453
+ console.log("excel结果---"+JSON.stringify(res))
1454
+ let link = document.createElement('a');
1455
+ let path = res.data[0].filename
1456
+ //webapps这个是在服务器上导出用的
1457
+ let pathName = "http://" + location.host + "/webapps" + path.split('webapps')[1]
1458
+ //excel这个是在本地导出用的
1459
+ link.href = pathName;
1460
+ link.download = path.split('excel/')[1];
1461
+ link.dispatchEvent(new MouseEvent('click'));
1462
+ this.isSend=false
1463
+ }
1464
+
1465
+ //获取抄表册
1466
+ async Mreadibook(){
1467
+ this.cbc=[]
1468
+ this.sliceArea=[]
1469
+ let http = new HttpResetClass()
1470
+ let getMeterReadingBooks = await http.load('POST','rs/logic/getMeterBooksData',
1471
+ {data: {f_orgid: "('"+this.filialeid+"')"}},
1472
+ {resolveMsg: null, rejectMsg: '获取失败!!!'})
1473
+ this.cbc = [{label: '全部', value: '全部'}]
1474
+ console.log('22222222222222222222222222222222222222')
1475
+ console.log(JSON.stringify(getMeterReadingBooks))
1476
+ console.log('22222222222222222222222222222222222222')
1477
+ this.meterbooks=[]
1478
+ this.meterbooks=getMeterReadingBooks.data.meterbooks
1479
+ this.meterbooks.forEach((res) => {
1480
+ this.cbc.push({label: res.f_book_name, value: res.id})
1481
+ /*if(res.f_book_slice_area){
1482
+ if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
1483
+ this.sliceArea.push(res.f_book_slice_area)
1484
+ }
1485
+ }*/
1486
+ })
1487
+
1488
+ }
1489
+ //获取子公司
1490
+ async getOrgs(){
1491
+ let http = new HttpResetClass()
1492
+ let orgs = await http.load('POST', '/rs/search', {
1493
+ source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $organization$)',
1494
+ userid: global.login.id
1495
+ //userid:"15130"
1496
+ }, {resolveMsg: null, rejectMsg: '获取分公司出错!!!'})
1497
+ console.log("分公司--"+JSON.stringify(orgs))
1498
+ this.orgs = []
1499
+ if(orgs.data.length>0){
1500
+ orgs.data.forEach((res) => {
1501
+ this.orgs.push({label: res.name, value: res.id})
1502
+ })
1503
+ }else{
1504
+ this.orgs.push({label: this.filialeidname, value:this.filialeid})
1505
+ // this.orgs.push({label: '测试公司', value:222})
1506
+ }
1507
+
1508
+
1509
+ }
1510
+ //片区获取
1511
+ async getSliceArea() {
1512
+ let http = new HttpResetClass()
1513
+ let getAllArea = await http.load('POST', '/rs/search', {
1514
+ source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
1515
+ userid: global.login.id
1516
+ }, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
1517
+ this.sliceArea = ['全部']
1518
+ console.log('11111111111111111111111111111111111111')
1519
+ console.log(getAllArea.data)
1520
+ console.log('11111111111111111111111111111111111111')
1521
+ getAllArea.data.forEach((res) => {
1522
+ if(res.parentid==this.filialeid){
1523
+ this.sliceArea.push(res.name)
1524
+ }
1525
+ })
1526
+ console.log('片区' + this.sliceArea)
1527
+ }
1528
+
1529
+ show1(){
1530
+ this.showModel=true
1531
+ }
1532
+ //清空用户编号
1533
+ clearUserInfoId(){
1534
+ this.setProperty("user","uploadCondition",'')
1535
+ Vue.showMessage("已清空用户编号")
1536
+ }
1537
+ formatArrayFun(type,arr){
1538
+ arr.forEach((result)=>{
1539
+ this[type].push(result.value)
1540
+ })
1541
+ }
1542
+ flush(f){
1543
+ f()
1544
+ }
1545
+ }