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