safecheck-client 3.0.35-gongyi-9 → 3.0.35-gongyi-11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (843) hide show
  1. package/.babelrc +5 -5
  2. package/.editorconfig +9 -9
  3. package/.eslintrc.js +16 -16
  4. package/.project +11 -11
  5. package/CHANGELOG.md +27 -27
  6. package/README.md +38 -38
  7. package/android.html +18 -18
  8. package/build/css-loaders.js +34 -34
  9. package/build/dev-android.js +151 -151
  10. package/build/dev-client.js +8 -8
  11. package/build/example-server.js +157 -157
  12. package/build/release.sh +28 -28
  13. package/build/utils.js +71 -71
  14. package/build/webpack.base.conf.js +88 -88
  15. package/build/webpack.baseandroid.conf.js +83 -83
  16. package/build/webpack.dev.conf.js +40 -40
  17. package/build/webpack.devandroid.conf.js +33 -33
  18. package/build/webpack.example.conf.js +49 -49
  19. package/build/webpack.hanwei.conf.js +57 -57
  20. package/build/webpack.hwbase.conf.js +78 -78
  21. package/build/webpack.prod.conf.js +80 -80
  22. package/build/webpack.prodandroid.conf.js +60 -60
  23. package/build/webpack.test.conf.js +31 -31
  24. package/build.gradle +14 -14
  25. package/config/dev.env.js +6 -6
  26. package/config/index.js +38 -38
  27. package/config/prod.env.js +3 -3
  28. package/config/test.env.js +6 -6
  29. package/docs/AppBase.md +22 -22
  30. package/docs/Busy.md +14 -14
  31. package/docs/Criteria.md +47 -47
  32. package/docs/CriteriaPaged.md +47 -47
  33. package/docs/DataGrid.md +54 -54
  34. package/docs/DataModel.md +22 -22
  35. package/docs/Dynamic.md +42 -42
  36. package/docs/FormPrint.md +18 -18
  37. package/docs/GetParams.md +11 -11
  38. package/docs/GridTree.md +47 -47
  39. package/docs/HttpBusy.md +13 -13
  40. package/docs/HttpStore.md +29 -29
  41. package/docs/MessageBox.md +28 -28
  42. package/docs/PagedList.md +29 -29
  43. package/docs/Pager.md +21 -21
  44. package/docs/PrintFile.md +38 -38
  45. package/docs/Project.md +23 -23
  46. package/docs/Route.md +105 -105
  47. package/docs/SafetyCheck/AdjustPlan.md +13 -13
  48. package/docs/SafetyCheck/CheckerPlan.md +12 -12
  49. package/docs/Task.md +46 -46
  50. package/docs/TreeList.md +28 -28
  51. package/docs/TreeMixin.md +18 -18
  52. package/docs/all.md +10 -10
  53. package/docs/list.md +42 -42
  54. package/docs/partial.md +75 -75
  55. package/docs/selector.md +82 -82
  56. package/docs/tree.md +40 -40
  57. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/Snippets.md +28 -28
  58. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue-strap/345/217/230/346/233/264/350/256/260/345/275/225.md +7 -7
  59. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue/345/217/230/346/233/264/350/256/260/345/275/225.md +13 -13
  60. package/docs//345/274/200/345/217/221/346/226/207/346/241/243//345/274/200/345/217/221/347/216/257/345/242/203/350/256/276/347/275/256.md +77 -77
  61. package/docs//347/225/214/351/235/242/345/210/266/344/275/234/350/247/204/350/214/203.md +54 -54
  62. package/examples/AddressList/App.vue +13 -13
  63. package/examples/AddressList/index.html +11 -11
  64. package/examples/AddressList/main.js +13 -13
  65. package/examples/ChangeConfig/App.vue +54 -54
  66. package/examples/ChangeConfig/comp.js +548 -548
  67. package/examples/ChangeConfig/index.html +17 -17
  68. package/examples/ChangeConfig/main.js +13 -13
  69. package/examples/CheckAdvise/App.vue +24 -24
  70. package/examples/CheckAdvise/comp.js +9 -9
  71. package/examples/CheckAdvise/index.html +18 -18
  72. package/examples/CheckAdvise/main.js +13 -13
  73. package/examples/CreatePlan/App.vue +13 -13
  74. package/examples/CreatePlan/index.html +11 -11
  75. package/examples/CreatePlan/main.js +13 -13
  76. package/examples/DispatchList/App.vue +10 -10
  77. package/examples/DispatchList/BaseTree.vue +13 -13
  78. package/examples/DispatchList/Init.vue +22 -22
  79. package/examples/DispatchList/Test.vue +20 -20
  80. package/examples/DispatchList/index.html +11 -11
  81. package/examples/DispatchList/main.js +18 -18
  82. package/examples/PhoneSafePlan/App.vue +36 -36
  83. package/examples/PhoneSafePlan/TestData.js +448 -448
  84. package/examples/PhoneSafePlan/comp.js +33 -33
  85. package/examples/PhoneSafePlan/index.html +17 -17
  86. package/examples/PhoneSafePlan/main.js +13 -13
  87. package/examples/SafePlan/App.vue +83 -83
  88. package/examples/SafePlan/TestData.js +448 -448
  89. package/examples/SafePlan/comp.js +1521 -1521
  90. package/examples/SafePlan/index.html +18 -18
  91. package/examples/SafePlan/main.js +13 -13
  92. package/examples/SafePlan-aode/App.vue +39 -39
  93. package/examples/SafePlan-aode/TestData.js +448 -448
  94. package/examples/SafePlan-aode/comp.js +1132 -1132
  95. package/examples/SafePlan-aode/index.html +17 -17
  96. package/examples/SafePlan-aode/main.js +13 -13
  97. package/examples/SafePlan-liaoyuan/App.vue +53 -53
  98. package/examples/SafePlan-liaoyuan/TestData.js +448 -448
  99. package/examples/SafePlan-liaoyuan/comp.js +1419 -1419
  100. package/examples/SafePlan-liaoyuan/index.html +18 -18
  101. package/examples/SafePlan-liaoyuan/main.js +13 -13
  102. package/examples/SafePlan-shaoguan/App.vue +52 -52
  103. package/examples/SafePlan-shaoguan/TestData.js +448 -448
  104. package/examples/SafePlan-shaoguan/comp.js +1190 -1190
  105. package/examples/SafePlan-shaoguan/index.html +18 -18
  106. package/examples/SafePlan-shaoguan/main.js +13 -13
  107. package/examples/SafePlan-tongchuan/App.vue +81 -81
  108. package/examples/SafePlan-tongchuan/TestData.js +448 -448
  109. package/examples/SafePlan-tongchuan/comp.js +1480 -1480
  110. package/examples/SafePlan-tongchuan/index.html +18 -18
  111. package/examples/SafePlan-tongchuan/main.js +13 -13
  112. package/examples/SafePlan-wenxi/App.vue +80 -80
  113. package/examples/SafePlan-wenxi/TestData.js +448 -448
  114. package/examples/SafePlan-wenxi/comp.js +1545 -1545
  115. package/examples/SafePlan-wenxi/index.html +18 -18
  116. package/examples/SafePlan-wenxi/main.js +13 -13
  117. package/examples/SafePlan-zhoukou/App.vue +81 -81
  118. package/examples/SafePlan-zhoukou/TestData.js +448 -448
  119. package/examples/SafePlan-zhoukou/comp.js +1525 -1525
  120. package/examples/SafePlan-zhoukou/index.html +18 -18
  121. package/examples/SafePlan-zhoukou/main.js +13 -13
  122. package/examples/SafePlanItem/App.vue +33 -33
  123. package/examples/SafePlanItem/TestData.js +448 -448
  124. package/examples/SafePlanItem/comp.js +69 -69
  125. package/examples/SafePlanItem/index.html +17 -17
  126. package/examples/SafePlanItem/main.js +15 -15
  127. package/examples/SafePlanrongcheng/App.vue +52 -52
  128. package/examples/SafePlanrongcheng/TestData.js +448 -448
  129. package/examples/SafePlanrongcheng/comp.js +1133 -1133
  130. package/examples/SafePlanrongcheng/index.html +18 -18
  131. package/examples/SafePlanrongcheng/main.js +13 -13
  132. package/examples/SafePlanrongcheng-gs/App.vue +52 -52
  133. package/examples/SafePlanrongcheng-gs/TestData.js +448 -448
  134. package/examples/SafePlanrongcheng-gs/comp.js +1132 -1132
  135. package/examples/SafePlanrongcheng-gs/index.html +18 -18
  136. package/examples/SafePlanrongcheng-gs/main.js +13 -13
  137. package/examples/SafePlanrongcheng-gssq/App.vue +52 -52
  138. package/examples/SafePlanrongcheng-gssq/TestData.js +448 -448
  139. package/examples/SafePlanrongcheng-gssq/comp.js +1135 -1135
  140. package/examples/SafePlanrongcheng-gssq/index.html +18 -18
  141. package/examples/SafePlanrongcheng-gssq/main.js +13 -13
  142. package/examples/SafePlanrongcheng-mysq/App.vue +52 -52
  143. package/examples/SafePlanrongcheng-mysq/TestData.js +448 -448
  144. package/examples/SafePlanrongcheng-mysq/comp.js +1136 -1136
  145. package/examples/SafePlanrongcheng-mysq/index.html +18 -18
  146. package/examples/SafePlanrongcheng-mysq/main.js +13 -13
  147. package/examples/Test/App.vue +35 -35
  148. package/examples/Test/TestData.js +489 -489
  149. package/examples/Test/index.html +17 -17
  150. package/examples/Test/main.js +13 -13
  151. package/examples/Test//350/216/267/345/217/226/345/217/230/351/207/217 +2 -2
  152. package/examples/UserFiles/App.vue +47 -47
  153. package/examples/UserFiles/TestData.js +448 -448
  154. package/examples/UserFiles/comp.js +227 -227
  155. package/examples/UserFiles/index.html +19 -19
  156. package/examples/UserFiles/main.js +13 -13
  157. package/home.html +16 -16
  158. package/index.html +23 -23
  159. package/oa.iml +8 -8
  160. package/package.json +1 -1
  161. package/publish.bat +7 -7
  162. package/release.bat +5 -5
  163. package/src/AndroidApp.vue +26 -26
  164. package/src/App.vue +27 -27
  165. package/src/Widget.vue +13 -13
  166. package/src/android-bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  167. package/src/android-bootstrap/less/.csscomb.json +304 -304
  168. package/src/android-bootstrap/less/.csslintrc +19 -19
  169. package/src/android-bootstrap/less/alerts.less +73 -73
  170. package/src/android-bootstrap/less/badges.less +66 -66
  171. package/src/android-bootstrap/less/bootstrap.less +56 -56
  172. package/src/android-bootstrap/less/breadcrumbs.less +26 -26
  173. package/src/android-bootstrap/less/button-groups.less +247 -247
  174. package/src/android-bootstrap/less/buttons.less +173 -173
  175. package/src/android-bootstrap/less/carousel.less +269 -269
  176. package/src/android-bootstrap/less/close.less +34 -34
  177. package/src/android-bootstrap/less/code.less +69 -69
  178. package/src/android-bootstrap/less/component-animations.less +33 -33
  179. package/src/android-bootstrap/less/dropdowns.less +216 -216
  180. package/src/android-bootstrap/less/forms.less +626 -626
  181. package/src/android-bootstrap/less/glyphicons.less +305 -305
  182. package/src/android-bootstrap/less/grid.less +84 -84
  183. package/src/android-bootstrap/less/input-groups.less +167 -167
  184. package/src/android-bootstrap/less/jumbotron.less +52 -52
  185. package/src/android-bootstrap/less/labels.less +64 -64
  186. package/src/android-bootstrap/less/list-group.less +141 -141
  187. package/src/android-bootstrap/less/media.less +66 -66
  188. package/src/android-bootstrap/less/mixins/alerts.less +14 -14
  189. package/src/android-bootstrap/less/mixins/background-variant.less +9 -9
  190. package/src/android-bootstrap/less/mixins/border-radius.less +18 -18
  191. package/src/android-bootstrap/less/mixins/buttons.less +69 -69
  192. package/src/android-bootstrap/less/mixins/center-block.less +7 -7
  193. package/src/android-bootstrap/less/mixins/clearfix.less +22 -22
  194. package/src/android-bootstrap/less/mixins/forms.less +90 -90
  195. package/src/android-bootstrap/less/mixins/gradients.less +59 -59
  196. package/src/android-bootstrap/less/mixins/grid-framework.less +92 -92
  197. package/src/android-bootstrap/less/mixins/grid.less +122 -122
  198. package/src/android-bootstrap/less/mixins/hide-text.less +21 -21
  199. package/src/android-bootstrap/less/mixins/image.less +33 -33
  200. package/src/android-bootstrap/less/mixins/labels.less +12 -12
  201. package/src/android-bootstrap/less/mixins/list-group.less +30 -30
  202. package/src/android-bootstrap/less/mixins/nav-divider.less +10 -10
  203. package/src/android-bootstrap/less/mixins/nav-vertical-align.less +9 -9
  204. package/src/android-bootstrap/less/mixins/opacity.less +8 -8
  205. package/src/android-bootstrap/less/mixins/pagination.less +24 -24
  206. package/src/android-bootstrap/less/mixins/panels.less +24 -24
  207. package/src/android-bootstrap/less/mixins/progress-bar.less +10 -10
  208. package/src/android-bootstrap/less/mixins/reset-filter.less +8 -8
  209. package/src/android-bootstrap/less/mixins/reset-text.less +18 -18
  210. package/src/android-bootstrap/less/mixins/resize.less +6 -6
  211. package/src/android-bootstrap/less/mixins/responsive-visibility.less +15 -15
  212. package/src/android-bootstrap/less/mixins/size.less +10 -10
  213. package/src/android-bootstrap/less/mixins/tab-focus.less +9 -9
  214. package/src/android-bootstrap/less/mixins/table-row.less +44 -44
  215. package/src/android-bootstrap/less/mixins/text-emphasis.less +9 -9
  216. package/src/android-bootstrap/less/mixins/text-overflow.less +8 -8
  217. package/src/android-bootstrap/less/mixins/vendor-prefixes.less +227 -227
  218. package/src/android-bootstrap/less/mixins.less +40 -40
  219. package/src/android-bootstrap/less/modals.less +151 -151
  220. package/src/android-bootstrap/less/navbar.less +660 -660
  221. package/src/android-bootstrap/less/navs.less +290 -290
  222. package/src/android-bootstrap/less/normalize.less +424 -424
  223. package/src/android-bootstrap/less/pager.less +76 -76
  224. package/src/android-bootstrap/less/pagination.less +89 -89
  225. package/src/android-bootstrap/less/panels.less +274 -274
  226. package/src/android-bootstrap/less/popovers.less +131 -131
  227. package/src/android-bootstrap/less/print.less +101 -101
  228. package/src/android-bootstrap/less/progress-bars.less +87 -87
  229. package/src/android-bootstrap/less/responsive-embed.less +35 -35
  230. package/src/android-bootstrap/less/responsive-utilities.less +194 -194
  231. package/src/android-bootstrap/less/scaffolding.less +161 -161
  232. package/src/android-bootstrap/less/tables.less +262 -262
  233. package/src/android-bootstrap/less/theme.less +291 -291
  234. package/src/android-bootstrap/less/thumbnails.less +36 -36
  235. package/src/android-bootstrap/less/tooltip.less +102 -102
  236. package/src/android-bootstrap/less/type.less +303 -303
  237. package/src/android-bootstrap/less/utilities.less +55 -55
  238. package/src/android-bootstrap/less/variables.less +896 -896
  239. package/src/android-bootstrap/less/wells.less +29 -29
  240. package/src/android.js +16 -16
  241. package/src/androidBase.js +177 -177
  242. package/src/androidTest.js +20 -20
  243. package/src/bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  244. package/src/bootstrap/less/.csscomb.json +304 -304
  245. package/src/bootstrap/less/.csslintrc +19 -19
  246. package/src/bootstrap/less/alerts.less +73 -73
  247. package/src/bootstrap/less/aofeng/animate.min.css +10 -10
  248. package/src/bootstrap/less/aofeng/standard.less +2121 -2121
  249. package/src/bootstrap/less/aofeng/themeOne/BinaryTemplate.less +686 -686
  250. package/src/bootstrap/less/aofeng/themeOne/loginStyle.less +1586 -1586
  251. package/src/bootstrap/less/aofeng/themeOne/systemStyle.less +2650 -2650
  252. package/src/bootstrap/less/aofeng/themeOne.less +14 -14
  253. package/src/bootstrap/less/aofeng/themeTwo/newStyle1.less +415 -415
  254. package/src/bootstrap/less/aofeng/themeTwo.less +3 -3
  255. package/src/bootstrap/less/badges.less +66 -66
  256. package/src/bootstrap/less/bootstrap.less +65 -65
  257. package/src/bootstrap/less/breadcrumbs.less +26 -26
  258. package/src/bootstrap/less/button-groups.less +247 -247
  259. package/src/bootstrap/less/buttons.less +172 -172
  260. package/src/bootstrap/less/carousel.less +269 -269
  261. package/src/bootstrap/less/close.less +34 -34
  262. package/src/bootstrap/less/code.less +69 -69
  263. package/src/bootstrap/less/component-animations.less +33 -33
  264. package/src/bootstrap/less/dropdowns.less +216 -216
  265. package/src/bootstrap/less/forms.less +626 -626
  266. package/src/bootstrap/less/glyphicons.less +305 -305
  267. package/src/bootstrap/less/grid.less +84 -84
  268. package/src/bootstrap/less/input-groups.less +167 -167
  269. package/src/bootstrap/less/jumbotron.less +52 -52
  270. package/src/bootstrap/less/labels.less +64 -64
  271. package/src/bootstrap/less/list-group.less +141 -141
  272. package/src/bootstrap/less/manageStyle/manageChile.less +180 -180
  273. package/src/bootstrap/less/manageStyle/manageStyle.less +1102 -1102
  274. package/src/bootstrap/less/manageStyle/safeStyle.less +498 -498
  275. package/src/bootstrap/less/media.less +66 -66
  276. package/src/bootstrap/less/mixins/alerts.less +14 -14
  277. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  278. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  279. package/src/bootstrap/less/mixins/buttons.less +69 -69
  280. package/src/bootstrap/less/mixins/center-block.less +7 -7
  281. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  282. package/src/bootstrap/less/mixins/forms.less +90 -90
  283. package/src/bootstrap/less/mixins/gradients.less +59 -59
  284. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  285. package/src/bootstrap/less/mixins/grid.less +122 -122
  286. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  287. package/src/bootstrap/less/mixins/image.less +33 -33
  288. package/src/bootstrap/less/mixins/labels.less +12 -12
  289. package/src/bootstrap/less/mixins/list-group.less +30 -30
  290. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  291. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  292. package/src/bootstrap/less/mixins/opacity.less +8 -8
  293. package/src/bootstrap/less/mixins/pagination.less +24 -24
  294. package/src/bootstrap/less/mixins/panels.less +24 -24
  295. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  296. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  297. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  298. package/src/bootstrap/less/mixins/resize.less +6 -6
  299. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  300. package/src/bootstrap/less/mixins/size.less +10 -10
  301. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  302. package/src/bootstrap/less/mixins/table-row.less +44 -44
  303. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  304. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  305. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  306. package/src/bootstrap/less/mixins.less +40 -40
  307. package/src/bootstrap/less/modals.less +151 -151
  308. package/src/bootstrap/less/navbar.less +660 -660
  309. package/src/bootstrap/less/navs.less +285 -285
  310. package/src/bootstrap/less/normalize.less +424 -424
  311. package/src/bootstrap/less/pager.less +76 -76
  312. package/src/bootstrap/less/pagination.less +89 -89
  313. package/src/bootstrap/less/panels.less +275 -275
  314. package/src/bootstrap/less/popovers.less +131 -131
  315. package/src/bootstrap/less/print.less +101 -101
  316. package/src/bootstrap/less/progress-bars.less +87 -87
  317. package/src/bootstrap/less/responsive-embed.less +35 -35
  318. package/src/bootstrap/less/responsive-utilities.less +194 -194
  319. package/src/bootstrap/less/scaffolding.less +161 -161
  320. package/src/bootstrap/less/stand.less +207 -207
  321. package/src/bootstrap/less/standard.less +503 -503
  322. package/src/bootstrap/less/systemStyle.less +860 -860
  323. package/src/bootstrap/less/tables.less +262 -262
  324. package/src/bootstrap/less/theme.less +291 -291
  325. package/src/bootstrap/less/themeOne.less +36 -36
  326. package/src/bootstrap/less/themeTwo.less +29 -29
  327. package/src/bootstrap/less/thumbnails.less +36 -36
  328. package/src/bootstrap/less/tooltip.less +102 -102
  329. package/src/bootstrap/less/type.less +303 -303
  330. package/src/bootstrap/less/utilities.less +55 -55
  331. package/src/bootstrap/less/variables.less +896 -896
  332. package/src/bootstrap/less/wells.less +29 -29
  333. package/src/components/AloneLoadParams.vue +25 -25
  334. package/src/components/CheckerCount/CheckCountAreaList.vue +306 -306
  335. package/src/components/CheckerCount/CheckCountAreaManage.vue +112 -112
  336. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  337. package/src/components/CheckerCount/ZhouKouCheckCount.vue +272 -272
  338. package/src/components/ExportExcel.vue +334 -334
  339. package/src/components/FileUpload.vue +696 -696
  340. package/src/components/Hello.vue +39 -39
  341. package/src/components/LeftTree.vue +27 -27
  342. package/src/components/Login.vue +459 -459
  343. package/src/components/Main.vue +393 -393
  344. package/src/components/Test.vue +1478 -1478
  345. package/src/components/Util/FileUpload.vue +138 -138
  346. package/src/components/Util/ImgSelfSafe.vue +126 -126
  347. package/src/components/Util/RightTreeSafe.vue +348 -348
  348. package/src/components/Util/SafecheckUpload.vue +265 -265
  349. package/src/components/Util.js +376 -376
  350. package/src/components/android/AddGas.vue +147 -147
  351. package/src/components/android/AddPlanItem.vue +412 -412
  352. package/src/components/android/AddressList.vue +61 -61
  353. package/src/components/android/AdviseCommit.vue +59 -59
  354. package/src/components/android/AndroidCheckResult.vue +181 -181
  355. package/src/components/android/AndroidDefectDeal.vue +397 -397
  356. package/src/components/android/Announcement.vue +167 -167
  357. package/src/components/android/AreaPlan.vue +503 -503
  358. package/src/components/android/AttendanceTally.vue +116 -116
  359. package/src/components/android/Blank.vue +10 -10
  360. package/src/components/android/CheckNotice.vue +89 -89
  361. package/src/components/android/CheckPlan.vue +257 -257
  362. package/src/components/android/CheckPlanDown.vue +216 -216
  363. package/src/components/android/CheckPlanItems.vue +423 -423
  364. package/src/components/android/CheckUnplanPage.vue +56 -56
  365. package/src/components/android/Checker.vue +12 -12
  366. package/src/components/android/CheckerAnnual.vue +81 -81
  367. package/src/components/android/CheckerAnnualDetail.vue +63 -63
  368. package/src/components/android/CheckerAvarta.vue +82 -82
  369. package/src/components/android/CheckerMonthly.vue +84 -84
  370. package/src/components/android/Checkpage.vue +102 -102
  371. package/src/components/android/CurrentCreate.vue +972 -972
  372. package/src/components/android/DailyworkloadQuery.vue +396 -396
  373. package/src/components/android/Defect.vue +119 -119
  374. package/src/components/android/DeviceDefect.vue +187 -187
  375. package/src/components/android/Devices.vue +327 -327
  376. package/src/components/android/DevicesItem.vue +495 -495
  377. package/src/components/android/DevicesItemm.vue +445 -445
  378. package/src/components/android/DevicesNoncivil.vue +214 -214
  379. package/src/components/android/Devicesm.vue +327 -327
  380. package/src/components/android/DoorService.vue +501 -501
  381. package/src/components/android/EquipmentInspection.vue +348 -348
  382. package/src/components/android/ExtractCheckPlan.vue +268 -268
  383. package/src/components/android/ExtractPlanItem.vue +516 -516
  384. package/src/components/android/FootprintMap.vue +120 -120
  385. package/src/components/android/HiddentroubleInvestigation.vue +192 -192
  386. package/src/components/android/LcheckUnplan.vue +108 -108
  387. package/src/components/android/LocalPagedList.js +108 -108
  388. package/src/components/android/LocalPathList.js +109 -109
  389. package/src/components/android/Login.vue +222 -222
  390. package/src/components/android/MasterMain.vue +77 -77
  391. package/src/components/android/Menu.vue +132 -132
  392. package/src/components/android/NavBottom.vue +157 -157
  393. package/src/components/android/PaperAlarm.vue +85 -85
  394. package/src/components/android/PaperAlarmNoncivil.vue +286 -286
  395. package/src/components/android/PaperCooker.vue +325 -325
  396. package/src/components/android/PaperDefect.vue +230 -230
  397. package/src/components/android/PaperDevice.vue +279 -279
  398. package/src/components/android/PaperDeviceNoncivil.vue +214 -214
  399. package/src/components/android/PaperFeedback.vue +1444 -1444
  400. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  401. package/src/components/android/PaperFurnace.vue +274 -274
  402. package/src/components/android/PaperFurnaceNoncivil.vue +203 -203
  403. package/src/components/android/PaperHeater.vue +287 -287
  404. package/src/components/android/PaperInnerPlumb.vue +171 -171
  405. package/src/components/android/PaperMessage.vue +1323 -1323
  406. package/src/components/android/PaperMessageNocivil.vue +1288 -1288
  407. package/src/components/android/PaperMeter.vue +351 -351
  408. package/src/components/android/PaperMeterNoncivil.vue +481 -481
  409. package/src/components/android/PaperPieceNoncivil.vue +142 -142
  410. package/src/components/android/PaperPlumb.vue +141 -141
  411. package/src/components/android/PaperPlumbNoncivil.vue +253 -253
  412. package/src/components/android/PaperSet.vue +1956 -1956
  413. package/src/components/android/PaperSetNoncivil.vue +1760 -1760
  414. package/src/components/android/PaperState.vue +390 -390
  415. package/src/components/android/PaperStateNoncivil.vue +383 -383
  416. package/src/components/android/PaperStateNoncivilm.vue +377 -377
  417. package/src/components/android/PaperStatem.vue +346 -346
  418. package/src/components/android/PaperUser.vue +606 -606
  419. package/src/components/android/PaperUserNoncivil.vue +424 -424
  420. package/src/components/android/PaperUserm.vue +356 -356
  421. package/src/components/android/PaperValve.vue +178 -178
  422. package/src/components/android/PaperValveNoncivil.vue +180 -180
  423. package/src/components/android/PhoneChangemeterInfo.vue +107 -107
  424. package/src/components/android/PhoneInfoTable.vue +40 -40
  425. package/src/components/android/PhoneSellInfo.vue +113 -113
  426. package/src/components/android/PhoneState.vue +157 -157
  427. package/src/components/android/PhoneUpUserinfo.vue +929 -929
  428. package/src/components/android/PhoneUserFind.vue +111 -111
  429. package/src/components/android/PlumberAnnual.vue +83 -83
  430. package/src/components/android/PlumberAnnualDetail.vue +65 -65
  431. package/src/components/android/PlumberMonthly.vue +84 -84
  432. package/src/components/android/PostMap.vue +83 -83
  433. package/src/components/android/PrearrangedPlan.vue +247 -247
  434. package/src/components/android/QueryCheckHistory.vue +122 -122
  435. package/src/components/android/QueryCheckHistoryItem.vue +62 -62
  436. package/src/components/android/RepairAreaList.vue +71 -71
  437. package/src/components/android/RepairList.vue +206 -206
  438. package/src/components/android/RepairMain.vue +60 -60
  439. package/src/components/android/RepairQuery.vue +262 -262
  440. package/src/components/android/Repairman.vue +12 -12
  441. package/src/components/android/ResAreaList.vue +158 -158
  442. package/src/components/android/RightTree.vue +174 -174
  443. package/src/components/android/SafecheckDevices.vue +1143 -1143
  444. package/src/components/android/SafecheckOrderV.vue +2408 -2408
  445. package/src/components/android/SafecheckState.vue +437 -437
  446. package/src/components/android/SafecheckUser.vue +580 -580
  447. package/src/components/android/ShebeiDevices.vue +980 -980
  448. package/src/components/android/StationMaster.vue +12 -12
  449. package/src/components/android/SwitchValve.vue +230 -230
  450. package/src/components/android/SystemSetting.vue +84 -84
  451. package/src/components/android/ToolsPage.vue +51 -51
  452. package/src/components/android/TrackState.vue +134 -134
  453. package/src/components/android/UploadPage.vue +338 -338
  454. package/src/components/android/checkPlanResult.vue +302 -302
  455. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  456. package/src/components/android/userinfo/SafecheckUserInfo.vue +611 -611
  457. package/src/components/android/wasm/PhoneSafePlan.vue +39 -39
  458. package/src/components/android/wasm/TestData.js +448 -448
  459. package/src/components/android/wasm/comp.js +33 -33
  460. package/src/components/attendance/DailyAttendance.vue +99 -99
  461. package/src/components/attendance/MonthlyAttendance.vue +194 -194
  462. package/src/components/callincheck/CallInCheckMain.vue +146 -146
  463. package/src/components/callincheck/CallInPlan.vue +148 -148
  464. package/src/components/callincheck/UserFileList.vue +155 -155
  465. package/src/components/checkAreaClassification.vue +285 -285
  466. package/src/components/checkerphonestate/Checker.vue +32 -32
  467. package/src/components/checkerphonestate/CheckerState.vue +97 -97
  468. package/src/components/checkplan/CheckDetail.vue +205 -205
  469. package/src/components/checkplan/CheckPlan.vue +59 -59
  470. package/src/components/checkplan/SelectCheckPlan.vue +224 -224
  471. package/src/components/checkplan/SelectMessage.vue +105 -105
  472. package/src/components/checkplan/checkmsg.vue +459 -459
  473. package/src/components/checkplan/checkmsgZG.vue +519 -519
  474. package/src/components/cockpit/Splash.vue +85 -85
  475. package/src/components/cockpit/SplashDetail.vue +66 -66
  476. package/src/components/createcheckplan/CreatePlan.vue +1052 -1052
  477. package/src/components/createcheckplan/CreatePlanWuan.vue +1024 -1024
  478. package/src/components/createcheckplan/DelPlanRepeat.vue +318 -318
  479. package/src/components/createcheckplan/DistributePlan.vue +62 -62
  480. package/src/components/createcheckplan/PlanList.vue +433 -433
  481. package/src/components/createcheckplan/PlanUersList.vue +137 -137
  482. package/src/components/defect/DefectDetail.vue +177 -177
  483. package/src/components/defect/DefectDetailWeixiu.vue +177 -177
  484. package/src/components/defect/DefectList.vue +489 -489
  485. package/src/components/defect/DefectListWeixiu.vue +479 -479
  486. package/src/components/defect/DefectMain.vue +63 -63
  487. package/src/components/defect/DefectMainWeixiu.vue +63 -63
  488. package/src/components/defect/DefectPaper.vue +874 -874
  489. package/src/components/defect/DefectPaperWeiXiu.vue +655 -655
  490. package/src/components/defect/ImageViewer.vue +350 -350
  491. package/src/components/defect/ImgButton.vue +118 -118
  492. package/src/components/defect/ImgsButton.vue +62 -62
  493. package/src/components/defects/AddDefectModal.vue +120 -120
  494. package/src/components/defects/AddDevice.vue +95 -95
  495. package/src/components/defects/CheckPaperItem.vue +92 -92
  496. package/src/components/defects/CheckPaperItems.vue +89 -89
  497. package/src/components/defects/CheckPaperSearch.vue +349 -349
  498. package/src/components/defects/CheckPaperSearchMain.vue +55 -55
  499. package/src/components/defects/DefectCondition.vue +180 -180
  500. package/src/components/defects/DefectModal.vue +101 -101
  501. package/src/components/defects/DefectSeting.vue +98 -98
  502. package/src/components/defects/DefectsQuery.vue +190 -190
  503. package/src/components/defects/DevicesAndItem.vue +39 -39
  504. package/src/components/defects/DevicesSeting.vue +106 -106
  505. package/src/components/equipment/BoilerUsage.vue +105 -105
  506. package/src/components/equipment/CheckRate.vue +324 -324
  507. package/src/components/equipment/CheckerRate.vue +333 -333
  508. package/src/components/equipment/CookerUsage.vue +105 -105
  509. package/src/components/equipment/DeviceUsage.vue +105 -105
  510. package/src/components/equipment/FurnaceUsage.vue +105 -105
  511. package/src/components/equipment/GasMeterUsage.vue +109 -109
  512. package/src/components/equipment/HeaterUsage.vue +105 -105
  513. package/src/components/equipment/MonthCheckRate.vue +340 -340
  514. package/src/components/filialCircle/AddCircleFiliale.vue +114 -114
  515. package/src/components/filialCircle/CircleList.vue +139 -139
  516. package/src/components/filialCircle/CircleManage.vue +69 -69
  517. package/src/components/gasusage/GasUsage.vue +126 -126
  518. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  519. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  520. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  521. package/src/components/inspections/Checked.vue +402 -402
  522. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  523. package/src/components/inspections/InsUploadPage.vue +251 -251
  524. package/src/components/inspections/InspectionList.vue +542 -542
  525. package/src/components/inspections/InspectionLists.vue +544 -544
  526. package/src/components/inspections/InspectionListss.vue +544 -544
  527. package/src/components/inspections/inspectionDevices.vue +986 -986
  528. package/src/components/inspections/inspectionFeedback.vue +720 -720
  529. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  530. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  531. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  532. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  533. package/src/components/issueplan/IssuePlanAction.vue +102 -102
  534. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  535. package/src/components/issueplan/IssuePlanQuery.vue +118 -118
  536. package/src/components/json-editor/SafeJsonEditor.vue +212 -212
  537. package/src/components/json-editor/assets/img/jsoneditor-icons.svg +893 -893
  538. package/src/components/json-editor/assets/jsoneditor-minimalist.js +9750 -9750
  539. package/src/components/json-editor/assets/jsoneditor.css +929 -929
  540. package/src/components/json-editor/assets/jsoneditor.js +36376 -36376
  541. package/src/components/json-editor/example/App.vue +53 -53
  542. package/src/components/json-editor/example/index.html +9 -9
  543. package/src/components/json-editor/example/main.js +10 -10
  544. package/src/components/json-editor/package.json +71 -71
  545. package/src/components/json-editor/vue-json-editor.vue +189 -189
  546. package/src/components/levelplan/AdjustPlan.vue +199 -199
  547. package/src/components/levelplan/CheckerLeft.vue +140 -140
  548. package/src/components/levelplan/CheckerPlanAdjust.vue +304 -304
  549. package/src/components/levelplan/CheckerRight.vue +123 -123
  550. package/src/components/map/AMap.vue +70 -70
  551. package/src/components/map/AMapTrailShow.vue +178 -178
  552. package/src/components/map/AMapTrailShowZk.vue +178 -178
  553. package/src/components/map/FootPrintList.vue +45 -45
  554. package/src/components/map/MapCriteriaData.vue +97 -97
  555. package/src/components/map/checkScreen.vue +727 -727
  556. package/src/components/metterfiles/AddUserfiles.vue +246 -246
  557. package/src/components/metterfiles/MetterFiles.vue +104 -104
  558. package/src/components/metterfiles/MetterfilesAdd.vue +168 -168
  559. package/src/components/metterfiles/MetterfilesChange.vue +162 -162
  560. package/src/components/metterfiles/UserFiles.vue +156 -156
  561. package/src/components/metterfiles/Userfileschange.vue +391 -391
  562. package/src/components/notice/NoticeForm.vue +100 -100
  563. package/src/components/notice/NoticeIssue.vue +20 -20
  564. package/src/components/notice/NoticeQuery.vue +76 -76
  565. package/src/components/paper/PaperList.vue +806 -806
  566. package/src/components/paper/PaperVerify.vue +256 -256
  567. package/src/components/paper/PicViewer.vue +18 -18
  568. package/src/components/paper/PlanChooser.vue +159 -159
  569. package/src/components/paper/RepairVerify.vue +139 -139
  570. package/src/components/paper/RepairVerifyForm.vue +76 -76
  571. package/src/components/paper/VerifyForm.vue +107 -107
  572. package/src/components/paper/filialeCheckInfo.vue +111 -111
  573. package/src/components/pc/AnnouncementPC.vue +524 -524
  574. package/src/components/pc/CheckBook.vue +67 -67
  575. package/src/components/pc/CheckBookList.vue +586 -586
  576. package/src/components/pc/CheckBookManage.vue +998 -998
  577. package/src/components/pc/CheckBookUser.vue +77 -77
  578. package/src/components/pc/DeviceChange.vue +1068 -1068
  579. package/src/components/pc/HiddenChart.vue +494 -494
  580. package/src/components/pc/NewCheckpaper.vue +1333 -1333
  581. package/src/components/pc/PaperChazhiMain.vue +570 -570
  582. package/src/components/pc/PaperDefectMain.vue +584 -584
  583. package/src/components/pc/RoleSelector.vue +125 -125
  584. package/src/components/phonestate/DailyTraffic.vue +57 -57
  585. package/src/components/phonestate/FootprintMap.vue +129 -129
  586. package/src/components/phonestate/LastKnownState.vue +74 -74
  587. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  588. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  589. package/src/components/phonestate/PostMap.vue +82 -82
  590. package/src/components/plancheck/CheckPlanAreaManage.vue +116 -116
  591. package/src/components/plancheck/CheckPlanList.vue +282 -282
  592. package/src/components/planmanage/PlanManage.vue +782 -782
  593. package/src/components/planmanage/checkPlanList.vue +341 -341
  594. package/src/components/planmanage/checkUserList.vue +728 -728
  595. package/src/components/querycheckpaper/CheckPaperList.vue +127 -127
  596. package/src/components/querycheckpaper/CheckPaperSearchUser.vue +67 -67
  597. package/src/components/querycheckpaper/CheckSearchUser.vue +1037 -1037
  598. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  599. package/src/components/querycheckpaper/PaperItems.vue +79 -79
  600. package/src/components/querycheckpaper/PaperSearch.vue +126 -126
  601. package/src/components/querycheckpaper/PaperSearchMain.vue +56 -56
  602. package/src/components/querycheckpaper/ShebeiPaperList.vue +121 -121
  603. package/src/components/querycheckpaper/ShebeiPaperSearchUser.vue +67 -67
  604. package/src/components/querycheckpaper/ShebeiSearchUser.vue +690 -690
  605. package/src/components/report/CheckPlanAreaList.vue +5 -0
  606. package/src/components/report/CheckPlanAreaManage.vue +111 -111
  607. package/src/components/report/CheckPlanUserList.vue +217 -217
  608. package/src/components/report/HiddenSituation.vue +210 -210
  609. package/src/components/report/ManageBusSummary.vue +242 -242
  610. package/src/components/report/SafePlanSale.vue +111 -111
  611. package/src/components/report/SafePlanStatistics.vue +118 -118
  612. package/src/components/rongcheng/AddPlanItem.vue +315 -315
  613. package/src/components/rongcheng/AreaPlan.vue +470 -470
  614. package/src/components/rongcheng/AspPaperFeedback.vue +1179 -1179
  615. package/src/components/rongcheng/AspPaperStatem.vue +339 -339
  616. package/src/components/rongcheng/AspiratedAreaPlan.vue +464 -464
  617. package/src/components/rongcheng/AspiratedCurrentCreate.vue +1036 -1036
  618. package/src/components/rongcheng/AspiratedDevices.vue +966 -966
  619. package/src/components/rongcheng/AspiratedOrderV.vue +2376 -2376
  620. package/src/components/rongcheng/AspiratedPaperFeedbackm.vue +1019 -1019
  621. package/src/components/rongcheng/AspiratedPaperMessage.vue +1378 -1378
  622. package/src/components/rongcheng/AspiratedPaperMessageNocivil.vue +1288 -1288
  623. package/src/components/rongcheng/AspiratedUploadPage.vue +293 -293
  624. package/src/components/rongcheng/AspiratedUserInfo.vue +399 -399
  625. package/src/components/rongcheng/CheckCurrentCreate.vue +1046 -1046
  626. package/src/components/rongcheng/CheckPaperList.vue +134 -134
  627. package/src/components/rongcheng/CheckPaperSearchUser.vue +55 -55
  628. package/src/components/rongcheng/CheckPaperSearchUserNo.vue +55 -55
  629. package/src/components/rongcheng/CheckSearchUser.vue +826 -826
  630. package/src/components/rongcheng/CheckSearchUserNo.vue +757 -757
  631. package/src/components/rongcheng/DefectList.vue +560 -560
  632. package/src/components/rongcheng/DefectPaper.vue +638 -638
  633. package/src/components/rongcheng/PaperFeedback.vue +1318 -1318
  634. package/src/components/rongcheng/PaperListAJ.vue +501 -501
  635. package/src/components/rongcheng/PaperListNPAJ.vue +498 -498
  636. package/src/components/rongcheng/PaperListNPSQ.vue +485 -485
  637. package/src/components/rongcheng/PaperListSQ.vue +483 -483
  638. package/src/components/rongcheng/PaperMessage.vue +1186 -1186
  639. package/src/components/rongcheng/PaperMessageNocivil.vue +1211 -1211
  640. package/src/components/rongcheng/PaperStateNoncivilm.vue +366 -366
  641. package/src/components/rongcheng/PaperStatem.vue +343 -343
  642. package/src/components/rongcheng/PhoneDevicesInfo.vue +233 -233
  643. package/src/components/rongcheng/SafecheckDevices.vue +998 -998
  644. package/src/components/rongcheng/SafecheckOrderV.vue +2476 -2476
  645. package/src/components/rongcheng/SafecheckOrderVCli.vue +2594 -2594
  646. package/src/components/rongcheng/SafecheckUserInfo.vue +439 -439
  647. package/src/components/rongcheng/UploadPage.vue +328 -328
  648. package/src/components/rongcheng/checkerplan/SelectCheckPlan.vue +285 -285
  649. package/src/components/rongcheng/report/CheckPlanAreaList.vue +419 -419
  650. package/src/components/rongcheng/report/CheckPlanUserList.vue +228 -228
  651. package/src/components/safecheck/common/TabButton.vue +157 -157
  652. package/src/components/safecheck/common/Tabs.vue +67 -67
  653. package/src/components/safecheck/queryManage/CheckBookAll.vue +71 -71
  654. package/src/components/safecheck/queryManage/SafeCheckManage.vue +88 -88
  655. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  656. package/src/components/sendsingle/onlineChangeMeter.vue +658 -658
  657. package/src/components/sendsingle/onlineoperation.vue +411 -411
  658. package/src/components/sendsingle/onlinequeryuser.vue +363 -363
  659. package/src/components/shaoguan/CheckPlanUserList.vue +119 -119
  660. package/src/components/shaoguan/DefectDetail.vue +177 -177
  661. package/src/components/shaoguan/DefectList.vue +473 -473
  662. package/src/components/shaoguan/DefectMain.vue +53 -53
  663. package/src/components/shaoguan/DefectPaper.vue +217 -217
  664. package/src/components/shaoguan/PaperList.vue +533 -533
  665. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  666. package/src/components/task/RepairAnnual.vue +79 -79
  667. package/src/components/task/RepairAnnualDetail.vue +49 -49
  668. package/src/components/task/RepairMonthly.vue +91 -91
  669. package/src/components/task/TaskAnnual.vue +77 -77
  670. package/src/components/task/TaskAnnualDetail.vue +47 -47
  671. package/src/components/task/TaskMonthly.vue +89 -89
  672. package/src/components/tongcheng/AreaPlan.vue +458 -458
  673. package/src/components/tongcheng/CurrentCreate.vue +625 -625
  674. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  675. package/src/components/tongcheng/PaperMessage.vue +1270 -1270
  676. package/src/components/tongcheng/PaperMessageNocivil.vue +1228 -1228
  677. package/src/components/tongcheng/PaperSet.vue +1958 -1958
  678. package/src/components/tongcheng/PaperUser.vue +533 -533
  679. package/src/components/userfile/InfoModifyModal.vue +122 -122
  680. package/src/components/userfile/MeterFile.vue +145 -145
  681. package/src/components/userfile/MeterModify.vue +46 -46
  682. package/src/components/userfile/UserFile.vue +118 -118
  683. package/src/components/userfile/UserInfoAudit.vue +252 -252
  684. package/src/components/userfile/UserfileChange.vue +277 -277
  685. package/src/components/userfile/UserinfoModify.vue +117 -117
  686. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  687. package/src/components/userfileaudit/UserFileaudit.vue +81 -81
  688. package/src/components/userfileaudit/UserfileChangeaudit.vue +239 -239
  689. package/src/expandcss.less +571 -571
  690. package/src/expandcssAndroid.less +520 -520
  691. package/src/filiale/ALshan/pc/CheckSearchUser.vue +927 -927
  692. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +473 -473
  693. package/src/filiale/ALshan/pc.js +15 -15
  694. package/src/filiale/Util.js +325 -325
  695. package/src/filiale/huatong/android/SafecheckDevices.vue +928 -928
  696. package/src/filiale/huatong/android/SafecheckOrderV.vue +2398 -2398
  697. package/src/filiale/huatong/android.js +14 -14
  698. package/src/filiale/huatong/pc.js +13 -13
  699. package/src/filiale/liaoyuan/android/SafecheckDevices.vue +928 -928
  700. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2383 -2383
  701. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +550 -550
  702. package/src/filiale/liaoyuan/android.js +14 -14
  703. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +483 -483
  704. package/src/filiale/liaoyuan/pc/DefectPaperWeiXiu.vue +975 -975
  705. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  706. package/src/filiale/liaoyuan/pc/PaperList.vue +657 -657
  707. package/src/filiale/liaoyuan/pc.js +15 -15
  708. package/src/filiale/lixian/android/SafecheckDevices.vue +1022 -1022
  709. package/src/filiale/lixian/android/SafecheckOrderV.vue +2403 -2403
  710. package/src/filiale/lixian/android/SafecheckUserInfo.vue +586 -586
  711. package/src/filiale/lixian/android.js +14 -14
  712. package/src/filiale/lixian/pc/CheckPlanAreaList.vue +461 -461
  713. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  714. package/src/filiale/lixian/pc/PaperChazhiMain.vue +607 -607
  715. package/src/filiale/lixian/pc/PaperDefectMain.vue +617 -617
  716. package/src/filiale/lixian/pc/PaperList.vue +686 -686
  717. package/src/filiale/lixian/pc.js +22 -22
  718. package/src/filiale/rongchuang/pc/checkUserList.vue +594 -594
  719. package/src/filiale/rongchuang/pc.js +13 -13
  720. package/src/filiale/shimen/android/CurrentCreate.vue +979 -979
  721. package/src/filiale/shimen/android/PaperFeedback.vue +1341 -1341
  722. package/src/filiale/shimen/android/PhoneSellInfo.vue +88 -88
  723. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  724. package/src/filiale/shimen/android.js +12 -12
  725. package/src/filiale/shimen/pc/CheckPlanAreaList.vue +463 -463
  726. package/src/filiale/shimen/pc/CheckSearchUser.vue +927 -927
  727. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  728. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  729. package/src/filiale/shimen/pc/PaperDefectMain.vue +656 -656
  730. package/src/filiale/shimen/pc/PaperList.vue +613 -613
  731. package/src/filiale/shimen/pc/checkmsg.vue +248 -248
  732. package/src/filiale/shimen/pc.js +21 -21
  733. package/src/filiale/tongchuan/android/PaperFeedback.vue +1350 -1350
  734. package/src/filiale/tongchuan/android/SafecheckDevices.vue +1112 -1112
  735. package/src/filiale/tongchuan/android/SafecheckOrderV.vue +2575 -2575
  736. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +640 -640
  737. package/src/filiale/tongchuan/android/UploadPage.vue +285 -285
  738. package/src/filiale/tongchuan/android.js +13 -13
  739. package/src/filiale/tongchuan/pc/CheckPlanUserList.vue +245 -245
  740. package/src/filiale/tongchuan/pc/CheckSearchUser.vue +956 -956
  741. package/src/filiale/tongchuan/pc/DefectPaper.vue +764 -764
  742. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +509 -509
  743. package/src/filiale/tongchuan/pc/NewCheckpaper.vue +1267 -1267
  744. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +634 -634
  745. package/src/filiale/tongchuan/pc/PaperList.vue +677 -677
  746. package/src/filiale/tongchuan/pc/checkUserList.vue +593 -593
  747. package/src/filiale/tongchuan/pc.js +21 -21
  748. package/src/filiale/wenxi/android/CurrentCreate.vue +1047 -1047
  749. package/src/filiale/wenxi/android/PaperFeedback.vue +1378 -1378
  750. package/src/filiale/wenxi/android/SafecheckDevices.vue +1053 -1053
  751. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2472 -2472
  752. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +584 -584
  753. package/src/filiale/wenxi/android/UploadPage.vue +285 -285
  754. package/src/filiale/wenxi/android.js +14 -14
  755. package/src/filiale/wenxi/pc/DefectPaper.vue +662 -662
  756. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1169 -1169
  757. package/src/filiale/wenxi/pc/PaperDefectMain.vue +634 -634
  758. package/src/filiale/wenxi/pc/PaperList.vue +860 -860
  759. package/src/filiale/wenxi/pc/checkmsg.vue +302 -302
  760. package/src/filiale/wenxi/pc.js +16 -16
  761. package/src/filiale/wuan/android/AreaPlan.vue +513 -513
  762. package/src/filiale/wuan/android/CurrentCreate.vue +985 -985
  763. package/src/filiale/wuan/android/CurrentCreateSheBei.vue +999 -999
  764. package/src/filiale/wuan/android/SafecheckDevices.vue +1150 -1150
  765. package/src/filiale/wuan/android/SafecheckOrderV.vue +2237 -2237
  766. package/src/filiale/wuan/android/SafecheckUserInfo.vue +571 -571
  767. package/src/filiale/wuan/android.js +17 -17
  768. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  769. package/src/filiale/wuan/pc/DefectPaperWeiXiu.vue +514 -514
  770. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  771. package/src/filiale/wuan/pc/PaperList.vue +628 -628
  772. package/src/filiale/wuan/pc.js +19 -19
  773. package/src/filiale/wuhai/android/AreaPlan.vue +529 -529
  774. package/src/filiale/wuhai/android/PaperFeedback.vue +1350 -1350
  775. package/src/filiale/wuhai/android.js +12 -12
  776. package/src/filiale/wuhai/pc/checkUserList.vue +594 -594
  777. package/src/filiale/wuhai/pc.js +13 -13
  778. package/src/filiale/zhongsheng/android/PaperFeedback.vue +1341 -1341
  779. package/src/filiale/zhongsheng/android/PhoneUpUserinfo.vue +926 -926
  780. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2447 -2447
  781. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +591 -591
  782. package/src/filiale/zhongsheng/android.js +17 -17
  783. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  784. package/src/filiale/zhongsheng/pc/DefectPaperWeiXiu.vue +511 -511
  785. package/src/filiale/zhongsheng/pc/InfoModifyModal.vue +123 -123
  786. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1308 -1308
  787. package/src/filiale/zhongsheng/pc/UserInfoAudit.vue +252 -252
  788. package/src/filiale/zhongsheng/pc/UserinfoModify.vue +121 -121
  789. package/src/filiale/zhongsheng/pc.js +15 -15
  790. package/src/filiale/zhoukou/android/AndroidDefectDeal.vue +408 -408
  791. package/src/filiale/zhoukou/android/AreaPlan.vue +543 -543
  792. package/src/filiale/zhoukou/android/CurrentCreate.vue +1014 -1014
  793. package/src/filiale/zhoukou/android/PaperFeedback.vue +1367 -1367
  794. package/src/filiale/zhoukou/android/PhoneUpUserinfo.vue +957 -957
  795. package/src/filiale/zhoukou/android/SafecheckDevices.vue +1174 -1174
  796. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  797. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  798. package/src/filiale/zhoukou/android/UploadPage.vue +301 -301
  799. package/src/filiale/zhoukou/android.js +18 -18
  800. package/src/filiale/zhoukou/pc/CheckSearchUser.vue +923 -923
  801. package/src/filiale/zhoukou/pc/PaperDefectMain.vue +531 -531
  802. package/src/filiale/zhoukou/pc.js +15 -15
  803. package/src/index.js +17 -17
  804. package/src/main.js +4 -4
  805. package/src/plugins/EmojiData.js +514 -514
  806. package/src/plugins/GerJsonConfig.js +59 -59
  807. package/src/plugins/GerJsonObjectConfig.js +44 -44
  808. package/src/plugins/LoadData.js +10 -10
  809. package/src/plugins/LoadParams.js +24 -24
  810. package/src/plugins/LocalPagedList.js +108 -108
  811. package/src/plugins/LocalPathList.js +109 -109
  812. package/src/rongcheng-android.js +193 -193
  813. package/src/rongcheng.js +304 -304
  814. package/src/safecheck-android.js +225 -225
  815. package/src/safecheck.js +723 -723
  816. package/src/shaoguan-android.js +176 -176
  817. package/src/shaoguan.js +276 -276
  818. package/src/stores/AppData.js +46 -46
  819. package/src/stores/wxconfig.js +10 -10
  820. package/src/tongchengsafe-android.js +162 -162
  821. package/src/tongchengsafecheck.js +267 -267
  822. package/src/utils/GerJsonObjectConfig.js +51 -51
  823. package/src/utils/LdapHelper.js +99 -99
  824. package/src/utils/getNowDate.js +33 -33
  825. package/test/SearchList.test.js +14 -14
  826. package/test/e2e/custom-assertions/elementCount.js +26 -26
  827. package/test/e2e/nightwatch.conf.js +40 -40
  828. package/test/e2e/runner.js +30 -30
  829. package/test/e2e/specs/test.js +13 -13
  830. package/test/unit/.eslintrc +5 -5
  831. package/test/unit/TestUtil.js +62 -62
  832. package/test/unit/context.html +20 -20
  833. package/test/unit/index.js +13 -13
  834. package/test/unit/init.js +11 -11
  835. package/test/unit/karma.conf.js +53 -53
  836. package/test/unit/specs/Devices.spec.js +18 -18
  837. package/test/unit/specs/getArrobjconfig.spec.js +104 -104
  838. package/test/unit/specs/getobjconfig.spec.js +37 -37
  839. package/test/unit/specs/phonetest/phonesafecheck.spec.js +23 -23
  840. package/test/unit/specs/safePlanItem.spec.js +30 -30
  841. package/test/unit/specs/safecheck-android.spec.js +7 -7
  842. package/test/unit/specs/safecheck.spec.js +127 -127
  843. package/yarn-error.log +140 -140
@@ -1,1444 +1,1444 @@
1
- <template>
2
- <form novalidate class="form-horizontal" style="width: 95%;margin: auto">
3
- <div class="form-group col-md-12 col-sm-12 col-xs-12" :class="style__">
4
- <div class="form-group col-md-12 col-sm-12 col-xs-12">
5
- <label class="control-label font text-left col-md-4 col-xs-4">备注</label>
6
- <div class="col-md-12 col-sm-12 col-xs-12">
7
- <textarea v-model="paper.f_repair_approved_note" class="form-control"></textarea>
8
- </div>
9
- </div>
10
- </div>
11
- <div class="form-group col-sm-12 col-xs-12 col-md-12 info" :class="style__">
12
- <div class="text-center">
13
- <label class="font">总体安检照片请依次拍摄:</label>
14
- </div>
15
- <div class="col-md-12 col-sm-12 col-xs-12">
16
- <ol class="showIi">
17
- <li>1.燃气设施全景</li>
18
- <li>2.燃气表照片</li>
19
- <li>3.灶具照片</li>
20
- <li>4.其他照片</li>
21
- </ol>
22
- </div>
23
- </div>
24
- <div class="form-group col-sm-12 col-xs-12 col-md-12 " :class="style__">
25
- <label class="text-left font">总体安检照片</label>
26
-
27
- <div class="auto" :class="style__">
28
- <div class="panel" style="padding: 10px 10px 5px 10px;">
29
- <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
30
- <div class="row" style="height: 240px;overflow: scroll;top: 1px" >
31
- <div class="col-xs-4 col-sm-3 col-md-2" style="margin-bottom: 35px" v-for="(index,img) in paper.f_overall_imgs">
32
- <img-self :src="img.f_overall_path" alt="总体安检照片" :width="140" :height="170"></img-self>
33
- <img src="../../assets/删除.png" @click="delfile('f_overall_path', img.f_overall_path,index)" style="width: 15px;margin-top: -80px" alt="">
34
- </div>
35
- </div>
36
- <div class="row text-right div-photo">
37
- <button type="button" name="button" class="btn btn-photo" @click="takePic('f_overall_path', '总体安检照片')">拍照</button>
38
- <!--<button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_overall_path', '总体安检照片1')">拍照</button>-->
39
- <!--&nbsp;&nbsp;&nbsp;&nbsp;<img src="../../../assets/remove.png" :class="style__" @click="delfile('f_overall_path', img.f_overall_path)" style="width: 25%;"></img>-->
40
- </div>
41
- </div>
42
- </div>
43
- </div>
44
- </div>
45
- <div class="form-group col-sm-12 col-xs-12 col-md-12 " :class="style__">
46
- <label class="text-left font">总体隐患照片</label>
47
-
48
- <div class="auto" :class="style__">
49
- <div class="panel" style="padding: 10px 10px 5px 10px;">
50
- <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
51
- <div class="row" style="height: 240px;overflow: scroll;top: 1px" >
52
- <div class="col-xs-4 col-sm-3 col-md-2" style="margin-bottom: 35px" v-for="(index,img) in defectImgs">
53
- <img-self :src="img" alt="总体隐患照片" :width="140" :height="170"></img-self>
54
- <!-- <img src="../../assets/删除.png" @click="delfile('f_overall_path', img.f_overall_path,index)" style="width: 15px;margin-top: -80px" alt="">-->
55
- </div>
56
- </div>
57
- <!-- <div class="row text-right div-photo">-->
58
- <!-- <button type="button" name="button" class="btn btn-photo" @click="takePic('f_overall_path', '总体安检照片')">拍照</button>-->
59
- <!-- &lt;!&ndash;<button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_overall_path', '总体安检照片1')">拍照</button>&ndash;&gt;-->
60
- <!-- &lt;!&ndash;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../../../assets/remove.png" :class="style__" @click="delfile('f_overall_path', img.f_overall_path)" style="width: 25%;"></img>&ndash;&gt;-->
61
- <!-- </div>-->
62
- </div>
63
- </div>
64
- </div>
65
- </div>
66
- <div class="form-group col-sm-12 col-xs-12 col-md-12 info" :class="style__">
67
- <div class="text-center">
68
- <label class="font">隐患汇总:</label>
69
- </div>
70
- <div class="col-md-12 col-sm-12 col-xs-12">
71
- <ol class="showIi">
72
- <li v-for="item in defectReason">{{ item.deviceitem }}</li>
73
- </ol>
74
- </div>
75
- </div>
76
- <div class="form-group col-sm-12 col-xs-12 col-md-12 info" :class="style__">
77
- <div class="text-center">
78
- <label class="font">整改建议汇总:</label>
79
- </div>
80
- <div class="col-md-12 col-sm-12 col-xs-12">
81
- <ol class="showIi">
82
- <li v-for="item in defectToolTip">{{ item }}</li>
83
- </ol>
84
- </div>
85
- </div>
86
-
87
- <!--<div class="form-group col-sm-12">-->
88
- <!--<label class="text-left font">总体安检照片2</label>-->
89
- <!--<div class="auto">-->
90
- <!--<div class="panel">-->
91
- <!--<div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">-->
92
- <!--<div class="row" style="height: 240px;overflow: scroll;top: 1px">-->
93
- <!--<div class="col-sm-4">-->
94
- <!--<img-self :src="paper.f_overall2_path" alt="总体安检照片2" width="150" height="200"></img-self>-->
95
- <!--</div>-->
96
- <!--</div>-->
97
- <!--<div class="row text-right div-photo">-->
98
- <!--<button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_overall2_path', '总体安检照片2')">拍照</button>-->
99
- <!--&nbsp;&nbsp;&nbsp;&nbsp;<img src="../../../assets/remove.png" :class="style__" @click="delfile('f_overall2_path', paper.f_overall2_path)" style="width: 25%;"></img>-->
100
- <!--</div>-->
101
- <!--</div>-->
102
- <!--</div>-->
103
- <!--</div>-->
104
- <!--</div>-->
105
- <div class="form-group col-sm-12 col-xs-12 col-md-12 " :class="style__">
106
- <input type="checkbox" v-model="paper.f_read_instructions"/><label class="text-left font">我已阅读须知内容</label>
107
-
108
- </div>
109
- <div class="form-group col-sm-12 col-xs-12 col-md-12 " :class="style__">
110
- <label class="text-left font">用户签名</label>
111
- <div class="auto">
112
- <div class="panel">
113
- <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
114
- <div class="row" style="height: 240px;overflow: scroll;top: 1px">
115
- <div class="col-sm-4">
116
- <img :class="style__" :src="paper.f_sign_path" :width="200" :height="150" />
117
- </div>
118
- </div>
119
- <div class="row text-right div-photo">
120
- <button type="button" name="button" class="btn btn-primary btn-photo" @click="sign">签名</button>
121
- </div>
122
- </div>
123
- </div>
124
- </div>
125
- </div>
126
- <div class="form-group col-sm-12 col-xs-12 col-md-12 " :style="timeSet(this.isneedDate)?'':'display:none'">
127
- <label>请输入超期原因:</label><br/>
128
- <textarea style="width: 100%;" v-model="paper.f_exceed_reason"></textarea>
129
- </div>
130
- <div class="form-group col-md-12 col-sm-12 col-xs-12" :class="style__">
131
- <div class="col-xs-6 col-sm-6">
132
- <input type="checkbox" v-model="backlistisselect" :readonly="enabled"/><label class="text-left font" >限制该用户购气</label>
133
- </div>
134
- <div class="col-xs-6 col-sm-6">
135
- <input type="checkbox" v-model="deletebacklistisselect" :readonly="deleteenabled"/><label class="text-left font" >取消该用户购气</label>
136
- </div>
137
- </div>
138
- <div class="form-group col-md-12 col-sm-12 col-xs-12" :class="style__" v-if="Vue.$appdata.getParam('安检天然气安全使用须知检查')=='是'">
139
- <div class="col-xs-12 col-sm-12">
140
- <input type="checkbox" v-model="paper.f_gas_guidelines" /><label class="text-left font" >天然气安全使用须知</label>
141
- </div>
142
- <div class="col-xs-12 col-sm-12">
143
- <input type="checkbox" v-model="paper.f_safety_warning" /><label class="text-left font" >天然气室内使用安全警示</label>
144
- </div>
145
- <div class="col-xs-12 col-sm-12">
146
- <input type="checkbox" v-model="paper.f_gas_manual" /><label class="text-left font" >安全用气手册</label>
147
- </div>
148
- </div>
149
- <div class="form-group col-md-12 col-sm-12 col-xs-12" :class="style__">
150
- <div class="form-group col-md-12 col-sm-12 col-xs-12">
151
- <input type="checkbox" v-model="paper.f_defect_notified" class="showIi" />安检通知书/隐患整改通知书
152
- </div>
153
- <div class="form-group col-md-12 col-sm-12 col-xs-12" v-if="paper.f_defect_notified">
154
- <div class="form-group col-md-12 col-sm-12 col-xs-12">
155
- <button type="button" @click="print()">打印隐患整改单</button>
156
- </div>
157
- <div class="form-group col-md-12 col-sm-12 col-xs-12">
158
- <label class="text-left font">安检通知书/隐患整改通知书照片(要求能清晰反应安检通知单和用户签字内容):</label>
159
- <div class="auto" >
160
- <div class="panel" style="padding: 10px 10px 5px 10px;">
161
- <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
162
- <div class="row" style="height: 240px;overflow: scroll;top: 1px">
163
- <div class="col-sm-4">
164
- <img-self :src="paper.f_notified_path" alt="安检通知书/隐患整改通知书照片" width="150" height="200"></img-self>
165
- </div>
166
- </div>
167
- <div class="row text-right div-photo">
168
- <button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_notified_path', '安检通知书/隐患整改通知书照片')">拍照</button>
169
- &nbsp;&nbsp;&nbsp;&nbsp;<img src="../../assets/remove.png" :class="style__" @click="delfile('f_notified_path', this.paper.f_notified_path)" style="width: 25%;"></img>
170
- </div>
171
- </div>
172
- </div>
173
- </div>
174
- </div>
175
- </div>
176
- <div class="form-group col-md-12 col-sm-12 col-xs-12">
177
- <div class="row">
178
- <label class="text-left">请对我们的服务做出评价:</label>
179
- </div>
180
- <div class="col-xs-4 col-sm-4" v-for="item in radios">
181
- <input v-model="paper.f_client_evaluation" :value="item.label" :checked='item.isChecked' @click="check(item.value)" type="radio">{{item.label}}
182
- </div>
183
-
184
- <!--<div class="col-sm-4">-->
185
- <!--<radio-group :value.sync="paper.f_client_evaluation" type="success" buttons="false">-->
186
- <!--<radio value="满意">满意</radio>-->
187
- <!--<radio value="基本满意">基本满意</radio>-->
188
- <!--<radio value="不满意">不满意</radio>-->
189
- <!--</radio-group>-->
190
- <!--</div>-->
191
- </div>
192
-
193
- <div class="form-group col-md-12 col-sm-12 col-xs-12" v-if="isRecodr=='false'">
194
- <label class="text-left font">反馈录音:</label>
195
- <div class="col-md-12 col-sm-12 col-xs-12">
196
- <button type="button" name="button" class="btn btn-primary btn-voice" @click="record">
197
- <img src="../../assets/录音.png" style="width: 14%;">
198
- <span v-if="!paper.f_recording1_path">开始录音</span>
199
- <span v-if="paper.f_recording1_path">已录音</span>
200
- </button>
201
- &nbsp;&nbsp;&nbsp;&nbsp;<img src="../../assets/remove.png" style="width: 15px;" :class="style__" @click="delAudioFile('f_recording1_path', paper.f_recording1_path)"></img>
202
- </div>
203
- </div>
204
-
205
- <div v-if="false">
206
- <div class="text-center form-group col-md-12 col-sm-12 col-xs-12">
207
- <button style="width: 30%;margin:3%;margin-bottom: 0%" type="button" v-show="$parent.$parent.actionEnabled && upload_state !='已传' &&(paper.f_complete != '已完成' || paper.back_f_entry_status != '入户') " class="btn save-btn" @click="$parent.$parent.save('temp')">临时保存</button>
208
- <button style="width: 30%;margin:3%;margin-bottom: 0%" type="button" v-show="$parent.$parent.actionEnabled && upload_state !='已传' && (paper.f_complete != '已完成' || paper.back_f_entry_status != '入户')" class="btn save-btn " @click="$parent.$parent.save('finish')">完成安检</button>
209
- </div>
210
- <div class="text-center form-group col-md-12 col-sm-12 col-xs-12">
211
- <button style="width: 30%;margin:3%;margin-bottom: 0%;margin-top: 0%" id="upload" type="button" v-show="$parent.$parent.actionEnabled && upload_state !='已传' && (paper.f_complete != '已完成' || paper.back_f_entry_status != '入户')" class="btn upload-btn " @click="$parent.$parent.uploadCheckPaper" >上传</button>
212
- <button style="width: 30%;margin:3%;margin-bottom: 0%;margin-top: 0%" v-if="(safeCheckToRepair == true || safeCheckToRepair == 'true') && $parent.$parent.actionEnabled" class="btn repair-btn btn-warning " type="button" @click="showToRepair">转维修</button> </div>
213
- </div>
214
-
215
- </div>
216
- </form>
217
- <!-- <modal :show.sync="showCheckToRepair" v-ref:modal :backdrop="isback">-->
218
- <!-- <div slot="modal-header" class="modal-header">-->
219
- <!-- <h4 class="modal-title">-->
220
- <!-- 安检转维修-->
221
- <!-- </h4>-->
222
- <!-- </div>-->
223
- <!-- <div slot="modal-body" class="modal-body">-->
224
- <!-- <div v-if="showrepair">-->
225
- <!-- <div class="row">-->
226
- <!-- <label class="col-xs-4 col-md-4 control-label text-left">派单方式</label>-->
227
- <!-- <div class="col-xs-8 col-md-8">-->
228
- <!-- <label v-for="handling1 in handling" >-->
229
- <!-- <input type="radio"-->
230
- <!-- v-model="meading"-->
231
- <!-- value="{{handling1.label}}">-->
232
- <!-- {{handling1.label}}-->
233
- <!-- </label>-->
234
- <!-- </div>-->
235
- <!-- </div>-->
236
- <!-- <div class="row" v-if="meading == '转站点'">-->
237
- <!-- <label class="col-xs-4 col-md-4 control-label font text-left" for="f_reciever">站点</label>-->
238
- <!-- &lt;!&ndash;<input type="text" v-show="false" v-model="serviceacitivity.f_reciever"&ndash;&gt;-->
239
- <!-- &lt;!&ndash;v-validate:f_reciever='{ required: true }'>&ndash;&gt;-->
240
- <!-- <div class="col-xs-8 col-md-8">-->
241
- <!-- <right-tree @ready="onReady" islist :Url="Url" :userid="userid" :source="source" v-on:re-res="reres" :textContent="选择站点管理员" :selectData="" v-ref:f_reciever>-->
242
- <!-- </right-tree>-->
243
- <!-- </div>-->
244
- <!-- </div>-->
245
-
246
- <!-- <div class="row" style="margin-top: 6px" v-if="meading == '转维修员'">-->
247
- <!-- <label class="col-xs-4 col-md-4 control-label font text-left">维修人</label>-->
248
- <!-- <div class="col-xs-8">-->
249
- <!-- <v-select :value="$parent.$parent.model.serviceacitivity[0].f_reciever" :value-single="true"-->
250
- <!-- :options='f_repair_person' placeholder='请选择维修员'-->
251
- <!-- close-on-select v-on:change="repiarmancg"></v-select>-->
252
- <!-- </div>-->
253
-
254
- <!-- </div>-->
255
- <!-- <div class="row" style="margin-top: 6px">-->
256
- <!-- <label for="f_repair" class="col-xs-4 col-md-4 control-label font text-left">报修类型</label>-->
257
- <!-- <div class="col-xs-8 col-md-8">-->
258
- <!-- <v-select :value.sync="$parent.$parent.model.f_repairtype" :value-single="true"-->
259
- <!-- :options='repairstypes' placeholder='报修类型'-->
260
- <!-- close-on-select>-->
261
- <!-- </v-select>-->
262
- <!-- </div>-->
263
- <!-- </div>-->
264
-
265
- <!-- <div class="row" style="margin-top: 6px">-->
266
- <!-- <label class="control-label font text-left col-md-4 col-xs-4">备注</label>-->
267
- <!-- <div class="col-xs-8 col-md-8">-->
268
- <!-- <input type="text" v-model="$parent.$parent.model.f_remarks"/>-->
269
- <!-- </div>-->
270
-
271
- <!-- </div>-->
272
-
273
- <!-- </div>-->
274
- <!-- <div v-if="!showrepair">-->
275
- <!-- 暂无隐患设备信息-->
276
- <!-- </div>-->
277
- <!-- </div>-->
278
- <!-- <div slot="modal-footer" class="modal-footer">-->
279
- <!-- <button type="button" class="btn btn-default" @click="uploadPaper()">确定</button>-->
280
- <!-- <button type="button" class="btn btn-default" @click="undo()">取消</button>-->
281
- <!-- </div>-->
282
- <!-- </modal>-->
283
- <!--拉黑框-->
284
- <modal :show.sync="showmodel" v-ref:modal>
285
- <div slot="modal-header" class="modal-header">
286
- <h4 class="modal-title">
287
- 限制用户购气
288
- </h4>
289
- </div>
290
- <div slot="modal-body" class="modal-body">
291
- <!-- <div class="row" style="margin-top: 6px">-->
292
- <!-- <label style="color: red;">注:当前页面无法取消对用户的限制购气</label>-->
293
- <!-- </div>-->
294
- <div class="row" style="margin-top: 6px">
295
- <textarea id="el_ca_tx" v-model.trim="cause" style="border-radius:4px;width: 100%;" placeholder="请输入限制用户购气原因" >
296
- </textarea>
297
- </div>
298
- </div>
299
- <div slot="modal-footer" class="modal-footer">
300
- <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="backlist()">确认</button>
301
- <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="cancel()">取消</button>
302
- </div>
303
- </modal>
304
-
305
- <modal :show.sync="showmodelthree" v-ref:modal>
306
- <div slot="modal-header" class="modal-header">
307
- <h4 class="modal-title">
308
- 取消限制用户购气
309
- </h4>
310
- </div>
311
- <div slot="modal-body" class="modal-body">
312
- <!-- <div class="row" style="margin-top: 6px">-->
313
- <!-- <label style="color: red;">注:当前页面无法取消对用户的限制购气</label>-->
314
- <!-- </div>-->
315
- <div class="row" style="margin-top: 6px">
316
- <textarea id="el_ca_txt" v-model.trim="deletecause" style="border-radius:4px;width: 100%;" placeholder="请输入取消限制用户购气原因" >
317
- </textarea>
318
- </div>
319
- </div>
320
- <div slot="modal-footer" class="modal-footer">
321
- <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="deletebacklist()">确认</button>
322
- <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="deletecancel()">取消</button>
323
- </div>
324
- </modal>
325
- </template>
326
-
327
- <script>
328
- import Vue from 'vue'
329
- import * as Util from '../Util'
330
- import { HttpResetClass } from 'vue-client'
331
- import RadioGroup from 'vue-client/src/vue-strap/src/radioGroup'
332
- import Radio from 'vue-client/src/vue-strap/src/radioBtn'
333
- import co from 'co'
334
-
335
- // let getRepairParam = function * (self){
336
- // let data = {
337
- // $parent.$parent.model: self.$parent.$parent.model, loginUser: {
338
- // name: self.role == 'view'?self.$login.f.name:Vue.user.name,
339
- // ename: self.role == 'view'?self.$login.f.ename:Vue.user.ename
340
- // }, user: self.user, callObj: self.callObj
341
- // }
342
- // if(self.$parent.$parent.meading == '转维修员'){
343
- // data.toRepair = '一级派单'
344
- // }
345
- // data.$parent.$parent.model.f_attendant = data.loginUser.name
346
- // //console.log('===================')
347
- // //console.log(data)
348
- // let res
349
- // let errString = self.$parent. $parent.errorVerify()
350
- // if(errString){
351
- // //console.log(errString)
352
- // if (Vue.android)
353
- // self.undo()
354
- // this.$showMessage(errString)
355
- // return
356
- // } else {
357
- // if(self.role == 'inspect'){
358
- // if(self.$parent.$parent.meading == '转维修员' && (self.$parent.$parent.model.serviceacitivity[0].f_reciever == '' || self.$parent.$parent.model.serviceacitivity[0].f_reciever == undefined)){
359
- // this.$showMessage("请选择维修员!")
360
- // return
361
- // }
362
- // if(self.$parent.$parent.meading == '转站点' && (self.$parent.$parent.model.serviceacitivity[0].f_reciever == '' || self.$parent.$parent.model.serviceacitivity[0].f_reciever == undefined)){
363
- // HostApp.alert()
364
- // this.$showMessage("请选择站点!")
365
- // return
366
- // }
367
- // if(self.$parent.$parent.model.f_repairtype == ''){
368
- // this.$showMessage("请选择报修类型!")
369
- // return
370
- // }
371
- // //console.log("转维修数据1:==》"+JSON.stringify(data))
372
- // let checkResult = '正常'
373
- // let options = [{"data": "已处理"},{"data": "未处理"}]
374
- // let value = ''
375
- // let codata = JSON.parse(JSON.stringify(self.paper))
376
- // for(let device in codata){
377
- // //console.log('转维修codata[device]'+JSON.stringify(codata[device]))
378
- // let f_device_type
379
- // if(device.startsWith("device")){
380
- // for(let item in codata[device]) {
381
- // if(codata[device].length > 1 ){
382
- // let j = Number.parseInt(item)+1
383
- // f_device_type = `${codata[device][item].f_device_type}${j}`
384
- // }else{
385
- // f_device_type = codata[device][item].f_device_type
386
- // }
387
- // // //console.log('codata[device][item]=>',codata[device][item])
388
- // let details = []
389
- // for(let i in codata[device][item].f_items){
390
- // let items = codata[device][item].f_items[i]
391
- // //console.log('items',items)
392
- // if(items.f_is_defect == true || items.f_is_defect == 'true'){
393
- // checkResult = '有隐患'
394
- // //console.log('类型----',f_device_type)
395
- // let res = yield self.$resetpost(`${self.Url}/rs/sql/getDeviceItem`,{data:{f_device_id:codata[device][item].f_device_id,f_item_name:items.f_item_name}})
396
- // //console.log('获取安检设备信息结果=》'+JSON.stringify(res))
397
- // self.$set('detail.f_defect_id', res.data[0].id)
398
- // self.$set('detail.f_project',`${items.f_item_name}:${items.f_item_value}`)
399
- // self.$set('detail.type',items.type)
400
- // self.$set('detail.options',options)
401
- // details.push(JSON.parse(JSON.stringify(self.detail)))
402
- // }
403
- // if(items.type == 'selector'){
404
- // items.selected = ''
405
- // }
406
- // self.detail = {}
407
- // }
408
- // //console.log('details',details)
409
- // self.$set('defectDevice.f_type',f_device_type)
410
- // self.$set('defectDevice.details',details)
411
- // if(self.defectDevice.details.length >0 ){
412
- // self.repairitems.push(JSON.parse(JSON.stringify(self.defectDevice)))
413
- // }
414
- // self.defectDevice = {}
415
- // //console.log('repairitems===>'+self.repairitems)
416
- // }
417
- // }
418
- // }
419
- // self.$set('$parent.$parent.model.f_repairitems.data',self.repairitems)
420
- //
421
- //
422
- // //console.log("转维修数据2:==》"+JSON.stringify(data))
423
- // res = self.$androidUtil.bzLogic('safecheckToRepair',data)
424
- // //console.log('res==========')
425
- // //console.log(res.code)
426
- // //console.log(res.data)
427
- // if(res.code == 200){
428
- // self.$parent.$parent.isSafeCheckToRepair = true
429
- // self.undo()
430
- // self.$set('paper.f_SafeToRepair_id',res.data.f_service_id)
431
- // //console.log('更新维修单id')
432
- // self.$resetpost(`${self.Url}/rs/logic/updatePaperRepair`,{data:{f_paper_id:self.paper.f_paper_id,f_SafeToRepair_id:res.data.f_service_id}}).then((ret)=>{
433
- // //console.log('ret==>'+ret)
434
- // if(ret.data.code ==200){
435
- // //console.log('维修单id修改成功')
436
- // self.$parent.$parent.$back()
437
- // }else{
438
- // self.$showMessage('安检转维修失败!')
439
- // }
440
- // }).catch(v=>{
441
- // //console.log('v=>'+JSON.stringify(v))
442
- // self.$showMessage('安检转维修失败!')
443
- // })
444
- // }else{
445
- // self.$showMessage('安检转维修失败!')
446
- // }
447
- // }
448
- // }
449
- // }
450
-
451
-
452
-
453
- // let getRepairs = async function(self,url) {
454
- // // 获取配置信息
455
- // try {
456
- // let val = {source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($维修员$) != -1 ))', userid: `${Vue.user.id}`}
457
- // let repairs =[]
458
- // let res = await Vue.resetpost(`${url}/rs/search`,{data: val},{resolveMsg: null, rejectMsg: null})
459
- // res.data.forEach((item) => {
460
- // repairs.push({label: item.name, value: item})
461
- // })
462
- // self.f_repair_person = repairs
463
- // if(self.$parent.$parent.role == 'inspect'){
464
- // let res = self.$androidUtil.bzLogic('getUserInfo',{id:self.paper.f_userinfoid})
465
- // if(res.code == 200){
466
- // self.$parent.$parent.user = res.data[0]
467
- // self.$parent.$parent.model.f_area = self.$parent.$parent.user.f_area
468
- // }
469
- // }else{
470
- // //console.log('pc')
471
- // self.$resetpost(`${self.Url}/rs/sql/safeCheckgetUserInfo`,{data:{id:self.paper.f_userinfoid}},{resolveMsg: null, rejectMsg: null}).then((res)=>{
472
- // //console.log('res',res)
473
- // if(res.data.length != 0){
474
- // self.$parent.$parent.user = res.data[0]
475
- // self.$parent.$parent.model.f_area = self.$parent.$parent.user.f_area
476
- // }
477
- // })
478
- // // path({alias:'getUserInfo',data:{id:this.paper.f_userinfoid}})
479
- // }
480
- // } catch (error) {
481
- // //console.log('error',error)
482
- // }
483
- // }
484
-
485
- export default {
486
- title: '用户反馈',
487
- data() {
488
- return {
489
- defectImgs: [],
490
- defectToolTip: [],
491
- defectReason: [],
492
- images: [],
493
- showmodelthree: false,
494
- isneedDate: this.$parent.$parent.isneedDate,
495
- plan: this.$parent.$parent.item,
496
- meading: this.$parent.$parent.meading,
497
- paper: this.$parent.$parent.data,
498
- printContent: [],
499
- upload_state: this.$parent.$parent.item.f_upload_state,
500
- enabled: false,//控制限制购气是否可选
501
- deleteenabled: false,
502
- showmodel: false,
503
- backlistisselect: false,
504
- deletebacklistisselect: false,
505
- radios: [
506
- {
507
- label: '满意',
508
- value: 0,
509
- isChecked: false,
510
- },
511
- {
512
- label: '基本满意',
513
- value: 1,
514
- isChecked: false,
515
- },
516
- {
517
- label: '不满意',
518
- value: 2,
519
- isChecked: false,
520
- },
521
- ],
522
- repairitems: [],
523
- repairstypes: this.$appdata.getParam('报修类型'),
524
- // f_repair_person: this.readRepair(),
525
- showrepair: false,
526
- safeCheckToRepair: '',
527
- showCheckToRepair: false,
528
- userid: '',
529
- source:
530
- 'dep=this.getParentByType($organization$).getSpecialResByType($department$),' +
531
- 'tool.getFullTree(dep.where(row.hasSpecialRole($派单员$)))',
532
- isback: false,
533
- defectDevice: {},
534
- detail: {},
535
- callObj: null,
536
- user: {},
537
- role: this.$parent.$parent.role,
538
- handling: [{label: '转站点', value: '转站点'}, {label: '转维修员', value: '转维修员'}],
539
- Url: this.$androidUtil.getProxyUrl(),
540
- cause: "",
541
- deletecause: "",
542
- isRecodr: "false", //单值参数,为true则是开启全程录音
543
- }
544
- },
545
- props: ['idx'],
546
- components: {
547
- RadioGroup,
548
- Radio
549
- },
550
- methods: {
551
- timeSet(val) {
552
- ////console.log("我执行过了")
553
- if (!val) {
554
- return
555
- }
556
- let time = new Date(val).getTime()
557
- let time2 = new Date().getTime()
558
- if (time2 > time) {
559
- return true
560
- }
561
- },
562
- // async isoverDate(){
563
- // //console.log("进入了这个方法")
564
- // let res= await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/androidGetuserinfo`, {data:{
565
- // condition:"f_plan_item_id='"+this.$parent.$parent.item.id+"'"
566
- // }
567
- // })
568
- // this.isneedDate=res.data[0]["f_subscribe_date"]
569
- // //console.log("打印一下=========》"+this.$parent.$parent.item.id)
570
- // },
571
- check(index) {
572
- //console.log('index', index)
573
- // 先取消所有选中项
574
- for (let item of this.radios) {
575
- item.isChecked = false;
576
- }
577
- //再设置当前点击项选中
578
- this.paper.f_client_evaluation = this.radios[index].label;
579
- // 设置值,以供传递
580
- this.radios[index].isChecked = true;
581
- //console.log('paper.f_client_evaluation==', this.paper.f_client_evaluation);
582
- },
583
- getSignValue(fileName) {
584
- this.f_signname = fileName
585
- },
586
- cameraCallBack(prop, fileName) {
587
- if (prop == 'f_overall_path') {
588
- let f_overall_path = fileName + '?' + Math.random()
589
- HostApp.__this__.paper.f_overall_imgs.push({
590
- f_overall_path: f_overall_path
591
- })
592
- } else {
593
- HostApp.__this__.paper[prop] = fileName + '?' + Math.random()
594
- }
595
- HostApp.__callback__ = null
596
- HostApp.__this__ = null
597
- },
598
- takePic(prop, title, index) {
599
- HostApp.__callback__ = this.cameraCallBack
600
- HostApp.__this__ = this
601
- //console.log("prop:" + prop)
602
- //console.log("this.prop:" + this.paper[prop])
603
- let fileName
604
- if (prop == 'f_overall_path') {
605
- if (!this.paper.f_overall_imgs[index] || this.paper.f_overall_imgs[index].f_overall_path.includes("nopic.png")) {
606
- fileName = Util.guid() + '-' + prop + '.jpg'
607
- } else {
608
- fileName = Util.getFileName(this.paper.f_overall_imgs[index].f_overall_path)
609
- }
610
- } else {
611
- if (!this.paper[prop] || this.paper[prop].includes("nopic.png")) {
612
- fileName = Util.guid() + '-' + prop + '.jpg'
613
- } else {
614
- fileName = Util.getFileName(this.paper[prop])
615
- }
616
- }
617
-
618
- HostApp._open_a_page({
619
- type: 'boomerang',
620
- page: 'com.aofeng.hybrid.android.peripheral.CameraActivity',
621
- param: {
622
- file: fileName,
623
- requestCode: 111,
624
- callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");',
625
- watermark: title + '\t时间:' + Util.toStandardTimeString() + '\t' + Vue.user.name + '\t' + this.paper.f_userinfo_code+ '\t' + this.paper.f_user_name+ '\t' + this.paper.f_address
626
- }
627
- })
628
- },
629
- amrCallBack(fileName) {
630
- HostApp.__this__.$set('paper.f_recording1_path', fileName)
631
- HostApp.__callback__ = null
632
- HostApp.__this__ = null
633
- },
634
- record() {
635
- if (this.$parent.$parent.role != 'inspect') {
636
- if (this.paper.f_recording1_path != '') {
637
- window.location = this.paper.f_recording1_path
638
- }
639
- } else {
640
- HostApp.__callback__ = this.amrCallBack
641
- HostApp.__this__ = this
642
- let fileName
643
- if (!this.paper.f_recording1_path) {
644
- fileName = Util.guid() + '.amr'
645
- } else {
646
- fileName = Util.getFileName(this.paper.f_recording1_path)
647
- }
648
- HostApp._open_a_page({
649
- type: 'boomerang',
650
- page: 'com.aofeng.hybrid.android.peripheral.AudioClipActivity',
651
- param: {file: fileName, requestCode: 111, callback: 'javascript:HostApp.__callback__("%s");'}
652
- })
653
- }
654
- },
655
- // 签名回调
656
- signCallback(prop, fileName) {
657
- // HostApp.alert('绑定属性:' + prop + ' 文件全路径如file:///storage/sdcard0/safecheck/abc.jpg:' + fullFileName)
658
- HostApp.__this__.$set('paper.f_sign_path', fileName)
659
- HostApp.__callback__ = null
660
- HostApp.__this__ = null
661
- },
662
- // 用户签名
663
- sign() {
664
- if (!this.paper.f_read_instructions) {
665
- this.$showMessage('请先阅读并勾选用户须知内容后进行签名!')
666
- return
667
- }
668
- this.delAudioFile('f_sign_path', this.paper.f_sign_path)
669
- let prop = 'f_sign_path'
670
- let idx = 'aofeng'
671
- let fileName
672
- if (!this.paper.f_sign_path) {
673
- fileName = Util.guid() + '-valve-' + idx + '-' + prop + '.jpg'
674
- } else {
675
- fileName = Util.getFileName(this.paper.f_sign_path)
676
- }
677
- HostApp.__callback__ = this.signCallback
678
- HostApp.__this__ = this
679
- HostApp.getSignature({
680
- file: fileName,
681
- requestCode: 111,
682
- callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");'
683
- })
684
- },
685
- delfile(prop, fileName, index) {
686
- if (fileName == Vue.nopic)
687
- return
688
- else {
689
- if (prop == 'f_overall_path') {
690
- this.paper.f_overall_imgs.splice(index, 1)
691
- HostApp.delfile(fileName)
692
- } else {
693
- HostApp.delfile(fileName)
694
- this.paper[prop] = Vue.nopic
695
- }
696
- }
697
- },
698
- delAudioFile(prop, fileName) {
699
- if (!fileName)
700
- return
701
- else {
702
- HostApp.delfile(fileName)
703
- this.paper[prop] = null
704
- }
705
- },
706
- //获取打印用户信息
707
- getUser() {
708
- if (this.paper.f_user_name == undefined)
709
- this.paper.f_user_name = ''
710
- this.printContent.push({
711
- type: 3,
712
- text: '用户名称:' + this.paper.f_user_name,
713
- fontsize: 2,
714
- isbold: false,
715
- align: 'left'
716
- })
717
- if (this.paper.f_userinfo_code == undefined)
718
- this.paper.f_userinfo_code = ''
719
- this.printContent.push({
720
- type: 3,
721
- text: '用户编号:' + this.paper.f_userinfo_code,
722
- fontsize: 2,
723
- isbold: false,
724
- align: 'left'
725
- })
726
- if (this.paper.f_address == undefined)
727
- this.paper.f_address = ''
728
- this.printContent.push({type: 3, text: '地址:' + this.paper.f_address, fontsize: 2, isbold: false, align: 'left'})
729
- if (this.paper.f_user_phone == undefined)
730
- this.paper.f_user_phone = ''
731
- this.printContent.push({
732
- type: 3,
733
- text: '电话:' + this.paper.f_user_phone,
734
- fontsize: 2,
735
- isbold: false,
736
- align: 'left'
737
- })
738
- },
739
- verify() {
740
- let hasError = this.$parent.$parent.verifyUser()
741
- if (hasError)
742
- return hasError
743
- hasError = this.$parent.$parent.verifyDevices()
744
- if (hasError)
745
- return hasError
746
- },
747
- print() {
748
- let errString = this.verify()
749
- if (errString) {
750
- //console.log(errString)
751
- if (Vue.android)
752
- this.$showMessage(errString)
753
- return
754
- }
755
- // 文本
756
- let templatename = '安检结果单'
757
- if (Vue.config.safecheck != undefined) {
758
- if (Vue.config.safecheck.ApproveConfig != undefined) {
759
- if (Vue.config.safecheck.ApproveConfig.templatename != undefined) {
760
- templatename = Vue.config.safecheck.ApproveConfig.templatename
761
- }
762
- }
763
- }
764
- let textHead = {type: 3, text: templatename, fontsize: 3, isbold: true, align: 'center'}
765
- let feedPageHead = {type: 4, value: 2, unit: 'line'}
766
- let feedPageEnd = {type: 4, value: 4, unit: 'line'}
767
- this.printContent.push(textHead)
768
- this.printContent.push(feedPageHead)
769
- this.getUser()
770
- this.getDefect()
771
- this.getCheck()
772
- this.printContent.push(feedPageEnd)
773
- let arrstr = JSON.stringify(this.printContent)
774
- //console.log(arrstr)
775
- this.$androidUtil.print(arrstr)
776
- this.$set('printContent', [])
777
- },
778
- //打印安检信息
779
- getCheck() {
780
- let telephone = '96777'
781
- if (Vue.config.safecheck != undefined) {
782
- if (Vue.config.safecheck.ApproveConfig != undefined) {
783
- if (Vue.config.safecheck.ApproveConfig.checkphone != undefined) {
784
- telephone = Vue.config.safecheck.ApproveConfig.checkphone
785
- }
786
- }
787
- }
788
- this.printContent.push({
789
- type: 3,
790
- text: '*******************************',
791
- fontsize: 3,
792
- isbold: false,
793
- align: 'center'
794
- })
795
- this.printContent.push({type: 3, text: '咨询电话;' + telephone, fontsize: 2, isbold: false, align: 'left'})
796
- this.printContent.push({type: 3, text: '安检人:' + Vue.user.name, fontsize: 2, isbold: false, align: 'left'})
797
- this.printContent.push({
798
- type: 3,
799
- text: '安检时间:' + this.getNowFormatDate(),
800
- fontsize: 2,
801
- isbold: false,
802
- align: 'left'
803
- })
804
- this.printContent.push({type: 3, text: '用户签字:', fontsize: 2, isbold: false, align: 'left'})
805
- this.printContent.push({type: 4, value: 4, unit: 'line'})
806
- },
807
-
808
- getDefect() {
809
- let showmore = false
810
- if (Vue.config.safecheck != undefined) {
811
- if (Vue.config.safecheck.ApproveConfig != undefined) {
812
- if (Vue.config.safecheck.ApproveConfig.showmore != undefined) {
813
- showmore = Vue.config.safecheck.ApproveConfig.showmore
814
- }
815
- }
816
- }
817
-
818
- let backData = this.$parent.$parent.getAllDefect()
819
- // 对隐患信息进行遍历
820
- let res = JSON.parse(backData.f_defect_content)
821
- this.printContent.push({
822
- type: 3,
823
- text: '安检结果:' + res.result,
824
- fontsize: 2,
825
- isbold: false,
826
- align: 'left'
827
- })
828
- this.printContent.push({
829
- type: 3,
830
- text: '*******************************',
831
- fontsize: 3,
832
- isbold: false,
833
- align: 'center'
834
- })
835
-
836
-
837
- if (showmore) {
838
- //全部打印
839
- for (let dev in this.$parent.$parent.config) {
840
- for (let device in backData) {
841
- if (device.startsWith("device")) {
842
- for (let item in backData[device]) {
843
- //遍历结果
844
- if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
845
- let error = true
846
- for (let i in backData[device][item].f_items) {
847
- if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
848
- error = false
849
- }
850
- }
851
- if (error) {
852
- this.printContent.push({
853
- type: 3,
854
- text: dev + (backData[device].indexOf(backData[device][item]) + 1) + ':正常',
855
- fontsize: 2,
856
- isbold: false,
857
- align: 'left'
858
- })
859
- } else {
860
- this.printContent.push({
861
- type: 3,
862
- text: dev + (backData[device].indexOf(backData[device][item]) + 1) + ':有隐患',
863
- fontsize: 2,
864
- isbold: true,
865
- align: 'left'
866
- })
867
- }
868
-
869
- for (let i in backData[device][item].f_items) {
870
- if (backData[device][item].f_items[i].f_item_value != '' && backData[device][item].f_items[i].f_item_value != null) {
871
- this.printContent.push({
872
- type: 3,
873
- text: backData[device][item].f_items[i].f_item_name + backData[device][item].f_items[i].f_item_value,
874
- fontsize: 2,
875
- isbold: false,
876
- align: 'left'
877
- })
878
- }
879
- }
880
- this.printContent.push({type: 4, value: 2, unit: 'line'})
881
- }
882
- }
883
- }
884
- }
885
- }
886
-
887
- for (let dev in this.$parent.$parent.config) {
888
- for (let device in backData) {
889
- if (device.startsWith("device")) {
890
- for (let item in backData[device]) {
891
- //遍历结果
892
- if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
893
- let error = true
894
- for (let i in backData[device][item].f_items) {
895
- if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
896
- error = false
897
- }
898
- }
899
- if (!error) {
900
- this.printContent.push({
901
- type: 3,
902
- text: '隐患:',
903
- fontsize: 2,
904
- isbold: true,
905
- align: 'left'
906
- })
907
- }
908
- }
909
- }
910
- }
911
- }
912
- for (let device in backData) {
913
- if (device.startsWith("device")) {
914
- for (let item in backData[device]) {
915
- if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
916
- for (let i in backData[device][item].f_items) {
917
- if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
918
- this.printContent.push({
919
- type: 3,
920
- text: backData[device][item].f_items[i].f_item_name + ' ' + backData[device][item].f_items[i].f_item_value,
921
- fontsize: 2,
922
- isbold: true,
923
- align: 'left'
924
- })
925
- }
926
- }
927
- }
928
- }
929
- }
930
- }
931
-
932
- }
933
- } else {
934
- for (let dev in this.$parent.$parent.config) {
935
- for (let device in backData) {
936
- if (device.startsWith("device")) {
937
- for (let item in backData[device]) {
938
- //遍历结果
939
- if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
940
- let error = true
941
- for (let i in backData[device][item].f_items) {
942
- if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
943
- error = false
944
- }
945
- }
946
- if (error) {
947
- this.printContent.push({
948
- type: 3,
949
- text: dev + (backData[device].indexOf(backData[device][item]) + 1) + ':正常',
950
- fontsize: 2,
951
- isbold: false,
952
- align: 'left'
953
- })
954
- } else {
955
- this.printContent.push({
956
- type: 3,
957
- text: dev + (backData[device].indexOf(backData[device][item]) + 1) + ':有隐患',
958
- fontsize: 2,
959
- isbold: false,
960
- align: 'left'
961
- })
962
- }
963
-
964
- for (let i in backData[device][item].f_items) {
965
- if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
966
- this.printContent.push({
967
- type: 3,
968
- text: '隐患:' + backData[device][item].f_items[i].f_item_name + backData[device][item].f_items[i].f_item_value,
969
- fontsize: 2,
970
- isbold: false,
971
- align: 'left'
972
- })
973
- }
974
- }
975
- this.printContent.push({type: 4, value: 2, unit: 'line'})
976
- }
977
- }
978
- }
979
- }
980
- }
981
- }
982
- },
983
- //获取当前时间
984
- getNowFormatDate() {
985
- var date = new Date();
986
- var seperator1 = "-";
987
- var seperator2 = ":";
988
- var month = date.getMonth() + 1;
989
- var strDate = date.getDate();
990
- if (month >= 1 && month <= 9) {
991
- month = "0" + month;
992
- }
993
- if (strDate >= 0 && strDate <= 9) {
994
- strDate = "0" + strDate;
995
- }
996
- var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
997
- + " " + date.getHours() + seperator2 + date.getMinutes()
998
- + seperator2 + date.getSeconds();
999
- return currentdate;
1000
- },
1001
- readRepair() {
1002
- let url = this.$androidUtil.getProxyUrl()
1003
- let gen = getRepairs(this, url)
1004
- return co(gen)
1005
- },
1006
- showToRepair() {
1007
- let res = this.hasDefect()
1008
- //console.log('==========检测结果========')
1009
- //console.log(res)
1010
- if (res == '正常') {
1011
- this.showrepair = false
1012
- } else {
1013
- this.showrepair = true
1014
- this.assignObj()
1015
- }
1016
- this.showCheckToRepair = !this.showCheckToRepair
1017
- },
1018
- // 选中部门
1019
- reres(val) {
1020
- if (val.res == undefined) {
1021
- return
1022
- }
1023
- this.$parent.$parent.model.serviceacitivity[0].f_meetunit = val.res
1024
- this.$parent.$parent.model.f_meetunit = val.res
1025
- this.$parent.$parent.model.f_orgstr = val.resids
1026
- var arr = val.res.split('.')
1027
- this.$parent.$parent.model.f_outlets = arr[arr.length - 1]
1028
- this.$parent.$parent.model.serviceacitivity[0].f_reciever = val.resids
1029
- },
1030
- assignObj() {
1031
- this.$parent.$parent.model.f_contact_phone = this.paper.f_user_phone
1032
- this.$parent.$parent.model.f_user_name = this.paper.f_user_name
1033
- this.$parent.$parent.model.f_address = this.paper.f_address
1034
- this.$parent.$parent.model.f_user_type = this.paper.f_check_type
1035
- this.$parent.$parent.model.f_street = this.paper.f_street
1036
- this.$parent.$parent.model.f_residential_area = this.paper.f_residential_area
1037
- this.$parent.$parent.model.f_building = this.paper.f_building
1038
- this.$parent.$parent.model.f_unit = this.paper.f_unit
1039
- this.$parent.$parent.model.f_floor = this.paper.f_floor
1040
- this.$parent.$parent.model.f_room = this.paper.f_room
1041
- this.$parent.$parent.model.f_floor = this.paper.f_floor
1042
- this.$parent.$parent.model.f_userinfo_id = this.paper.f_userinfoid
1043
- this.$parent.$parent.model.f_userinfo_code = this.paper.f_userinfo_code
1044
- },
1045
- hasDefect() {
1046
- let checkResult = '正常'
1047
- let codata = JSON.parse(JSON.stringify(this.paper))
1048
- for (let device in this.paper) {
1049
- if (device.startsWith("device")) {
1050
- for (let item in this.paper[device]) {
1051
- for (let i in this.paper[device][item].f_items) {
1052
- let items = this.paper[device][item].f_items[i]
1053
- //console.log('items', items)
1054
- if (items.f_is_defect == true || items.f_is_defect == 'true') {
1055
- checkResult = '有隐患'
1056
- }
1057
- }
1058
- }
1059
- }
1060
- }
1061
- return checkResult
1062
- },
1063
- uploadPaper() {
1064
- if (this.showrepair) {
1065
- //console.log('this.meading===>' + this.meading)
1066
- //console.log('this.$parent.$parent.meading===>' + this.$parent.$parent.meading)
1067
- //console.log('typeof this.$parent.$parent.meading===>' + typeof this.$parent.$parent.meading)
1068
- //console.log('this.$parent.$parent.model.f_repairtype===>' + this.$parent.$parent.model.f_repairtype)
1069
-
1070
- if (this.meading == '转维修员' && (this.$parent.$parent.model.serviceacitivity[0].f_reciever == '' || this.$parent.$parent.model.serviceacitivity[0].f_reciever == undefined)) {
1071
- this.$showMessage("请选择维修员!")
1072
- return
1073
- }
1074
- if (this.$parent.$parent.meading == '转站点' && (this.$parent.$parent.model.serviceacitivity[0].f_reciever == '' || this.$parent.$parent.model.serviceacitivity[0].f_reciever == undefined)) {
1075
- this.$showMessage("请选择站点!")
1076
- return
1077
- }
1078
- if (this.$parent.$parent.model.f_repairtype == '') {
1079
- this.$showMessage("请选择报修类型!")
1080
- return
1081
- }
1082
- this.$parent.$parent.isToRepair = true
1083
- this.$parent.$parent.uploadCheckPaper()
1084
- // this.$parent.$parent.savePaper(false).then((res) => {
1085
- // //console.log(`res=${res}`)
1086
- // if(res != true){
1087
- // //console.log('失败')
1088
- // return
1089
- // }else{
1090
- // this.$parent.$parent.todo()
1091
- // }
1092
- // })
1093
- } else {
1094
- this.$parent.$parent.undo()
1095
- }
1096
-
1097
- },
1098
- //确认安检转维修
1099
-
1100
- undo() {
1101
- this.showCheckToRepair = !this.showCheckToRepair
1102
- this.$parent.$parent.model.serviceacitivity[0].f_reciever = ''
1103
- this.$parent.$parent.model.serviceacitivity[0].f_meetunit = ''
1104
- this.$parent.$parent.model.f_repairtype = ''
1105
- this.meading = '转站点'
1106
- },
1107
- //取消拉黑
1108
- async deletebacklist() {
1109
- if (!this.deletecause) {
1110
- this.$showMessage("请填写取消拉黑原因!")
1111
- return
1112
- }
1113
- this.paper.f_blocking_cause = this.deletecause
1114
- //console.log("vue.user:-" + JSON.stringify(Vue.user))
1115
- let http = new HttpResetClass()
1116
- //console.log("即将进行取消拉黑!")
1117
- let res1 = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
1118
- data: {
1119
- items: "version",
1120
- tablename: "t_userinfo",
1121
- condition: "f_userinfo_id=" + this.paper.f_userinfoid,
1122
- orderitem: "f_userinfo_id"
1123
- }
1124
- }, {resolveMsg: null, rejectMsg: null})
1125
- //console.log("查询版本号---" + JSON.stringify(res1))
1126
- //console.log("打印参数---" + this.paper.f_user_name + "-" + this.paper.f_blocking_cause + "-" + Vue.user.name + "-" + Vue.user.id + "-" + Vue.user.orgid + "-" + Vue.user.orgs + "-" + Vue.user.depids + "-" + Vue.user.deps + "-" + this.paper.f_userinfoid)
1127
- let res2 = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/logic/backlistOperate`, {
1128
- data: {
1129
- "f_operat_type": "取消拉黑",
1130
- "f_state": "有效",
1131
- "f_user_name": this.paper.f_user_name,
1132
- "f_comments": this.paper.f_delete_cause,
1133
- "f_operator": Vue.user.name,
1134
- "f_operatorid": Vue.user.id,
1135
- "f_orgid": Vue.user.orgid,
1136
- "f_orgname": Vue.user.orgs,
1137
- "f_depid": Vue.user.depids,
1138
- "f_depname": Vue.user.deps,
1139
- "f_describe": `${Vue.user.name}对用户${this.paper.f_user_name}进行取消拉黑`,
1140
- "f_userinfo_id": {
1141
- "f_userinfo_id": this.paper.f_userinfoid,
1142
- "f_user_state": "正常",
1143
- "version": res1.data[0].version
1144
- },
1145
- "f_limit_times":"",
1146
- "f_limit_value":""
1147
- }
1148
- }, {resolveMsg: null, rejectMsg: null})
1149
-
1150
- //console.log("取消拉黑结果---" + JSON.stringify(res2))
1151
- if (res2.data.code == 200) {
1152
- this.showmodelthree = false
1153
- this.deleteenabled = true
1154
- this.paper.f_blacklist = "否"
1155
- this.$showMessage("取消该用户限制购气成功!")
1156
- } else {
1157
- this.$showMessage("网络异常,请稍后再试!")
1158
- }
1159
- },
1160
- async backlist() {
1161
- if (!this.cause) {
1162
- this.$showMessage("请填写拉黑原因!")
1163
- return
1164
- }
1165
- this.paper.f_blocking_cause = this.cause
1166
- //console.log("vue.user:-" + JSON.stringify(Vue.user))
1167
- let http = new HttpResetClass()
1168
- //console.log("即将进行拉黑!")
1169
- let res1 = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
1170
- data: {
1171
- items: "version",
1172
- tablename: "t_userinfo",
1173
- condition: "f_userinfo_id=" + this.paper.f_userinfoid,
1174
- orderitem: "f_userinfo_id"
1175
- }
1176
- }, {resolveMsg: null, rejectMsg: null})
1177
- //console.log("查询版本号---" + JSON.stringify(res1))
1178
- //console.log("打印参数---" + this.paper.f_user_name + "-" + this.paper.f_blocking_cause + "-" + Vue.user.name + "-" + Vue.user.id + "-" + Vue.user.orgid + "-" + Vue.user.orgs + "-" + Vue.user.depids + "-" + Vue.user.deps + "-" + this.paper.f_userinfoid)
1179
- let res2 = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/logic/backlistOperate`, {
1180
- data: {
1181
- data:this.$parent.$parent.data,
1182
- item:this.$parent.$parent.data.item,
1183
- "f_operat_type": "拉黑",
1184
- "f_state": "有效",
1185
- "f_user_name": this.paper.f_user_name,
1186
- "f_comments": this.paper.f_blocking_cause,
1187
- "f_operator": Vue.user.name,
1188
- "f_operatorid": Vue.user.id,
1189
- "f_orgid": Vue.user.orgid,
1190
- "f_orgname": Vue.user.orgs,
1191
- "f_depid": Vue.user.depids,
1192
- "f_depname": Vue.user.deps,
1193
- "f_describe": `${Vue.user.name}对用户${this.paper.f_user_name}进行拉黑`,
1194
- "f_userinfo_id": {
1195
- "f_userinfo_id": this.paper.f_userinfoid,
1196
- "f_user_state": "正常",
1197
- "version": res1.data[0].version
1198
- },
1199
- "f_limit_times":"1",
1200
- "f_limit_value":"3"
1201
- }
1202
- }, {resolveMsg: null, rejectMsg: null})
1203
-
1204
- //console.log("拉黑结果---" + JSON.stringify(res2))
1205
- if (res2.data.code == 200) {
1206
- this.showmodel = false
1207
- this.enabled = true
1208
- this.paper.f_blacklist = "是"
1209
- this.$showMessage("将该用户限制购气成功!")
1210
- } else if (res2.data.msg == '数据增加重复') {
1211
- this.showmodel = false
1212
- this.enabled = true
1213
- this.$showMessage("该用户已被限制购气,请勿重复提交!")
1214
- } else {
1215
- this.$showMessage("网络异常,请稍后再试!")
1216
- }
1217
- },
1218
- cancel() {
1219
- this.backlistisselect = false
1220
- this.showmodel = false
1221
- },
1222
- deletecancel() {
1223
- this.deletebacklistisselect = false
1224
- this.showmodelthree = false
1225
- },
1226
- repiarmancg(val) {
1227
- if (val) {
1228
- //console.log(val)
1229
- this.$parent.$parent.model.serviceacitivity[0].f_reciever = val.name
1230
- let http1 = new HttpResetClass()
1231
- http1.load('POST', `${this.Url}/rs/sql/tel_singleTable_OrderBy`, {
1232
- data: {
1233
- items: 'f_user_telephone',
1234
- tablename: 't_user',
1235
- condition: `name = '${val}'`,
1236
- orderitem: 'id'
1237
- }
1238
- }, {resolveMsg: null, rejectMsg: null}).then((ress) => {
1239
- this.$parent.$parent.model.f_repairman_phone = ress.data[0].f_user_telephone
1240
- })
1241
- }
1242
- },
1243
- },
1244
- async ready() {
1245
- this.isRecodr = this.$appdata.getSingleValue('无限制录音');
1246
- // await this.isoverDate()
1247
- //console.log(this.isneedDate)
1248
- //console.log("拿到了!!!!!!!")
1249
- //console.log('查询到的已办的返回内容' + JSON.stringify(this.$parent.$parent.item.f_upload_state))
1250
- //console.log('查询到的已办的返回内容' + JSON.stringify(JSON.stringify(this.$parent.$parent.data)))
1251
- if (this.$parent.$parent.role == 'repair') {
1252
- this.$set('style__', 'divmask')
1253
- this.$set('style_view_', '')
1254
- } else if (this.$parent.$parent.role == 'view' || this.$parent.$parent.item.f_upload_state == '已传') {
1255
- this.$set('style__', 'divmask')
1256
- this.$set('style_view_', 'divmask')
1257
- //console.log('set style for ....')
1258
- } else {
1259
- this.$set('style__', '')
1260
- this.$set('style_view_', '')
1261
- }
1262
-
1263
- for (let item of this.radios) {
1264
- if (this.paper.f_client_evaluation == item.label) {
1265
- item.isChecked = true;
1266
- }
1267
- }
1268
- if (!this.paper.f_notified_path)
1269
- this.$set('paper.f_notified_path', Vue.nopic)
1270
- if (!this.paper.f_sign_path)
1271
- this.$set('paper.f_sign_path', Vue.nopic)
1272
- //console.log('!this.paper.f_overall_imgs==>' + !this.paper.f_overall_imgs)
1273
- if (!this.paper.f_overall_imgs) {
1274
- let imgs = []
1275
- // imgs.push({f_overall_path:Vue.nopic})
1276
- this.$set('paper.f_overall_imgs', imgs)
1277
- //console.log('进入setpaper.f_overall_imgs')
1278
- }
1279
- if (!this.paper.f_overall2_path)
1280
- this.$set('paper.f_overall2_path', Vue.nopic)
1281
-
1282
- this.userid = this.role == 'view' ? this.$login.f.id : Vue.user.id
1283
- if (Vue.config.safecheck != undefined) {
1284
- if (Vue.config.safecheck.ApproveConfig != undefined) {
1285
- if (Vue.config.safecheck.ApproveConfig.safeCheckToRepair != undefined) {
1286
- this.safeCheckToRepair = Vue.config.safecheck.ApproveConfig.safeCheckToRepair
1287
- }
1288
- }
1289
- }
1290
- let device = this.$parent.$parent.data
1291
- for (const deviceitem in device) {
1292
- if (deviceitem.startsWith('device')){
1293
- console.log('device[deviceitem][0].f_items', JSON.stringify(device[deviceitem][0].f_items))
1294
- let items = device[deviceitem][0].f_items
1295
- let deviceType = device[deviceitem][0].f_device_type
1296
- for (let i = 0; i < items.length; i++) {
1297
- if (items[i].f_is_defect){
1298
- let reason = items[i].f_item_name+":"
1299
- if (items[i].type === 'selector' || items[i].type === 'radio' || items[i].type === 'checkbox'){
1300
- for (let j = 0; j < items[i].f_item_value.length; j++) {
1301
- if (j+1 === items[i].f_item_value.length){
1302
- reason += items[i].f_item_value[j]
1303
- }else{
1304
- reason += items[i].f_item_value[j] + ","
1305
- }
1306
-
1307
- }
1308
- }else{
1309
- reason += items[i].f_item_value
1310
- }
1311
- if (items[i].f_path){
1312
- this.defectImgs.push(items[i].f_path)
1313
- }
1314
- if (items[i].f_p1_path){
1315
- this.defectImgs.push(items[i].f_p1_path)
1316
- }
1317
- if (items[i].f_p2_path){
1318
- this.defectImgs.push(items[i].f_p2_path)
1319
- }
1320
- if (items[i].f_p3_path){
1321
- this.defectImgs.push(items[i].f_p3_path)
1322
- }
1323
- if (items[i].tooltip){
1324
- this.defectToolTip.push(items[i].tooltip)
1325
- }
1326
- this.defectReason.push({device:deviceType,deviceitem:reason})
1327
- }
1328
-
1329
- }
1330
- }
1331
- }
1332
- //console.log(`this.safeCheckToRepair==========${this.safeCheckToRepair}`)
1333
- //console.log(Vue.config)
1334
- console.log("77777777777777777777")
1335
- //console.log(this.paper)
1336
- console.log(JSON.stringify(this.defectToolTip))
1337
- console.log(JSON.stringify(this.defectImgs))
1338
- console.log(JSON.stringify(this.defectReason))
1339
- //console.log(this.paper.f_userinfo_code)
1340
- //console.log(this.paper.f_user_name)
1341
- //console.log(this.paper.f_address)
1342
- },
1343
- watch: {
1344
- '$parent.$parent.isUpload'(val) {
1345
- //console.log('isUpload发生变化===>' + val)
1346
- },
1347
- 'meading'(val) {
1348
- //console.log('meading发生变化===>' + val)
1349
- this.$parent.$parent.meading = val
1350
- },
1351
- 'backlistisselect'(val) {
1352
- if (val == true) {
1353
- this.showmodel = true
1354
- this.deletebacklistisselect=false
1355
- }
1356
- },
1357
- 'deletebacklistisselect'(val) {
1358
- if (val == true) {
1359
- this.showmodelthree = true
1360
- this.backlistisselect=false
1361
- }
1362
- },
1363
- 'isRecodr'(val) {
1364
- if (val == 'false' || val == undefined || val == null || val == '' || val == 'undefined') {
1365
- this.isRecodr = "false";
1366
- }
1367
- }
1368
- }
1369
- }
1370
- </script>
1371
- <style scoped>
1372
- .panel-self{
1373
- border-radius: 5px;
1374
- border:1px solid #c5e1f7;
1375
- background-color: #F2F6FA;
1376
- }
1377
- .text-left{
1378
- text-align:left;
1379
- }
1380
- .font{
1381
- font: 15px PingFang-SC-Medium;
1382
- color: #333333;
1383
- }
1384
- .showIi{
1385
- font: 14px PingFang-SC-Medium;
1386
- color: #666666;
1387
- }
1388
- .info{
1389
- margin-top: 15px;
1390
- border-radius: 5px;
1391
- background-color: #f3faff;
1392
- }
1393
- .btn-photo{
1394
- border: 0;
1395
- border-radius: 7px;
1396
- background-color: #7dc1f4;
1397
- font: 15px PingFang-SC-Bold;
1398
- height: 20%;
1399
- }
1400
- .div-photo{
1401
- width: auto;
1402
- height: auto;
1403
- /* margin-top: 10px; */
1404
- position: absolute;
1405
- bottom: 10px;
1406
- right: 10px;
1407
- }
1408
- .btn-voice{
1409
- border-radius: 7px;
1410
- border: 1px solid #dedede;
1411
- background-color: #f5fbff;
1412
- font: 15px PingFang-SC-Bold;
1413
- color: #499edf;
1414
- }
1415
- .save-btn{
1416
- width: 25%;
1417
- background-color:#499edf;
1418
- border-radius: 6px;
1419
- color: #FFFFFF;
1420
- font: 15px PingFang-SC-Bold;
1421
- }
1422
- .upload-btn{
1423
- width: 25%;
1424
- background-color:#ffffff;
1425
- border: 1px solid #499edf;
1426
- border-radius: 6px;
1427
- color: #499edf;
1428
- font: 15px PingFang-SC-Bold;
1429
- }
1430
- .repair-btn{
1431
- width: 25%;
1432
- border: 1px solid #499edf;
1433
- border-radius: 6px;
1434
- font: 15px PingFang-SC-Bold;
1435
- }
1436
- #el_ca_tx{
1437
- width: 100%;
1438
- margin: 5px;
1439
- }
1440
- #el_ca_txt{
1441
- width: 100%;
1442
- margin: 5px;
1443
- }
1444
- </style>
1
+ <template>
2
+ <form novalidate class="form-horizontal" style="width: 95%;margin: auto">
3
+ <div class="form-group col-md-12 col-sm-12 col-xs-12" :class="style__">
4
+ <div class="form-group col-md-12 col-sm-12 col-xs-12">
5
+ <label class="control-label font text-left col-md-4 col-xs-4">备注</label>
6
+ <div class="col-md-12 col-sm-12 col-xs-12">
7
+ <textarea v-model="paper.f_repair_approved_note" class="form-control"></textarea>
8
+ </div>
9
+ </div>
10
+ </div>
11
+ <div class="form-group col-sm-12 col-xs-12 col-md-12 info" :class="style__">
12
+ <div class="text-center">
13
+ <label class="font">总体安检照片请依次拍摄:</label>
14
+ </div>
15
+ <div class="col-md-12 col-sm-12 col-xs-12">
16
+ <ol class="showIi">
17
+ <li>1.燃气设施全景</li>
18
+ <li>2.燃气表照片</li>
19
+ <li>3.灶具照片</li>
20
+ <li>4.其他照片</li>
21
+ </ol>
22
+ </div>
23
+ </div>
24
+ <div class="form-group col-sm-12 col-xs-12 col-md-12 " :class="style__">
25
+ <label class="text-left font">总体安检照片</label>
26
+
27
+ <div class="auto" :class="style__">
28
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
29
+ <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
30
+ <div class="row" style="height: 240px;overflow: scroll;top: 1px" >
31
+ <div class="col-xs-4 col-sm-3 col-md-2" style="margin-bottom: 35px" v-for="(index,img) in paper.f_overall_imgs">
32
+ <img-self :src="img.f_overall_path" alt="总体安检照片" :width="140" :height="170"></img-self>
33
+ <img src="../../assets/删除.png" @click="delfile('f_overall_path', img.f_overall_path,index)" style="width: 15px;margin-top: -80px" alt="">
34
+ </div>
35
+ </div>
36
+ <div class="row text-right div-photo">
37
+ <button type="button" name="button" class="btn btn-photo" @click="takePic('f_overall_path', '总体安检照片')">拍照</button>
38
+ <!--<button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_overall_path', '总体安检照片1')">拍照</button>-->
39
+ <!--&nbsp;&nbsp;&nbsp;&nbsp;<img src="../../../assets/remove.png" :class="style__" @click="delfile('f_overall_path', img.f_overall_path)" style="width: 25%;"></img>-->
40
+ </div>
41
+ </div>
42
+ </div>
43
+ </div>
44
+ </div>
45
+ <div class="form-group col-sm-12 col-xs-12 col-md-12 " :class="style__">
46
+ <label class="text-left font">总体隐患照片</label>
47
+
48
+ <div class="auto" :class="style__">
49
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
50
+ <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
51
+ <div class="row" style="height: 240px;overflow: scroll;top: 1px" >
52
+ <div class="col-xs-4 col-sm-3 col-md-2" style="margin-bottom: 35px" v-for="(index,img) in defectImgs">
53
+ <img-self :src="img" alt="总体隐患照片" :width="140" :height="170"></img-self>
54
+ <!-- <img src="../../assets/删除.png" @click="delfile('f_overall_path', img.f_overall_path,index)" style="width: 15px;margin-top: -80px" alt="">-->
55
+ </div>
56
+ </div>
57
+ <!-- <div class="row text-right div-photo">-->
58
+ <!-- <button type="button" name="button" class="btn btn-photo" @click="takePic('f_overall_path', '总体安检照片')">拍照</button>-->
59
+ <!-- &lt;!&ndash;<button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_overall_path', '总体安检照片1')">拍照</button>&ndash;&gt;-->
60
+ <!-- &lt;!&ndash;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../../../assets/remove.png" :class="style__" @click="delfile('f_overall_path', img.f_overall_path)" style="width: 25%;"></img>&ndash;&gt;-->
61
+ <!-- </div>-->
62
+ </div>
63
+ </div>
64
+ </div>
65
+ </div>
66
+ <div class="form-group col-sm-12 col-xs-12 col-md-12 info" :class="style__">
67
+ <div class="text-center">
68
+ <label class="font">隐患汇总:</label>
69
+ </div>
70
+ <div class="col-md-12 col-sm-12 col-xs-12">
71
+ <ol class="showIi">
72
+ <li v-for="item in defectReason">{{ item.deviceitem }}</li>
73
+ </ol>
74
+ </div>
75
+ </div>
76
+ <div class="form-group col-sm-12 col-xs-12 col-md-12 info" :class="style__">
77
+ <div class="text-center">
78
+ <label class="font">整改建议汇总:</label>
79
+ </div>
80
+ <div class="col-md-12 col-sm-12 col-xs-12">
81
+ <ol class="showIi">
82
+ <li v-for="item in defectToolTip">{{ item }}</li>
83
+ </ol>
84
+ </div>
85
+ </div>
86
+
87
+ <!--<div class="form-group col-sm-12">-->
88
+ <!--<label class="text-left font">总体安检照片2</label>-->
89
+ <!--<div class="auto">-->
90
+ <!--<div class="panel">-->
91
+ <!--<div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">-->
92
+ <!--<div class="row" style="height: 240px;overflow: scroll;top: 1px">-->
93
+ <!--<div class="col-sm-4">-->
94
+ <!--<img-self :src="paper.f_overall2_path" alt="总体安检照片2" width="150" height="200"></img-self>-->
95
+ <!--</div>-->
96
+ <!--</div>-->
97
+ <!--<div class="row text-right div-photo">-->
98
+ <!--<button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_overall2_path', '总体安检照片2')">拍照</button>-->
99
+ <!--&nbsp;&nbsp;&nbsp;&nbsp;<img src="../../../assets/remove.png" :class="style__" @click="delfile('f_overall2_path', paper.f_overall2_path)" style="width: 25%;"></img>-->
100
+ <!--</div>-->
101
+ <!--</div>-->
102
+ <!--</div>-->
103
+ <!--</div>-->
104
+ <!--</div>-->
105
+ <div class="form-group col-sm-12 col-xs-12 col-md-12 " :class="style__">
106
+ <input type="checkbox" v-model="paper.f_read_instructions"/><label class="text-left font">我已阅读须知内容</label>
107
+
108
+ </div>
109
+ <div class="form-group col-sm-12 col-xs-12 col-md-12 " :class="style__">
110
+ <label class="text-left font">用户签名</label>
111
+ <div class="auto">
112
+ <div class="panel">
113
+ <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
114
+ <div class="row" style="height: 240px;overflow: scroll;top: 1px">
115
+ <div class="col-sm-4">
116
+ <img :class="style__" :src="paper.f_sign_path" :width="200" :height="150" />
117
+ </div>
118
+ </div>
119
+ <div class="row text-right div-photo">
120
+ <button type="button" name="button" class="btn btn-primary btn-photo" @click="sign">签名</button>
121
+ </div>
122
+ </div>
123
+ </div>
124
+ </div>
125
+ </div>
126
+ <div class="form-group col-sm-12 col-xs-12 col-md-12 " :style="timeSet(this.isneedDate)?'':'display:none'">
127
+ <label>请输入超期原因:</label><br/>
128
+ <textarea style="width: 100%;" v-model="paper.f_exceed_reason"></textarea>
129
+ </div>
130
+ <div class="form-group col-md-12 col-sm-12 col-xs-12" :class="style__">
131
+ <div class="col-xs-6 col-sm-6">
132
+ <input type="checkbox" v-model="backlistisselect" :readonly="enabled"/><label class="text-left font" >限制该用户购气</label>
133
+ </div>
134
+ <div class="col-xs-6 col-sm-6">
135
+ <input type="checkbox" v-model="deletebacklistisselect" :readonly="deleteenabled"/><label class="text-left font" >取消该用户购气</label>
136
+ </div>
137
+ </div>
138
+ <div class="form-group col-md-12 col-sm-12 col-xs-12" :class="style__" v-if="Vue.$appdata.getParam('安检天然气安全使用须知检查')=='是'">
139
+ <div class="col-xs-12 col-sm-12">
140
+ <input type="checkbox" v-model="paper.f_gas_guidelines" /><label class="text-left font" >天然气安全使用须知</label>
141
+ </div>
142
+ <div class="col-xs-12 col-sm-12">
143
+ <input type="checkbox" v-model="paper.f_safety_warning" /><label class="text-left font" >天然气室内使用安全警示</label>
144
+ </div>
145
+ <div class="col-xs-12 col-sm-12">
146
+ <input type="checkbox" v-model="paper.f_gas_manual" /><label class="text-left font" >安全用气手册</label>
147
+ </div>
148
+ </div>
149
+ <div class="form-group col-md-12 col-sm-12 col-xs-12" :class="style__">
150
+ <div class="form-group col-md-12 col-sm-12 col-xs-12">
151
+ <input type="checkbox" v-model="paper.f_defect_notified" class="showIi" />安检通知书/隐患整改通知书
152
+ </div>
153
+ <div class="form-group col-md-12 col-sm-12 col-xs-12" v-if="paper.f_defect_notified">
154
+ <div class="form-group col-md-12 col-sm-12 col-xs-12">
155
+ <button type="button" @click="print()">打印隐患整改单</button>
156
+ </div>
157
+ <div class="form-group col-md-12 col-sm-12 col-xs-12">
158
+ <label class="text-left font">安检通知书/隐患整改通知书照片(要求能清晰反应安检通知单和用户签字内容):</label>
159
+ <div class="auto" >
160
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
161
+ <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
162
+ <div class="row" style="height: 240px;overflow: scroll;top: 1px">
163
+ <div class="col-sm-4">
164
+ <img-self :src="paper.f_notified_path" alt="安检通知书/隐患整改通知书照片" width="150" height="200"></img-self>
165
+ </div>
166
+ </div>
167
+ <div class="row text-right div-photo">
168
+ <button type="button" name="button" class="btn btn-primary btn-photo" @click="takePic('f_notified_path', '安检通知书/隐患整改通知书照片')">拍照</button>
169
+ &nbsp;&nbsp;&nbsp;&nbsp;<img src="../../assets/remove.png" :class="style__" @click="delfile('f_notified_path', this.paper.f_notified_path)" style="width: 25%;"></img>
170
+ </div>
171
+ </div>
172
+ </div>
173
+ </div>
174
+ </div>
175
+ </div>
176
+ <div class="form-group col-md-12 col-sm-12 col-xs-12">
177
+ <div class="row">
178
+ <label class="text-left">请对我们的服务做出评价:</label>
179
+ </div>
180
+ <div class="col-xs-4 col-sm-4" v-for="item in radios">
181
+ <input v-model="paper.f_client_evaluation" :value="item.label" :checked='item.isChecked' @click="check(item.value)" type="radio">{{item.label}}
182
+ </div>
183
+
184
+ <!--<div class="col-sm-4">-->
185
+ <!--<radio-group :value.sync="paper.f_client_evaluation" type="success" buttons="false">-->
186
+ <!--<radio value="满意">满意</radio>-->
187
+ <!--<radio value="基本满意">基本满意</radio>-->
188
+ <!--<radio value="不满意">不满意</radio>-->
189
+ <!--</radio-group>-->
190
+ <!--</div>-->
191
+ </div>
192
+
193
+ <div class="form-group col-md-12 col-sm-12 col-xs-12" v-if="isRecodr=='false'">
194
+ <label class="text-left font">反馈录音:</label>
195
+ <div class="col-md-12 col-sm-12 col-xs-12">
196
+ <button type="button" name="button" class="btn btn-primary btn-voice" @click="record">
197
+ <img src="../../assets/录音.png" style="width: 14%;">
198
+ <span v-if="!paper.f_recording1_path">开始录音</span>
199
+ <span v-if="paper.f_recording1_path">已录音</span>
200
+ </button>
201
+ &nbsp;&nbsp;&nbsp;&nbsp;<img src="../../assets/remove.png" style="width: 15px;" :class="style__" @click="delAudioFile('f_recording1_path', paper.f_recording1_path)"></img>
202
+ </div>
203
+ </div>
204
+
205
+ <div v-if="false">
206
+ <div class="text-center form-group col-md-12 col-sm-12 col-xs-12">
207
+ <button style="width: 30%;margin:3%;margin-bottom: 0%" type="button" v-show="$parent.$parent.actionEnabled && upload_state !='已传' &&(paper.f_complete != '已完成' || paper.back_f_entry_status != '入户') " class="btn save-btn" @click="$parent.$parent.save('temp')">临时保存</button>
208
+ <button style="width: 30%;margin:3%;margin-bottom: 0%" type="button" v-show="$parent.$parent.actionEnabled && upload_state !='已传' && (paper.f_complete != '已完成' || paper.back_f_entry_status != '入户')" class="btn save-btn " @click="$parent.$parent.save('finish')">完成安检</button>
209
+ </div>
210
+ <div class="text-center form-group col-md-12 col-sm-12 col-xs-12">
211
+ <button style="width: 30%;margin:3%;margin-bottom: 0%;margin-top: 0%" id="upload" type="button" v-show="$parent.$parent.actionEnabled && upload_state !='已传' && (paper.f_complete != '已完成' || paper.back_f_entry_status != '入户')" class="btn upload-btn " @click="$parent.$parent.uploadCheckPaper" >上传</button>
212
+ <button style="width: 30%;margin:3%;margin-bottom: 0%;margin-top: 0%" v-if="(safeCheckToRepair == true || safeCheckToRepair == 'true') && $parent.$parent.actionEnabled" class="btn repair-btn btn-warning " type="button" @click="showToRepair">转维修</button> </div>
213
+ </div>
214
+
215
+ </div>
216
+ </form>
217
+ <!-- <modal :show.sync="showCheckToRepair" v-ref:modal :backdrop="isback">-->
218
+ <!-- <div slot="modal-header" class="modal-header">-->
219
+ <!-- <h4 class="modal-title">-->
220
+ <!-- 安检转维修-->
221
+ <!-- </h4>-->
222
+ <!-- </div>-->
223
+ <!-- <div slot="modal-body" class="modal-body">-->
224
+ <!-- <div v-if="showrepair">-->
225
+ <!-- <div class="row">-->
226
+ <!-- <label class="col-xs-4 col-md-4 control-label text-left">派单方式</label>-->
227
+ <!-- <div class="col-xs-8 col-md-8">-->
228
+ <!-- <label v-for="handling1 in handling" >-->
229
+ <!-- <input type="radio"-->
230
+ <!-- v-model="meading"-->
231
+ <!-- value="{{handling1.label}}">-->
232
+ <!-- {{handling1.label}}-->
233
+ <!-- </label>-->
234
+ <!-- </div>-->
235
+ <!-- </div>-->
236
+ <!-- <div class="row" v-if="meading == '转站点'">-->
237
+ <!-- <label class="col-xs-4 col-md-4 control-label font text-left" for="f_reciever">站点</label>-->
238
+ <!-- &lt;!&ndash;<input type="text" v-show="false" v-model="serviceacitivity.f_reciever"&ndash;&gt;-->
239
+ <!-- &lt;!&ndash;v-validate:f_reciever='{ required: true }'>&ndash;&gt;-->
240
+ <!-- <div class="col-xs-8 col-md-8">-->
241
+ <!-- <right-tree @ready="onReady" islist :Url="Url" :userid="userid" :source="source" v-on:re-res="reres" :textContent="选择站点管理员" :selectData="" v-ref:f_reciever>-->
242
+ <!-- </right-tree>-->
243
+ <!-- </div>-->
244
+ <!-- </div>-->
245
+
246
+ <!-- <div class="row" style="margin-top: 6px" v-if="meading == '转维修员'">-->
247
+ <!-- <label class="col-xs-4 col-md-4 control-label font text-left">维修人</label>-->
248
+ <!-- <div class="col-xs-8">-->
249
+ <!-- <v-select :value="$parent.$parent.model.serviceacitivity[0].f_reciever" :value-single="true"-->
250
+ <!-- :options='f_repair_person' placeholder='请选择维修员'-->
251
+ <!-- close-on-select v-on:change="repiarmancg"></v-select>-->
252
+ <!-- </div>-->
253
+
254
+ <!-- </div>-->
255
+ <!-- <div class="row" style="margin-top: 6px">-->
256
+ <!-- <label for="f_repair" class="col-xs-4 col-md-4 control-label font text-left">报修类型</label>-->
257
+ <!-- <div class="col-xs-8 col-md-8">-->
258
+ <!-- <v-select :value.sync="$parent.$parent.model.f_repairtype" :value-single="true"-->
259
+ <!-- :options='repairstypes' placeholder='报修类型'-->
260
+ <!-- close-on-select>-->
261
+ <!-- </v-select>-->
262
+ <!-- </div>-->
263
+ <!-- </div>-->
264
+
265
+ <!-- <div class="row" style="margin-top: 6px">-->
266
+ <!-- <label class="control-label font text-left col-md-4 col-xs-4">备注</label>-->
267
+ <!-- <div class="col-xs-8 col-md-8">-->
268
+ <!-- <input type="text" v-model="$parent.$parent.model.f_remarks"/>-->
269
+ <!-- </div>-->
270
+
271
+ <!-- </div>-->
272
+
273
+ <!-- </div>-->
274
+ <!-- <div v-if="!showrepair">-->
275
+ <!-- 暂无隐患设备信息-->
276
+ <!-- </div>-->
277
+ <!-- </div>-->
278
+ <!-- <div slot="modal-footer" class="modal-footer">-->
279
+ <!-- <button type="button" class="btn btn-default" @click="uploadPaper()">确定</button>-->
280
+ <!-- <button type="button" class="btn btn-default" @click="undo()">取消</button>-->
281
+ <!-- </div>-->
282
+ <!-- </modal>-->
283
+ <!--拉黑框-->
284
+ <modal :show.sync="showmodel" v-ref:modal>
285
+ <div slot="modal-header" class="modal-header">
286
+ <h4 class="modal-title">
287
+ 限制用户购气
288
+ </h4>
289
+ </div>
290
+ <div slot="modal-body" class="modal-body">
291
+ <!-- <div class="row" style="margin-top: 6px">-->
292
+ <!-- <label style="color: red;">注:当前页面无法取消对用户的限制购气</label>-->
293
+ <!-- </div>-->
294
+ <div class="row" style="margin-top: 6px">
295
+ <textarea id="el_ca_tx" v-model.trim="cause" style="border-radius:4px;width: 100%;" placeholder="请输入限制用户购气原因" >
296
+ </textarea>
297
+ </div>
298
+ </div>
299
+ <div slot="modal-footer" class="modal-footer">
300
+ <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="backlist()">确认</button>
301
+ <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="cancel()">取消</button>
302
+ </div>
303
+ </modal>
304
+
305
+ <modal :show.sync="showmodelthree" v-ref:modal>
306
+ <div slot="modal-header" class="modal-header">
307
+ <h4 class="modal-title">
308
+ 取消限制用户购气
309
+ </h4>
310
+ </div>
311
+ <div slot="modal-body" class="modal-body">
312
+ <!-- <div class="row" style="margin-top: 6px">-->
313
+ <!-- <label style="color: red;">注:当前页面无法取消对用户的限制购气</label>-->
314
+ <!-- </div>-->
315
+ <div class="row" style="margin-top: 6px">
316
+ <textarea id="el_ca_txt" v-model.trim="deletecause" style="border-radius:4px;width: 100%;" placeholder="请输入取消限制用户购气原因" >
317
+ </textarea>
318
+ </div>
319
+ </div>
320
+ <div slot="modal-footer" class="modal-footer">
321
+ <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="deletebacklist()">确认</button>
322
+ <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="deletecancel()">取消</button>
323
+ </div>
324
+ </modal>
325
+ </template>
326
+
327
+ <script>
328
+ import Vue from 'vue'
329
+ import * as Util from '../Util'
330
+ import { HttpResetClass } from 'vue-client'
331
+ import RadioGroup from 'vue-client/src/vue-strap/src/radioGroup'
332
+ import Radio from 'vue-client/src/vue-strap/src/radioBtn'
333
+ import co from 'co'
334
+
335
+ // let getRepairParam = function * (self){
336
+ // let data = {
337
+ // $parent.$parent.model: self.$parent.$parent.model, loginUser: {
338
+ // name: self.role == 'view'?self.$login.f.name:Vue.user.name,
339
+ // ename: self.role == 'view'?self.$login.f.ename:Vue.user.ename
340
+ // }, user: self.user, callObj: self.callObj
341
+ // }
342
+ // if(self.$parent.$parent.meading == '转维修员'){
343
+ // data.toRepair = '一级派单'
344
+ // }
345
+ // data.$parent.$parent.model.f_attendant = data.loginUser.name
346
+ // //console.log('===================')
347
+ // //console.log(data)
348
+ // let res
349
+ // let errString = self.$parent. $parent.errorVerify()
350
+ // if(errString){
351
+ // //console.log(errString)
352
+ // if (Vue.android)
353
+ // self.undo()
354
+ // this.$showMessage(errString)
355
+ // return
356
+ // } else {
357
+ // if(self.role == 'inspect'){
358
+ // if(self.$parent.$parent.meading == '转维修员' && (self.$parent.$parent.model.serviceacitivity[0].f_reciever == '' || self.$parent.$parent.model.serviceacitivity[0].f_reciever == undefined)){
359
+ // this.$showMessage("请选择维修员!")
360
+ // return
361
+ // }
362
+ // if(self.$parent.$parent.meading == '转站点' && (self.$parent.$parent.model.serviceacitivity[0].f_reciever == '' || self.$parent.$parent.model.serviceacitivity[0].f_reciever == undefined)){
363
+ // HostApp.alert()
364
+ // this.$showMessage("请选择站点!")
365
+ // return
366
+ // }
367
+ // if(self.$parent.$parent.model.f_repairtype == ''){
368
+ // this.$showMessage("请选择报修类型!")
369
+ // return
370
+ // }
371
+ // //console.log("转维修数据1:==》"+JSON.stringify(data))
372
+ // let checkResult = '正常'
373
+ // let options = [{"data": "已处理"},{"data": "未处理"}]
374
+ // let value = ''
375
+ // let codata = JSON.parse(JSON.stringify(self.paper))
376
+ // for(let device in codata){
377
+ // //console.log('转维修codata[device]'+JSON.stringify(codata[device]))
378
+ // let f_device_type
379
+ // if(device.startsWith("device")){
380
+ // for(let item in codata[device]) {
381
+ // if(codata[device].length > 1 ){
382
+ // let j = Number.parseInt(item)+1
383
+ // f_device_type = `${codata[device][item].f_device_type}${j}`
384
+ // }else{
385
+ // f_device_type = codata[device][item].f_device_type
386
+ // }
387
+ // // //console.log('codata[device][item]=>',codata[device][item])
388
+ // let details = []
389
+ // for(let i in codata[device][item].f_items){
390
+ // let items = codata[device][item].f_items[i]
391
+ // //console.log('items',items)
392
+ // if(items.f_is_defect == true || items.f_is_defect == 'true'){
393
+ // checkResult = '有隐患'
394
+ // //console.log('类型----',f_device_type)
395
+ // let res = yield self.$resetpost(`${self.Url}/rs/sql/getDeviceItem`,{data:{f_device_id:codata[device][item].f_device_id,f_item_name:items.f_item_name}})
396
+ // //console.log('获取安检设备信息结果=》'+JSON.stringify(res))
397
+ // self.$set('detail.f_defect_id', res.data[0].id)
398
+ // self.$set('detail.f_project',`${items.f_item_name}:${items.f_item_value}`)
399
+ // self.$set('detail.type',items.type)
400
+ // self.$set('detail.options',options)
401
+ // details.push(JSON.parse(JSON.stringify(self.detail)))
402
+ // }
403
+ // if(items.type == 'selector'){
404
+ // items.selected = ''
405
+ // }
406
+ // self.detail = {}
407
+ // }
408
+ // //console.log('details',details)
409
+ // self.$set('defectDevice.f_type',f_device_type)
410
+ // self.$set('defectDevice.details',details)
411
+ // if(self.defectDevice.details.length >0 ){
412
+ // self.repairitems.push(JSON.parse(JSON.stringify(self.defectDevice)))
413
+ // }
414
+ // self.defectDevice = {}
415
+ // //console.log('repairitems===>'+self.repairitems)
416
+ // }
417
+ // }
418
+ // }
419
+ // self.$set('$parent.$parent.model.f_repairitems.data',self.repairitems)
420
+ //
421
+ //
422
+ // //console.log("转维修数据2:==》"+JSON.stringify(data))
423
+ // res = self.$androidUtil.bzLogic('safecheckToRepair',data)
424
+ // //console.log('res==========')
425
+ // //console.log(res.code)
426
+ // //console.log(res.data)
427
+ // if(res.code == 200){
428
+ // self.$parent.$parent.isSafeCheckToRepair = true
429
+ // self.undo()
430
+ // self.$set('paper.f_SafeToRepair_id',res.data.f_service_id)
431
+ // //console.log('更新维修单id')
432
+ // self.$resetpost(`${self.Url}/rs/logic/updatePaperRepair`,{data:{f_paper_id:self.paper.f_paper_id,f_SafeToRepair_id:res.data.f_service_id}}).then((ret)=>{
433
+ // //console.log('ret==>'+ret)
434
+ // if(ret.data.code ==200){
435
+ // //console.log('维修单id修改成功')
436
+ // self.$parent.$parent.$back()
437
+ // }else{
438
+ // self.$showMessage('安检转维修失败!')
439
+ // }
440
+ // }).catch(v=>{
441
+ // //console.log('v=>'+JSON.stringify(v))
442
+ // self.$showMessage('安检转维修失败!')
443
+ // })
444
+ // }else{
445
+ // self.$showMessage('安检转维修失败!')
446
+ // }
447
+ // }
448
+ // }
449
+ // }
450
+
451
+
452
+
453
+ // let getRepairs = async function(self,url) {
454
+ // // 获取配置信息
455
+ // try {
456
+ // let val = {source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($维修员$) != -1 ))', userid: `${Vue.user.id}`}
457
+ // let repairs =[]
458
+ // let res = await Vue.resetpost(`${url}/rs/search`,{data: val},{resolveMsg: null, rejectMsg: null})
459
+ // res.data.forEach((item) => {
460
+ // repairs.push({label: item.name, value: item})
461
+ // })
462
+ // self.f_repair_person = repairs
463
+ // if(self.$parent.$parent.role == 'inspect'){
464
+ // let res = self.$androidUtil.bzLogic('getUserInfo',{id:self.paper.f_userinfoid})
465
+ // if(res.code == 200){
466
+ // self.$parent.$parent.user = res.data[0]
467
+ // self.$parent.$parent.model.f_area = self.$parent.$parent.user.f_area
468
+ // }
469
+ // }else{
470
+ // //console.log('pc')
471
+ // self.$resetpost(`${self.Url}/rs/sql/safeCheckgetUserInfo`,{data:{id:self.paper.f_userinfoid}},{resolveMsg: null, rejectMsg: null}).then((res)=>{
472
+ // //console.log('res',res)
473
+ // if(res.data.length != 0){
474
+ // self.$parent.$parent.user = res.data[0]
475
+ // self.$parent.$parent.model.f_area = self.$parent.$parent.user.f_area
476
+ // }
477
+ // })
478
+ // // path({alias:'getUserInfo',data:{id:this.paper.f_userinfoid}})
479
+ // }
480
+ // } catch (error) {
481
+ // //console.log('error',error)
482
+ // }
483
+ // }
484
+
485
+ export default {
486
+ title: '用户反馈',
487
+ data() {
488
+ return {
489
+ defectImgs: [],
490
+ defectToolTip: [],
491
+ defectReason: [],
492
+ images: [],
493
+ showmodelthree: false,
494
+ isneedDate: this.$parent.$parent.isneedDate,
495
+ plan: this.$parent.$parent.item,
496
+ meading: this.$parent.$parent.meading,
497
+ paper: this.$parent.$parent.data,
498
+ printContent: [],
499
+ upload_state: this.$parent.$parent.item.f_upload_state,
500
+ enabled: false,//控制限制购气是否可选
501
+ deleteenabled: false,
502
+ showmodel: false,
503
+ backlistisselect: false,
504
+ deletebacklistisselect: false,
505
+ radios: [
506
+ {
507
+ label: '满意',
508
+ value: 0,
509
+ isChecked: false,
510
+ },
511
+ {
512
+ label: '基本满意',
513
+ value: 1,
514
+ isChecked: false,
515
+ },
516
+ {
517
+ label: '不满意',
518
+ value: 2,
519
+ isChecked: false,
520
+ },
521
+ ],
522
+ repairitems: [],
523
+ repairstypes: this.$appdata.getParam('报修类型'),
524
+ // f_repair_person: this.readRepair(),
525
+ showrepair: false,
526
+ safeCheckToRepair: '',
527
+ showCheckToRepair: false,
528
+ userid: '',
529
+ source:
530
+ 'dep=this.getParentByType($organization$).getSpecialResByType($department$),' +
531
+ 'tool.getFullTree(dep.where(row.hasSpecialRole($派单员$)))',
532
+ isback: false,
533
+ defectDevice: {},
534
+ detail: {},
535
+ callObj: null,
536
+ user: {},
537
+ role: this.$parent.$parent.role,
538
+ handling: [{label: '转站点', value: '转站点'}, {label: '转维修员', value: '转维修员'}],
539
+ Url: this.$androidUtil.getProxyUrl(),
540
+ cause: "",
541
+ deletecause: "",
542
+ isRecodr: "false", //单值参数,为true则是开启全程录音
543
+ }
544
+ },
545
+ props: ['idx'],
546
+ components: {
547
+ RadioGroup,
548
+ Radio
549
+ },
550
+ methods: {
551
+ timeSet(val) {
552
+ ////console.log("我执行过了")
553
+ if (!val) {
554
+ return
555
+ }
556
+ let time = new Date(val).getTime()
557
+ let time2 = new Date().getTime()
558
+ if (time2 > time) {
559
+ return true
560
+ }
561
+ },
562
+ // async isoverDate(){
563
+ // //console.log("进入了这个方法")
564
+ // let res= await this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/androidGetuserinfo`, {data:{
565
+ // condition:"f_plan_item_id='"+this.$parent.$parent.item.id+"'"
566
+ // }
567
+ // })
568
+ // this.isneedDate=res.data[0]["f_subscribe_date"]
569
+ // //console.log("打印一下=========》"+this.$parent.$parent.item.id)
570
+ // },
571
+ check(index) {
572
+ //console.log('index', index)
573
+ // 先取消所有选中项
574
+ for (let item of this.radios) {
575
+ item.isChecked = false;
576
+ }
577
+ //再设置当前点击项选中
578
+ this.paper.f_client_evaluation = this.radios[index].label;
579
+ // 设置值,以供传递
580
+ this.radios[index].isChecked = true;
581
+ //console.log('paper.f_client_evaluation==', this.paper.f_client_evaluation);
582
+ },
583
+ getSignValue(fileName) {
584
+ this.f_signname = fileName
585
+ },
586
+ cameraCallBack(prop, fileName) {
587
+ if (prop == 'f_overall_path') {
588
+ let f_overall_path = fileName + '?' + Math.random()
589
+ HostApp.__this__.paper.f_overall_imgs.push({
590
+ f_overall_path: f_overall_path
591
+ })
592
+ } else {
593
+ HostApp.__this__.paper[prop] = fileName + '?' + Math.random()
594
+ }
595
+ HostApp.__callback__ = null
596
+ HostApp.__this__ = null
597
+ },
598
+ takePic(prop, title, index) {
599
+ HostApp.__callback__ = this.cameraCallBack
600
+ HostApp.__this__ = this
601
+ //console.log("prop:" + prop)
602
+ //console.log("this.prop:" + this.paper[prop])
603
+ let fileName
604
+ if (prop == 'f_overall_path') {
605
+ if (!this.paper.f_overall_imgs[index] || this.paper.f_overall_imgs[index].f_overall_path.includes("nopic.png")) {
606
+ fileName = Util.guid() + '-' + prop + '.jpg'
607
+ } else {
608
+ fileName = Util.getFileName(this.paper.f_overall_imgs[index].f_overall_path)
609
+ }
610
+ } else {
611
+ if (!this.paper[prop] || this.paper[prop].includes("nopic.png")) {
612
+ fileName = Util.guid() + '-' + prop + '.jpg'
613
+ } else {
614
+ fileName = Util.getFileName(this.paper[prop])
615
+ }
616
+ }
617
+
618
+ HostApp._open_a_page({
619
+ type: 'boomerang',
620
+ page: 'com.aofeng.hybrid.android.peripheral.CameraActivity',
621
+ param: {
622
+ file: fileName,
623
+ requestCode: 111,
624
+ callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");',
625
+ watermark: title + '\t时间:' + Util.toStandardTimeString() + '\t' + Vue.user.name + '\t' + this.paper.f_userinfo_code+ '\t' + this.paper.f_user_name+ '\t' + this.paper.f_address
626
+ }
627
+ })
628
+ },
629
+ amrCallBack(fileName) {
630
+ HostApp.__this__.$set('paper.f_recording1_path', fileName)
631
+ HostApp.__callback__ = null
632
+ HostApp.__this__ = null
633
+ },
634
+ record() {
635
+ if (this.$parent.$parent.role != 'inspect') {
636
+ if (this.paper.f_recording1_path != '') {
637
+ window.location = this.paper.f_recording1_path
638
+ }
639
+ } else {
640
+ HostApp.__callback__ = this.amrCallBack
641
+ HostApp.__this__ = this
642
+ let fileName
643
+ if (!this.paper.f_recording1_path) {
644
+ fileName = Util.guid() + '.amr'
645
+ } else {
646
+ fileName = Util.getFileName(this.paper.f_recording1_path)
647
+ }
648
+ HostApp._open_a_page({
649
+ type: 'boomerang',
650
+ page: 'com.aofeng.hybrid.android.peripheral.AudioClipActivity',
651
+ param: {file: fileName, requestCode: 111, callback: 'javascript:HostApp.__callback__("%s");'}
652
+ })
653
+ }
654
+ },
655
+ // 签名回调
656
+ signCallback(prop, fileName) {
657
+ // HostApp.alert('绑定属性:' + prop + ' 文件全路径如file:///storage/sdcard0/safecheck/abc.jpg:' + fullFileName)
658
+ HostApp.__this__.$set('paper.f_sign_path', fileName)
659
+ HostApp.__callback__ = null
660
+ HostApp.__this__ = null
661
+ },
662
+ // 用户签名
663
+ sign() {
664
+ if (!this.paper.f_read_instructions) {
665
+ this.$showMessage('请先阅读并勾选用户须知内容后进行签名!')
666
+ return
667
+ }
668
+ this.delAudioFile('f_sign_path', this.paper.f_sign_path)
669
+ let prop = 'f_sign_path'
670
+ let idx = 'aofeng'
671
+ let fileName
672
+ if (!this.paper.f_sign_path) {
673
+ fileName = Util.guid() + '-valve-' + idx + '-' + prop + '.jpg'
674
+ } else {
675
+ fileName = Util.getFileName(this.paper.f_sign_path)
676
+ }
677
+ HostApp.__callback__ = this.signCallback
678
+ HostApp.__this__ = this
679
+ HostApp.getSignature({
680
+ file: fileName,
681
+ requestCode: 111,
682
+ callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");'
683
+ })
684
+ },
685
+ delfile(prop, fileName, index) {
686
+ if (fileName == Vue.nopic)
687
+ return
688
+ else {
689
+ if (prop == 'f_overall_path') {
690
+ this.paper.f_overall_imgs.splice(index, 1)
691
+ HostApp.delfile(fileName)
692
+ } else {
693
+ HostApp.delfile(fileName)
694
+ this.paper[prop] = Vue.nopic
695
+ }
696
+ }
697
+ },
698
+ delAudioFile(prop, fileName) {
699
+ if (!fileName)
700
+ return
701
+ else {
702
+ HostApp.delfile(fileName)
703
+ this.paper[prop] = null
704
+ }
705
+ },
706
+ //获取打印用户信息
707
+ getUser() {
708
+ if (this.paper.f_user_name == undefined)
709
+ this.paper.f_user_name = ''
710
+ this.printContent.push({
711
+ type: 3,
712
+ text: '用户名称:' + this.paper.f_user_name,
713
+ fontsize: 2,
714
+ isbold: false,
715
+ align: 'left'
716
+ })
717
+ if (this.paper.f_userinfo_code == undefined)
718
+ this.paper.f_userinfo_code = ''
719
+ this.printContent.push({
720
+ type: 3,
721
+ text: '用户编号:' + this.paper.f_userinfo_code,
722
+ fontsize: 2,
723
+ isbold: false,
724
+ align: 'left'
725
+ })
726
+ if (this.paper.f_address == undefined)
727
+ this.paper.f_address = ''
728
+ this.printContent.push({type: 3, text: '地址:' + this.paper.f_address, fontsize: 2, isbold: false, align: 'left'})
729
+ if (this.paper.f_user_phone == undefined)
730
+ this.paper.f_user_phone = ''
731
+ this.printContent.push({
732
+ type: 3,
733
+ text: '电话:' + this.paper.f_user_phone,
734
+ fontsize: 2,
735
+ isbold: false,
736
+ align: 'left'
737
+ })
738
+ },
739
+ verify() {
740
+ let hasError = this.$parent.$parent.verifyUser()
741
+ if (hasError)
742
+ return hasError
743
+ hasError = this.$parent.$parent.verifyDevices()
744
+ if (hasError)
745
+ return hasError
746
+ },
747
+ print() {
748
+ let errString = this.verify()
749
+ if (errString) {
750
+ //console.log(errString)
751
+ if (Vue.android)
752
+ this.$showMessage(errString)
753
+ return
754
+ }
755
+ // 文本
756
+ let templatename = '安检结果单'
757
+ if (Vue.config.safecheck != undefined) {
758
+ if (Vue.config.safecheck.ApproveConfig != undefined) {
759
+ if (Vue.config.safecheck.ApproveConfig.templatename != undefined) {
760
+ templatename = Vue.config.safecheck.ApproveConfig.templatename
761
+ }
762
+ }
763
+ }
764
+ let textHead = {type: 3, text: templatename, fontsize: 3, isbold: true, align: 'center'}
765
+ let feedPageHead = {type: 4, value: 2, unit: 'line'}
766
+ let feedPageEnd = {type: 4, value: 4, unit: 'line'}
767
+ this.printContent.push(textHead)
768
+ this.printContent.push(feedPageHead)
769
+ this.getUser()
770
+ this.getDefect()
771
+ this.getCheck()
772
+ this.printContent.push(feedPageEnd)
773
+ let arrstr = JSON.stringify(this.printContent)
774
+ //console.log(arrstr)
775
+ this.$androidUtil.print(arrstr)
776
+ this.$set('printContent', [])
777
+ },
778
+ //打印安检信息
779
+ getCheck() {
780
+ let telephone = '96777'
781
+ if (Vue.config.safecheck != undefined) {
782
+ if (Vue.config.safecheck.ApproveConfig != undefined) {
783
+ if (Vue.config.safecheck.ApproveConfig.checkphone != undefined) {
784
+ telephone = Vue.config.safecheck.ApproveConfig.checkphone
785
+ }
786
+ }
787
+ }
788
+ this.printContent.push({
789
+ type: 3,
790
+ text: '*******************************',
791
+ fontsize: 3,
792
+ isbold: false,
793
+ align: 'center'
794
+ })
795
+ this.printContent.push({type: 3, text: '咨询电话;' + telephone, fontsize: 2, isbold: false, align: 'left'})
796
+ this.printContent.push({type: 3, text: '安检人:' + Vue.user.name, fontsize: 2, isbold: false, align: 'left'})
797
+ this.printContent.push({
798
+ type: 3,
799
+ text: '安检时间:' + this.getNowFormatDate(),
800
+ fontsize: 2,
801
+ isbold: false,
802
+ align: 'left'
803
+ })
804
+ this.printContent.push({type: 3, text: '用户签字:', fontsize: 2, isbold: false, align: 'left'})
805
+ this.printContent.push({type: 4, value: 4, unit: 'line'})
806
+ },
807
+
808
+ getDefect() {
809
+ let showmore = false
810
+ if (Vue.config.safecheck != undefined) {
811
+ if (Vue.config.safecheck.ApproveConfig != undefined) {
812
+ if (Vue.config.safecheck.ApproveConfig.showmore != undefined) {
813
+ showmore = Vue.config.safecheck.ApproveConfig.showmore
814
+ }
815
+ }
816
+ }
817
+
818
+ let backData = this.$parent.$parent.getAllDefect()
819
+ // 对隐患信息进行遍历
820
+ let res = JSON.parse(backData.f_defect_content)
821
+ this.printContent.push({
822
+ type: 3,
823
+ text: '安检结果:' + res.result,
824
+ fontsize: 2,
825
+ isbold: false,
826
+ align: 'left'
827
+ })
828
+ this.printContent.push({
829
+ type: 3,
830
+ text: '*******************************',
831
+ fontsize: 3,
832
+ isbold: false,
833
+ align: 'center'
834
+ })
835
+
836
+
837
+ if (showmore) {
838
+ //全部打印
839
+ for (let dev in this.$parent.$parent.config) {
840
+ for (let device in backData) {
841
+ if (device.startsWith("device")) {
842
+ for (let item in backData[device]) {
843
+ //遍历结果
844
+ if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
845
+ let error = true
846
+ for (let i in backData[device][item].f_items) {
847
+ if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
848
+ error = false
849
+ }
850
+ }
851
+ if (error) {
852
+ this.printContent.push({
853
+ type: 3,
854
+ text: dev + (backData[device].indexOf(backData[device][item]) + 1) + ':正常',
855
+ fontsize: 2,
856
+ isbold: false,
857
+ align: 'left'
858
+ })
859
+ } else {
860
+ this.printContent.push({
861
+ type: 3,
862
+ text: dev + (backData[device].indexOf(backData[device][item]) + 1) + ':有隐患',
863
+ fontsize: 2,
864
+ isbold: true,
865
+ align: 'left'
866
+ })
867
+ }
868
+
869
+ for (let i in backData[device][item].f_items) {
870
+ if (backData[device][item].f_items[i].f_item_value != '' && backData[device][item].f_items[i].f_item_value != null) {
871
+ this.printContent.push({
872
+ type: 3,
873
+ text: backData[device][item].f_items[i].f_item_name + backData[device][item].f_items[i].f_item_value,
874
+ fontsize: 2,
875
+ isbold: false,
876
+ align: 'left'
877
+ })
878
+ }
879
+ }
880
+ this.printContent.push({type: 4, value: 2, unit: 'line'})
881
+ }
882
+ }
883
+ }
884
+ }
885
+ }
886
+
887
+ for (let dev in this.$parent.$parent.config) {
888
+ for (let device in backData) {
889
+ if (device.startsWith("device")) {
890
+ for (let item in backData[device]) {
891
+ //遍历结果
892
+ if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
893
+ let error = true
894
+ for (let i in backData[device][item].f_items) {
895
+ if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
896
+ error = false
897
+ }
898
+ }
899
+ if (!error) {
900
+ this.printContent.push({
901
+ type: 3,
902
+ text: '隐患:',
903
+ fontsize: 2,
904
+ isbold: true,
905
+ align: 'left'
906
+ })
907
+ }
908
+ }
909
+ }
910
+ }
911
+ }
912
+ for (let device in backData) {
913
+ if (device.startsWith("device")) {
914
+ for (let item in backData[device]) {
915
+ if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
916
+ for (let i in backData[device][item].f_items) {
917
+ if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
918
+ this.printContent.push({
919
+ type: 3,
920
+ text: backData[device][item].f_items[i].f_item_name + ' ' + backData[device][item].f_items[i].f_item_value,
921
+ fontsize: 2,
922
+ isbold: true,
923
+ align: 'left'
924
+ })
925
+ }
926
+ }
927
+ }
928
+ }
929
+ }
930
+ }
931
+
932
+ }
933
+ } else {
934
+ for (let dev in this.$parent.$parent.config) {
935
+ for (let device in backData) {
936
+ if (device.startsWith("device")) {
937
+ for (let item in backData[device]) {
938
+ //遍历结果
939
+ if (backData[device].length != 0 && backData[device][item].f_device_type == dev) {
940
+ let error = true
941
+ for (let i in backData[device][item].f_items) {
942
+ if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
943
+ error = false
944
+ }
945
+ }
946
+ if (error) {
947
+ this.printContent.push({
948
+ type: 3,
949
+ text: dev + (backData[device].indexOf(backData[device][item]) + 1) + ':正常',
950
+ fontsize: 2,
951
+ isbold: false,
952
+ align: 'left'
953
+ })
954
+ } else {
955
+ this.printContent.push({
956
+ type: 3,
957
+ text: dev + (backData[device].indexOf(backData[device][item]) + 1) + ':有隐患',
958
+ fontsize: 2,
959
+ isbold: false,
960
+ align: 'left'
961
+ })
962
+ }
963
+
964
+ for (let i in backData[device][item].f_items) {
965
+ if (backData[device][item].f_items[i].f_is_defect == true || backData[device][item].f_items[i].f_is_defect == 'true') {
966
+ this.printContent.push({
967
+ type: 3,
968
+ text: '隐患:' + backData[device][item].f_items[i].f_item_name + backData[device][item].f_items[i].f_item_value,
969
+ fontsize: 2,
970
+ isbold: false,
971
+ align: 'left'
972
+ })
973
+ }
974
+ }
975
+ this.printContent.push({type: 4, value: 2, unit: 'line'})
976
+ }
977
+ }
978
+ }
979
+ }
980
+ }
981
+ }
982
+ },
983
+ //获取当前时间
984
+ getNowFormatDate() {
985
+ var date = new Date();
986
+ var seperator1 = "-";
987
+ var seperator2 = ":";
988
+ var month = date.getMonth() + 1;
989
+ var strDate = date.getDate();
990
+ if (month >= 1 && month <= 9) {
991
+ month = "0" + month;
992
+ }
993
+ if (strDate >= 0 && strDate <= 9) {
994
+ strDate = "0" + strDate;
995
+ }
996
+ var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
997
+ + " " + date.getHours() + seperator2 + date.getMinutes()
998
+ + seperator2 + date.getSeconds();
999
+ return currentdate;
1000
+ },
1001
+ readRepair() {
1002
+ let url = this.$androidUtil.getProxyUrl()
1003
+ let gen = getRepairs(this, url)
1004
+ return co(gen)
1005
+ },
1006
+ showToRepair() {
1007
+ let res = this.hasDefect()
1008
+ //console.log('==========检测结果========')
1009
+ //console.log(res)
1010
+ if (res == '正常') {
1011
+ this.showrepair = false
1012
+ } else {
1013
+ this.showrepair = true
1014
+ this.assignObj()
1015
+ }
1016
+ this.showCheckToRepair = !this.showCheckToRepair
1017
+ },
1018
+ // 选中部门
1019
+ reres(val) {
1020
+ if (val.res == undefined) {
1021
+ return
1022
+ }
1023
+ this.$parent.$parent.model.serviceacitivity[0].f_meetunit = val.res
1024
+ this.$parent.$parent.model.f_meetunit = val.res
1025
+ this.$parent.$parent.model.f_orgstr = val.resids
1026
+ var arr = val.res.split('.')
1027
+ this.$parent.$parent.model.f_outlets = arr[arr.length - 1]
1028
+ this.$parent.$parent.model.serviceacitivity[0].f_reciever = val.resids
1029
+ },
1030
+ assignObj() {
1031
+ this.$parent.$parent.model.f_contact_phone = this.paper.f_user_phone
1032
+ this.$parent.$parent.model.f_user_name = this.paper.f_user_name
1033
+ this.$parent.$parent.model.f_address = this.paper.f_address
1034
+ this.$parent.$parent.model.f_user_type = this.paper.f_check_type
1035
+ this.$parent.$parent.model.f_street = this.paper.f_street
1036
+ this.$parent.$parent.model.f_residential_area = this.paper.f_residential_area
1037
+ this.$parent.$parent.model.f_building = this.paper.f_building
1038
+ this.$parent.$parent.model.f_unit = this.paper.f_unit
1039
+ this.$parent.$parent.model.f_floor = this.paper.f_floor
1040
+ this.$parent.$parent.model.f_room = this.paper.f_room
1041
+ this.$parent.$parent.model.f_floor = this.paper.f_floor
1042
+ this.$parent.$parent.model.f_userinfo_id = this.paper.f_userinfoid
1043
+ this.$parent.$parent.model.f_userinfo_code = this.paper.f_userinfo_code
1044
+ },
1045
+ hasDefect() {
1046
+ let checkResult = '正常'
1047
+ let codata = JSON.parse(JSON.stringify(this.paper))
1048
+ for (let device in this.paper) {
1049
+ if (device.startsWith("device")) {
1050
+ for (let item in this.paper[device]) {
1051
+ for (let i in this.paper[device][item].f_items) {
1052
+ let items = this.paper[device][item].f_items[i]
1053
+ //console.log('items', items)
1054
+ if (items.f_is_defect == true || items.f_is_defect == 'true') {
1055
+ checkResult = '有隐患'
1056
+ }
1057
+ }
1058
+ }
1059
+ }
1060
+ }
1061
+ return checkResult
1062
+ },
1063
+ uploadPaper() {
1064
+ if (this.showrepair) {
1065
+ //console.log('this.meading===>' + this.meading)
1066
+ //console.log('this.$parent.$parent.meading===>' + this.$parent.$parent.meading)
1067
+ //console.log('typeof this.$parent.$parent.meading===>' + typeof this.$parent.$parent.meading)
1068
+ //console.log('this.$parent.$parent.model.f_repairtype===>' + this.$parent.$parent.model.f_repairtype)
1069
+
1070
+ if (this.meading == '转维修员' && (this.$parent.$parent.model.serviceacitivity[0].f_reciever == '' || this.$parent.$parent.model.serviceacitivity[0].f_reciever == undefined)) {
1071
+ this.$showMessage("请选择维修员!")
1072
+ return
1073
+ }
1074
+ if (this.$parent.$parent.meading == '转站点' && (this.$parent.$parent.model.serviceacitivity[0].f_reciever == '' || this.$parent.$parent.model.serviceacitivity[0].f_reciever == undefined)) {
1075
+ this.$showMessage("请选择站点!")
1076
+ return
1077
+ }
1078
+ if (this.$parent.$parent.model.f_repairtype == '') {
1079
+ this.$showMessage("请选择报修类型!")
1080
+ return
1081
+ }
1082
+ this.$parent.$parent.isToRepair = true
1083
+ this.$parent.$parent.uploadCheckPaper()
1084
+ // this.$parent.$parent.savePaper(false).then((res) => {
1085
+ // //console.log(`res=${res}`)
1086
+ // if(res != true){
1087
+ // //console.log('失败')
1088
+ // return
1089
+ // }else{
1090
+ // this.$parent.$parent.todo()
1091
+ // }
1092
+ // })
1093
+ } else {
1094
+ this.$parent.$parent.undo()
1095
+ }
1096
+
1097
+ },
1098
+ //确认安检转维修
1099
+
1100
+ undo() {
1101
+ this.showCheckToRepair = !this.showCheckToRepair
1102
+ this.$parent.$parent.model.serviceacitivity[0].f_reciever = ''
1103
+ this.$parent.$parent.model.serviceacitivity[0].f_meetunit = ''
1104
+ this.$parent.$parent.model.f_repairtype = ''
1105
+ this.meading = '转站点'
1106
+ },
1107
+ //取消拉黑
1108
+ async deletebacklist() {
1109
+ if (!this.deletecause) {
1110
+ this.$showMessage("请填写取消拉黑原因!")
1111
+ return
1112
+ }
1113
+ this.paper.f_blocking_cause = this.deletecause
1114
+ //console.log("vue.user:-" + JSON.stringify(Vue.user))
1115
+ let http = new HttpResetClass()
1116
+ //console.log("即将进行取消拉黑!")
1117
+ let res1 = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
1118
+ data: {
1119
+ items: "version",
1120
+ tablename: "t_userinfo",
1121
+ condition: "f_userinfo_id=" + this.paper.f_userinfoid,
1122
+ orderitem: "f_userinfo_id"
1123
+ }
1124
+ }, {resolveMsg: null, rejectMsg: null})
1125
+ //console.log("查询版本号---" + JSON.stringify(res1))
1126
+ //console.log("打印参数---" + this.paper.f_user_name + "-" + this.paper.f_blocking_cause + "-" + Vue.user.name + "-" + Vue.user.id + "-" + Vue.user.orgid + "-" + Vue.user.orgs + "-" + Vue.user.depids + "-" + Vue.user.deps + "-" + this.paper.f_userinfoid)
1127
+ let res2 = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/logic/backlistOperate`, {
1128
+ data: {
1129
+ "f_operat_type": "取消拉黑",
1130
+ "f_state": "有效",
1131
+ "f_user_name": this.paper.f_user_name,
1132
+ "f_comments": this.paper.f_delete_cause,
1133
+ "f_operator": Vue.user.name,
1134
+ "f_operatorid": Vue.user.id,
1135
+ "f_orgid": Vue.user.orgid,
1136
+ "f_orgname": Vue.user.orgs,
1137
+ "f_depid": Vue.user.depids,
1138
+ "f_depname": Vue.user.deps,
1139
+ "f_describe": `${Vue.user.name}对用户${this.paper.f_user_name}进行取消拉黑`,
1140
+ "f_userinfo_id": {
1141
+ "f_userinfo_id": this.paper.f_userinfoid,
1142
+ "f_user_state": "正常",
1143
+ "version": res1.data[0].version
1144
+ },
1145
+ "f_limit_times":"",
1146
+ "f_limit_value":""
1147
+ }
1148
+ }, {resolveMsg: null, rejectMsg: null})
1149
+
1150
+ //console.log("取消拉黑结果---" + JSON.stringify(res2))
1151
+ if (res2.data.code == 200) {
1152
+ this.showmodelthree = false
1153
+ this.deleteenabled = true
1154
+ this.paper.f_blacklist = "否"
1155
+ this.$showMessage("取消该用户限制购气成功!")
1156
+ } else {
1157
+ this.$showMessage("网络异常,请稍后再试!")
1158
+ }
1159
+ },
1160
+ async backlist() {
1161
+ if (!this.cause) {
1162
+ this.$showMessage("请填写拉黑原因!")
1163
+ return
1164
+ }
1165
+ this.paper.f_blocking_cause = this.cause
1166
+ //console.log("vue.user:-" + JSON.stringify(Vue.user))
1167
+ let http = new HttpResetClass()
1168
+ //console.log("即将进行拉黑!")
1169
+ let res1 = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
1170
+ data: {
1171
+ items: "version",
1172
+ tablename: "t_userinfo",
1173
+ condition: "f_userinfo_id=" + this.paper.f_userinfoid,
1174
+ orderitem: "f_userinfo_id"
1175
+ }
1176
+ }, {resolveMsg: null, rejectMsg: null})
1177
+ //console.log("查询版本号---" + JSON.stringify(res1))
1178
+ //console.log("打印参数---" + this.paper.f_user_name + "-" + this.paper.f_blocking_cause + "-" + Vue.user.name + "-" + Vue.user.id + "-" + Vue.user.orgid + "-" + Vue.user.orgs + "-" + Vue.user.depids + "-" + Vue.user.deps + "-" + this.paper.f_userinfoid)
1179
+ let res2 = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/logic/backlistOperate`, {
1180
+ data: {
1181
+ data:this.$parent.$parent.data,
1182
+ item:this.$parent.$parent.data.item,
1183
+ "f_operat_type": "拉黑",
1184
+ "f_state": "有效",
1185
+ "f_user_name": this.paper.f_user_name,
1186
+ "f_comments": this.paper.f_blocking_cause,
1187
+ "f_operator": Vue.user.name,
1188
+ "f_operatorid": Vue.user.id,
1189
+ "f_orgid": Vue.user.orgid,
1190
+ "f_orgname": Vue.user.orgs,
1191
+ "f_depid": Vue.user.depids,
1192
+ "f_depname": Vue.user.deps,
1193
+ "f_describe": `${Vue.user.name}对用户${this.paper.f_user_name}进行拉黑`,
1194
+ "f_userinfo_id": {
1195
+ "f_userinfo_id": this.paper.f_userinfoid,
1196
+ "f_user_state": "正常",
1197
+ "version": res1.data[0].version
1198
+ },
1199
+ "f_limit_times":"1",
1200
+ "f_limit_value":"3"
1201
+ }
1202
+ }, {resolveMsg: null, rejectMsg: null})
1203
+
1204
+ //console.log("拉黑结果---" + JSON.stringify(res2))
1205
+ if (res2.data.code == 200) {
1206
+ this.showmodel = false
1207
+ this.enabled = true
1208
+ this.paper.f_blacklist = "是"
1209
+ this.$showMessage("将该用户限制购气成功!")
1210
+ } else if (res2.data.msg == '数据增加重复') {
1211
+ this.showmodel = false
1212
+ this.enabled = true
1213
+ this.$showMessage("该用户已被限制购气,请勿重复提交!")
1214
+ } else {
1215
+ this.$showMessage("网络异常,请稍后再试!")
1216
+ }
1217
+ },
1218
+ cancel() {
1219
+ this.backlistisselect = false
1220
+ this.showmodel = false
1221
+ },
1222
+ deletecancel() {
1223
+ this.deletebacklistisselect = false
1224
+ this.showmodelthree = false
1225
+ },
1226
+ repiarmancg(val) {
1227
+ if (val) {
1228
+ //console.log(val)
1229
+ this.$parent.$parent.model.serviceacitivity[0].f_reciever = val.name
1230
+ let http1 = new HttpResetClass()
1231
+ http1.load('POST', `${this.Url}/rs/sql/tel_singleTable_OrderBy`, {
1232
+ data: {
1233
+ items: 'f_user_telephone',
1234
+ tablename: 't_user',
1235
+ condition: `name = '${val}'`,
1236
+ orderitem: 'id'
1237
+ }
1238
+ }, {resolveMsg: null, rejectMsg: null}).then((ress) => {
1239
+ this.$parent.$parent.model.f_repairman_phone = ress.data[0].f_user_telephone
1240
+ })
1241
+ }
1242
+ },
1243
+ },
1244
+ async ready() {
1245
+ this.isRecodr = this.$appdata.getSingleValue('无限制录音');
1246
+ // await this.isoverDate()
1247
+ //console.log(this.isneedDate)
1248
+ //console.log("拿到了!!!!!!!")
1249
+ //console.log('查询到的已办的返回内容' + JSON.stringify(this.$parent.$parent.item.f_upload_state))
1250
+ //console.log('查询到的已办的返回内容' + JSON.stringify(JSON.stringify(this.$parent.$parent.data)))
1251
+ if (this.$parent.$parent.role == 'repair') {
1252
+ this.$set('style__', 'divmask')
1253
+ this.$set('style_view_', '')
1254
+ } else if (this.$parent.$parent.role == 'view' || this.$parent.$parent.item.f_upload_state == '已传') {
1255
+ this.$set('style__', 'divmask')
1256
+ this.$set('style_view_', 'divmask')
1257
+ //console.log('set style for ....')
1258
+ } else {
1259
+ this.$set('style__', '')
1260
+ this.$set('style_view_', '')
1261
+ }
1262
+
1263
+ for (let item of this.radios) {
1264
+ if (this.paper.f_client_evaluation == item.label) {
1265
+ item.isChecked = true;
1266
+ }
1267
+ }
1268
+ if (!this.paper.f_notified_path)
1269
+ this.$set('paper.f_notified_path', Vue.nopic)
1270
+ if (!this.paper.f_sign_path)
1271
+ this.$set('paper.f_sign_path', Vue.nopic)
1272
+ //console.log('!this.paper.f_overall_imgs==>' + !this.paper.f_overall_imgs)
1273
+ if (!this.paper.f_overall_imgs) {
1274
+ let imgs = []
1275
+ // imgs.push({f_overall_path:Vue.nopic})
1276
+ this.$set('paper.f_overall_imgs', imgs)
1277
+ //console.log('进入setpaper.f_overall_imgs')
1278
+ }
1279
+ if (!this.paper.f_overall2_path)
1280
+ this.$set('paper.f_overall2_path', Vue.nopic)
1281
+
1282
+ this.userid = this.role == 'view' ? this.$login.f.id : Vue.user.id
1283
+ if (Vue.config.safecheck != undefined) {
1284
+ if (Vue.config.safecheck.ApproveConfig != undefined) {
1285
+ if (Vue.config.safecheck.ApproveConfig.safeCheckToRepair != undefined) {
1286
+ this.safeCheckToRepair = Vue.config.safecheck.ApproveConfig.safeCheckToRepair
1287
+ }
1288
+ }
1289
+ }
1290
+ let device = this.$parent.$parent.data
1291
+ for (const deviceitem in device) {
1292
+ if (deviceitem.startsWith('device')){
1293
+ console.log('device[deviceitem][0].f_items', JSON.stringify(device[deviceitem][0].f_items))
1294
+ let items = device[deviceitem][0].f_items
1295
+ let deviceType = device[deviceitem][0].f_device_type
1296
+ for (let i = 0; i < items.length; i++) {
1297
+ if (items[i].f_is_defect){
1298
+ let reason = items[i].f_item_name+":"
1299
+ if (items[i].type === 'selector' || items[i].type === 'radio' || items[i].type === 'checkbox'){
1300
+ for (let j = 0; j < items[i].f_item_value.length; j++) {
1301
+ if (j+1 === items[i].f_item_value.length){
1302
+ reason += items[i].f_item_value[j]
1303
+ }else{
1304
+ reason += items[i].f_item_value[j] + ","
1305
+ }
1306
+
1307
+ }
1308
+ }else{
1309
+ reason += items[i].f_item_value
1310
+ }
1311
+ if (items[i].f_path){
1312
+ this.defectImgs.push(items[i].f_path)
1313
+ }
1314
+ if (items[i].f_p1_path){
1315
+ this.defectImgs.push(items[i].f_p1_path)
1316
+ }
1317
+ if (items[i].f_p2_path){
1318
+ this.defectImgs.push(items[i].f_p2_path)
1319
+ }
1320
+ if (items[i].f_p3_path){
1321
+ this.defectImgs.push(items[i].f_p3_path)
1322
+ }
1323
+ if (items[i].tooltip){
1324
+ this.defectToolTip.push(items[i].tooltip)
1325
+ }
1326
+ this.defectReason.push({device:deviceType,deviceitem:reason})
1327
+ }
1328
+
1329
+ }
1330
+ }
1331
+ }
1332
+ //console.log(`this.safeCheckToRepair==========${this.safeCheckToRepair}`)
1333
+ //console.log(Vue.config)
1334
+ console.log("77777777777777777777")
1335
+ //console.log(this.paper)
1336
+ console.log(JSON.stringify(this.defectToolTip))
1337
+ console.log(JSON.stringify(this.defectImgs))
1338
+ console.log(JSON.stringify(this.defectReason))
1339
+ //console.log(this.paper.f_userinfo_code)
1340
+ //console.log(this.paper.f_user_name)
1341
+ //console.log(this.paper.f_address)
1342
+ },
1343
+ watch: {
1344
+ '$parent.$parent.isUpload'(val) {
1345
+ //console.log('isUpload发生变化===>' + val)
1346
+ },
1347
+ 'meading'(val) {
1348
+ //console.log('meading发生变化===>' + val)
1349
+ this.$parent.$parent.meading = val
1350
+ },
1351
+ 'backlistisselect'(val) {
1352
+ if (val == true) {
1353
+ this.showmodel = true
1354
+ this.deletebacklistisselect=false
1355
+ }
1356
+ },
1357
+ 'deletebacklistisselect'(val) {
1358
+ if (val == true) {
1359
+ this.showmodelthree = true
1360
+ this.backlistisselect=false
1361
+ }
1362
+ },
1363
+ 'isRecodr'(val) {
1364
+ if (val == 'false' || val == undefined || val == null || val == '' || val == 'undefined') {
1365
+ this.isRecodr = "false";
1366
+ }
1367
+ }
1368
+ }
1369
+ }
1370
+ </script>
1371
+ <style scoped>
1372
+ .panel-self{
1373
+ border-radius: 5px;
1374
+ border:1px solid #c5e1f7;
1375
+ background-color: #F2F6FA;
1376
+ }
1377
+ .text-left{
1378
+ text-align:left;
1379
+ }
1380
+ .font{
1381
+ font: 15px PingFang-SC-Medium;
1382
+ color: #333333;
1383
+ }
1384
+ .showIi{
1385
+ font: 14px PingFang-SC-Medium;
1386
+ color: #666666;
1387
+ }
1388
+ .info{
1389
+ margin-top: 15px;
1390
+ border-radius: 5px;
1391
+ background-color: #f3faff;
1392
+ }
1393
+ .btn-photo{
1394
+ border: 0;
1395
+ border-radius: 7px;
1396
+ background-color: #7dc1f4;
1397
+ font: 15px PingFang-SC-Bold;
1398
+ height: 20%;
1399
+ }
1400
+ .div-photo{
1401
+ width: auto;
1402
+ height: auto;
1403
+ /* margin-top: 10px; */
1404
+ position: absolute;
1405
+ bottom: 10px;
1406
+ right: 10px;
1407
+ }
1408
+ .btn-voice{
1409
+ border-radius: 7px;
1410
+ border: 1px solid #dedede;
1411
+ background-color: #f5fbff;
1412
+ font: 15px PingFang-SC-Bold;
1413
+ color: #499edf;
1414
+ }
1415
+ .save-btn{
1416
+ width: 25%;
1417
+ background-color:#499edf;
1418
+ border-radius: 6px;
1419
+ color: #FFFFFF;
1420
+ font: 15px PingFang-SC-Bold;
1421
+ }
1422
+ .upload-btn{
1423
+ width: 25%;
1424
+ background-color:#ffffff;
1425
+ border: 1px solid #499edf;
1426
+ border-radius: 6px;
1427
+ color: #499edf;
1428
+ font: 15px PingFang-SC-Bold;
1429
+ }
1430
+ .repair-btn{
1431
+ width: 25%;
1432
+ border: 1px solid #499edf;
1433
+ border-radius: 6px;
1434
+ font: 15px PingFang-SC-Bold;
1435
+ }
1436
+ #el_ca_tx{
1437
+ width: 100%;
1438
+ margin: 5px;
1439
+ }
1440
+ #el_ca_txt{
1441
+ width: 100%;
1442
+ margin: 5px;
1443
+ }
1444
+ </style>