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,1190 +1,1190 @@
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
- import co from 'co'
7
- // let asyncReady = async function(self) {
8
- // // 获取配置信息
9
- // try {
10
- // // 获取配置文件
11
- // let http = new HttpResetClass()
12
- // let res = await http.load('GET', `/phone/rs/vue`, {}, {resolveMsg: null, rejectMsg: null})
13
- // this.needconfig = res.data
14
- // } catch (error) {
15
- // // 忽略704,文件找不到异常R
16
- // if (error.status !== 704) {
17
- // throw error
18
- // }
19
- // }
20
- // }
21
- export default class Comp {
22
-
23
- /*async constructor() {
24
- await this.reaydy()
25
- }*/
26
- needconfig= {}
27
- isSend=true
28
- // 用户安检信息列表
29
- user = new SearchList(true)
30
- //遍历的按钮
31
- listbutton=[]
32
- fdevices=[]
33
- // 安检计划列表
34
- checkplan = new SearchList(true)
35
- // 安检计划的安检单列表
36
- checkplanitems = new SearchList(true)
37
- //按钮隐藏判断
38
- suppplanitem={}
39
- orderList= ['按时间降序', '按时间升序']//排序下拉框的值
40
- currentorder='按时间降序'//排序下拉框当前选中的值
41
- // 新增安检计划时保存的数据
42
- newPlan = {f_issued:"否"}
43
- http = new HttpResetClass()
44
- //查询计划弹框中是否共享选项
45
- isAndNot = ["是", "否"]
46
- //用户类型
47
- userType=["民用","非民用"]
48
- listbuttona=[]
49
- listbuttonb=[]
50
- listbuttonc=[]
51
- listbuttond=[]
52
- //安检计划查询中的是否是共享计划单选的当前选中值
53
- sIsAndNotSelect=''
54
- //用户列表的自选查询条件的值
55
- userCondition=["请选择条件","用户类型","地址"]
56
- //当前选中的下拉值
57
- userConditionSelect="请选择条件"
58
- //当前输入的值
59
- userConditionValue=""
60
- //计划项列表自选查询条件的值
61
- planItemCondition=["请选择条件","用户编号","用户名称"]
62
- //
63
- planItemConditional={}
64
- //入户状态
65
- userState=["到访不遇","拒检","入户"]
66
- //燃气使用
67
- gasUse=["已使用","未使用"]
68
- //当前选中的下拉值
69
- planItemConditionSelect="请选择条件"
70
- //当前输入的值
71
- planItemConditionValue=""
72
-
73
- //safecheckTypeList=Vue.$appdata.getParam("安检类型")
74
- safecheckTypeList=["年度普检","送气类型"]
75
- //安检员列表
76
- checker=[
77
- {templatename: "useredit",
78
- logindate: "2020-04-15 00:58:35.65",
79
- state: "在职",
80
- id: "8817",
81
- name:"张桥"},
82
- {templatename: "useredit",
83
- logindate: "2020-04-15 00:58:35.65",
84
- state: "在职",
85
- id: "113857",
86
- name:"李四"},
87
- {templatename: "useredit",
88
- logindate: "2020-04-15 00:58:35.65",
89
- state: "在职",
90
- id: "113857",
91
- name:"王五"},
92
- {templatename: "useredit",
93
- logindate: "2020-04-15 00:58:35.65",
94
- state: "在职",
95
- id: "113857",
96
- name:"赵六"}
97
- ]
98
- checkersname=[]
99
- //新建计划时保存是否共享计划的值,
100
- isShare="否"
101
- //安检类型
102
- safecheckList=["年度普检","送气类型"]
103
- //时间单位
104
- unitTime=["天","月"]
105
- selectTime="天"
106
- startday=""
107
- endday=""
108
- str=[]
109
- //当前打开的安检计划id
110
- SelectedPlan=""
111
- //燃气表增添项
112
- gasexpress=[{"lname":"表品牌","type":"string","readonly":true},
113
- {"lname":"表号","type":"string","readonly":true},
114
- {"lname":"表型号","type":"string","readonly":true},
115
- {"lname":"位置","type":"string","readonly":true},
116
- {"lname":"左右表","type":"string","readonly":true}]
117
- //当前分公司id
118
- filialeid=global.login.orgid
119
-
120
- //filialeid=453
121
-
122
- //用户列表查询条件json
123
- conditionJson=[
124
- {column:"f_residential_area",checkname:"小区名称",type:"input"},
125
- {column:"f_building",checkname:"楼栋号码",type:"input"},
126
- {column:"f_unit",checkname:"单元号码",type:"input"},
127
- {column:"userType",checkname:"用户类型",type:"selector",options:['民用','非民用']},
128
- {column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用']}
129
- ]
130
- conditionList=[
131
- {selectitem:{column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用']},selectValue:'正常',num:0},
132
- {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:1},
133
- {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:2}
134
- ]
135
- //安检项列表查询条件
136
- planitemconditionJson=[
137
- {column:"f_last_check_state",checkname:"安检状态",type:"selector",options:['入户','拒检','到访不遇','未使用']},
138
- {column:"f_start_time",checkname:"开始时间",type:"date"},
139
- {column:"f_end_time",checkname:"结束时间",type:"date"},
140
- {column:"f_last_check_result",checkname:"隐患状态",type:"selector",options:['正常','有隐患']},
141
- {column:"f_state1",checkname:"安检结果",type:"selector",options:['已检','未检']}
142
- ]
143
- planitemconditionList=[
144
- {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:0},
145
- {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:1},
146
- {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:2}
147
- ]
148
- //下拉框条件改变json数组
149
- conditionListChange(modelname,ind,key,value,f){
150
- console.log("------------"+ind+"-------------")
151
- this[modelname][ind]["num"]=ind
152
- this[modelname][ind][key]=value
153
- f()
154
- }
155
- //添加选择条件下拉框事件
156
-
157
- addconditionList(field,f){
158
- this[field].push({selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:this.conditionList.length})
159
- f()
160
- }
161
- //删除选择条件下拉框事件
162
- deletecondition(field,modelname,index,f){
163
- //如果有这个属性,说明已经选择过,去清空条件数组里的值
164
- if(this[field][index].selectitem.column){
165
- this.setProperty(modelname,this[field][index].selectitem.column,"")
166
- }
167
- this[field].splice(index,1)
168
-
169
- for (let i =0 ;i<this[field].length;i++){
170
- this.conditionList[i].num=i
171
- }
172
- f()
173
- }
174
- async ready() {
175
- // 加载所有安检计划
176
- this.readConfig()
177
- await this.checkplan.searchList("/rs/sql/预约计划下发", {},{groupitem:"",f_filialeids:"("+this.filialeid+")",orderitem:"f_create_time desc"})
178
- for (let i = 0; i <this.str.length ; i++) {
179
- if (this.str[i].checkname=="燃气表"){
180
- this.str[i].items=this.gasexpress.concat(this.str[i].items)
181
- }
182
- }
183
- this.getGasMan()
184
- // this.getAreaList()
185
- //加载安检员名单
186
- console.log("-----------------")
187
- console.log(Vue.$appdata)
188
- console.log("当前加载到的信息:"+JSON.stringify(global.login))
189
- this.searchChecker(global.login.id)
190
-
191
- }
192
- //补录功能组装数据
193
- zzsj(){
194
- let deviceconfig=ObjConfig.getObjConfig(this.needconfig.safecheck.DevicesConfig)
195
- console.log("=============ZZSJ1>"+JSON.stringify(deviceconfig))
196
- for (let i = 0; i < deviceconfig.length; i++) {
197
- console.log("==============>"+JSON.stringify(deviceconfig[i]))
198
- console.log("==============>"+JSON.stringify(deviceconfig[i].index))
199
- this.str[deviceconfig[i].index-1]=deviceconfig[i]
200
- console.log("===========ZZSJ2>"+JSON.stringify(this.str[deviceconfig[i].index]))
201
- }
202
-
203
- }
204
- readConfig () {
205
- let http = new HttpResetClass()
206
- http.load('GET', `/phone/rs/vue`, {}, {resolveMsg: null, rejectMsg: null}).then(res => {
207
- this.needconfig = res.data
208
- console.log("请求得到的数据"+JSON.stringify(this.needconfig))
209
- let aa=this.needconfig.safecheck.DevicesConfig
210
- this.zzsj()
211
- })
212
-
213
- }
214
- //当前页面属性发生改变事件
215
- fieldChange(modelname,value,f){
216
- console.log(value)
217
- if(modelname=="user" || modelname=="checkplan" || modelname=="checkplanitems"){
218
- this.setProperty(modelname,"checkername",value.name)
219
- this.setProperty(modelname,"checkerid",value.id)
220
- f()
221
- return
222
- }
223
- if(modelname=="createPlan"){
224
- this.newPlan.f_checker_id=value.id
225
- this.newPlan.f_checker=value.name
226
- f()
227
- return
228
- }
229
- if(modelname=="upPlan"){
230
- this.plan.f_checker= value.name
231
- this.plan.f_checker_id=value.id
232
- f()
233
- return
234
- }
235
- this[modelname]=value
236
- console.log("77777777")
237
- this.setDefaultData()
238
- f()
239
- }
240
- setDefaultData(){
241
- this.suppplanitem["f_usegas"]='已使用'
242
- this.suppplanitem["f_entry_status"]='入户'
243
-
244
- console.log(this.suppplanitem)
245
-
246
- }
247
-
248
- jointCondition1(field,modelname){
249
- for (let i =0 ;i<this[field].length;i++){
250
- if(!this[field][i].selectValue){
251
- continue
252
- }
253
- console.log("this[field][i].column:"+this[field][i].column+"---"+"this[field][i].selectValue"+this[field][i].selectValue)
254
- this.setProperty(modelname,this[field][i].selectitem.column,this[field][i].selectValue)
255
- }
256
- }
257
- //根据选择框内容设置属性值
258
- jointCondition(modelname){
259
-
260
- if(modelname="user"){
261
- this.setProperty("user","usertype","")
262
- this.setProperty("user","address","")
263
- switch(this.userConditionSelect){
264
- case "用户类型":
265
- this.setProperty("user","usertype",this.userConditionValue)
266
- break;
267
- case "地址":
268
- this.setProperty("user","address",this.userConditionValue)
269
- break;
270
- }
271
- }
272
- if(modelname="checkplanitems"){
273
- this.setProperty("checkplanitems","usercode","")
274
- this.setProperty("checkplanitems","username","")
275
- switch(this.planItemConditionSelect){
276
- case "用户编号":
277
- this.setProperty("checkplanitems","usercode",this.planItemConditionValue)
278
- break;
279
- case "用户名称":
280
- this.setProperty("checkplanitems","username",this.planItemConditionValue)
281
- break;
282
- }
283
- }
284
- }
285
-
286
- //是否共享计划单选按钮事件
287
- isAndNotChange(isAndNotselect){
288
- this.sIsAndNotSelect=isAndNotselect
289
- if(this.sIsAndNotSelect=="是"){
290
- this.setProperty("checkplan","isAndNot","is null")
291
- }
292
- if(this.sIsAndNotSelect=="否"){
293
- this.setProperty("checkplan","isAndNot","is not null")
294
- }
295
- }
296
-
297
- //按条件查询所有安检计划
298
- async loadCheckPlan(sortfield,f) {
299
- this.isSend=true
300
- this.checkplan.check.checkes=[]
301
- if(sortfield){//如果传入空串说明是查询 传入非空串就是排序
302
- console.log("进入排序")
303
- if(sortfield==this.currentorder){
304
- return
305
- }else{
306
- this.currentorder=sortfield
307
- }
308
- }
309
- let fieldValue=''
310
- switch(this.currentorder){
311
- case "按时间降序":
312
- fieldValue='f_create_time desc'
313
- break
314
- case "按时间升序":
315
- fieldValue='f_create_time'
316
- break
317
- }
318
- console.log("值"+sortfield+"--当前值"+this.currentorder+"---排序值:"+fieldValue)
319
- await this.checkplan.searchList("/rs/sql/预约计划下发",
320
- {"f_plan_name": "f_plan_name like '%{}%'",
321
- "f_plan_year":"f_plan_year={}",
322
- "f_plan_month":"f_plan_month={}",
323
- "checkerid":"f_checker_id={}",
324
- "isAndNot":"f_checker {}",
325
- "safechecktype":"f_safecheck_type='{}'"
326
- },
327
- {orderitem:fieldValue,
328
- f_filialeids:"("+this.filialeid+")",
329
- groupitem:""
330
- }
331
- )
332
- f()
333
- this.isSend=false
334
- }
335
-
336
- // 查询待检用户
337
- async searchUser(f) {
338
- this.isSend=true
339
- this.user.check.checkes=[]
340
- this.jointCondition1("conditionList","user")
341
- let sday=''
342
- let eday=''
343
- if(this.startday.trim()!=''){
344
- if(isNaN(this.startday) || isNaN(this.endday)){
345
- Vue.showMessage("请输入数字!")
346
- return
347
- }
348
- if(this.selectTime=="月"){
349
- sday= this.startday*30
350
- this.endday.trim()!=''?eday= this.endday*30:eday=''
351
- }else{
352
- sday= this.startday
353
- this.endday.trim()!=''?eday= this.endday:eday=''
354
- }
355
- if(eday){
356
- 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))
357
- }else{
358
- this.setProperty("user","checkTime"," DATEDIFF(dd,ua.f_last_check_date,GETDATE())>="+parseInt(sday,10))
359
- }
360
- }else{
361
- this.setProperty("user","checkTime","")
362
- }
363
- this.user.search.setField("f_filialeid",this.filialeid)
364
- await this.user.searchList("/rs/sql/FetchUserFileByOrgNoRuHuSXQ", {
365
- "f_filialeid": "ui.f_filialeid={}",
366
- "userinfocode": "ui.f_userinfo_code='{}'",
367
- "username": "ui.f_user_name like '%{}%'",
368
- "useraddress": "ua.f_address like '%{}%'",
369
- "userType":"uf.f_user_type='{}'",
370
- "f_residential_area":"ua.f_residential_area like '%{}%'",
371
- "f_building":"ua.f_building='{}'",
372
- "f_unit":"ua.f_unit='{}'",
373
- "f_user_state":"ui.f_user_state='{}'",
374
- "checkTime":" {}"
375
- }, {
376
- "orderitem": 'f_residential_area,f_building,f_unit,f_floor,f_room',
377
- "f_usertype": '',
378
- "month": '',
379
- "SafeCheckSX": {"f_check_start": '', "f_check_end": ''},
380
- "SafeCheckCQ": '',
381
- "startday":"",
382
- "endday":""
383
- })
384
- f()
385
- this.isSend=false
386
- }
387
-
388
- //查询安检员
389
- async searchChecker(id){
390
- let res=await this.http.load('POST', '/rs/search', {
391
- source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
392
- userid: id
393
- }, {resolveMsg: null, rejectMsg: null})
394
- this.checker=res.data
395
-
396
- console.log("安检员列表---"+JSON.stringify(res)+"---id"+this.filialeid)
397
- }
398
-
399
- async searchPlanItems(f) {
400
- await this.checkplanitems.searchList("/rs/sql/planItem", {"f_plan_id": "f_plan_id={}"}, {})
401
- f()
402
- }
403
- //得到更新数据
404
- async getPaper(id,f) {
405
- let res=await this.http.load("POST", "/rs/path/getUserinfomation", {
406
- data:{
407
- condition:"f_check_item_id='"+id+"'"
408
- }
409
- })
410
-
411
-
412
- this.suppplanitem=res.data[0]
413
- if (this.suppplanitem.f_check_type!=null) {
414
- this.suppplanitem["f_user_type"]=this.suppplanitem.f_check_type
415
- }
416
- this.fdevices=[]
417
-
418
- if(this.suppplanitem.f_devices.length!=0){
419
-
420
- for (let i = 0; i <this.str.length ; i++) {
421
- if (this.suppplanitem.f_devices[i]==undefined) {
422
- this.fdevices.push({
423
- f_device_type: this.str[i].checkname,
424
- f_items: []
425
- //id: this.suppplanitem.f_devices[i] == undefined ? "" : this.suppplanitem.f_devices[i].id
426
- })
427
- }else {
428
- this.fdevices.push({
429
- f_device_type: this.str[i].checkname,
430
- f_items: [],
431
- id:this.suppplanitem.f_devices[i].id
432
- })
433
- }
434
- }
435
- }else{for (let i = 0; i <this.str.length ; i++) {
436
-
437
- this.fdevices.push({f_device_type:this.str[i].checkname,f_items:[]})
438
- }}
439
-
440
- this.setFitemvalue()
441
- f()
442
-
443
-
444
-
445
- }
446
-
447
- //补录时改变fdevice
448
- suppfdevice(){
449
- for (let i = 0; i <this.str.length ; i++) {
450
- this.fdevices.push({f_device_type:this.str[i].checkname,f_items:[]})
451
- }
452
- console.log("supp最后的listbutton"+JSON.stringify(this.listbutton))
453
- this.changeListButton()
454
- console.log("999999999")
455
- console.log(this.suppplanitem)
456
- }
457
- //改变数组的样式
458
- changeListButton(){
459
- let listarray=[]
460
- for (let i = 0; i < this.listbutton.length; i++) {
461
- if (!this.listbutton[i].mname){
462
- console.log("这是"+this.listbutton[i].lname.length)
463
- listarray.push(this.listbutton[i])
464
- listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
465
- listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
466
- listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
467
- let count=0
468
- for (let j = 0; j < this.listbutton.length; j++) {
469
- if(this.listbutton[i].lname.substring(0,this.listbutton[i].lname.length-1)==this.listbutton[j].mname){
470
-
471
- listarray.push(this.listbutton[j])
472
- count++
473
- }
474
- }
475
- if (count%4!=0){
476
- for (let j = 0; j <4-count%4; j++) {
477
- listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
478
- }
479
- }
480
- }
481
- }
482
- console.log("需要的数据"+JSON.stringify(listarray))
483
- this.listbutton=listarray
484
- this.tranlistbutton()
485
- }
486
- //横向分开list
487
- tranlistbutton(){
488
- console.log("jinru111111111111")
489
- for (let i = 0; i < this.listbutton.length; i++) {
490
- if((i+1)%4==1){
491
- this.listbuttona.push(this.listbutton[i])
492
- }else if((i+1)%4==2){
493
- this.listbuttonb.push(this.listbutton[i])
494
- }else if((i+1)%4==3){
495
- this.listbuttonc.push(this.listbutton[i])
496
- }else if((i+1)%4==0){
497
- this.listbuttond.push(this.listbutton[i])
498
- }
499
- }
500
- this.suppplanitem["f_usegas"]='已使用'
501
- console.log('5656565')
502
- console.log(this.suppplanitem)
503
- }
504
- // 打开安检计划,加载安检计划的所有安检单
505
- async openPlan(plan, f) {
506
- this.isSend=true
507
- this.checkplanitems.check.checkes=[]
508
- this.SelectedPlan=plan.id
509
- this.plan=plan
510
- this.checkplanitems.search.setField("f_plan_id", plan.id)
511
- this.checkplanitems.search.setField("f_state", "作废")
512
- await this.checkplanitems.searchList("/rs/sql/planItem", {"f_plan_id": "i.f_plan_id='{}'","f_state": "i.f_state !='{}'"}, {})
513
- //f()
514
- //this.checkplanitems.search.model.f_plan_id
515
- window.dispatchEvent(new CustomEvent("goRefresh"),{})
516
- this.isSend=false
517
- }
518
-
519
- //根据条件查询某个安检计划下的安检单
520
- async searchPlanItem(f) {
521
- this.checkplanitems.check.checkes=[]
522
- if(this.checkplanitems.search.model.f_plan_id){
523
- this.isSend=true
524
- console.log("进入加载安检计划项"+this.checkplanitems.search.model.f_plan_id)
525
- this.jointCondition1("planitemconditionList","checkplanitems")
526
- await this.checkplanitems.searchList("/rs/sql/planItem",
527
- {"f_plan_id": "i.f_plan_id='{}'",
528
- "usercode": "i.f_userinfo_code='{}'",
529
- "username": "i.f_user_name='{}'",
530
- "f_address": "i.f_address like '%{}%'",
531
- "f_last_check_state": "i.f_last_check_state='{}' ",
532
- "f_start_time": "i.f_last_check_date >='{}'",
533
- "f_end_time": "i.f_last_check_date <='{}'",
534
- "f_last_check_result":"i.f_last_check_result like '%{}%'",
535
- "f_state": "i.f_state !='{}'",
536
- "f_state1": "i.f_state ='{}'"
537
- },
538
- {})
539
- f()
540
- this.isSend=false
541
- }else{
542
- Vue.showMessage("请选择安检计划")
543
- }
544
- }
545
- //加载更多数据
546
- async loadMore(modelname,f) {
547
- this.isSend=true
548
- await this[modelname].list.loadMore()
549
- f()
550
- this.isSend=false
551
- }
552
-
553
- //点击全选按钮事件 user-用户列表 planitem-计划项列表
554
- changeCheckAll(modulename, f) {
555
- this[modulename].check.setCheckAll()
556
- f()
557
- }
558
-
559
- //当选中列表中某项时触发
560
- addParam(modulename, id) {
561
- console.log("当前值"+modulename+"--------"+id)
562
- this[modulename].check.setCheckes(id)
563
- }
564
-
565
- //设置属性值
566
- setProperty(modulename, property, value) {
567
- console.log(modulename+"新添--"+property+"--"+value)
568
- this[modulename].search.setField(property, value)
569
- }
570
-
571
- //列表中的选择框是否被选中
572
- hasValue(modulename,value){
573
- this[modulename].check.checks.has()
574
- }
575
- // 给新建安检计划设置属性值
576
- setNewPlan(property, value) {
577
- console.log(value)
578
- this.newPlan[property] = value
579
- return this
580
- }
581
- //将某项拖动到计划中
582
- //dragParam:从拖动的起始位置传入的参数
583
- async dragtoPlan(f_plan_id,f_safecheck_type,f_filialeid,dragParam,f){
584
- console.log("当前传入:"+dragParam)
585
- await this.dragtoPlanItem(f_plan_id,f_safecheck_type,dragParam,f)
586
- await this.dragtoOtherPlanIteem(f_plan_id,dragParam,f)
587
- }
588
-
589
- //将客户信息拖至计划中
590
- async dragtoPlanItem(f_plan_id,f_safecheck_type,dragParam,f) {
591
-
592
- console.log("计划id:"+f_plan_id+"公司id:"+this.filialeid)
593
- if(dragParam=='user'){
594
- this.jointCondition1("conditionList","user")
595
- if(this.checkplanitems.search.model.f_plan_id){
596
- this.isSend=true
597
- let res=await this.http.load("POST", "/rs/logic/AddCheckPlanItem", {
598
- data:{
599
- f_operator:global.login.name,
600
- f_plan_id:f_plan_id,
601
- f_safecheck_type:f_safecheck_type,
602
- f_filialeid:this.filialeid,
603
- f_subscribe_date:'',
604
- condition:this.user.search.search({ "f_filialeid": "ui.f_filialeid={}",
605
- "userinfocode": "ui.f_userinfo_code='{}'",
606
- "username": "ui.f_user_name like '%{}%'",
607
- "useraddress": "ua.f_address like '%{}%'",
608
- "userType":"uf.f_user_type='{}'",
609
- "f_residential_area":"ua.f_residential_area like '%{}%'",
610
- "f_building":"ua.f_building='{}'",
611
- "f_unit":"ua.f_unit='{}'",
612
- "checkTime":" {}"}),
613
- switchCheckAll:this.user.check.switchCheckAll,
614
- checkAll:this.user.check.checkAll,
615
- param:this.user.check.checkes,
616
- columnName: "ua.id"
617
- }
618
- }, {resolveMsg: null, rejectMsg: null})
619
- console.log("重复数量-"+JSON.stringify(res.data.result)+"---"+res.data.result.length)
620
- if(res.data.code==200){
621
- //alert("添加成功!有"+res.data.result.length+"条用户地址已经存在于其他计划中: \n"+res.data.result.reduce((c,v)=>{c += v.f_user_name+":"+v.f_address+"\n"}),0)
622
- Vue.showMessage("添加成功!"+(res.data.result.length>0?"有"+res.data.result.length+"条用户地址已经存在于其他计划中":""))
623
- }else{
624
- Vue.showMessage("添加失败!")
625
- }
626
- this.user.check.checkes=[]
627
- await this.searchUser(()=>{})
628
- await this.searchPlanItem(()=>{})
629
- await this.loadCheckPlan("",()=>{})
630
- f()
631
- this.isSend=false
632
- }else{
633
- Vue.showMessage("请先打开一个计划再进行操作")
634
- }
635
- }
636
- }
637
-
638
- //将某个计划下的一项拖到另一个计划
639
- async dragtoOtherPlanIteem(checkplanid,dragParam,f) {
640
- if(dragParam=='item'){
641
- this.isSend=true
642
- let res=await this.http.load("POST", "/rs/logic/UpCheckPlanItem", {
643
- data:{
644
- f_operator:global.login.name,
645
- f_plan_id:checkplanid,
646
- condition:this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
647
- "usercode": "i.f_userinfo_code='{}'",
648
- "username": "i.f_user_name='{}'",
649
- "f_address": "i.f_address like '%{}%'",
650
- "f_last_check_state": "i.f_last_check_state='{}' ",
651
- "f_start_time": "i.f_last_check_date >='{}'",
652
- "f_end_time": "i.f_last_check_date <='{}'",
653
- "f_last_check_result":"i.f_last_check_result like '%{}%'"}),
654
- switchCheckAll:this.checkplanitems.check.switchCheckAll,
655
- checkAll:this.checkplanitems.check.checkAll,
656
- param:this.checkplanitems.check.checkes,
657
- columnName: "it.id"
658
- }
659
- }, {resolveMsg: null, rejectMsg: null})
660
- if(res.data.code==200){
661
- await this.searchUser(()=>{})
662
- await this.searchPlanItem(()=>{})
663
- await this.loadCheckPlan("",()=>{})
664
- f()
665
- Vue.showMessage("更换安检计划成功!")
666
- }else{
667
- Vue.showMessage("更换安检计划失败!")
668
- }
669
- f()
670
- this.isSend=false
671
- }
672
-
673
- }
674
-
675
- //修改计划项状态为作废
676
- async delPlanItem(dragParam,f) {
677
- console.log("进入作废计划项方法")
678
- if(dragParam=='item'){
679
- this.isSend=true
680
- let resu=await this.http.load("POST", "/rs/logic/UpCheckPlanItemState", {
681
- data: {
682
- f_operator:global.login.name,
683
- condition:this.checkplanitems.search.search({
684
- "f_plan_id": "i.f_plan_id='{}'",
685
- "usercode": "i.f_userinfo_code='{}'",
686
- "username": "i.f_user_name='{}'",
687
- "f_address": "i.f_address like '%{}%'",
688
- "f_last_check_state": "i.f_last_check_state='{}' ",
689
- "f_start_time": "i.f_last_check_date >='{}'",
690
- "f_end_time": "i.f_last_check_date <='{}'",
691
- "f_last_check_result":"i.f_last_check_result like '%{}%'",
692
- "f_state": "i.f_state !='{}'",
693
- "f_state1": "i.f_state ='{}'"}),
694
- switchCheckAll:this.checkplanitems.check.switchCheckAll,
695
- checkAll:this.checkplanitems.check.checkAll,
696
- param:this.checkplanitems.check.checkes,
697
- columnName: "i.id"
698
- }
699
- }, {resolveMsg: null, rejectMsg: null})
700
- console.log("-----------"+JSON.stringify(resu.data))
701
- if(resu.data.code==200){
702
- Vue.showMessage("作废安检单成功! 成功作废:"+resu.data.res.up+"条"+(resu.data.res.noup>0?"有"+resu.data.res.noup+"条已经不是 ‘未检’ 状态!":""))
703
- await this.searchUser(()=>{})
704
- await this.searchPlanItem(()=>{})
705
- await this.loadCheckPlan("",()=>{})
706
- f()
707
- }else{
708
- Vue.showMessage("取消安检计划失败!")
709
- }
710
- this.isSend=false
711
- }
712
-
713
- }
714
-
715
- //新建计划
716
- async addNewPlan(f) {
717
- if(!this.validationCreatePlan()){
718
- return
719
- }
720
- this.isSend=true
721
- 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'}})
722
- console.log("结果-"+res.data.length)
723
- if(res.data.length>0){
724
- Vue.showMessage("计划名称不能重复!")
725
- return
726
- }
727
- if(this.isShare=="是"){
728
- this.newPlan.f_checker_id=null
729
- this.newPlan.f_checker=null
730
- }
731
- this.newPlan.f_plan_type='预约计划'
732
- this.newPlan.f_subcompany=global.login.orgs
733
- this.newPlan.f_filialeid=this.filialeid
734
- this.newPlan.f_create_operator=global.login.name
735
- this.newPlan.f_create_time=this.getNowFormatDate()
736
- await Vue.resetpost("/rs/logic/createCheckPlan", {"data": this.newPlan},{resolveMsg : '新建计划成功!', rejectMsg : '新建计划失败!'},2500)
737
- await this.loadCheckPlan('',()=>{})
738
- this.newPlan={f_issued:"否"}
739
- this.isShare="否"
740
- f()
741
- this.isSend=false
742
- }
743
-
744
- // 取消新建安检计划
745
- cancel() {
746
- this.newPlan={f_issued:"否"}
747
- this.isShare="否"
748
- this.plan={}
749
- }
750
-
751
- // 取年的选择项目
752
- years() {
753
- return date.yearSelects
754
- }
755
- //遍历选择框以及得到list
756
- getselector(){
757
-
758
-
759
- this.listbutton=[]
760
-
761
- for (let i = 0; i <this.str.length ; i++) {
762
- let strlist=[]
763
- strlist=this.str[i].items.concat()
764
- for (let j = 0; j <strlist.length ; j++) {
765
- strlist[j]["mname"]=this.str[i].checkname
766
- }
767
- strlist.splice(0,0,{lname:this.str[i].checkname+":",type:"",mname:""})
768
- let bb=this.listbutton
769
- this.listbutton=bb.concat(strlist)
770
- }
771
-
772
- let h=this.listbutton
773
- for (let i = 0; i <h.length ; i++) {
774
-
775
- h[i]["selected"]=""
776
- h[i]["level"]=""
777
- h[i]["isdefect"]=""
778
- if (h[i].type =="selector"){
779
- let size=h[i].options.length
780
-
781
- let pl=[]
782
- for (let j = 0; j <size ; j++) {
783
- let n=h[i].lname+h[i].mname
784
-
785
- pl.push(h[i].options[j].data)
786
- this.planItemConditional[n]=pl
787
-
788
- }
789
- }
790
- }
791
-
792
- console.log("get最后的listbutton"+JSON.stringify(this.listbutton))
793
- }
794
- //返回遍历的option
795
- reoption(key1,key2){
796
-
797
- let modelname=key1+key2
798
- return this.planItemConditional[modelname]
799
-
800
- }
801
-
802
-
803
- // 取月的选择项目
804
- months() {
805
- return date.monthSelects
806
- }
807
-
808
- //下发安检计划
809
- async sendCheckPlan(f){
810
- if(this.checkplan.check.checkes.length<1){
811
- Vue.showMessage("请选择要下发的安检计划")
812
- return
813
- }
814
- this.isSend=true
815
- let res=await this.http.load("POST", "/rs/logic/NewBespeakCheckPlan", {
816
- data:{
817
- f_issued:'是',
818
- f_issue_time:this.getNowFormatDate(),
819
- f_send_operator:global.login.name,
820
- param:this.checkplan.check.checkes,
821
- }
822
- }, {resolveMsg: null, rejectMsg: null})
823
- if(res.data.code==200){
824
- //Vue.showMessage("下发成功!其中有"+res.data.repet+"个计划己经是下发状态")
825
- Vue.showMessage("下发成功!")
826
- await this.loadCheckPlan('',()=>{})
827
- f()
828
- }else{
829
- Vue.showMessage("下发失败!")
830
- }
831
- this.isSend=false
832
- }
833
-
834
- //删除安检计划
835
- async delCheckPlan(f){
836
- if(this.checkplan.check.checkes.length<1){
837
- Vue.showMessage("请选择要删除的安检计划")
838
- return
839
- }
840
- this.isSend=true
841
- let res=await this.http.load("POST", "/rs/logic/deleteCheckPlan", {
842
- data:{
843
- f_operator:global.login.name,//global.login.name,
844
- condition:this.checkplan.search.search({}),
845
- switchCheckAll:this.checkplan.check.switchCheckAll,
846
- checkAll:this.checkplan.check.checkAll,
847
- param:this.checkplan.check.checkes,
848
- columnName: "f_plan_id"
849
- }
850
- }, {resolveMsg: "删除成功!", rejectMsg: "删除失败!"})
851
- console.log(JSON.stringify(res))
852
- if(res.data.code==200){
853
- Vue.showMessage("删除成功!"+res.data.message,"success",2500)
854
- await this.loadCheckPlan('',()=>{})
855
- }else{
856
- Vue.showMessage("删除失败!"+res.data.message,"success",2500)
857
- }
858
- this.checkplanitems.search.model.f_plan_id=""
859
- this.checkplanitems.list.data=[]
860
- f()
861
- this.isSend=false
862
- }
863
- //修改计划时 用来存储当前选中要修改的计划
864
- plan={}
865
- setPlanVal(value){
866
- console.log(value)
867
- this.plan=JSON.parse(JSON.stringify( value ))
868
- }
869
- setPlan(key,val){
870
- this.plan[key]=val
871
- }
872
- isUpdate(key1,key2){
873
- if (key1=="已检"&&key2!="补录"){
874
- return true;
875
- }
876
- return false;
877
- }
878
- //修改安检计划
879
- async upCheckPlan(f){
880
- this.isSend=true
881
- let res=await this.http.load("POST", "/rs/logic/updateCheckPlan", {
882
- data:{
883
- f_checker:this.plan.f_checker,
884
- f_checker_id:this.plan.f_checker_id,
885
- f_plan_name:this.plan.f_plan_name,
886
- f_plan_year:this.plan.f_plan_year,
887
- f_plan_month:this.plan.f_plan_month,
888
- f_plan_id:this.plan.id
889
- }
890
- }, {resolveMsg: null, rejectMsg: null})
891
- if(res.data.code==200){
892
- Vue.showMessage("修改成功!"+res.data.message,"success",2500)
893
- await this.loadCheckPlan('',()=>{})
894
- }else{
895
- Vue.showMessage("修改失败!"+res.data.message,"success",2500)
896
- }
897
- f()
898
- this.isSend=false
899
- }
900
-
901
- /* getDataLength(modelname){
902
- console.log("sdadasdasdasdadasdadddddddddddddddddddddddddddddddddddddddddddd")
903
- let l=this[modelname].list.data.length
904
- console.log("--"+l)
905
- return l
906
- }*/
907
- //新建安检计划非空判断
908
- validationCreatePlan(){
909
- if(!this.newPlan.f_plan_name){
910
- Vue.showMessage("请输入安检计划名称!")
911
- return false
912
- }
913
- if(!this.newPlan.f_plan_year){
914
- Vue.showMessage("请选择安检年份!")
915
- return false
916
- }
917
- if(!this.newPlan.f_plan_month){
918
- Vue.showMessage("请选择安检月份!")
919
- return false
920
- }
921
- if(this.isShare=="否"){
922
- if(!this.newPlan.f_checker){
923
- Vue.showMessage("请选择安检人员!")
924
- return false
925
- }
926
- }else{
927
- this.newPlan.f_checker=''
928
- }
929
- if(!this.newPlan.f_safecheck_type){
930
- Vue.showMessage("请选择安检类型!")
931
- return false
932
- }
933
- return true
934
- }
935
-
936
- //调用updatecheckpaper
937
- async addNewPaper(f){
938
- //this.isSend=true
939
- this.setFdevices()
940
- this.setfDevicesid()
941
- //return;
942
- for (var i = 0; i <this.checkerMess.length ; i++) {
943
- if (this.checkerMess[i].name==this.suppplanitem.f_checker_name){
944
- this.suppplanitem["f_checker_id"]=this.checkerMess[i].id
945
- }
946
- }
947
- //console.log(this.fdevices)
948
- //return;
949
- this.suppplanitem["f_devices"]=this.fdevices
950
- this.suppplanitem.f_check_type=this.suppplanitem.f_user_type
951
- this.suppplanitem.f_state = "已检"
952
- this.suppplanitem.f_approved = "未审核"
953
- this.suppplanitem.f_complete = "已完成"
954
- this.suppplanitem.f_no_checkplan ="有计划安检"
955
- //return;
956
- this.suppplanitem.f_check_plan_id=this.suppplanitem.f_plan_id
957
-
958
- let res=await this.http.load("POST", "/rs/logic/SuppCheckPaper", {data:{paper:this.suppplanitem}})
959
-
960
- this.openPlan(this.plan,f)
961
- f()
962
- window.dispatchEvent(new CustomEvent("goRefresh"),{})
963
- //this.isSend=false
964
- }
965
- async addnewPaper(f){
966
- this.isSend=true
967
- console.log("9999999999"+this.isSend)
968
- delete this.suppplanitem.id
969
- if(!this.suppplanitem.f_onsite_time){
970
- Vue.showMessage("提交失败,请输入开始时间!")
971
- return false
972
- }
973
- if(!this.suppplanitem.f_entry_status){
974
- Vue.showMessage("提交失败,请输入入户状态!")
975
- return false
976
- }
977
- if(!this.suppplanitem.f_usegas&&this.suppplanitem.f_entry_status=='入户'){
978
- Vue.showMessage("提交失败,请输入燃气使用状态!")
979
- return false
980
- }
981
- // if(!this.suppplanitem.f_checker_name){
982
- // Vue.showMessage("提交失败,请输入安检员!")
983
- // }
984
- await this.addNewPaper(f)
985
- this.isSend=false
986
- }
987
- async updatePaper(f){
988
- this.isSend=true
989
- console.log("9999999999"+this.isSend)
990
- await this.addNewPaper(f)
991
- this.isSend=false
992
- }
993
- setNewPaper(property,value){
994
- this.suppplanitem[property] = value
995
- return this
996
- }
997
-
998
- setFdevices(){
999
-
1000
-
1001
- var ar=this.listbutton
1002
- var br=this.fdevices
1003
- for (var i = 0; i <br .length; i++) {
1004
- for (var j = 0; j < ar.length; j++) {
1005
- if (br[i].f_device_type == ar[j].mname) {
1006
- br[i].f_items.push({
1007
- f_item_name: ar[j].lname,
1008
- f_item_value: ar[j].selected,
1009
- type: ar[j].type,
1010
- f_is_defect: ar[j].isdefect,
1011
- f_defect_level: ar[j].level,
1012
- f_item_lists:[{
1013
- //f_item_id: "",
1014
- f_item_value: ar[j].selected,
1015
- //id:""
1016
- }]
1017
- })
1018
- }
1019
- }
1020
- }
1021
- }
1022
- //给fdevices赋值id
1023
- setfDevicesid(){
1024
- var suppf=this.suppplanitem.f_devices
1025
- var fde=this.fdevices
1026
- if (this.suppplanitem.hasOwnProperty("f_devices")){
1027
- for (let i = 0; i <suppf.length ; i++) {
1028
- for (let j = 0; j <fde.length; j++) {
1029
- if (suppf[i].f_device_type==fde[j].f_device_type){
1030
- for (let k = 0; k <suppf[i].f_items.length ; k++) {
1031
- // console.log("789456123")
1032
- for (let l = 0; l <fde[j].f_items.length ; l++) {
1033
- // console.log("11111111111111")
1034
- if (suppf[i].f_items[k].f_item_name==fde[j].f_items[l].f_item_name) {
1035
- fde[j].f_items[l]["id"]=suppf[i].f_items[k].id
1036
- if (suppf[i].f_items[k].f_item_lists.length!=0){
1037
- fde[j].f_items[l].f_item_lists[0]["id"]=suppf[i].f_items[k].f_item_lists[0].id
1038
- fde[j].f_items[l].f_item_lists[0]["f_item_id"]=suppf[i].f_items[k].f_item_lists[0].f_item_id
1039
- }
1040
- }
1041
- }
1042
- }
1043
- }
1044
- }
1045
- }
1046
- }else {
1047
- this.suppplanitem.f_upload_date=this.getNowFormatDate()
1048
- }
1049
- }
1050
- //
1051
- setFitemvalue(){
1052
- for (var k = 0; k <this.listbutton.length ; k++) {
1053
- for (var i = 0; i <this.suppplanitem.f_devices.length ; i++) {
1054
- for (var j = 0; j < this.suppplanitem.f_devices[i].f_items.length; j++) {
1055
- if (this.listbutton[k].lname==this.suppplanitem.f_devices[i].f_items[j].f_item_name){
1056
- this.listbutton[k].selected=this.suppplanitem.f_devices[i].f_items[j].f_item_value
1057
- }
1058
- }
1059
- }
1060
- }
1061
- }
1062
- //改变selected属性
1063
- changeSelected(selectedname,selectedmname,selectedvalue){
1064
- var sa=this.listbutton
1065
- for (var i = 0; i <sa.length; i++) {
1066
- if (sa[i].lname==selectedname&&sa[i].mname==selectedmname){
1067
- sa[i].selected=selectedvalue
1068
- if (sa[i].type=="selector"){//判断是否是选择类型
1069
- for (var j = 0; j < sa[i].options.length; j++) {
1070
- if (sa[i].options[j].data==selectedvalue){//赋值为json的level和isdefect
1071
- sa[i].level=sa[i].options[j].level
1072
- sa[i].isdefect=sa[i].options[j].isdefect
1073
- }
1074
- }
1075
- }
1076
- }
1077
- }
1078
- //console.log(this.fdevices)
1079
- }
1080
- getAreaList() {
1081
- let res = this.http.load('POST', '/rs/sql/safe_singleTable_GroupBy', {
1082
- data: {
1083
- items: 'f_residential_area',
1084
- tablename: 't_area',
1085
- condition: 'f_filialeid = '+this.filialeid,
1086
- groupitem: 'f_residential_area'
1087
- }
1088
- }, {resolveMsg: null, rejectMsg: null}).then((res)=>{
1089
- if (res.data) {
1090
- let arr=[]
1091
- for(let i =0 ;i<res.data.length;i++){
1092
- arr.push(res.data[i].f_residential_area)
1093
- }
1094
- this.conditionJson[0].options=arr
1095
- }
1096
- })
1097
-
1098
- }
1099
- //获取当前时间
1100
- getNowFormatDate() {
1101
- let date = new Date();
1102
- let seperator1 = "-";
1103
- let seperator2 = ":";
1104
- let month = date.getMonth() + 1;
1105
- let strDate = date.getDate();
1106
- let hour = date.getHours();
1107
- let min = date.getMinutes();
1108
- let second = date.getSeconds();
1109
- if (month >= 1 && month <= 9) {
1110
- month = "0" + month;
1111
- }
1112
- if (strDate >= 0 && strDate <= 9) {
1113
- strDate = "0" + strDate;
1114
- }
1115
- if (hour >= 0 && hour <= 9) {
1116
- hour = "0" + hour;
1117
- }
1118
- if (min >= 0 && min <= 9) {
1119
- min = "0" + min;
1120
- }
1121
- if (second >= 0 && second <= 9) {
1122
- second = "0" + second;
1123
- }
1124
- let currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
1125
- + " " + hour + seperator2 + min
1126
- + seperator2 + second;
1127
- return currentdate;
1128
- }
1129
- //excel导出
1130
- async exportFile(){
1131
- if(!this.checkplanitems.search.model.f_plan_id){
1132
- Vue.showMessage("请选择先打开一个安检计划!")
1133
- return
1134
- }
1135
- this.isSend=true
1136
- this.jointCondition1("planitemconditionList","checkplanitems")
1137
- let res=await this.http.load('POST','rs/logic/SafeExportExcel',
1138
- {
1139
- "data": {
1140
- "body": {
1141
- "data": {
1142
- "condition": this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
1143
- "usercode": "i.f_userinfo_code='{}'",
1144
- "username": "i.f_user_name='{}'",
1145
- "f_address": "i.f_address like '%{}%'",
1146
- "f_last_check_state": "i.f_last_check_state='{}' ",
1147
- "f_start_time": "i.f_last_check_date >='{}'",
1148
- "f_end_time": "i.f_last_check_date <='{}'",
1149
- "f_last_check_result":"i.f_last_check_result like '%{}%'",
1150
- "f_state": "i.f_state !='{}'",
1151
- "f_state1": "i.f_state ='{}'"
1152
- })
1153
- },
1154
- "field": ["f_userinfo_code:用户编号","f_user_name:用户名称", "f_user_type:用户类型","f_user_phone:用户电话", "f_residential_area:小区名称", "f_state:安检状态","f_address:详细地址"],
1155
- "templateName": this.plan.f_plan_name,
1156
- "sqlName": "planItem"
1157
- },
1158
- }
1159
- }
1160
- ,{resolveMsg: null, rejectMsg: null})
1161
- console.log("excel结果---"+JSON.stringify(res))
1162
- let link = document.createElement('a');
1163
- let path = res.data[0].filename
1164
- //webapps这个是在服务器上导出用的
1165
- let pathName = "http://" + location.host + "/webapps" + path.split('webapps')[1]
1166
- //excel这个是在本地导出用的
1167
- link.href = pathName;
1168
- link.download = path.split('excel/')[1];
1169
- link.dispatchEvent(new MouseEvent('click'));
1170
- this.isSend=false
1171
- }
1172
-
1173
- //获取安检人员
1174
- async getGasMan(){
1175
-
1176
- let http = new HttpResetClass()
1177
- let getGasman = await http.load('POST', '/rs/search', {
1178
- source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
1179
- userid: global.login.id
1180
- }, {resolveMsg: null, rejectMsg: null})
1181
-
1182
- this.checkerMess=getGasman.data
1183
- for (var i = 0; i <getGasman.data.length ; i++) {
1184
- this.checkersname.push(getGasman.data[i].name)
1185
- }
1186
- }
1187
- flush(f){
1188
- f()
1189
- }
1190
- }
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
+ import co from 'co'
7
+ // let asyncReady = async function(self) {
8
+ // // 获取配置信息
9
+ // try {
10
+ // // 获取配置文件
11
+ // let http = new HttpResetClass()
12
+ // let res = await http.load('GET', `/phone/rs/vue`, {}, {resolveMsg: null, rejectMsg: null})
13
+ // this.needconfig = res.data
14
+ // } catch (error) {
15
+ // // 忽略704,文件找不到异常R
16
+ // if (error.status !== 704) {
17
+ // throw error
18
+ // }
19
+ // }
20
+ // }
21
+ export default class Comp {
22
+
23
+ /*async constructor() {
24
+ await this.reaydy()
25
+ }*/
26
+ needconfig= {}
27
+ isSend=true
28
+ // 用户安检信息列表
29
+ user = new SearchList(true)
30
+ //遍历的按钮
31
+ listbutton=[]
32
+ fdevices=[]
33
+ // 安检计划列表
34
+ checkplan = new SearchList(true)
35
+ // 安检计划的安检单列表
36
+ checkplanitems = new SearchList(true)
37
+ //按钮隐藏判断
38
+ suppplanitem={}
39
+ orderList= ['按时间降序', '按时间升序']//排序下拉框的值
40
+ currentorder='按时间降序'//排序下拉框当前选中的值
41
+ // 新增安检计划时保存的数据
42
+ newPlan = {f_issued:"否"}
43
+ http = new HttpResetClass()
44
+ //查询计划弹框中是否共享选项
45
+ isAndNot = ["是", "否"]
46
+ //用户类型
47
+ userType=["民用","非民用"]
48
+ listbuttona=[]
49
+ listbuttonb=[]
50
+ listbuttonc=[]
51
+ listbuttond=[]
52
+ //安检计划查询中的是否是共享计划单选的当前选中值
53
+ sIsAndNotSelect=''
54
+ //用户列表的自选查询条件的值
55
+ userCondition=["请选择条件","用户类型","地址"]
56
+ //当前选中的下拉值
57
+ userConditionSelect="请选择条件"
58
+ //当前输入的值
59
+ userConditionValue=""
60
+ //计划项列表自选查询条件的值
61
+ planItemCondition=["请选择条件","用户编号","用户名称"]
62
+ //
63
+ planItemConditional={}
64
+ //入户状态
65
+ userState=["到访不遇","拒检","入户"]
66
+ //燃气使用
67
+ gasUse=["已使用","未使用"]
68
+ //当前选中的下拉值
69
+ planItemConditionSelect="请选择条件"
70
+ //当前输入的值
71
+ planItemConditionValue=""
72
+
73
+ //safecheckTypeList=Vue.$appdata.getParam("安检类型")
74
+ safecheckTypeList=["年度普检","送气类型"]
75
+ //安检员列表
76
+ checker=[
77
+ {templatename: "useredit",
78
+ logindate: "2020-04-15 00:58:35.65",
79
+ state: "在职",
80
+ id: "8817",
81
+ name:"张桥"},
82
+ {templatename: "useredit",
83
+ logindate: "2020-04-15 00:58:35.65",
84
+ state: "在职",
85
+ id: "113857",
86
+ name:"李四"},
87
+ {templatename: "useredit",
88
+ logindate: "2020-04-15 00:58:35.65",
89
+ state: "在职",
90
+ id: "113857",
91
+ name:"王五"},
92
+ {templatename: "useredit",
93
+ logindate: "2020-04-15 00:58:35.65",
94
+ state: "在职",
95
+ id: "113857",
96
+ name:"赵六"}
97
+ ]
98
+ checkersname=[]
99
+ //新建计划时保存是否共享计划的值,
100
+ isShare="否"
101
+ //安检类型
102
+ safecheckList=["年度普检","送气类型"]
103
+ //时间单位
104
+ unitTime=["天","月"]
105
+ selectTime="天"
106
+ startday=""
107
+ endday=""
108
+ str=[]
109
+ //当前打开的安检计划id
110
+ SelectedPlan=""
111
+ //燃气表增添项
112
+ gasexpress=[{"lname":"表品牌","type":"string","readonly":true},
113
+ {"lname":"表号","type":"string","readonly":true},
114
+ {"lname":"表型号","type":"string","readonly":true},
115
+ {"lname":"位置","type":"string","readonly":true},
116
+ {"lname":"左右表","type":"string","readonly":true}]
117
+ //当前分公司id
118
+ filialeid=global.login.orgid
119
+
120
+ //filialeid=453
121
+
122
+ //用户列表查询条件json
123
+ conditionJson=[
124
+ {column:"f_residential_area",checkname:"小区名称",type:"input"},
125
+ {column:"f_building",checkname:"楼栋号码",type:"input"},
126
+ {column:"f_unit",checkname:"单元号码",type:"input"},
127
+ {column:"userType",checkname:"用户类型",type:"selector",options:['民用','非民用']},
128
+ {column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用']}
129
+ ]
130
+ conditionList=[
131
+ {selectitem:{column:"f_user_state",checkname:"用户状态",type:"selector",options:['正常','停用']},selectValue:'正常',num:0},
132
+ {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:1},
133
+ {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:2}
134
+ ]
135
+ //安检项列表查询条件
136
+ planitemconditionJson=[
137
+ {column:"f_last_check_state",checkname:"安检状态",type:"selector",options:['入户','拒检','到访不遇','未使用']},
138
+ {column:"f_start_time",checkname:"开始时间",type:"date"},
139
+ {column:"f_end_time",checkname:"结束时间",type:"date"},
140
+ {column:"f_last_check_result",checkname:"隐患状态",type:"selector",options:['正常','有隐患']},
141
+ {column:"f_state1",checkname:"安检结果",type:"selector",options:['已检','未检']}
142
+ ]
143
+ planitemconditionList=[
144
+ {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:0},
145
+ {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:1},
146
+ {selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:2}
147
+ ]
148
+ //下拉框条件改变json数组
149
+ conditionListChange(modelname,ind,key,value,f){
150
+ console.log("------------"+ind+"-------------")
151
+ this[modelname][ind]["num"]=ind
152
+ this[modelname][ind][key]=value
153
+ f()
154
+ }
155
+ //添加选择条件下拉框事件
156
+
157
+ addconditionList(field,f){
158
+ this[field].push({selectitem:{checkname:"请选择",type:"input"},selectValue:'',num:this.conditionList.length})
159
+ f()
160
+ }
161
+ //删除选择条件下拉框事件
162
+ deletecondition(field,modelname,index,f){
163
+ //如果有这个属性,说明已经选择过,去清空条件数组里的值
164
+ if(this[field][index].selectitem.column){
165
+ this.setProperty(modelname,this[field][index].selectitem.column,"")
166
+ }
167
+ this[field].splice(index,1)
168
+
169
+ for (let i =0 ;i<this[field].length;i++){
170
+ this.conditionList[i].num=i
171
+ }
172
+ f()
173
+ }
174
+ async ready() {
175
+ // 加载所有安检计划
176
+ this.readConfig()
177
+ await this.checkplan.searchList("/rs/sql/预约计划下发", {},{groupitem:"",f_filialeids:"("+this.filialeid+")",orderitem:"f_create_time desc"})
178
+ for (let i = 0; i <this.str.length ; i++) {
179
+ if (this.str[i].checkname=="燃气表"){
180
+ this.str[i].items=this.gasexpress.concat(this.str[i].items)
181
+ }
182
+ }
183
+ this.getGasMan()
184
+ // this.getAreaList()
185
+ //加载安检员名单
186
+ console.log("-----------------")
187
+ console.log(Vue.$appdata)
188
+ console.log("当前加载到的信息:"+JSON.stringify(global.login))
189
+ this.searchChecker(global.login.id)
190
+
191
+ }
192
+ //补录功能组装数据
193
+ zzsj(){
194
+ let deviceconfig=ObjConfig.getObjConfig(this.needconfig.safecheck.DevicesConfig)
195
+ console.log("=============ZZSJ1>"+JSON.stringify(deviceconfig))
196
+ for (let i = 0; i < deviceconfig.length; i++) {
197
+ console.log("==============>"+JSON.stringify(deviceconfig[i]))
198
+ console.log("==============>"+JSON.stringify(deviceconfig[i].index))
199
+ this.str[deviceconfig[i].index-1]=deviceconfig[i]
200
+ console.log("===========ZZSJ2>"+JSON.stringify(this.str[deviceconfig[i].index]))
201
+ }
202
+
203
+ }
204
+ readConfig () {
205
+ let http = new HttpResetClass()
206
+ http.load('GET', `/phone/rs/vue`, {}, {resolveMsg: null, rejectMsg: null}).then(res => {
207
+ this.needconfig = res.data
208
+ console.log("请求得到的数据"+JSON.stringify(this.needconfig))
209
+ let aa=this.needconfig.safecheck.DevicesConfig
210
+ this.zzsj()
211
+ })
212
+
213
+ }
214
+ //当前页面属性发生改变事件
215
+ fieldChange(modelname,value,f){
216
+ console.log(value)
217
+ if(modelname=="user" || modelname=="checkplan" || modelname=="checkplanitems"){
218
+ this.setProperty(modelname,"checkername",value.name)
219
+ this.setProperty(modelname,"checkerid",value.id)
220
+ f()
221
+ return
222
+ }
223
+ if(modelname=="createPlan"){
224
+ this.newPlan.f_checker_id=value.id
225
+ this.newPlan.f_checker=value.name
226
+ f()
227
+ return
228
+ }
229
+ if(modelname=="upPlan"){
230
+ this.plan.f_checker= value.name
231
+ this.plan.f_checker_id=value.id
232
+ f()
233
+ return
234
+ }
235
+ this[modelname]=value
236
+ console.log("77777777")
237
+ this.setDefaultData()
238
+ f()
239
+ }
240
+ setDefaultData(){
241
+ this.suppplanitem["f_usegas"]='已使用'
242
+ this.suppplanitem["f_entry_status"]='入户'
243
+
244
+ console.log(this.suppplanitem)
245
+
246
+ }
247
+
248
+ jointCondition1(field,modelname){
249
+ for (let i =0 ;i<this[field].length;i++){
250
+ if(!this[field][i].selectValue){
251
+ continue
252
+ }
253
+ console.log("this[field][i].column:"+this[field][i].column+"---"+"this[field][i].selectValue"+this[field][i].selectValue)
254
+ this.setProperty(modelname,this[field][i].selectitem.column,this[field][i].selectValue)
255
+ }
256
+ }
257
+ //根据选择框内容设置属性值
258
+ jointCondition(modelname){
259
+
260
+ if(modelname="user"){
261
+ this.setProperty("user","usertype","")
262
+ this.setProperty("user","address","")
263
+ switch(this.userConditionSelect){
264
+ case "用户类型":
265
+ this.setProperty("user","usertype",this.userConditionValue)
266
+ break;
267
+ case "地址":
268
+ this.setProperty("user","address",this.userConditionValue)
269
+ break;
270
+ }
271
+ }
272
+ if(modelname="checkplanitems"){
273
+ this.setProperty("checkplanitems","usercode","")
274
+ this.setProperty("checkplanitems","username","")
275
+ switch(this.planItemConditionSelect){
276
+ case "用户编号":
277
+ this.setProperty("checkplanitems","usercode",this.planItemConditionValue)
278
+ break;
279
+ case "用户名称":
280
+ this.setProperty("checkplanitems","username",this.planItemConditionValue)
281
+ break;
282
+ }
283
+ }
284
+ }
285
+
286
+ //是否共享计划单选按钮事件
287
+ isAndNotChange(isAndNotselect){
288
+ this.sIsAndNotSelect=isAndNotselect
289
+ if(this.sIsAndNotSelect=="是"){
290
+ this.setProperty("checkplan","isAndNot","is null")
291
+ }
292
+ if(this.sIsAndNotSelect=="否"){
293
+ this.setProperty("checkplan","isAndNot","is not null")
294
+ }
295
+ }
296
+
297
+ //按条件查询所有安检计划
298
+ async loadCheckPlan(sortfield,f) {
299
+ this.isSend=true
300
+ this.checkplan.check.checkes=[]
301
+ if(sortfield){//如果传入空串说明是查询 传入非空串就是排序
302
+ console.log("进入排序")
303
+ if(sortfield==this.currentorder){
304
+ return
305
+ }else{
306
+ this.currentorder=sortfield
307
+ }
308
+ }
309
+ let fieldValue=''
310
+ switch(this.currentorder){
311
+ case "按时间降序":
312
+ fieldValue='f_create_time desc'
313
+ break
314
+ case "按时间升序":
315
+ fieldValue='f_create_time'
316
+ break
317
+ }
318
+ console.log("值"+sortfield+"--当前值"+this.currentorder+"---排序值:"+fieldValue)
319
+ await this.checkplan.searchList("/rs/sql/预约计划下发",
320
+ {"f_plan_name": "f_plan_name like '%{}%'",
321
+ "f_plan_year":"f_plan_year={}",
322
+ "f_plan_month":"f_plan_month={}",
323
+ "checkerid":"f_checker_id={}",
324
+ "isAndNot":"f_checker {}",
325
+ "safechecktype":"f_safecheck_type='{}'"
326
+ },
327
+ {orderitem:fieldValue,
328
+ f_filialeids:"("+this.filialeid+")",
329
+ groupitem:""
330
+ }
331
+ )
332
+ f()
333
+ this.isSend=false
334
+ }
335
+
336
+ // 查询待检用户
337
+ async searchUser(f) {
338
+ this.isSend=true
339
+ this.user.check.checkes=[]
340
+ this.jointCondition1("conditionList","user")
341
+ let sday=''
342
+ let eday=''
343
+ if(this.startday.trim()!=''){
344
+ if(isNaN(this.startday) || isNaN(this.endday)){
345
+ Vue.showMessage("请输入数字!")
346
+ return
347
+ }
348
+ if(this.selectTime=="月"){
349
+ sday= this.startday*30
350
+ this.endday.trim()!=''?eday= this.endday*30:eday=''
351
+ }else{
352
+ sday= this.startday
353
+ this.endday.trim()!=''?eday= this.endday:eday=''
354
+ }
355
+ if(eday){
356
+ 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))
357
+ }else{
358
+ this.setProperty("user","checkTime"," DATEDIFF(dd,ua.f_last_check_date,GETDATE())>="+parseInt(sday,10))
359
+ }
360
+ }else{
361
+ this.setProperty("user","checkTime","")
362
+ }
363
+ this.user.search.setField("f_filialeid",this.filialeid)
364
+ await this.user.searchList("/rs/sql/FetchUserFileByOrgNoRuHuSXQ", {
365
+ "f_filialeid": "ui.f_filialeid={}",
366
+ "userinfocode": "ui.f_userinfo_code='{}'",
367
+ "username": "ui.f_user_name like '%{}%'",
368
+ "useraddress": "ua.f_address like '%{}%'",
369
+ "userType":"uf.f_user_type='{}'",
370
+ "f_residential_area":"ua.f_residential_area like '%{}%'",
371
+ "f_building":"ua.f_building='{}'",
372
+ "f_unit":"ua.f_unit='{}'",
373
+ "f_user_state":"ui.f_user_state='{}'",
374
+ "checkTime":" {}"
375
+ }, {
376
+ "orderitem": 'f_residential_area,f_building,f_unit,f_floor,f_room',
377
+ "f_usertype": '',
378
+ "month": '',
379
+ "SafeCheckSX": {"f_check_start": '', "f_check_end": ''},
380
+ "SafeCheckCQ": '',
381
+ "startday":"",
382
+ "endday":""
383
+ })
384
+ f()
385
+ this.isSend=false
386
+ }
387
+
388
+ //查询安检员
389
+ async searchChecker(id){
390
+ let res=await this.http.load('POST', '/rs/search', {
391
+ source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
392
+ userid: id
393
+ }, {resolveMsg: null, rejectMsg: null})
394
+ this.checker=res.data
395
+
396
+ console.log("安检员列表---"+JSON.stringify(res)+"---id"+this.filialeid)
397
+ }
398
+
399
+ async searchPlanItems(f) {
400
+ await this.checkplanitems.searchList("/rs/sql/planItem", {"f_plan_id": "f_plan_id={}"}, {})
401
+ f()
402
+ }
403
+ //得到更新数据
404
+ async getPaper(id,f) {
405
+ let res=await this.http.load("POST", "/rs/path/getUserinfomation", {
406
+ data:{
407
+ condition:"f_check_item_id='"+id+"'"
408
+ }
409
+ })
410
+
411
+
412
+ this.suppplanitem=res.data[0]
413
+ if (this.suppplanitem.f_check_type!=null) {
414
+ this.suppplanitem["f_user_type"]=this.suppplanitem.f_check_type
415
+ }
416
+ this.fdevices=[]
417
+
418
+ if(this.suppplanitem.f_devices.length!=0){
419
+
420
+ for (let i = 0; i <this.str.length ; i++) {
421
+ if (this.suppplanitem.f_devices[i]==undefined) {
422
+ this.fdevices.push({
423
+ f_device_type: this.str[i].checkname,
424
+ f_items: []
425
+ //id: this.suppplanitem.f_devices[i] == undefined ? "" : this.suppplanitem.f_devices[i].id
426
+ })
427
+ }else {
428
+ this.fdevices.push({
429
+ f_device_type: this.str[i].checkname,
430
+ f_items: [],
431
+ id:this.suppplanitem.f_devices[i].id
432
+ })
433
+ }
434
+ }
435
+ }else{for (let i = 0; i <this.str.length ; i++) {
436
+
437
+ this.fdevices.push({f_device_type:this.str[i].checkname,f_items:[]})
438
+ }}
439
+
440
+ this.setFitemvalue()
441
+ f()
442
+
443
+
444
+
445
+ }
446
+
447
+ //补录时改变fdevice
448
+ suppfdevice(){
449
+ for (let i = 0; i <this.str.length ; i++) {
450
+ this.fdevices.push({f_device_type:this.str[i].checkname,f_items:[]})
451
+ }
452
+ console.log("supp最后的listbutton"+JSON.stringify(this.listbutton))
453
+ this.changeListButton()
454
+ console.log("999999999")
455
+ console.log(this.suppplanitem)
456
+ }
457
+ //改变数组的样式
458
+ changeListButton(){
459
+ let listarray=[]
460
+ for (let i = 0; i < this.listbutton.length; i++) {
461
+ if (!this.listbutton[i].mname){
462
+ console.log("这是"+this.listbutton[i].lname.length)
463
+ listarray.push(this.listbutton[i])
464
+ listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
465
+ listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
466
+ listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
467
+ let count=0
468
+ for (let j = 0; j < this.listbutton.length; j++) {
469
+ if(this.listbutton[i].lname.substring(0,this.listbutton[i].lname.length-1)==this.listbutton[j].mname){
470
+
471
+ listarray.push(this.listbutton[j])
472
+ count++
473
+ }
474
+ }
475
+ if (count%4!=0){
476
+ for (let j = 0; j <4-count%4; j++) {
477
+ listarray.push({"lname":"","type":"","mname":"","selected":"","level":"","isdefect":""})
478
+ }
479
+ }
480
+ }
481
+ }
482
+ console.log("需要的数据"+JSON.stringify(listarray))
483
+ this.listbutton=listarray
484
+ this.tranlistbutton()
485
+ }
486
+ //横向分开list
487
+ tranlistbutton(){
488
+ console.log("jinru111111111111")
489
+ for (let i = 0; i < this.listbutton.length; i++) {
490
+ if((i+1)%4==1){
491
+ this.listbuttona.push(this.listbutton[i])
492
+ }else if((i+1)%4==2){
493
+ this.listbuttonb.push(this.listbutton[i])
494
+ }else if((i+1)%4==3){
495
+ this.listbuttonc.push(this.listbutton[i])
496
+ }else if((i+1)%4==0){
497
+ this.listbuttond.push(this.listbutton[i])
498
+ }
499
+ }
500
+ this.suppplanitem["f_usegas"]='已使用'
501
+ console.log('5656565')
502
+ console.log(this.suppplanitem)
503
+ }
504
+ // 打开安检计划,加载安检计划的所有安检单
505
+ async openPlan(plan, f) {
506
+ this.isSend=true
507
+ this.checkplanitems.check.checkes=[]
508
+ this.SelectedPlan=plan.id
509
+ this.plan=plan
510
+ this.checkplanitems.search.setField("f_plan_id", plan.id)
511
+ this.checkplanitems.search.setField("f_state", "作废")
512
+ await this.checkplanitems.searchList("/rs/sql/planItem", {"f_plan_id": "i.f_plan_id='{}'","f_state": "i.f_state !='{}'"}, {})
513
+ //f()
514
+ //this.checkplanitems.search.model.f_plan_id
515
+ window.dispatchEvent(new CustomEvent("goRefresh"),{})
516
+ this.isSend=false
517
+ }
518
+
519
+ //根据条件查询某个安检计划下的安检单
520
+ async searchPlanItem(f) {
521
+ this.checkplanitems.check.checkes=[]
522
+ if(this.checkplanitems.search.model.f_plan_id){
523
+ this.isSend=true
524
+ console.log("进入加载安检计划项"+this.checkplanitems.search.model.f_plan_id)
525
+ this.jointCondition1("planitemconditionList","checkplanitems")
526
+ await this.checkplanitems.searchList("/rs/sql/planItem",
527
+ {"f_plan_id": "i.f_plan_id='{}'",
528
+ "usercode": "i.f_userinfo_code='{}'",
529
+ "username": "i.f_user_name='{}'",
530
+ "f_address": "i.f_address like '%{}%'",
531
+ "f_last_check_state": "i.f_last_check_state='{}' ",
532
+ "f_start_time": "i.f_last_check_date >='{}'",
533
+ "f_end_time": "i.f_last_check_date <='{}'",
534
+ "f_last_check_result":"i.f_last_check_result like '%{}%'",
535
+ "f_state": "i.f_state !='{}'",
536
+ "f_state1": "i.f_state ='{}'"
537
+ },
538
+ {})
539
+ f()
540
+ this.isSend=false
541
+ }else{
542
+ Vue.showMessage("请选择安检计划")
543
+ }
544
+ }
545
+ //加载更多数据
546
+ async loadMore(modelname,f) {
547
+ this.isSend=true
548
+ await this[modelname].list.loadMore()
549
+ f()
550
+ this.isSend=false
551
+ }
552
+
553
+ //点击全选按钮事件 user-用户列表 planitem-计划项列表
554
+ changeCheckAll(modulename, f) {
555
+ this[modulename].check.setCheckAll()
556
+ f()
557
+ }
558
+
559
+ //当选中列表中某项时触发
560
+ addParam(modulename, id) {
561
+ console.log("当前值"+modulename+"--------"+id)
562
+ this[modulename].check.setCheckes(id)
563
+ }
564
+
565
+ //设置属性值
566
+ setProperty(modulename, property, value) {
567
+ console.log(modulename+"新添--"+property+"--"+value)
568
+ this[modulename].search.setField(property, value)
569
+ }
570
+
571
+ //列表中的选择框是否被选中
572
+ hasValue(modulename,value){
573
+ this[modulename].check.checks.has()
574
+ }
575
+ // 给新建安检计划设置属性值
576
+ setNewPlan(property, value) {
577
+ console.log(value)
578
+ this.newPlan[property] = value
579
+ return this
580
+ }
581
+ //将某项拖动到计划中
582
+ //dragParam:从拖动的起始位置传入的参数
583
+ async dragtoPlan(f_plan_id,f_safecheck_type,f_filialeid,dragParam,f){
584
+ console.log("当前传入:"+dragParam)
585
+ await this.dragtoPlanItem(f_plan_id,f_safecheck_type,dragParam,f)
586
+ await this.dragtoOtherPlanIteem(f_plan_id,dragParam,f)
587
+ }
588
+
589
+ //将客户信息拖至计划中
590
+ async dragtoPlanItem(f_plan_id,f_safecheck_type,dragParam,f) {
591
+
592
+ console.log("计划id:"+f_plan_id+"公司id:"+this.filialeid)
593
+ if(dragParam=='user'){
594
+ this.jointCondition1("conditionList","user")
595
+ if(this.checkplanitems.search.model.f_plan_id){
596
+ this.isSend=true
597
+ let res=await this.http.load("POST", "/rs/logic/AddCheckPlanItem", {
598
+ data:{
599
+ f_operator:global.login.name,
600
+ f_plan_id:f_plan_id,
601
+ f_safecheck_type:f_safecheck_type,
602
+ f_filialeid:this.filialeid,
603
+ f_subscribe_date:'',
604
+ condition:this.user.search.search({ "f_filialeid": "ui.f_filialeid={}",
605
+ "userinfocode": "ui.f_userinfo_code='{}'",
606
+ "username": "ui.f_user_name like '%{}%'",
607
+ "useraddress": "ua.f_address like '%{}%'",
608
+ "userType":"uf.f_user_type='{}'",
609
+ "f_residential_area":"ua.f_residential_area like '%{}%'",
610
+ "f_building":"ua.f_building='{}'",
611
+ "f_unit":"ua.f_unit='{}'",
612
+ "checkTime":" {}"}),
613
+ switchCheckAll:this.user.check.switchCheckAll,
614
+ checkAll:this.user.check.checkAll,
615
+ param:this.user.check.checkes,
616
+ columnName: "ua.id"
617
+ }
618
+ }, {resolveMsg: null, rejectMsg: null})
619
+ console.log("重复数量-"+JSON.stringify(res.data.result)+"---"+res.data.result.length)
620
+ if(res.data.code==200){
621
+ //alert("添加成功!有"+res.data.result.length+"条用户地址已经存在于其他计划中: \n"+res.data.result.reduce((c,v)=>{c += v.f_user_name+":"+v.f_address+"\n"}),0)
622
+ Vue.showMessage("添加成功!"+(res.data.result.length>0?"有"+res.data.result.length+"条用户地址已经存在于其他计划中":""))
623
+ }else{
624
+ Vue.showMessage("添加失败!")
625
+ }
626
+ this.user.check.checkes=[]
627
+ await this.searchUser(()=>{})
628
+ await this.searchPlanItem(()=>{})
629
+ await this.loadCheckPlan("",()=>{})
630
+ f()
631
+ this.isSend=false
632
+ }else{
633
+ Vue.showMessage("请先打开一个计划再进行操作")
634
+ }
635
+ }
636
+ }
637
+
638
+ //将某个计划下的一项拖到另一个计划
639
+ async dragtoOtherPlanIteem(checkplanid,dragParam,f) {
640
+ if(dragParam=='item'){
641
+ this.isSend=true
642
+ let res=await this.http.load("POST", "/rs/logic/UpCheckPlanItem", {
643
+ data:{
644
+ f_operator:global.login.name,
645
+ f_plan_id:checkplanid,
646
+ condition:this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
647
+ "usercode": "i.f_userinfo_code='{}'",
648
+ "username": "i.f_user_name='{}'",
649
+ "f_address": "i.f_address like '%{}%'",
650
+ "f_last_check_state": "i.f_last_check_state='{}' ",
651
+ "f_start_time": "i.f_last_check_date >='{}'",
652
+ "f_end_time": "i.f_last_check_date <='{}'",
653
+ "f_last_check_result":"i.f_last_check_result like '%{}%'"}),
654
+ switchCheckAll:this.checkplanitems.check.switchCheckAll,
655
+ checkAll:this.checkplanitems.check.checkAll,
656
+ param:this.checkplanitems.check.checkes,
657
+ columnName: "it.id"
658
+ }
659
+ }, {resolveMsg: null, rejectMsg: null})
660
+ if(res.data.code==200){
661
+ await this.searchUser(()=>{})
662
+ await this.searchPlanItem(()=>{})
663
+ await this.loadCheckPlan("",()=>{})
664
+ f()
665
+ Vue.showMessage("更换安检计划成功!")
666
+ }else{
667
+ Vue.showMessage("更换安检计划失败!")
668
+ }
669
+ f()
670
+ this.isSend=false
671
+ }
672
+
673
+ }
674
+
675
+ //修改计划项状态为作废
676
+ async delPlanItem(dragParam,f) {
677
+ console.log("进入作废计划项方法")
678
+ if(dragParam=='item'){
679
+ this.isSend=true
680
+ let resu=await this.http.load("POST", "/rs/logic/UpCheckPlanItemState", {
681
+ data: {
682
+ f_operator:global.login.name,
683
+ condition:this.checkplanitems.search.search({
684
+ "f_plan_id": "i.f_plan_id='{}'",
685
+ "usercode": "i.f_userinfo_code='{}'",
686
+ "username": "i.f_user_name='{}'",
687
+ "f_address": "i.f_address like '%{}%'",
688
+ "f_last_check_state": "i.f_last_check_state='{}' ",
689
+ "f_start_time": "i.f_last_check_date >='{}'",
690
+ "f_end_time": "i.f_last_check_date <='{}'",
691
+ "f_last_check_result":"i.f_last_check_result like '%{}%'",
692
+ "f_state": "i.f_state !='{}'",
693
+ "f_state1": "i.f_state ='{}'"}),
694
+ switchCheckAll:this.checkplanitems.check.switchCheckAll,
695
+ checkAll:this.checkplanitems.check.checkAll,
696
+ param:this.checkplanitems.check.checkes,
697
+ columnName: "i.id"
698
+ }
699
+ }, {resolveMsg: null, rejectMsg: null})
700
+ console.log("-----------"+JSON.stringify(resu.data))
701
+ if(resu.data.code==200){
702
+ Vue.showMessage("作废安检单成功! 成功作废:"+resu.data.res.up+"条"+(resu.data.res.noup>0?"有"+resu.data.res.noup+"条已经不是 ‘未检’ 状态!":""))
703
+ await this.searchUser(()=>{})
704
+ await this.searchPlanItem(()=>{})
705
+ await this.loadCheckPlan("",()=>{})
706
+ f()
707
+ }else{
708
+ Vue.showMessage("取消安检计划失败!")
709
+ }
710
+ this.isSend=false
711
+ }
712
+
713
+ }
714
+
715
+ //新建计划
716
+ async addNewPlan(f) {
717
+ if(!this.validationCreatePlan()){
718
+ return
719
+ }
720
+ this.isSend=true
721
+ 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'}})
722
+ console.log("结果-"+res.data.length)
723
+ if(res.data.length>0){
724
+ Vue.showMessage("计划名称不能重复!")
725
+ return
726
+ }
727
+ if(this.isShare=="是"){
728
+ this.newPlan.f_checker_id=null
729
+ this.newPlan.f_checker=null
730
+ }
731
+ this.newPlan.f_plan_type='预约计划'
732
+ this.newPlan.f_subcompany=global.login.orgs
733
+ this.newPlan.f_filialeid=this.filialeid
734
+ this.newPlan.f_create_operator=global.login.name
735
+ this.newPlan.f_create_time=this.getNowFormatDate()
736
+ await Vue.resetpost("/rs/logic/createCheckPlan", {"data": this.newPlan},{resolveMsg : '新建计划成功!', rejectMsg : '新建计划失败!'},2500)
737
+ await this.loadCheckPlan('',()=>{})
738
+ this.newPlan={f_issued:"否"}
739
+ this.isShare="否"
740
+ f()
741
+ this.isSend=false
742
+ }
743
+
744
+ // 取消新建安检计划
745
+ cancel() {
746
+ this.newPlan={f_issued:"否"}
747
+ this.isShare="否"
748
+ this.plan={}
749
+ }
750
+
751
+ // 取年的选择项目
752
+ years() {
753
+ return date.yearSelects
754
+ }
755
+ //遍历选择框以及得到list
756
+ getselector(){
757
+
758
+
759
+ this.listbutton=[]
760
+
761
+ for (let i = 0; i <this.str.length ; i++) {
762
+ let strlist=[]
763
+ strlist=this.str[i].items.concat()
764
+ for (let j = 0; j <strlist.length ; j++) {
765
+ strlist[j]["mname"]=this.str[i].checkname
766
+ }
767
+ strlist.splice(0,0,{lname:this.str[i].checkname+":",type:"",mname:""})
768
+ let bb=this.listbutton
769
+ this.listbutton=bb.concat(strlist)
770
+ }
771
+
772
+ let h=this.listbutton
773
+ for (let i = 0; i <h.length ; i++) {
774
+
775
+ h[i]["selected"]=""
776
+ h[i]["level"]=""
777
+ h[i]["isdefect"]=""
778
+ if (h[i].type =="selector"){
779
+ let size=h[i].options.length
780
+
781
+ let pl=[]
782
+ for (let j = 0; j <size ; j++) {
783
+ let n=h[i].lname+h[i].mname
784
+
785
+ pl.push(h[i].options[j].data)
786
+ this.planItemConditional[n]=pl
787
+
788
+ }
789
+ }
790
+ }
791
+
792
+ console.log("get最后的listbutton"+JSON.stringify(this.listbutton))
793
+ }
794
+ //返回遍历的option
795
+ reoption(key1,key2){
796
+
797
+ let modelname=key1+key2
798
+ return this.planItemConditional[modelname]
799
+
800
+ }
801
+
802
+
803
+ // 取月的选择项目
804
+ months() {
805
+ return date.monthSelects
806
+ }
807
+
808
+ //下发安检计划
809
+ async sendCheckPlan(f){
810
+ if(this.checkplan.check.checkes.length<1){
811
+ Vue.showMessage("请选择要下发的安检计划")
812
+ return
813
+ }
814
+ this.isSend=true
815
+ let res=await this.http.load("POST", "/rs/logic/NewBespeakCheckPlan", {
816
+ data:{
817
+ f_issued:'是',
818
+ f_issue_time:this.getNowFormatDate(),
819
+ f_send_operator:global.login.name,
820
+ param:this.checkplan.check.checkes,
821
+ }
822
+ }, {resolveMsg: null, rejectMsg: null})
823
+ if(res.data.code==200){
824
+ //Vue.showMessage("下发成功!其中有"+res.data.repet+"个计划己经是下发状态")
825
+ Vue.showMessage("下发成功!")
826
+ await this.loadCheckPlan('',()=>{})
827
+ f()
828
+ }else{
829
+ Vue.showMessage("下发失败!")
830
+ }
831
+ this.isSend=false
832
+ }
833
+
834
+ //删除安检计划
835
+ async delCheckPlan(f){
836
+ if(this.checkplan.check.checkes.length<1){
837
+ Vue.showMessage("请选择要删除的安检计划")
838
+ return
839
+ }
840
+ this.isSend=true
841
+ let res=await this.http.load("POST", "/rs/logic/deleteCheckPlan", {
842
+ data:{
843
+ f_operator:global.login.name,//global.login.name,
844
+ condition:this.checkplan.search.search({}),
845
+ switchCheckAll:this.checkplan.check.switchCheckAll,
846
+ checkAll:this.checkplan.check.checkAll,
847
+ param:this.checkplan.check.checkes,
848
+ columnName: "f_plan_id"
849
+ }
850
+ }, {resolveMsg: "删除成功!", rejectMsg: "删除失败!"})
851
+ console.log(JSON.stringify(res))
852
+ if(res.data.code==200){
853
+ Vue.showMessage("删除成功!"+res.data.message,"success",2500)
854
+ await this.loadCheckPlan('',()=>{})
855
+ }else{
856
+ Vue.showMessage("删除失败!"+res.data.message,"success",2500)
857
+ }
858
+ this.checkplanitems.search.model.f_plan_id=""
859
+ this.checkplanitems.list.data=[]
860
+ f()
861
+ this.isSend=false
862
+ }
863
+ //修改计划时 用来存储当前选中要修改的计划
864
+ plan={}
865
+ setPlanVal(value){
866
+ console.log(value)
867
+ this.plan=JSON.parse(JSON.stringify( value ))
868
+ }
869
+ setPlan(key,val){
870
+ this.plan[key]=val
871
+ }
872
+ isUpdate(key1,key2){
873
+ if (key1=="已检"&&key2!="补录"){
874
+ return true;
875
+ }
876
+ return false;
877
+ }
878
+ //修改安检计划
879
+ async upCheckPlan(f){
880
+ this.isSend=true
881
+ let res=await this.http.load("POST", "/rs/logic/updateCheckPlan", {
882
+ data:{
883
+ f_checker:this.plan.f_checker,
884
+ f_checker_id:this.plan.f_checker_id,
885
+ f_plan_name:this.plan.f_plan_name,
886
+ f_plan_year:this.plan.f_plan_year,
887
+ f_plan_month:this.plan.f_plan_month,
888
+ f_plan_id:this.plan.id
889
+ }
890
+ }, {resolveMsg: null, rejectMsg: null})
891
+ if(res.data.code==200){
892
+ Vue.showMessage("修改成功!"+res.data.message,"success",2500)
893
+ await this.loadCheckPlan('',()=>{})
894
+ }else{
895
+ Vue.showMessage("修改失败!"+res.data.message,"success",2500)
896
+ }
897
+ f()
898
+ this.isSend=false
899
+ }
900
+
901
+ /* getDataLength(modelname){
902
+ console.log("sdadasdasdasdadasdadddddddddddddddddddddddddddddddddddddddddddd")
903
+ let l=this[modelname].list.data.length
904
+ console.log("--"+l)
905
+ return l
906
+ }*/
907
+ //新建安检计划非空判断
908
+ validationCreatePlan(){
909
+ if(!this.newPlan.f_plan_name){
910
+ Vue.showMessage("请输入安检计划名称!")
911
+ return false
912
+ }
913
+ if(!this.newPlan.f_plan_year){
914
+ Vue.showMessage("请选择安检年份!")
915
+ return false
916
+ }
917
+ if(!this.newPlan.f_plan_month){
918
+ Vue.showMessage("请选择安检月份!")
919
+ return false
920
+ }
921
+ if(this.isShare=="否"){
922
+ if(!this.newPlan.f_checker){
923
+ Vue.showMessage("请选择安检人员!")
924
+ return false
925
+ }
926
+ }else{
927
+ this.newPlan.f_checker=''
928
+ }
929
+ if(!this.newPlan.f_safecheck_type){
930
+ Vue.showMessage("请选择安检类型!")
931
+ return false
932
+ }
933
+ return true
934
+ }
935
+
936
+ //调用updatecheckpaper
937
+ async addNewPaper(f){
938
+ //this.isSend=true
939
+ this.setFdevices()
940
+ this.setfDevicesid()
941
+ //return;
942
+ for (var i = 0; i <this.checkerMess.length ; i++) {
943
+ if (this.checkerMess[i].name==this.suppplanitem.f_checker_name){
944
+ this.suppplanitem["f_checker_id"]=this.checkerMess[i].id
945
+ }
946
+ }
947
+ //console.log(this.fdevices)
948
+ //return;
949
+ this.suppplanitem["f_devices"]=this.fdevices
950
+ this.suppplanitem.f_check_type=this.suppplanitem.f_user_type
951
+ this.suppplanitem.f_state = "已检"
952
+ this.suppplanitem.f_approved = "未审核"
953
+ this.suppplanitem.f_complete = "已完成"
954
+ this.suppplanitem.f_no_checkplan ="有计划安检"
955
+ //return;
956
+ this.suppplanitem.f_check_plan_id=this.suppplanitem.f_plan_id
957
+
958
+ let res=await this.http.load("POST", "/rs/logic/SuppCheckPaper", {data:{paper:this.suppplanitem}})
959
+
960
+ this.openPlan(this.plan,f)
961
+ f()
962
+ window.dispatchEvent(new CustomEvent("goRefresh"),{})
963
+ //this.isSend=false
964
+ }
965
+ async addnewPaper(f){
966
+ this.isSend=true
967
+ console.log("9999999999"+this.isSend)
968
+ delete this.suppplanitem.id
969
+ if(!this.suppplanitem.f_onsite_time){
970
+ Vue.showMessage("提交失败,请输入开始时间!")
971
+ return false
972
+ }
973
+ if(!this.suppplanitem.f_entry_status){
974
+ Vue.showMessage("提交失败,请输入入户状态!")
975
+ return false
976
+ }
977
+ if(!this.suppplanitem.f_usegas&&this.suppplanitem.f_entry_status=='入户'){
978
+ Vue.showMessage("提交失败,请输入燃气使用状态!")
979
+ return false
980
+ }
981
+ // if(!this.suppplanitem.f_checker_name){
982
+ // Vue.showMessage("提交失败,请输入安检员!")
983
+ // }
984
+ await this.addNewPaper(f)
985
+ this.isSend=false
986
+ }
987
+ async updatePaper(f){
988
+ this.isSend=true
989
+ console.log("9999999999"+this.isSend)
990
+ await this.addNewPaper(f)
991
+ this.isSend=false
992
+ }
993
+ setNewPaper(property,value){
994
+ this.suppplanitem[property] = value
995
+ return this
996
+ }
997
+
998
+ setFdevices(){
999
+
1000
+
1001
+ var ar=this.listbutton
1002
+ var br=this.fdevices
1003
+ for (var i = 0; i <br .length; i++) {
1004
+ for (var j = 0; j < ar.length; j++) {
1005
+ if (br[i].f_device_type == ar[j].mname) {
1006
+ br[i].f_items.push({
1007
+ f_item_name: ar[j].lname,
1008
+ f_item_value: ar[j].selected,
1009
+ type: ar[j].type,
1010
+ f_is_defect: ar[j].isdefect,
1011
+ f_defect_level: ar[j].level,
1012
+ f_item_lists:[{
1013
+ //f_item_id: "",
1014
+ f_item_value: ar[j].selected,
1015
+ //id:""
1016
+ }]
1017
+ })
1018
+ }
1019
+ }
1020
+ }
1021
+ }
1022
+ //给fdevices赋值id
1023
+ setfDevicesid(){
1024
+ var suppf=this.suppplanitem.f_devices
1025
+ var fde=this.fdevices
1026
+ if (this.suppplanitem.hasOwnProperty("f_devices")){
1027
+ for (let i = 0; i <suppf.length ; i++) {
1028
+ for (let j = 0; j <fde.length; j++) {
1029
+ if (suppf[i].f_device_type==fde[j].f_device_type){
1030
+ for (let k = 0; k <suppf[i].f_items.length ; k++) {
1031
+ // console.log("789456123")
1032
+ for (let l = 0; l <fde[j].f_items.length ; l++) {
1033
+ // console.log("11111111111111")
1034
+ if (suppf[i].f_items[k].f_item_name==fde[j].f_items[l].f_item_name) {
1035
+ fde[j].f_items[l]["id"]=suppf[i].f_items[k].id
1036
+ if (suppf[i].f_items[k].f_item_lists.length!=0){
1037
+ fde[j].f_items[l].f_item_lists[0]["id"]=suppf[i].f_items[k].f_item_lists[0].id
1038
+ fde[j].f_items[l].f_item_lists[0]["f_item_id"]=suppf[i].f_items[k].f_item_lists[0].f_item_id
1039
+ }
1040
+ }
1041
+ }
1042
+ }
1043
+ }
1044
+ }
1045
+ }
1046
+ }else {
1047
+ this.suppplanitem.f_upload_date=this.getNowFormatDate()
1048
+ }
1049
+ }
1050
+ //
1051
+ setFitemvalue(){
1052
+ for (var k = 0; k <this.listbutton.length ; k++) {
1053
+ for (var i = 0; i <this.suppplanitem.f_devices.length ; i++) {
1054
+ for (var j = 0; j < this.suppplanitem.f_devices[i].f_items.length; j++) {
1055
+ if (this.listbutton[k].lname==this.suppplanitem.f_devices[i].f_items[j].f_item_name){
1056
+ this.listbutton[k].selected=this.suppplanitem.f_devices[i].f_items[j].f_item_value
1057
+ }
1058
+ }
1059
+ }
1060
+ }
1061
+ }
1062
+ //改变selected属性
1063
+ changeSelected(selectedname,selectedmname,selectedvalue){
1064
+ var sa=this.listbutton
1065
+ for (var i = 0; i <sa.length; i++) {
1066
+ if (sa[i].lname==selectedname&&sa[i].mname==selectedmname){
1067
+ sa[i].selected=selectedvalue
1068
+ if (sa[i].type=="selector"){//判断是否是选择类型
1069
+ for (var j = 0; j < sa[i].options.length; j++) {
1070
+ if (sa[i].options[j].data==selectedvalue){//赋值为json的level和isdefect
1071
+ sa[i].level=sa[i].options[j].level
1072
+ sa[i].isdefect=sa[i].options[j].isdefect
1073
+ }
1074
+ }
1075
+ }
1076
+ }
1077
+ }
1078
+ //console.log(this.fdevices)
1079
+ }
1080
+ getAreaList() {
1081
+ let res = this.http.load('POST', '/rs/sql/safe_singleTable_GroupBy', {
1082
+ data: {
1083
+ items: 'f_residential_area',
1084
+ tablename: 't_area',
1085
+ condition: 'f_filialeid = '+this.filialeid,
1086
+ groupitem: 'f_residential_area'
1087
+ }
1088
+ }, {resolveMsg: null, rejectMsg: null}).then((res)=>{
1089
+ if (res.data) {
1090
+ let arr=[]
1091
+ for(let i =0 ;i<res.data.length;i++){
1092
+ arr.push(res.data[i].f_residential_area)
1093
+ }
1094
+ this.conditionJson[0].options=arr
1095
+ }
1096
+ })
1097
+
1098
+ }
1099
+ //获取当前时间
1100
+ getNowFormatDate() {
1101
+ let date = new Date();
1102
+ let seperator1 = "-";
1103
+ let seperator2 = ":";
1104
+ let month = date.getMonth() + 1;
1105
+ let strDate = date.getDate();
1106
+ let hour = date.getHours();
1107
+ let min = date.getMinutes();
1108
+ let second = date.getSeconds();
1109
+ if (month >= 1 && month <= 9) {
1110
+ month = "0" + month;
1111
+ }
1112
+ if (strDate >= 0 && strDate <= 9) {
1113
+ strDate = "0" + strDate;
1114
+ }
1115
+ if (hour >= 0 && hour <= 9) {
1116
+ hour = "0" + hour;
1117
+ }
1118
+ if (min >= 0 && min <= 9) {
1119
+ min = "0" + min;
1120
+ }
1121
+ if (second >= 0 && second <= 9) {
1122
+ second = "0" + second;
1123
+ }
1124
+ let currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
1125
+ + " " + hour + seperator2 + min
1126
+ + seperator2 + second;
1127
+ return currentdate;
1128
+ }
1129
+ //excel导出
1130
+ async exportFile(){
1131
+ if(!this.checkplanitems.search.model.f_plan_id){
1132
+ Vue.showMessage("请选择先打开一个安检计划!")
1133
+ return
1134
+ }
1135
+ this.isSend=true
1136
+ this.jointCondition1("planitemconditionList","checkplanitems")
1137
+ let res=await this.http.load('POST','rs/logic/SafeExportExcel',
1138
+ {
1139
+ "data": {
1140
+ "body": {
1141
+ "data": {
1142
+ "condition": this.checkplanitems.search.search({"f_plan_id": "i.f_plan_id='{}'",
1143
+ "usercode": "i.f_userinfo_code='{}'",
1144
+ "username": "i.f_user_name='{}'",
1145
+ "f_address": "i.f_address like '%{}%'",
1146
+ "f_last_check_state": "i.f_last_check_state='{}' ",
1147
+ "f_start_time": "i.f_last_check_date >='{}'",
1148
+ "f_end_time": "i.f_last_check_date <='{}'",
1149
+ "f_last_check_result":"i.f_last_check_result like '%{}%'",
1150
+ "f_state": "i.f_state !='{}'",
1151
+ "f_state1": "i.f_state ='{}'"
1152
+ })
1153
+ },
1154
+ "field": ["f_userinfo_code:用户编号","f_user_name:用户名称", "f_user_type:用户类型","f_user_phone:用户电话", "f_residential_area:小区名称", "f_state:安检状态","f_address:详细地址"],
1155
+ "templateName": this.plan.f_plan_name,
1156
+ "sqlName": "planItem"
1157
+ },
1158
+ }
1159
+ }
1160
+ ,{resolveMsg: null, rejectMsg: null})
1161
+ console.log("excel结果---"+JSON.stringify(res))
1162
+ let link = document.createElement('a');
1163
+ let path = res.data[0].filename
1164
+ //webapps这个是在服务器上导出用的
1165
+ let pathName = "http://" + location.host + "/webapps" + path.split('webapps')[1]
1166
+ //excel这个是在本地导出用的
1167
+ link.href = pathName;
1168
+ link.download = path.split('excel/')[1];
1169
+ link.dispatchEvent(new MouseEvent('click'));
1170
+ this.isSend=false
1171
+ }
1172
+
1173
+ //获取安检人员
1174
+ async getGasMan(){
1175
+
1176
+ let http = new HttpResetClass()
1177
+ let getGasman = await http.load('POST', '/rs/search', {
1178
+ source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
1179
+ userid: global.login.id
1180
+ }, {resolveMsg: null, rejectMsg: null})
1181
+
1182
+ this.checkerMess=getGasman.data
1183
+ for (var i = 0; i <getGasman.data.length ; i++) {
1184
+ this.checkersname.push(getGasman.data[i].name)
1185
+ }
1186
+ }
1187
+ flush(f){
1188
+ f()
1189
+ }
1190
+ }