safecheck-client 3.0.33-73 → 3.0.33-74

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (378) hide show
  1. package/.babelrc +5 -5
  2. package/.editorconfig +9 -9
  3. package/CHANGELOG.md +27 -27
  4. package/android.html +18 -18
  5. package/build/css-loaders.js +34 -34
  6. package/build/dev-android.js +151 -151
  7. package/build/dev-client.js +8 -8
  8. package/build/release.sh +28 -28
  9. package/build/utils.js +71 -71
  10. package/build/webpack.baseandroid.conf.js +83 -83
  11. package/build/webpack.devandroid.conf.js +33 -33
  12. package/build/webpack.example.conf.js +49 -49
  13. package/build/webpack.hanwei.conf.js +57 -57
  14. package/build/webpack.hwbase.conf.js +78 -78
  15. package/build/webpack.prodandroid.conf.js +60 -60
  16. package/build/webpack.test.conf.js +31 -31
  17. package/build.gradle +14 -14
  18. package/config/dev.env.js +6 -6
  19. package/config/index.js +38 -38
  20. package/config/prod.env.js +3 -3
  21. package/config/test.env.js +6 -6
  22. package/docs/AppBase.md +22 -22
  23. package/docs/Busy.md +14 -14
  24. package/docs/Criteria.md +47 -47
  25. package/docs/CriteriaPaged.md +47 -47
  26. package/docs/DataGrid.md +54 -54
  27. package/docs/DataModel.md +22 -22
  28. package/docs/Dynamic.md +42 -42
  29. package/docs/FormPrint.md +18 -18
  30. package/docs/GetParams.md +11 -11
  31. package/docs/GridTree.md +47 -47
  32. package/docs/HttpBusy.md +13 -13
  33. package/docs/HttpStore.md +29 -29
  34. package/docs/MessageBox.md +28 -28
  35. package/docs/PagedList.md +29 -29
  36. package/docs/Pager.md +21 -21
  37. package/docs/PrintFile.md +38 -38
  38. package/docs/Project.md +23 -23
  39. package/docs/Route.md +105 -105
  40. package/docs/SafetyCheck/AdjustPlan.md +13 -13
  41. package/docs/SafetyCheck/CheckerPlan.md +12 -12
  42. package/docs/Task.md +46 -46
  43. package/docs/TreeList.md +28 -28
  44. package/docs/TreeMixin.md +18 -18
  45. package/docs/all.md +10 -10
  46. package/docs/list.md +42 -42
  47. package/docs/partial.md +75 -75
  48. package/docs/selector.md +82 -82
  49. package/docs/tree.md +40 -40
  50. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/Snippets.md +28 -28
  51. 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
  52. 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
  53. 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
  54. package/docs//347/225/214/351/235/242/345/210/266/344/275/234/350/247/204/350/214/203.md +54 -54
  55. package/examples/AddressList/App.vue +13 -13
  56. package/examples/AddressList/index.html +11 -11
  57. package/examples/AddressList/main.js +13 -13
  58. package/examples/ChangeConfig/index.html +17 -17
  59. package/examples/ChangeConfig/main.js +13 -13
  60. package/examples/CheckAdvise/comp.js +9 -9
  61. package/examples/CheckAdvise/index.html +18 -18
  62. package/examples/CheckAdvise/main.js +13 -13
  63. package/examples/CreatePlan/App.vue +13 -13
  64. package/examples/CreatePlan/index.html +11 -11
  65. package/examples/CreatePlan/main.js +13 -13
  66. package/examples/DispatchList/App.vue +10 -10
  67. package/examples/DispatchList/BaseTree.vue +13 -13
  68. package/examples/DispatchList/Init.vue +22 -22
  69. package/examples/DispatchList/Test.vue +20 -20
  70. package/examples/DispatchList/index.html +11 -11
  71. package/examples/DispatchList/main.js +18 -18
  72. package/examples/PhoneSafePlan/comp.js +33 -33
  73. package/examples/PhoneSafePlan/index.html +17 -17
  74. package/examples/PhoneSafePlan/main.js +13 -13
  75. package/examples/SafePlan/main.js +13 -13
  76. package/examples/SafePlan-aode/main.js +13 -13
  77. package/examples/SafePlanItem/index.html +17 -17
  78. package/examples/SafePlanItem/main.js +15 -15
  79. package/examples/Test/index.html +17 -17
  80. package/examples/Test/main.js +13 -13
  81. package/examples/Test//350/216/267/345/217/226/345/217/230/351/207/217 +2 -2
  82. package/examples/UserFiles/index.html +19 -19
  83. package/examples/UserFiles/main.js +13 -13
  84. package/home.html +16 -16
  85. package/oa.iml +8 -8
  86. package/package.json +1 -1
  87. package/publish.bat +7 -7
  88. package/release.bat +5 -5
  89. package/src/App.vue +33 -31
  90. package/src/Widget.vue +13 -13
  91. package/src/android-bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  92. package/src/android-bootstrap/less/.csscomb.json +304 -304
  93. package/src/android-bootstrap/less/.csslintrc +19 -19
  94. package/src/android-bootstrap/less/alerts.less +73 -73
  95. package/src/android-bootstrap/less/badges.less +66 -66
  96. package/src/android-bootstrap/less/bootstrap.less +56 -56
  97. package/src/android-bootstrap/less/breadcrumbs.less +26 -26
  98. package/src/android-bootstrap/less/button-groups.less +247 -247
  99. package/src/android-bootstrap/less/buttons.less +173 -173
  100. package/src/android-bootstrap/less/carousel.less +269 -269
  101. package/src/android-bootstrap/less/close.less +34 -34
  102. package/src/android-bootstrap/less/code.less +69 -69
  103. package/src/android-bootstrap/less/component-animations.less +33 -33
  104. package/src/android-bootstrap/less/dropdowns.less +216 -216
  105. package/src/android-bootstrap/less/forms.less +626 -626
  106. package/src/android-bootstrap/less/glyphicons.less +305 -305
  107. package/src/android-bootstrap/less/grid.less +84 -84
  108. package/src/android-bootstrap/less/input-groups.less +167 -167
  109. package/src/android-bootstrap/less/jumbotron.less +52 -52
  110. package/src/android-bootstrap/less/labels.less +64 -64
  111. package/src/android-bootstrap/less/list-group.less +141 -141
  112. package/src/android-bootstrap/less/media.less +66 -66
  113. package/src/android-bootstrap/less/mixins/alerts.less +14 -14
  114. package/src/android-bootstrap/less/mixins/background-variant.less +9 -9
  115. package/src/android-bootstrap/less/mixins/border-radius.less +18 -18
  116. package/src/android-bootstrap/less/mixins/buttons.less +69 -69
  117. package/src/android-bootstrap/less/mixins/center-block.less +7 -7
  118. package/src/android-bootstrap/less/mixins/clearfix.less +22 -22
  119. package/src/android-bootstrap/less/mixins/forms.less +90 -90
  120. package/src/android-bootstrap/less/mixins/gradients.less +59 -59
  121. package/src/android-bootstrap/less/mixins/grid-framework.less +92 -92
  122. package/src/android-bootstrap/less/mixins/grid.less +122 -122
  123. package/src/android-bootstrap/less/mixins/hide-text.less +21 -21
  124. package/src/android-bootstrap/less/mixins/image.less +33 -33
  125. package/src/android-bootstrap/less/mixins/labels.less +12 -12
  126. package/src/android-bootstrap/less/mixins/list-group.less +30 -30
  127. package/src/android-bootstrap/less/mixins/nav-divider.less +10 -10
  128. package/src/android-bootstrap/less/mixins/nav-vertical-align.less +9 -9
  129. package/src/android-bootstrap/less/mixins/opacity.less +8 -8
  130. package/src/android-bootstrap/less/mixins/pagination.less +24 -24
  131. package/src/android-bootstrap/less/mixins/panels.less +24 -24
  132. package/src/android-bootstrap/less/mixins/progress-bar.less +10 -10
  133. package/src/android-bootstrap/less/mixins/reset-filter.less +8 -8
  134. package/src/android-bootstrap/less/mixins/reset-text.less +18 -18
  135. package/src/android-bootstrap/less/mixins/resize.less +6 -6
  136. package/src/android-bootstrap/less/mixins/responsive-visibility.less +15 -15
  137. package/src/android-bootstrap/less/mixins/size.less +10 -10
  138. package/src/android-bootstrap/less/mixins/tab-focus.less +9 -9
  139. package/src/android-bootstrap/less/mixins/table-row.less +44 -44
  140. package/src/android-bootstrap/less/mixins/text-emphasis.less +9 -9
  141. package/src/android-bootstrap/less/mixins/text-overflow.less +8 -8
  142. package/src/android-bootstrap/less/mixins/vendor-prefixes.less +227 -227
  143. package/src/android-bootstrap/less/mixins.less +40 -40
  144. package/src/android-bootstrap/less/modals.less +151 -151
  145. package/src/android-bootstrap/less/navbar.less +660 -660
  146. package/src/android-bootstrap/less/navs.less +290 -290
  147. package/src/android-bootstrap/less/normalize.less +424 -424
  148. package/src/android-bootstrap/less/pager.less +76 -76
  149. package/src/android-bootstrap/less/pagination.less +89 -89
  150. package/src/android-bootstrap/less/panels.less +274 -274
  151. package/src/android-bootstrap/less/popovers.less +131 -131
  152. package/src/android-bootstrap/less/print.less +101 -101
  153. package/src/android-bootstrap/less/progress-bars.less +87 -87
  154. package/src/android-bootstrap/less/responsive-embed.less +35 -35
  155. package/src/android-bootstrap/less/responsive-utilities.less +194 -194
  156. package/src/android-bootstrap/less/scaffolding.less +161 -161
  157. package/src/android-bootstrap/less/tables.less +262 -262
  158. package/src/android-bootstrap/less/theme.less +291 -291
  159. package/src/android-bootstrap/less/thumbnails.less +36 -36
  160. package/src/android-bootstrap/less/tooltip.less +102 -102
  161. package/src/android-bootstrap/less/type.less +303 -303
  162. package/src/android-bootstrap/less/utilities.less +55 -55
  163. package/src/android-bootstrap/less/variables.less +896 -896
  164. package/src/android-bootstrap/less/wells.less +29 -29
  165. package/src/androidBase.js +177 -177
  166. package/src/androidTest.js +20 -20
  167. package/src/bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  168. package/src/bootstrap/less/.csscomb.json +304 -304
  169. package/src/bootstrap/less/.csslintrc +19 -19
  170. package/src/bootstrap/less/alerts.less +73 -73
  171. package/src/bootstrap/less/aofeng/animate.min.css +10 -10
  172. package/src/bootstrap/less/aofeng/standard.less +2121 -2121
  173. package/src/bootstrap/less/aofeng/themeOne/BinaryTemplate.less +686 -686
  174. package/src/bootstrap/less/aofeng/themeOne/loginStyle.less +1586 -1586
  175. package/src/bootstrap/less/aofeng/themeOne/systemStyle.less +2650 -2650
  176. package/src/bootstrap/less/aofeng/themeOne.less +14 -14
  177. package/src/bootstrap/less/aofeng/themeTwo/newStyle1.less +415 -415
  178. package/src/bootstrap/less/aofeng/themeTwo.less +3 -3
  179. package/src/bootstrap/less/badges.less +66 -66
  180. package/src/bootstrap/less/breadcrumbs.less +26 -26
  181. package/src/bootstrap/less/button-groups.less +247 -247
  182. package/src/bootstrap/less/buttons.less +172 -172
  183. package/src/bootstrap/less/carousel.less +269 -269
  184. package/src/bootstrap/less/close.less +34 -34
  185. package/src/bootstrap/less/code.less +69 -69
  186. package/src/bootstrap/less/component-animations.less +33 -33
  187. package/src/bootstrap/less/dropdowns.less +216 -216
  188. package/src/bootstrap/less/forms.less +626 -626
  189. package/src/bootstrap/less/grid.less +84 -84
  190. package/src/bootstrap/less/input-groups.less +167 -167
  191. package/src/bootstrap/less/jumbotron.less +52 -52
  192. package/src/bootstrap/less/labels.less +64 -64
  193. package/src/bootstrap/less/list-group.less +141 -141
  194. package/src/bootstrap/less/manageStyle/manageChile.less +180 -180
  195. package/src/bootstrap/less/manageStyle/manageStyle.less +1102 -1102
  196. package/src/bootstrap/less/manageStyle/safeStyle.less +498 -498
  197. package/src/bootstrap/less/media.less +66 -66
  198. package/src/bootstrap/less/mixins/alerts.less +14 -14
  199. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  200. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  201. package/src/bootstrap/less/mixins/buttons.less +69 -69
  202. package/src/bootstrap/less/mixins/center-block.less +7 -7
  203. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  204. package/src/bootstrap/less/mixins/forms.less +90 -90
  205. package/src/bootstrap/less/mixins/gradients.less +59 -59
  206. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  207. package/src/bootstrap/less/mixins/grid.less +122 -122
  208. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  209. package/src/bootstrap/less/mixins/image.less +33 -33
  210. package/src/bootstrap/less/mixins/labels.less +12 -12
  211. package/src/bootstrap/less/mixins/list-group.less +30 -30
  212. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  213. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  214. package/src/bootstrap/less/mixins/opacity.less +8 -8
  215. package/src/bootstrap/less/mixins/pagination.less +24 -24
  216. package/src/bootstrap/less/mixins/panels.less +24 -24
  217. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  218. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  219. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  220. package/src/bootstrap/less/mixins/resize.less +6 -6
  221. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  222. package/src/bootstrap/less/mixins/size.less +10 -10
  223. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  224. package/src/bootstrap/less/mixins/table-row.less +44 -44
  225. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  226. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  227. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  228. package/src/bootstrap/less/mixins.less +40 -40
  229. package/src/bootstrap/less/modals.less +151 -151
  230. package/src/bootstrap/less/navbar.less +660 -660
  231. package/src/bootstrap/less/navs.less +285 -285
  232. package/src/bootstrap/less/normalize.less +424 -424
  233. package/src/bootstrap/less/pager.less +76 -76
  234. package/src/bootstrap/less/pagination.less +89 -89
  235. package/src/bootstrap/less/panels.less +275 -275
  236. package/src/bootstrap/less/popovers.less +131 -131
  237. package/src/bootstrap/less/print.less +101 -101
  238. package/src/bootstrap/less/progress-bars.less +87 -87
  239. package/src/bootstrap/less/responsive-embed.less +35 -35
  240. package/src/bootstrap/less/responsive-utilities.less +194 -194
  241. package/src/bootstrap/less/scaffolding.less +161 -161
  242. package/src/bootstrap/less/standard.less +503 -503
  243. package/src/bootstrap/less/systemStyle.less +860 -860
  244. package/src/bootstrap/less/tables.less +262 -262
  245. package/src/bootstrap/less/theme.less +291 -291
  246. package/src/bootstrap/less/themeOne.less +36 -36
  247. package/src/bootstrap/less/themeTwo.less +29 -29
  248. package/src/bootstrap/less/thumbnails.less +36 -36
  249. package/src/bootstrap/less/tooltip.less +102 -102
  250. package/src/bootstrap/less/type.less +303 -303
  251. package/src/bootstrap/less/utilities.less +55 -55
  252. package/src/bootstrap/less/wells.less +29 -29
  253. package/src/components/AloneLoadParams.vue +25 -25
  254. package/src/components/FileUpload.vue +696 -696
  255. package/src/components/Hello.vue +39 -39
  256. package/src/components/LeftTree.vue +27 -27
  257. package/src/components/Main.vue +393 -393
  258. package/src/components/android/AddGas.vue +147 -147
  259. package/src/components/android/AddressList.vue +61 -61
  260. package/src/components/android/AdviseCommit.vue +59 -59
  261. package/src/components/android/AndroidCheckResult.vue +181 -181
  262. package/src/components/android/AttendanceTally.vue +116 -116
  263. package/src/components/android/Blank.vue +10 -10
  264. package/src/components/android/CheckUnplanPage.vue +56 -56
  265. package/src/components/android/Checker.vue +12 -12
  266. package/src/components/android/CheckerAnnual.vue +81 -81
  267. package/src/components/android/CheckerAvarta.vue +82 -82
  268. package/src/components/android/CheckerMonthly.vue +84 -84
  269. package/src/components/android/CurrentCreate.vue +1050 -1050
  270. package/src/components/android/DevicesNoncivil.vue +214 -214
  271. package/src/components/android/EquipmentInspection.vue +348 -348
  272. package/src/components/android/FootprintMap.vue +120 -120
  273. package/src/components/android/HiddentroubleInvestigation.vue +192 -192
  274. package/src/components/android/LcheckUnplan.vue +108 -108
  275. package/src/components/android/MasterMain.vue +77 -77
  276. package/src/components/android/Menu.vue +132 -132
  277. package/src/components/android/NavBottom.vue +157 -157
  278. package/src/components/android/PaperAlarm.vue +85 -85
  279. package/src/components/android/PaperDeviceNoncivil.vue +214 -214
  280. package/src/components/android/PhoneInfoTable.vue +40 -40
  281. package/src/components/android/PlumberAnnual.vue +83 -83
  282. package/src/components/android/PlumberAnnualDetail.vue +65 -65
  283. package/src/components/android/PlumberMonthly.vue +84 -84
  284. package/src/components/android/PostMap.vue +83 -83
  285. package/src/components/android/QueryCheckHistory.vue +122 -122
  286. package/src/components/android/QueryCheckHistoryItem.vue +62 -62
  287. package/src/components/android/RepairMain.vue +60 -60
  288. package/src/components/android/Repairman.vue +12 -12
  289. package/src/components/android/SafecheckOrderV.vue +2803 -2803
  290. package/src/components/android/StationMaster.vue +12 -12
  291. package/src/components/android/wasm/comp.js +33 -33
  292. package/src/components/checkerphonestate/Checker.vue +32 -32
  293. package/src/components/checkerphonestate/CheckerState.vue +97 -97
  294. package/src/components/defects/AddDefectModal.vue +120 -120
  295. package/src/components/defects/AddDevice.vue +95 -95
  296. package/src/components/defects/DefectModal.vue +101 -101
  297. package/src/components/defects/DefectSeting.vue +98 -98
  298. package/src/components/defects/DefectsQuery.vue +190 -190
  299. package/src/components/defects/DevicesAndItem.vue +39 -39
  300. package/src/components/defects/DevicesSeting.vue +106 -106
  301. package/src/components/equipment/BoilerUsage.vue +105 -105
  302. package/src/components/equipment/CookerUsage.vue +105 -105
  303. package/src/components/equipment/DeviceUsage.vue +105 -105
  304. package/src/components/equipment/FurnaceUsage.vue +105 -105
  305. package/src/components/equipment/GasMeterUsage.vue +109 -109
  306. package/src/components/equipment/HeaterUsage.vue +105 -105
  307. package/src/components/gasusage/GasUsage.vue +126 -126
  308. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  309. package/src/components/map/PersonTrack.vue +224 -224
  310. package/src/components/map/douglasPeuckerForAMap.js +88 -88
  311. package/src/components/metterfiles/AddUserfiles.vue +246 -246
  312. package/src/components/metterfiles/MetterFiles.vue +104 -104
  313. package/src/components/notice/NoticeForm.vue +100 -100
  314. package/src/components/notice/NoticeIssue.vue +20 -20
  315. package/src/components/notice/NoticeQuery.vue +76 -76
  316. package/src/components/paper/PicViewer.vue +18 -18
  317. package/src/components/paper/RepairVerify.vue +139 -139
  318. package/src/components/paper/RepairVerifyForm.vue +76 -76
  319. package/src/components/paper/VerifyForm.vue +107 -107
  320. package/src/components/phonestate/DailyTraffic.vue +57 -57
  321. package/src/components/phonestate/LastKnownState.vue +74 -74
  322. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  323. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  324. package/src/components/phonestate/PostMap.vue +82 -82
  325. package/src/components/planmanage/PlanManage.vue +834 -834
  326. package/src/components/planmanage/checkPlanList.vue +369 -369
  327. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  328. package/src/components/querycheckpaper/PaperSearch.vue +126 -126
  329. package/src/components/report/HiddenSituation.vue +3 -3
  330. package/src/components/task/RepairAnnual.vue +79 -79
  331. package/src/components/task/RepairAnnualDetail.vue +49 -49
  332. package/src/components/task/RepairMonthly.vue +91 -91
  333. package/src/components/task/TaskAnnual.vue +77 -77
  334. package/src/components/task/TaskAnnualDetail.vue +47 -47
  335. package/src/components/task/TaskMonthly.vue +89 -89
  336. package/src/components/userfile/MeterFile.vue +145 -145
  337. package/src/components/userfile/MeterModify.vue +46 -46
  338. package/src/components/userfile/UserFile.vue +118 -118
  339. package/src/components/userfile/UserfileChange.vue +277 -277
  340. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  341. package/src/components/userfileaudit/UserFileaudit.vue +81 -81
  342. package/src/components/userfileaudit/UserfileChangeaudit.vue +239 -239
  343. package/src/expandcss.less +571 -571
  344. package/src/filiale/fugou/android.js +11 -11
  345. package/src/filiale/fugou/pc/DefectMainNew.vue +63 -63
  346. package/src/filiale/fugou/pc/DefectPaperNew.vue +1085 -1081
  347. package/src/filiale/fugou/pc/PaperDefectMain.vue +928 -920
  348. package/src/filiale/fugou/pc/PaperList.vue +911 -903
  349. package/src/filiale/fugou/pc/PlanManage.vue +1061 -1061
  350. package/src/filiale/yangchunboneng/android/CurrentCreate.vue +1154 -1154
  351. package/src/filiale/yangchunboneng/android/PhoneUpUserinfo.vue +1230 -0
  352. package/src/filiale/yangchunboneng/android.js +1 -0
  353. package/src/main.js +32 -33
  354. package/src/plugins/GerJsonConfig.js +59 -59
  355. package/src/plugins/LoadData.js +10 -10
  356. package/src/plugins/LoadParams.js +24 -24
  357. package/src/stores/AppData.js +46 -46
  358. package/src/stores/wxconfig.js +10 -10
  359. package/src/utils/getNowDate.js +33 -33
  360. package/test/SearchList.test.js +14 -14
  361. package/test/e2e/custom-assertions/elementCount.js +26 -26
  362. package/test/e2e/nightwatch.conf.js +40 -40
  363. package/test/e2e/runner.js +30 -30
  364. package/test/e2e/specs/test.js +13 -13
  365. package/test/unit/.eslintrc +5 -5
  366. package/test/unit/TestUtil.js +62 -62
  367. package/test/unit/context.html +20 -20
  368. package/test/unit/index.js +13 -13
  369. package/test/unit/init.js +11 -11
  370. package/test/unit/karma.conf.js +53 -53
  371. package/test/unit/specs/Devices.spec.js +18 -18
  372. package/test/unit/specs/getArrobjconfig.spec.js +104 -104
  373. package/test/unit/specs/getobjconfig.spec.js +37 -37
  374. package/test/unit/specs/phonetest/phonesafecheck.spec.js +23 -23
  375. package/test/unit/specs/safePlanItem.spec.js +30 -30
  376. package/test/unit/specs/safecheck-android.spec.js +7 -7
  377. package/test/unit/specs/safecheck.spec.js +127 -127
  378. package/yarn-error.log +140 -140
@@ -1,903 +1,911 @@
1
- <template>
2
- <div class="flex-row">
3
- <div class="basic-main">
4
- <criteria-paged :model="model" v-ref:paged @sort="sort">
5
- <criteria partial='criteria' class="search_area" @condition-changed='$parent.selfSearch' v-ref:criteria>
6
- <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
7
- <div class="row">
8
- <div class="form-group col-sm-2">
9
- <label class="font_normal_body">客户编号</label>
10
- <input type="text" class="input_search" v-model="model.f_userinfo_code"
11
- style="width: 60%" placeholder="客户编号" condition="f_userinfo_code='{}'">
12
- </div>
13
- <div class="form-group col-sm-2">
14
- <label class="font_normal_body">客户名称</label>
15
- <input type="text" class="input_search" v-model="model.f_user_name"
16
- style="width: 60%" placeholder="客户名称" condition="f_user_name like '%{}%'">
17
- </div>
18
- <div class="form-group col-sm-2">
19
- <label class="font_normal_body">客户电话</label>
20
- <input type="text" class="input_search" v-model="model.f_user_phone"
21
- style="width: 60%" placeholder="客户电话" condition="f_user_phone like '%{}%'">
22
- </div>
23
- <div class="form-group col-sm-2">
24
- <label class="font_normal_body">客户表号</label>
25
- <input type="text" class="input_search" v-model="model.f_meternumber"
26
- style="width: 60%" placeholder="客户表号" condition="f_meternumber like '%{}%'">
27
- </div>
28
- <div class="form-group col-sm-2">
29
- <label class="font_normal_body">小&emsp;&emsp;区</label>
30
- <input type="text" class="input_search" v-model="model.f_residential_area"
31
- style="width: 60%" placeholder="小区" condition="f_residential_area like '%{}%'">
32
- </div>
33
- <div class="form-group col-sm-2">
34
- <label class="font_normal_body">详细地址</label>
35
- <input type="text" class="input_search" v-model="model.f_address"
36
- style="width: 60%" placeholder="详细地址" condition="f_address like '%{}%'">
37
- </div>
38
- <div class="form-group col-sm-2" style="width: auto;margin-top:8px;float: right">
39
-
40
- <export-excel-safe :data="$parent.$parent.searchData"
41
- :field="$parent.$parent.excelHeaders"
42
- :choose-col="true"
43
- sqlurl="rs/logic/SafeExportExcel" sql-name="查找安检单"
44
- template-name='安检记录明细'></export-excel-safe>
45
- <button class="button_spacing button_search" @click="$parent.$parent.showaudio()"
46
- v-if="$parent.$parent.audioshow">隐藏
47
- </button>
48
-
49
- <button class="button_spacing button_search" @click="search()">查询</button>
50
- <button class="button_spacing button_search" @click="clear()">清空</button>
51
- <div style="float: right" class="button_spacing"
52
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
53
- @click="$parent.$parent.hidden()"></div>
54
- </div>
55
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
56
- <label class="font_normal_body">安检计划</label>
57
- <input type="text" class="input_search" v-model="$parent.$parent.model.f_check_plan.f_plan_name"
58
- @click="$parent.$parent.showChooser"
59
- style="width: 60%" placeholder="安检计划" readonly="readonly">
60
- </div>
61
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
62
- <label class="font_normal_body">开始时间</label>
63
- <datepicker
64
- :value.sync="model.f_check_start"
65
- placeholder='开始时间' style="width: 60%"
66
- :disabled-days-of-week="[]"
67
- :format="'yyyy-MM-dd'"
68
- :show-rest-button="reset"
69
- v-model="model.f_check_start"
70
- condition="f_offsite_time > ='{} 00:00:00'">
71
- </datepicker>
72
- </div>
73
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
74
- <label class="font_normal_body">结束时间</label>
75
- <datepicker
76
- :value.sync="model.f_check_end"
77
- placeholder='结束时间' style="width: 60%"
78
- :disabled-days-of-week="[]"
79
- :format="'yyyy-MM-dd'"
80
- :show-rest-button="reset"
81
- v-model="model.f_check_end"
82
- condition="f_offsite_time <= '{} 23:59:59'">
83
- </datepicker>
84
- </div>
85
-
86
-
87
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
88
-
89
- <label class="font_normal_body">安检类型</label>
90
- <v-select :value.sync="model.f_safecheck_type" v-model='model.f_safecheck_type'
91
- :value-single="true" style="width: 60%"
92
- class="select_list select"
93
- :options='$parent.$parent.safetype' placeholder='安检类型'
94
- close-on-select
95
- condition="f_safecheck_type = '{}'"></v-select>
96
- </div>
97
-
98
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
99
-
100
- <label class="font_normal_body">客户类型</label>
101
- <v-select :value.sync="model.f_check_type" v-model='model.f_check_type'
102
- :value-single="true" style="width: 60%"
103
- class="select_list select"
104
- :options='$parent.$parent.checktype' placeholder='客户类型'
105
- close-on-select
106
- condition="f_check_type = '{}'"></v-select>
107
- </div>
108
-
109
-
110
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
111
- <label class="font_normal_body">安检状态</label>
112
- <v-select id="f_entry"
113
- class="select_list select"
114
- placeholder='安检状态' style="width: 60%"
115
- v-model='model.f_entry'
116
- :value.sync="$parent.$parent.model.f_entry"
117
- :options='$parent.$parent.f_entry_status'
118
- condition=""
119
- :value-single="true"
120
- close-on-select clear-button></v-select>
121
- </div>
122
- <div class="col-sm-4 form-group" v-show="$parent.$parent.criteriaShow" style="margin: 0">
123
- <role-selector-safe
124
- role-name="安检员"
125
- role-lable="安&nbsp;检&nbsp;员&nbsp;"
126
- @re-res="$parent.$parent.getRes"
127
- :value.sync="model.f_checker_id"
128
- v-model="model.f_checker_id"
129
- condition="f_checker_name = '{}'">
130
- </role-selector-safe>
131
- </div>
132
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
133
- <label class="font_normal_body">片&emsp;&emsp;区</label>
134
- <v-select class="select_list select"
135
- placeholder='片区/管理站' style="width: 60%"
136
- :value.sync="model.f_slice_area" v-model="model.f_slice_area"
137
- :options='$parent.$parent.sliceArea'
138
- filer-key="name"
139
- close-on-select clear-button
140
- condition="f_slice_area='{}'"
141
- @change="$parent.$parent.getmeterbook(model.f_slice_area)"
142
- :value-single="true">
143
- </v-select>
144
- </div>
145
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
146
- <label class="font_normal_body">抄&ensp;表&ensp;册</label>
147
- <v-select class="select_list select"
148
- placeholder='抄表册' style="width: 60%"
149
- :value.sync="model.f_meter_book_num" v-model="model.f_meter_book_num"
150
- :options='$parent.$parent.cbc'
151
- filer-key="name"
152
- close-on-select clear-button
153
- condition="f_meter_book_num={}"
154
- :value-single="true">
155
- </v-select>
156
- </div>
157
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
158
- <label class="font_normal_body">省&ensp;市&ensp;区</label>
159
- <v-select class="select_list select"
160
- placeholder='请选择' style="width: 60%"
161
- :value.sync="model.f_pcd" v-model="model.f_pcd"
162
- :options='$parent.$parent.pcds'
163
- filer-key="name"
164
- close-on-select clear-button
165
- condition="f_pcd='{}'"
166
- :value-single="true">
167
- </v-select>
168
- </div>
169
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
170
- <label class="font_normal_body">开户时间</label>
171
- <datepicker
172
- :value.sync="model.f_check_gasstart"
173
- placeholder='开始时间' style="width: 60%"
174
- :disabled-days-of-week="[]"
175
- :format="'yyyy-MM-dd'"
176
- :show-rest-button="reset"
177
- v-model="model.f_check_gasstart"
178
- condition=" f_gas_date > ='{} 00:00:00'">
179
- </datepicker>
180
- </div>
181
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
182
- <label class="font_normal_body">开户时间</label>
183
- <datepicker
184
- :value.sync="model.f_check_gasend"
185
- placeholder='结束时间' style="width: 60%"
186
- :disabled-days-of-week="[]"
187
- :format="'yyyy-MM-dd'"
188
- :show-rest-button="reset"
189
- v-model="model.f_check_gasend"
190
- condition=" f_gas_date <= '{} 23:59:59'">
191
- </datepicker>
192
- </div>
193
- <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit && $parent.$parent.criteriaShow ">
194
- <label class="font_normal_body">审&ensp;核&ensp;人</label>
195
- <input type="text" class="input_search" v-model="model.f_approved_by"
196
- style="width: 60%" placeholder="审核人" condition="f_approved_by like '%{}%'">
197
- </div>
198
- <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit && $parent.$parent.criteriaShow ">
199
- <label class="font_normal_body">审核时间</label>
200
- <datepicker
201
- :value.sync="model.f_approved_timestart"
202
- placeholder='开始时间' style="width: 60%"
203
- :disabled-days-of-week="[]"
204
- :format="'yyyy-MM-dd'"
205
- :show-rest-button="reset"
206
- v-model="model.f_approved_timestart"
207
- condition="f_approved_time > ='{} 00:00:00'">
208
- </datepicker>
209
- </div>
210
- <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit && $parent.$parent.criteriaShow ">
211
- <label class="font_normal_body">审核时间</label>
212
- <datepicker
213
- :value.sync="model.f_approved_timeend"
214
- placeholder='结束时间' style="width: 60%"
215
- :disabled-days-of-week="[]"
216
- :format="'yyyy-MM-dd'"
217
- :show-rest-button="reset"
218
- v-model="model.f_approved_timeend"
219
- condition="f_approved_time <= '{} 23:59:59'">
220
- </datepicker>
221
- </div>
222
- <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit &&$parent.$parent.criteriaShow">
223
- <label class="font_normal_body" title="参数管理:安检审核状态">审核状态</label>
224
- <v-select class="select_list select"
225
- placeholder='请选择' style="width: 60%"
226
- :value.sync="model.f_approved" v-model="model.f_approved"
227
- :options='$parent.$parent.approveds'
228
- filer-key="name"
229
- close-on-select clear-button
230
- condition="f_approved='{}'"
231
- :value-single="true">
232
- </v-select>
233
- </div>
234
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
235
- <label class="font_normal_body">气表品牌</label>
236
- <v-select
237
- class="select_list select"
238
- placeholder='气表品牌' style="width: 60%"
239
- v-model='model.tableBrand'
240
- :value.sync="model.tableBrand"
241
- :options='$parent.$parent.tableBrands'
242
- condition="f_meter_brand = '{}'"
243
- :value-single="true"
244
- close-on-select clear-button></v-select>
245
- </div>
246
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
247
- <label class="font_normal_body">有无计划</label>
248
- <v-select class="select_list select"
249
- placeholder='请选择' style="width: 60%"
250
- :value.sync="model.f_no_checkplan" v-model="model.f_no_checkplan"
251
- :options='$parent.$parent.no_checkplans'
252
- filer-key="name"
253
- close-on-select clear-button
254
- condition="f_no_checkplan='{}'"
255
- :value-single="true">
256
- </v-select>
257
- </div>
258
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
259
- <label class="font_normal_body">未用燃气</label>
260
- <v-select class="select_list select"
261
- placeholder='请选择' style="width: 60%"
262
- :value.sync="model.f_usegas" v-model="model.f_usegas"
263
- :options='$parent.$parent.usegas'
264
- filer-key="name"
265
- close-on-select clear-button
266
- condition="f_usegas='{}'"
267
- :value-single="true">
268
- </v-select>
269
- </div>
270
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
271
- <label class="font_normal_body">客户卡号</label>
272
- <input type="text" class="input_search" v-model="model.f_card_id"
273
- style="width: 60%" placeholder="客户卡号" condition="f_card_id like '%{}%'">
274
- </div>
275
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
276
- <label class="font_normal_body">距上次安检天数</label>
277
- <input type="number" class="input_search" v-model="model.f_check_date"
278
- style="width: 60%" placeholder="距上次安检天数">
279
- </div>
280
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
281
- <label class="font_normal_body">安检结果</label>
282
- <v-select class="select_list select"
283
- placeholder='请选择' style="width: 60%"
284
- :value.sync="model.f_result" v-model="model.f_result"
285
- :options='$parent.$parent.results'
286
- filer-key="name"
287
- close-on-select clear-button
288
- :value-single="true">
289
- </v-select>
290
- </div>
291
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
292
- <label class="font_normal_body">用户标签</label>
293
- <v-select class="select_list select"
294
- placeholder='请选择' style="width: 60%"
295
- :value.sync="model.f_user_tags" v-model="model.f_user_tags"
296
- :options='$parent.$parent.userTags'
297
- filer-key="name"
298
- :multiple="true"
299
- condition="f_user_tags in {}"
300
- >
301
- </v-select>
302
- </div>
303
- <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
304
- <label class="font_normal_body">用气类型</label>
305
- <v-select class="select_list select"
306
- placeholder='请选择' style="width: 60%"
307
- :value.sync="model.f_user_gas_type" v-model="model.f_user_gas_type"
308
- :options='$parent.$parent.userGasType'
309
- filer-key="name"
310
- :multiple="true"
311
- condition="f_user_gas_type in {}"
312
- >
313
- </v-select>
314
- </div>
315
- </div>
316
- <modal :show.sync="$parent.$parent.showModal" v-ref:modal backdrop="false">
317
- <div slot="modal-header" class="modal-header">
318
- <h4 class="modal-title">
319
- 选择计划
320
- </h4>
321
- </div>
322
- <div slot="modal-body" class="modal-body">
323
- <plan-chooser :f.sync="$parent.$parent.fun" v-ref:chooser></plan-chooser>
324
- </div>
325
- <div slot="modal-footer" class="modal-footer" style="text-align: center">
326
- <button class="button_search" @click="$parent.$parent.ok">确认</button>
327
- <button class="button_search" @click="$parent.$parent.cancel">取消</button>
328
- </div>
329
- </modal>
330
- </div>
331
- </criteria>
332
- <data-grid class="list_area table_sy" style="overflow: hidden" :model="model" partial='list' v-ref:grid>
333
- <template partial='head'>
334
- <tr>
335
- <th>
336
- <nobr>客户编号</nobr>
337
- </th>
338
- <th>
339
- <nobr>客户名称</nobr>
340
- </th>
341
- <th>
342
- <nobr>客户表号</nobr>
343
- </th>
344
- <th>
345
- <nobr>气表品牌</nobr>
346
- </th>
347
- <th>
348
- <nobr>客户电话</nobr>
349
- </th>
350
- <th>
351
- <nobr>客户类型</nobr>
352
- </th>
353
- <th>
354
- <nobr>客户地址</nobr>
355
- </th>
356
- <th>
357
- <nobr>安检状态</nobr>
358
- </th>
359
- <th>
360
- <nobr>计划名称</nobr>
361
- </th>
362
- <th>
363
- <nobr>用气状态</nobr>
364
- </th>
365
- <th>
366
- <data-order field="f_offsite_time" name="安检时间"></data-order>
367
- </th>
368
- <th>
369
- <nobr>安检员</nobr>
370
- </th>
371
- <th>
372
- <nobr>备注</nobr>
373
- </th>
374
- <th>
375
- <nobr>开户时间</nobr>
376
- </th>
377
- <th v-if="$parent.$parent.$parent.safeAudit">
378
- <nobr>审核人</nobr>
379
- </th>
380
- <th v-if="$parent.$parent.$parent.safeAudit">
381
- <nobr>审核起始</nobr>
382
- </th>
383
- <th v-if="$parent.$parent.$parent.safeAudit">
384
- <nobr>审核结束</nobr>
385
- </th>
386
- <th v-if="$parent.$parent.$parent.safeAudit">
387
- <nobr>审核状态</nobr>
388
- </th>
389
- <th>
390
- <nobr>操作</nobr>
391
- </th>
392
- <th v-if="$parent.$parent.$parent.audioshow">
393
- <nobr>录音</nobr>
394
- </th>
395
- </tr>
396
- </template>
397
- <template partial='body'>
398
-
399
- <td style="text-align: center">{{ row.f_userinfo_code }}</td>
400
- <td style="text-align: center">{{ row.f_user_name }}</td>
401
- <td style="text-align: center">{{ row.f_meternumber }}</td>
402
- <td style="text-align: center">{{ row.f_meter_brand }}</td>
403
- <td style="text-align: center">{{ row.f_user_phone }}</td>
404
- <td style="text-align: center">{{ row.f_check_type }}</td>
405
-
406
- <td style="text-align: center">{{ row.f_address }}</td>
407
- <td style="text-align: center">{{ row.f_entry_status }}</td>
408
- <td style="text-align: center">{{ row.f_plan_name }}</td>
409
- <td style="text-align: center">{{ row.f_usegas }}</td>
410
- <td style="text-align: center">{{ row.f_offsite_time }}</td>
411
- <td style="text-align: center">{{ row.f_checker_name }}</td>
412
- <td style="text-align: center">{{ row.f_repair_approved_note }}</td>
413
- <td style="text-align: center">{{ row.f_gas_date }}</td>
414
- <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">{{ row.f_approved_by }}</td>
415
- <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">{{
416
- row.f_approvedstart_time
417
- }}
418
- </td>
419
- <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">{{ row.f_approved_time }}</td>
420
- <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">
421
- {{ row.f_approved ? row.f_approved : '未审核' }}
422
- </td>
423
- <td style="text-align: center">
424
- <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.change(row)'>查看</button>
425
-
426
-
427
- </td>
428
- <td style="text-align: center" v-if="$parent.$parent.$parent.audioshow">
429
- <!-- <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.change(row)'>查看</button>-->
430
- <audio controls="controls" v-if="row.f_recording1_path">
431
- <source type="audio/mpeg" :src="'rs/audio/file/'+row.f_recording1_path">
432
- </audio>
433
- <!--<button type="button" class="button_new-1 button_spacing" data-toggle="dropdown"
434
- @click="$parent.$parent.$parent.print(row)">
435
- 打印
436
- </button>-->
437
- </td>
438
- </template>
439
- </data-grid>
440
- </criteria-paged>
441
- <check-msg v-if="showcheckmsg" :show="showcheckmsg" :data="checkInfo"></check-msg>
442
- </div>
443
- </div>
444
- </template>
445
-
446
- <script>
447
- import {PagedList} from 'vue-client'
448
- import Vue from 'vue'
449
- import co from 'co'
450
- import AppData from '../../../stores/AppData'
451
- import * as Util from '../../../components/Util'
452
- import getNowDate from "../../../utils/getNowDate";
453
- import HttpResetClass from "vue-client/src/plugins/HttpResetClass";
454
- import BenzAMRRecorder from 'benz-amr-recorder'
455
-
456
- //获取json配置文件
457
- let asyncReady = async function (self) {
458
- // 获取配置信息
459
- try {
460
- let res = await Vue.resetget(`/phone/rs/vue`, {data: {}}, {resolveMsg: null, rejectMsg: null})
461
- Vue.config = res.data
462
- } catch (error) {
463
- // 忽略704,文件找不到异常R
464
- if (error.status !== 704) {
465
- throw error
466
- }
467
- }
468
- }
469
-
470
- let select = function* (self) {
471
- let http = new HttpResetClass()
472
- let getGasman = yield http.load('POST', '/rs/search', {
473
- source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
474
- userid: self.$login.f.id
475
- }, {resolveMsg: null, rejectMsg: null})
476
- ////tag
477
- self.checkersid.push({label: '全部', value: ''})
478
- getGasman.data.forEach((checker) => {
479
- self.checkersid.push({label: checker.name, value: checker.id})
480
- })
481
- }
482
-
483
- export default {
484
- title: '安检结果查看',
485
- data() {
486
- let model = new PagedList('rs/sql/查找安检单', 20, {
487
- f_plan_id: 'this.f_plan_id',
488
- f_approved: 'this.f_approved',
489
- f_entry_status: 'this.f_entry',
490
- f_no_checkplan: 'this.f_no_checkplan',
491
- f_filialeid: 'this.f_filialeid',
492
- orderitem: "'f_offsite_time desc'"
493
- })
494
- model.f_check_type = ''
495
- model.f_plan_id = ''
496
- model.f_approved = ''
497
- model.f_entry = ''
498
- model.f_no_checkplan = ''
499
- model.f_filialeid = `('${this.$login.f.orgid}')`
500
- //model.f_check_type='民用'
501
- // let searchData={
502
- // f_plan_id: this.model.f_checker_id==undefined?"":this.model.f_checker_id,
503
- // f_approved: this.model.f_approved,
504
- // f_entry_status: this.model.f_entry,
505
- // f_no_checkplan:this.model.f_no_checkplan[0],
506
- // f_filialeid: this.model.f_filialeid,
507
- // //orderitem: this.model.f_offsite_time,
508
- // //condition:this.model.condition
509
- // }
510
- // model.f_subcompany = this.$login.f.f_fengongsi
511
- return {
512
- tableBrands: [{label: '全部', value: ''}],
513
- audioshow: false,
514
- safeAudit: this.$appdata.getSingleValue('安检审核') == '是' ? true : false,
515
- searchData: {
516
- condition: "1=1",
517
- orderitem: "f_offsite_time desc",
518
- f_plan_id: "",
519
- f_approved: '',
520
- f_entry_status: '',
521
- f_no_checkplan: '',
522
- f_filialeid: `('${this.$login.f.orgid}')`
523
- },
524
- results:[{label: '全部', value: ''},{label: '正常', value: '正常'},{label: '有隐患', value: '有隐患'}],
525
- model: model,
526
- excelHeaders: {
527
- //searchData:searchData,
528
- 'f_userinfo_code': '客户编号',
529
- 'f_user_name': '客户姓名',
530
- 'f_meternumber': '客户表号',
531
- 'f_user_phone': '客户电话',
532
- 'f_check_type': '客户类型',
533
- 'f_residential_area': '小区',
534
- 'f_address': '客户地址',
535
- 'f_entry_status': '安检状态',
536
- 'f_usegas': '用气状态',
537
- 'f_offsite_time': '安检时间',
538
- 'f_checker_name': '安检员',
539
- 'f_safecheck_type': '安检类型',
540
- 'f_repair_approved_note': '备注',
541
- 'f_gas_date': '开户时间',
542
- 'f_plan_name': '计划名称',
543
- },
544
- fun: this.$login.f,
545
- pcds: [],
546
- userTags:[{label: '全部', value: ''},...this.$appdata.getParam('用户标签')],
547
- userGasType:[{label: '全部', value: ''},...this.$appdata.getParam('用气类型')],
548
- checkersid: [],
549
- approveds: this.$appdata.getParam('安检审核状态') ? [{
550
- label: '全部',
551
- value: ''
552
- }, ...this.$appdata.getParam('安检审核状态')] : [{label: '全部', value: ''}],
553
- safetype: this.$appdata.getParam('安检类型') ? [{
554
- label: '全部',
555
- value: ''
556
- }, ...this.$appdata.getParam('安检类型')] : [{label: '全部', value: ''}],
557
- criteriaShow: false,
558
- checktype: this.$appdata.getParam('用户类型') ? [{
559
- label: '全部',
560
- value: ''
561
- }, ...this.$appdata.getParam('用户类型')] : [{label: '全部', value: ''}],
562
- f_check_type: [{label: '全部', value: ''}, {label: '民用', value: '民用'}, {label: '非民用', value: '非民用'}],
563
- showModal: false,
564
- safe_types: this.$appdata.getParam('计划类型') ? [{
565
- label: '全部',
566
- value: ''
567
- }, ...this.$appdata.getParam('计划类型')] : [{label: '全部', value: ''}],
568
- f_approval_states: this.$appdata.getParam('安检单审核状态') ? [{
569
- label: '全部',
570
- value: ''
571
- }, ...this.$appdata.getParam('安检单审核状态')] : [{label: '全部', value: ''}],
572
- f_entry_status: this.$appdata.getParam('安检状态') ? [{
573
- label: '全部',
574
- value: ''
575
- }, ...this.$appdata.getParam('安检状态')] : [{label: '全部', value: ''}],
576
- no_checkplans: this.$appdata.getParam('有无计划') ? [{
577
- label: '全部',
578
- value: ''
579
- }, ...this.$appdata.getParam('有无计划')] : [{label: '全部', value: ''}],
580
- usegas: this.$appdata.getParam('用气状态') ? [{
581
- label: '全部',
582
- value: ''
583
- }, ...this.$appdata.getParam('用气状态')] : [{label: '全部', value: ''}],
584
- showcheckmsg: false,
585
- checkInfo: {},
586
- orderDefault: "'f_offsite_time'",
587
- orderFields: {
588
- f_offsite_time: 'no'
589
- },
590
- sliceArea: [],
591
- cbc: []
592
- }
593
- },
594
- methods: {
595
- clear() {
596
- this.$refs.paged.$refs.criteria.model.f_userinfo_code = '';
597
- this.$refs.paged.$refs.criteria.model.f_user_name = '';
598
- this.$refs.paged.$refs.criteria.model.f_user_phone = '';
599
- this.$refs.paged.$refs.criteria.model.f_meternumber = '';
600
- this.$refs.paged.$refs.criteria.model.f_residential_area = '';
601
-
602
- this.$refs.paged.$refs.criteria.model.f_check_plan.f_plan_name = '';
603
- this.$refs.paged.$refs.criteria.model.f_check_start = '';
604
- this.$refs.paged.$refs.criteria.model.f_check_end = '';
605
- this.$refs.paged.$refs.criteria.model.f_safecheck_type = '';
606
- this.$refs.paged.$refs.criteria.model.f_check_type = '';
607
- this.$refs.paged.$refs.criteria.model.f_entry = '';
608
-
609
- this.$refs.paged.$refs.criteria.model.f_checker_id = '';
610
- this.$refs.paged.$refs.criteria.model.f_slice_area = '';
611
- this.$refs.paged.$refs.criteria.model.f_meter_book_num = '';
612
- this.$refs.paged.$refs.criteria.model.f_pcd = '';
613
- this.$refs.paged.$refs.criteria.model.f_check_gasstart = '';
614
-
615
- this.$refs.paged.$refs.criteria.model.f_check_gasend = '';
616
- this.$refs.paged.$refs.criteria.model.f_approved_by = '';
617
- this.$refs.paged.$refs.criteria.model.f_approved_timestart = '';
618
- this.$refs.paged.$refs.criteria.model.f_approved_timeend = '';
619
- this.$refs.paged.$refs.criteria.model.f_approved = '';
620
-
621
- this.$refs.paged.$refs.criteria.model.tableBrand = '';
622
- this.$refs.paged.$refs.criteria.model.f_no_checkplan = '';
623
- this.$refs.paged.$refs.criteria.model.f_usegas = '';
624
- this.$refs.paged.$refs.criteria.model.f_card_id = '';
625
- this.$refs.paged.$refs.criteria.model.f_check_date = '';
626
- },
627
- //气表品牌查询
628
- getTableBrands() {
629
- new HttpResetClass().load("POST", `/rs/sql/safe_singleTable_OrderBy`,
630
- {data: {items: "*", tablename: "t_gasbrand", orderitem: "id", condition: ` 1=1 `}},
631
- {resolveMsg: null, rejectMsg: null}).then((resp) => {
632
- resp.data.forEach((result) => {
633
- this.tableBrands.push({label: result.f_meter_brand, value: result.f_meter_brand})
634
- })
635
- })
636
- },
637
- //获取省市区列表
638
- getPcd(val) {
639
- this.pcds = [{label: '全部', value: ''}]
640
- new HttpResetClass().load("POST", `/rs/sql/safe_singleTable_OrderBy`,
641
- {data: {items: "*", tablename: "t_pcd", orderitem: "id", condition: `f_orgid in ${val}`}},
642
- {resolveMsg: null, rejectMsg: null}).then((pcdlist) => {
643
- pcdlist.data.forEach((result) => {
644
- this.pcds.push({label: result.f_pcd, value: result.f_pcd})
645
- })
646
- })
647
- },
648
- showaudio() {
649
- //tag
650
- this.audioshow = !this.audioshow
651
- //tag
652
- },
653
- getmeterbook(val) {
654
- this.cbc = []
655
- this.cbc.push({
656
- label: '全部',
657
- value: ''
658
- })
659
- if (val == '') {
660
-
661
- this.cbcs.forEach(res => {
662
- this.cbc.push({
663
- label: res.f_book_name,
664
- value: res.id
665
- })
666
- })
667
- } else {
668
- this.cbcs.forEach(res => {
669
- if (res.f_book_slice_area == val) {
670
- this.cbc.push({
671
- label: res.f_book_name,
672
- value: res.id
673
- })
674
- }
675
- })
676
- }
677
- },
678
- Mreadibook(val) {
679
- ////tag
680
- ////tag
681
- if (val) {
682
- new HttpResetClass().load('POST', `/rs/sql/tel_singleTable_OrderBy`, {
683
- data: {
684
- items: 'name',
685
- tablename: 't_zone',
686
- condition: `parentid in ${val}`,
687
- orderitem: 'id'
688
- }
689
- }, {resolveMsg: null, rejectMsg: null}).then((res) => {
690
- this.sliceArea = []
691
- this.sliceArea.push({
692
- label: '全部',
693
- value: ''
694
- })
695
- res.data.forEach(ress => {
696
- this.sliceArea.push({
697
- label: ress.name,
698
- value: ress.name
699
- })
700
- })
701
-
702
- })
703
- }
704
- },
705
- getAllMeterBook(val) {
706
- ////tag
707
- ////tag
708
- this.cbcs = []
709
- if (val) {
710
- new HttpResetClass().load('POST', `/rs/sql/tel_singleTable_OrderBy`, {
711
- data: {
712
- items: 'f_book_name,f_book_slice_area,id',
713
- tablename: 't_meter_book',
714
- condition: `f_filiale_id in ${val}`,
715
- orderitem: 'id'
716
- }
717
- }, {resolveMsg: null, rejectMsg: null}).then((res) => {
718
- res.data.forEach(ress => {
719
- this.cbcs.push({
720
- id: ress.id,
721
- f_book_name: ress.f_book_name,
722
- f_book_slice_area: ress.f_book_slice_area
723
- })
724
- })
725
- this.cbc = []
726
- this.cbc.push({
727
- label: '全部',
728
- value: ''
729
- })
730
- this.cbcs.forEach(res => {
731
- this.cbc.push({
732
- label: res.f_book_name,
733
- value: res.id
734
- })
735
- })
736
- })
737
- }
738
- },
739
- getRes(obj) {
740
- this.model.f_filialeid = this.$login.convertToIn(obj.resids);
741
- this.searchData.f_filialeid = this.$login.convertToIn(obj.resids);
742
- this.Mreadibook(this.model.f_filialeid)
743
- this.getAllMeterBook(this.model.f_filialeid)
744
- this.getPcd(this.model.f_filialeid)
745
- //this.$refs.paged.$refs.criteria.search()
746
- },
747
-
748
- change(row) {
749
- asyncReady(this).then(() => {
750
- if (row.f_safe_type == '已挂表未办卡安检') {
751
- row.f_upload_state = '已传'
752
- this.$goto('new-check-paper-temp', {
753
- f_plan_id: row.f_check_plan_id,
754
- item: row,
755
- role: 'view'
756
- }, 'self', () => this.search())
757
- return
758
- }
759
- row.f_upload_state = '已传'
760
- this.$goto('new-check-paper', {
761
- f_plan_id: row.f_check_plan_id,
762
- item: row,
763
- role: 'view'
764
- }, 'self', () => this.search())
765
- }).catch(
766
- (respanse) => {
767
- alert('获取配置文件失败')
768
- })
769
- },
770
- readConfig() {
771
- let gen = asyncReady(this)
772
- return co(gen)
773
- },
774
- showChooser() {
775
- this.showModal = true
776
- },
777
- hidden() {
778
- this.criteriaShow = !this.criteriaShow
779
- },
780
- refresh() {
781
- this.$refs.paged.$refs.criteria.search()
782
- },
783
- ok() {
784
- this.showModal = false
785
- if (this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow.id) {
786
- this.model.f_plan_id = this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow.id
787
- this.model.f_check_plan = this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow
788
- }
789
- },
790
- cancel() {
791
- this.showModal = false
792
- this.model.f_check_plan = {f_plan_name: '', id: ''}
793
- this.model.f_plan_id = ''
794
- },
795
- print(row) {
796
- this.showcheckmsg = true
797
- this.checkInfo = row
798
- },
799
-
800
- sort(field, rule) {
801
- // 将所有排序方式设为不排序,实现相互排斥
802
- for (let key in this.orderFields) {
803
- if (key === field) {
804
- this.orderFields[key] = rule
805
- } else {
806
- this.orderFields[key] = 'no'
807
- }
808
- }
809
- // 如果新规则不排序,还原为默认排序
810
- if (rule === 'no') {
811
- this.model.paramSource.orderitem = `'${this.orderDefault}'`
812
- } else {
813
- this.model.paramSource.orderitem = `'${field} ${rule}'`
814
- }
815
- this.search()
816
- },
817
- search() {
818
- console.log('审核通过回调')
819
- this.$refs.paged.$refs.criteria.search()
820
- },
821
- selfSearch(args) {
822
- ////tag
823
- //args.condition+=" and f_check_type='民用'"
824
- if (args.model.f_check_date) {
825
- const daysBefore = Number(args.model.f_check_date);
826
- if (daysBefore > 0) {
827
- // 获取当前日期
828
- const now = new Date();
829
- // 计算三天前的日期
830
- const threeDaysBefore = new Date(now.getTime() - (daysBefore * 24 * 60 * 60 * 1000));
831
- // 如果需要格式化日期,可以使用Date对象的方法
832
- var formattedDate = threeDaysBefore.toISOString().split('T')[0];
833
- args.condition += ` and f_offsite_time <='${formattedDate} 23:59:59'`;
834
- } else {
835
- console.error('f_check_date不是一个有效的正整数');
836
- }
837
- }
838
-
839
- if (args.model.f_result) {
840
- if(args.model.f_result == '正常'){
841
- args.condition += ` and f_defect_content like '%正常%' `
842
- }else{
843
- args.condition += ` and f_defect_content like '%有隐患%' `
844
- }
845
- }
846
- this.model.search(args.condition, args.model, args.condValue)
847
- }
848
- },
849
- ready() {
850
- if (this.safeAudit) {
851
- let oa = {
852
- 'f_approved_by': '审核人',
853
- 'f_approvedstart_time': '审核开始时间',
854
- 'f_approved_time': '审核结束时间',
855
- 'f_approved': '审核状态'
856
- }
857
- this.excelHeaders = Object.assign({}, this.excelHeaders, oa)
858
- }
859
- ////tag
860
- this.function = this.f
861
- ////tag
862
- //获取气表品牌
863
- this.getTableBrands()
864
- let gen = select(this)
865
- //this.pianqu()
866
- this.Mreadibook(`('${this.$login.f.orgid}')`)
867
- co(gen)
868
- },
869
- watch: {
870
- 'model.f_no_checkplan'(val) {
871
- if (this.model.f_no_checkplan) {
872
- this.searchData.f_no_checkplan = val
873
- }
874
- if (this.model.f_no_checkplan == '有计划安检') {
875
-
876
- this.showChooser()
877
- }
878
- },
879
- 'model.condition'(val) {
880
- if (val) {
881
- this.searchData.condition = val
882
- }
883
-
884
- },
885
- 'model.f_entry'(val) {
886
- this.searchData.f_entry_status = val
887
- },
888
- 'model.f_plan_id'(val) {
889
- if (val) {
890
- this.searchData.f_plan_id = val
891
- }
892
- },
893
- 'model.f_slice_area'(val) {
894
- },
895
- 'model.f_approved'(val) {
896
- if (val) {
897
- this.searchData.f_approved = val
898
- }
899
- },
900
- }
901
-
902
- }
903
- </script>
1
+ <template>
2
+ <div class="flex-row">
3
+ <div class="basic-main">
4
+ <criteria-paged :model="model" v-ref:paged @sort="sort">
5
+ <criteria partial='criteria' class="search_area" @condition-changed='$parent.selfSearch' v-ref:criteria>
6
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
7
+ <div class="row">
8
+ <div class="form-group col-sm-2">
9
+ <label class="font_normal_body">客户编号</label>
10
+ <input type="text" class="input_search" v-model="model.f_userinfo_code"
11
+ style="width: 60%" placeholder="客户编号" condition="f_userinfo_code='{}'">
12
+ </div>
13
+ <div class="form-group col-sm-2">
14
+ <label class="font_normal_body">客户名称</label>
15
+ <input type="text" class="input_search" v-model="model.f_user_name"
16
+ style="width: 60%" placeholder="客户名称" condition="f_user_name like '%{}%'">
17
+ </div>
18
+ <div class="form-group col-sm-2">
19
+ <label class="font_normal_body">客户电话</label>
20
+ <input type="text" class="input_search" v-model="model.f_user_phone"
21
+ style="width: 60%" placeholder="客户电话" condition="f_user_phone like '%{}%'">
22
+ </div>
23
+ <div class="form-group col-sm-2">
24
+ <label class="font_normal_body">客户表号</label>
25
+ <input type="text" class="input_search" v-model="model.f_meternumber"
26
+ style="width: 60%" placeholder="客户表号" condition="f_meternumber like '%{}%'">
27
+ </div>
28
+ <div class="form-group col-sm-2">
29
+ <label class="font_normal_body">小&emsp;&emsp;区</label>
30
+ <input type="text" class="input_search" v-model="model.f_residential_area"
31
+ style="width: 60%" placeholder="小区" condition="f_residential_area like '%{}%'">
32
+ </div>
33
+ <div class="form-group col-sm-2">
34
+ <label class="font_normal_body">详细地址</label>
35
+ <input type="text" class="input_search" v-model="model.f_address"
36
+ style="width: 60%" placeholder="详细地址" condition="f_address like '%{}%'">
37
+ </div>
38
+ <div class="form-group col-sm-2" style="width: auto;margin-top:8px;float: right">
39
+
40
+ <export-excel-safe :data="$parent.$parent.searchData"
41
+ :field="$parent.$parent.excelHeaders"
42
+ :choose-col="true"
43
+ sqlurl="rs/logic/SafeExportExcel" sql-name="查找安检单"
44
+ template-name='安检记录明细'></export-excel-safe>
45
+ <button class="button_spacing button_search" @click="$parent.$parent.showaudio()"
46
+ v-if="$parent.$parent.audioshow">隐藏
47
+ </button>
48
+
49
+ <button class="button_spacing button_search" @click="search()">查询</button>
50
+ <button class="button_spacing button_search" @click="clear()">清空</button>
51
+ <div style="float: right" class="button_spacing"
52
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
53
+ @click="$parent.$parent.hidden()"></div>
54
+ </div>
55
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
56
+ <label class="font_normal_body">安检计划</label>
57
+ <input type="text" class="input_search" v-model="$parent.$parent.model.f_check_plan.f_plan_name"
58
+ @click="$parent.$parent.showChooser"
59
+ style="width: 60%" placeholder="安检计划" readonly="readonly">
60
+ </div>
61
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
62
+ <label class="font_normal_body">开始时间</label>
63
+ <datepicker
64
+ :value.sync="model.f_check_start"
65
+ placeholder='开始时间' style="width: 60%"
66
+ :disabled-days-of-week="[]"
67
+ :format="'yyyy-MM-dd'"
68
+ :show-rest-button="reset"
69
+ v-model="model.f_check_start"
70
+ condition="f_offsite_time > ='{} 00:00:00'">
71
+ </datepicker>
72
+ </div>
73
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
74
+ <label class="font_normal_body">结束时间</label>
75
+ <datepicker
76
+ :value.sync="model.f_check_end"
77
+ placeholder='结束时间' style="width: 60%"
78
+ :disabled-days-of-week="[]"
79
+ :format="'yyyy-MM-dd'"
80
+ :show-rest-button="reset"
81
+ v-model="model.f_check_end"
82
+ condition="f_offsite_time <= '{} 23:59:59'">
83
+ </datepicker>
84
+ </div>
85
+
86
+
87
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
88
+
89
+ <label class="font_normal_body">安检类型</label>
90
+ <v-select :value.sync="model.f_safecheck_type" v-model='model.f_safecheck_type'
91
+ :value-single="true" style="width: 60%"
92
+ class="select_list select"
93
+ :options='$parent.$parent.safetype' placeholder='安检类型'
94
+ close-on-select
95
+ condition="f_safecheck_type = '{}'"></v-select>
96
+ </div>
97
+
98
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
99
+
100
+ <label class="font_normal_body">客户类型</label>
101
+ <v-select :value.sync="model.f_check_type" v-model='model.f_check_type'
102
+ :value-single="true" style="width: 60%"
103
+ class="select_list select"
104
+ :options='$parent.$parent.checktype' placeholder='客户类型'
105
+ close-on-select
106
+ condition="f_check_type = '{}'"></v-select>
107
+ </div>
108
+
109
+
110
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
111
+ <label class="font_normal_body">安检状态</label>
112
+ <v-select id="f_entry"
113
+ class="select_list select"
114
+ placeholder='安检状态' style="width: 60%"
115
+ v-model='model.f_entry'
116
+ :value.sync="$parent.$parent.model.f_entry"
117
+ :options='$parent.$parent.f_entry_status'
118
+ condition=""
119
+ :value-single="true"
120
+ close-on-select clear-button></v-select>
121
+ </div>
122
+ <div class="col-sm-4 form-group" v-show="$parent.$parent.criteriaShow" style="margin: 0">
123
+ <role-selector-safe
124
+ role-name="安检员"
125
+ role-lable="安&nbsp;检&nbsp;员&nbsp;"
126
+ @re-res="$parent.$parent.getRes"
127
+ :value.sync="model.f_checker_id"
128
+ v-model="model.f_checker_id"
129
+ condition="f_checker_name = '{}'">
130
+ </role-selector-safe>
131
+ </div>
132
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
133
+ <label class="font_normal_body">片&emsp;&emsp;区</label>
134
+ <v-select class="select_list select"
135
+ placeholder='片区/管理站' style="width: 60%"
136
+ :value.sync="model.f_slice_area" v-model="model.f_slice_area"
137
+ :options='$parent.$parent.sliceArea'
138
+ filer-key="name"
139
+ close-on-select clear-button
140
+ condition="f_slice_area='{}'"
141
+ @change="$parent.$parent.getmeterbook(model.f_slice_area)"
142
+ :value-single="true">
143
+ </v-select>
144
+ </div>
145
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
146
+ <label class="font_normal_body">抄&ensp;表&ensp;册</label>
147
+ <v-select class="select_list select"
148
+ placeholder='抄表册' style="width: 60%"
149
+ :value.sync="model.f_meter_book_num" v-model="model.f_meter_book_num"
150
+ :options='$parent.$parent.cbc'
151
+ filer-key="name"
152
+ close-on-select clear-button
153
+ condition="f_meter_book_num={}"
154
+ :value-single="true">
155
+ </v-select>
156
+ </div>
157
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
158
+ <label class="font_normal_body">省&ensp;市&ensp;区</label>
159
+ <v-select class="select_list select"
160
+ placeholder='请选择' style="width: 60%"
161
+ :value.sync="model.f_pcd" v-model="model.f_pcd"
162
+ :options='$parent.$parent.pcds'
163
+ filer-key="name"
164
+ close-on-select clear-button
165
+ condition="f_pcd='{}'"
166
+ :value-single="true">
167
+ </v-select>
168
+ </div>
169
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
170
+ <label class="font_normal_body">开户时间</label>
171
+ <datepicker
172
+ :value.sync="model.f_check_gasstart"
173
+ placeholder='开始时间' style="width: 60%"
174
+ :disabled-days-of-week="[]"
175
+ :format="'yyyy-MM-dd'"
176
+ :show-rest-button="reset"
177
+ v-model="model.f_check_gasstart"
178
+ condition=" f_gas_date > ='{} 00:00:00'">
179
+ </datepicker>
180
+ </div>
181
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
182
+ <label class="font_normal_body">开户时间</label>
183
+ <datepicker
184
+ :value.sync="model.f_check_gasend"
185
+ placeholder='结束时间' style="width: 60%"
186
+ :disabled-days-of-week="[]"
187
+ :format="'yyyy-MM-dd'"
188
+ :show-rest-button="reset"
189
+ v-model="model.f_check_gasend"
190
+ condition=" f_gas_date <= '{} 23:59:59'">
191
+ </datepicker>
192
+ </div>
193
+ <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit && $parent.$parent.criteriaShow ">
194
+ <label class="font_normal_body">审&ensp;核&ensp;人</label>
195
+ <input type="text" class="input_search" v-model="model.f_approved_by"
196
+ style="width: 60%" placeholder="审核人" condition="f_approved_by like '%{}%'">
197
+ </div>
198
+ <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit && $parent.$parent.criteriaShow ">
199
+ <label class="font_normal_body">审核时间</label>
200
+ <datepicker
201
+ :value.sync="model.f_approved_timestart"
202
+ placeholder='开始时间' style="width: 60%"
203
+ :disabled-days-of-week="[]"
204
+ :format="'yyyy-MM-dd'"
205
+ :show-rest-button="reset"
206
+ v-model="model.f_approved_timestart"
207
+ condition="f_approved_time > ='{} 00:00:00'">
208
+ </datepicker>
209
+ </div>
210
+ <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit && $parent.$parent.criteriaShow ">
211
+ <label class="font_normal_body">审核时间</label>
212
+ <datepicker
213
+ :value.sync="model.f_approved_timeend"
214
+ placeholder='结束时间' style="width: 60%"
215
+ :disabled-days-of-week="[]"
216
+ :format="'yyyy-MM-dd'"
217
+ :show-rest-button="reset"
218
+ v-model="model.f_approved_timeend"
219
+ condition="f_approved_time <= '{} 23:59:59'">
220
+ </datepicker>
221
+ </div>
222
+ <div class="form-group col-sm-2" v-show="$parent.$parent.safeAudit &&$parent.$parent.criteriaShow">
223
+ <label class="font_normal_body" title="参数管理:安检审核状态">审核状态</label>
224
+ <v-select class="select_list select"
225
+ placeholder='请选择' style="width: 60%"
226
+ :value.sync="model.f_approved" v-model="model.f_approved"
227
+ :options='$parent.$parent.approveds'
228
+ filer-key="name"
229
+ close-on-select clear-button
230
+ condition="f_approved='{}'"
231
+ :value-single="true">
232
+ </v-select>
233
+ </div>
234
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
235
+ <label class="font_normal_body">气表品牌</label>
236
+ <v-select
237
+ class="select_list select"
238
+ placeholder='气表品牌' style="width: 60%"
239
+ v-model='model.tableBrand'
240
+ :value.sync="model.tableBrand"
241
+ :options='$parent.$parent.tableBrands'
242
+ condition="f_meter_brand = '{}'"
243
+ :value-single="true"
244
+ close-on-select clear-button></v-select>
245
+ </div>
246
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
247
+ <label class="font_normal_body">有无计划</label>
248
+ <v-select class="select_list select"
249
+ placeholder='请选择' style="width: 60%"
250
+ :value.sync="model.f_no_checkplan" v-model="model.f_no_checkplan"
251
+ :options='$parent.$parent.no_checkplans'
252
+ filer-key="name"
253
+ close-on-select clear-button
254
+ condition="f_no_checkplan='{}'"
255
+ :value-single="true">
256
+ </v-select>
257
+ </div>
258
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
259
+ <label class="font_normal_body">未用燃气</label>
260
+ <v-select class="select_list select"
261
+ placeholder='请选择' style="width: 60%"
262
+ :value.sync="model.f_usegas" v-model="model.f_usegas"
263
+ :options='$parent.$parent.usegas'
264
+ filer-key="name"
265
+ close-on-select clear-button
266
+ condition="f_usegas='{}'"
267
+ :value-single="true">
268
+ </v-select>
269
+ </div>
270
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
271
+ <label class="font_normal_body">客户卡号</label>
272
+ <input type="text" class="input_search" v-model="model.f_card_id"
273
+ style="width: 60%" placeholder="客户卡号" condition="f_card_id like '%{}%'">
274
+ </div>
275
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
276
+ <label class="font_normal_body">距上次安检天数</label>
277
+ <input type="number" class="input_search" v-model="model.f_check_date"
278
+ style="width: 60%" placeholder="距上次安检天数">
279
+ </div>
280
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
281
+ <label class="font_normal_body">安检结果</label>
282
+ <v-select class="select_list select"
283
+ placeholder='请选择' style="width: 60%"
284
+ :value.sync="model.f_result" v-model="model.f_result"
285
+ :options='$parent.$parent.results'
286
+ filer-key="name"
287
+ close-on-select clear-button
288
+ :value-single="true">
289
+ </v-select>
290
+ </div>
291
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
292
+ <label class="font_normal_body">用户标签</label>
293
+ <v-select class="select_list select"
294
+ placeholder='请选择' style="width: 60%"
295
+ :value.sync="model.f_user_tags" v-model="model.f_user_tags"
296
+ :options='$parent.$parent.userTags'
297
+ filer-key="name"
298
+ :multiple="true"
299
+ condition="f_user_tags in {}"
300
+ >
301
+ </v-select>
302
+ </div>
303
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
304
+ <label class="font_normal_body">用气类型</label>
305
+ <v-select class="select_list select"
306
+ placeholder='请选择' style="width: 60%"
307
+ :value.sync="model.f_user_gas_type" v-model="model.f_user_gas_type"
308
+ :options='$parent.$parent.userGasType'
309
+ filer-key="name"
310
+ :multiple="true"
311
+ condition="f_user_gas_type in {}"
312
+ >
313
+ </v-select>
314
+ </div>
315
+ </div>
316
+ <modal :show.sync="$parent.$parent.showModal" v-ref:modal backdrop="false">
317
+ <div slot="modal-header" class="modal-header">
318
+ <h4 class="modal-title">
319
+ 选择计划
320
+ </h4>
321
+ </div>
322
+ <div slot="modal-body" class="modal-body">
323
+ <plan-chooser :f.sync="$parent.$parent.fun" v-ref:chooser></plan-chooser>
324
+ </div>
325
+ <div slot="modal-footer" class="modal-footer" style="text-align: center">
326
+ <button class="button_search" @click="$parent.$parent.ok">确认</button>
327
+ <button class="button_search" @click="$parent.$parent.cancel">取消</button>
328
+ </div>
329
+ </modal>
330
+ </div>
331
+ </criteria>
332
+ <data-grid class="list_area table_sy" style="overflow: hidden" :model="model" partial='list' v-ref:grid>
333
+ <template partial='head'>
334
+ <tr>
335
+ <th>
336
+ <nobr>客户编号</nobr>
337
+ </th>
338
+ <th>
339
+ <nobr>客户名称</nobr>
340
+ </th>
341
+ <th>
342
+ <nobr>客户表号</nobr>
343
+ </th>
344
+ <th>
345
+ <nobr>气表品牌</nobr>
346
+ </th>
347
+ <th>
348
+ <nobr>客户电话</nobr>
349
+ </th>
350
+ <th>
351
+ <nobr>客户类型</nobr>
352
+ </th>
353
+ <th>
354
+ <nobr>客户地址</nobr>
355
+ </th>
356
+ <th>
357
+ <nobr>安检状态</nobr>
358
+ </th>
359
+ <th>
360
+ <nobr>计划名称</nobr>
361
+ </th>
362
+ <th>
363
+ <nobr>用气状态</nobr>
364
+ </th>
365
+ <th>
366
+ <nobr>用户标签</nobr>
367
+ </th>
368
+ <th>
369
+ <nobr>用气类型</nobr>
370
+ </th>
371
+ <th>
372
+ <data-order field="f_offsite_time" name="安检时间"></data-order>
373
+ </th>
374
+ <th>
375
+ <nobr>安检员</nobr>
376
+ </th>
377
+ <th>
378
+ <nobr>备注</nobr>
379
+ </th>
380
+ <th>
381
+ <nobr>开户时间</nobr>
382
+ </th>
383
+ <th v-if="$parent.$parent.$parent.safeAudit">
384
+ <nobr>审核人</nobr>
385
+ </th>
386
+ <th v-if="$parent.$parent.$parent.safeAudit">
387
+ <nobr>审核起始</nobr>
388
+ </th>
389
+ <th v-if="$parent.$parent.$parent.safeAudit">
390
+ <nobr>审核结束</nobr>
391
+ </th>
392
+ <th v-if="$parent.$parent.$parent.safeAudit">
393
+ <nobr>审核状态</nobr>
394
+ </th>
395
+ <th>
396
+ <nobr>操作</nobr>
397
+ </th>
398
+ <th v-if="$parent.$parent.$parent.audioshow">
399
+ <nobr>录音</nobr>
400
+ </th>
401
+ </tr>
402
+ </template>
403
+ <template partial='body'>
404
+
405
+ <td style="text-align: center">{{ row.f_userinfo_code }}</td>
406
+ <td style="text-align: center">{{ row.f_user_name }}</td>
407
+ <td style="text-align: center">{{ row.f_meternumber }}</td>
408
+ <td style="text-align: center">{{ row.f_meter_brand }}</td>
409
+ <td style="text-align: center">{{ row.f_user_phone }}</td>
410
+ <td style="text-align: center">{{ row.f_check_type }}</td>
411
+
412
+ <td style="text-align: center">{{ row.f_address }}</td>
413
+ <td style="text-align: center">{{ row.f_entry_status }}</td>
414
+ <td style="text-align: center">{{ row.f_plan_name }}</td>
415
+ <td style="text-align: center">{{ row.f_usegas }}</td>
416
+ <td style="text-align: center">{{ row.f_user_tags }}</td>
417
+ <td style="text-align: center">{{ row.f_user_gas_type }}</td>
418
+ <td style="text-align: center">{{ row.f_offsite_time }}</td>
419
+ <td style="text-align: center">{{ row.f_checker_name }}</td>
420
+ <td style="text-align: center">{{ row.f_repair_approved_note }}</td>
421
+ <td style="text-align: center">{{ row.f_gas_date }}</td>
422
+ <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">{{ row.f_approved_by }}</td>
423
+ <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">{{
424
+ row.f_approvedstart_time
425
+ }}
426
+ </td>
427
+ <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">{{ row.f_approved_time }}</td>
428
+ <td style="text-align: center" v-show="$parent.$parent.$parent.safeAudit">
429
+ {{ row.f_approved ? row.f_approved : '未审核' }}
430
+ </td>
431
+ <td style="text-align: center">
432
+ <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.change(row)'>查看</button>
433
+
434
+
435
+ </td>
436
+ <td style="text-align: center" v-if="$parent.$parent.$parent.audioshow">
437
+ <!-- <button class="button_spacing button_search-1" @click='$parent.$parent.$parent.change(row)'>查看</button>-->
438
+ <audio controls="controls" v-if="row.f_recording1_path">
439
+ <source type="audio/mpeg" :src="'rs/audio/file/'+row.f_recording1_path">
440
+ </audio>
441
+ <!--<button type="button" class="button_new-1 button_spacing" data-toggle="dropdown"
442
+ @click="$parent.$parent.$parent.print(row)">
443
+ 打印
444
+ </button>-->
445
+ </td>
446
+ </template>
447
+ </data-grid>
448
+ </criteria-paged>
449
+ <check-msg v-if="showcheckmsg" :show="showcheckmsg" :data="checkInfo"></check-msg>
450
+ </div>
451
+ </div>
452
+ </template>
453
+
454
+ <script>
455
+ import {PagedList} from 'vue-client'
456
+ import Vue from 'vue'
457
+ import co from 'co'
458
+ import AppData from '../../../stores/AppData'
459
+ import * as Util from '../../../components/Util'
460
+ import getNowDate from "../../../utils/getNowDate";
461
+ import HttpResetClass from "vue-client/src/plugins/HttpResetClass";
462
+ import BenzAMRRecorder from 'benz-amr-recorder'
463
+
464
+ //获取json配置文件
465
+ let asyncReady = async function (self) {
466
+ // 获取配置信息
467
+ try {
468
+ let res = await Vue.resetget(`/phone/rs/vue`, {data: {}}, {resolveMsg: null, rejectMsg: null})
469
+ Vue.config = res.data
470
+ } catch (error) {
471
+ // 忽略704,文件找不到异常R
472
+ if (error.status !== 704) {
473
+ throw error
474
+ }
475
+ }
476
+ }
477
+
478
+ let select = function* (self) {
479
+ let http = new HttpResetClass()
480
+ let getGasman = yield http.load('POST', '/rs/search', {
481
+ source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
482
+ userid: self.$login.f.id
483
+ }, {resolveMsg: null, rejectMsg: null})
484
+ ////tag
485
+ self.checkersid.push({label: '全部', value: ''})
486
+ getGasman.data.forEach((checker) => {
487
+ self.checkersid.push({label: checker.name, value: checker.id})
488
+ })
489
+ }
490
+
491
+ export default {
492
+ title: '安检结果查看',
493
+ data() {
494
+ let model = new PagedList('rs/sql/查找安检单', 20, {
495
+ f_plan_id: 'this.f_plan_id',
496
+ f_approved: 'this.f_approved',
497
+ f_entry_status: 'this.f_entry',
498
+ f_no_checkplan: 'this.f_no_checkplan',
499
+ f_filialeid: 'this.f_filialeid',
500
+ orderitem: "'f_offsite_time desc'"
501
+ })
502
+ model.f_check_type = ''
503
+ model.f_plan_id = ''
504
+ model.f_approved = ''
505
+ model.f_entry = ''
506
+ model.f_no_checkplan = ''
507
+ model.f_filialeid = `('${this.$login.f.orgid}')`
508
+ //model.f_check_type='民用'
509
+ // let searchData={
510
+ // f_plan_id: this.model.f_checker_id==undefined?"":this.model.f_checker_id,
511
+ // f_approved: this.model.f_approved,
512
+ // f_entry_status: this.model.f_entry,
513
+ // f_no_checkplan:this.model.f_no_checkplan[0],
514
+ // f_filialeid: this.model.f_filialeid,
515
+ // //orderitem: this.model.f_offsite_time,
516
+ // //condition:this.model.condition
517
+ // }
518
+ // model.f_subcompany = this.$login.f.f_fengongsi
519
+ return {
520
+ tableBrands: [{label: '全部', value: ''}],
521
+ audioshow: false,
522
+ safeAudit: this.$appdata.getSingleValue('安检审核') == '是' ? true : false,
523
+ searchData: {
524
+ condition: "1=1",
525
+ orderitem: "f_offsite_time desc",
526
+ f_plan_id: "",
527
+ f_approved: '',
528
+ f_entry_status: '',
529
+ f_no_checkplan: '',
530
+ f_filialeid: `('${this.$login.f.orgid}')`
531
+ },
532
+ results:[{label: '全部', value: ''},{label: '正常', value: '正常'},{label: '有隐患', value: '有隐患'}],
533
+ model: model,
534
+ excelHeaders: {
535
+ //searchData:searchData,
536
+ 'f_userinfo_code': '客户编号',
537
+ 'f_user_name': '客户姓名',
538
+ 'f_meternumber': '客户表号',
539
+ 'f_user_phone': '客户电话',
540
+ 'f_check_type': '客户类型',
541
+ 'f_residential_area': '小区',
542
+ 'f_address': '客户地址',
543
+ 'f_entry_status': '安检状态',
544
+ 'f_usegas': '用气状态',
545
+ 'f_offsite_time': '安检时间',
546
+ 'f_checker_name': '安检员',
547
+ 'f_safecheck_type': '安检类型',
548
+ 'f_repair_approved_note': '备注',
549
+ 'f_gas_date': '开户时间',
550
+ 'f_plan_name': '计划名称',
551
+ },
552
+ fun: this.$login.f,
553
+ pcds: [],
554
+ userTags:[{label: '全部', value: ''},...this.$appdata.getParam('用户标签')],
555
+ userGasType:[{label: '全部', value: ''},...this.$appdata.getParam('用气类型')],
556
+ checkersid: [],
557
+ approveds: this.$appdata.getParam('安检审核状态') ? [{
558
+ label: '全部',
559
+ value: ''
560
+ }, ...this.$appdata.getParam('安检审核状态')] : [{label: '全部', value: ''}],
561
+ safetype: this.$appdata.getParam('安检类型') ? [{
562
+ label: '全部',
563
+ value: ''
564
+ }, ...this.$appdata.getParam('安检类型')] : [{label: '全部', value: ''}],
565
+ criteriaShow: false,
566
+ checktype: this.$appdata.getParam('用户类型') ? [{
567
+ label: '全部',
568
+ value: ''
569
+ }, ...this.$appdata.getParam('用户类型')] : [{label: '全部', value: ''}],
570
+ f_check_type: [{label: '全部', value: ''}, {label: '民用', value: '民用'}, {label: '非民用', value: '非民用'}],
571
+ showModal: false,
572
+ safe_types: this.$appdata.getParam('计划类型') ? [{
573
+ label: '全部',
574
+ value: ''
575
+ }, ...this.$appdata.getParam('计划类型')] : [{label: '全部', value: ''}],
576
+ f_approval_states: this.$appdata.getParam('安检单审核状态') ? [{
577
+ label: '全部',
578
+ value: ''
579
+ }, ...this.$appdata.getParam('安检单审核状态')] : [{label: '全部', value: ''}],
580
+ f_entry_status: this.$appdata.getParam('安检状态') ? [{
581
+ label: '全部',
582
+ value: ''
583
+ }, ...this.$appdata.getParam('安检状态')] : [{label: '全部', value: ''}],
584
+ no_checkplans: this.$appdata.getParam('有无计划') ? [{
585
+ label: '全部',
586
+ value: ''
587
+ }, ...this.$appdata.getParam('有无计划')] : [{label: '全部', value: ''}],
588
+ usegas: this.$appdata.getParam('用气状态') ? [{
589
+ label: '全部',
590
+ value: ''
591
+ }, ...this.$appdata.getParam('用气状态')] : [{label: '全部', value: ''}],
592
+ showcheckmsg: false,
593
+ checkInfo: {},
594
+ orderDefault: "'f_offsite_time'",
595
+ orderFields: {
596
+ f_offsite_time: 'no'
597
+ },
598
+ sliceArea: [],
599
+ cbc: []
600
+ }
601
+ },
602
+ methods: {
603
+ clear() {
604
+ this.$refs.paged.$refs.criteria.model.f_userinfo_code = '';
605
+ this.$refs.paged.$refs.criteria.model.f_user_name = '';
606
+ this.$refs.paged.$refs.criteria.model.f_user_phone = '';
607
+ this.$refs.paged.$refs.criteria.model.f_meternumber = '';
608
+ this.$refs.paged.$refs.criteria.model.f_residential_area = '';
609
+
610
+ this.$refs.paged.$refs.criteria.model.f_check_plan.f_plan_name = '';
611
+ this.$refs.paged.$refs.criteria.model.f_check_start = '';
612
+ this.$refs.paged.$refs.criteria.model.f_check_end = '';
613
+ this.$refs.paged.$refs.criteria.model.f_safecheck_type = '';
614
+ this.$refs.paged.$refs.criteria.model.f_check_type = '';
615
+ this.$refs.paged.$refs.criteria.model.f_entry = '';
616
+
617
+ this.$refs.paged.$refs.criteria.model.f_checker_id = '';
618
+ this.$refs.paged.$refs.criteria.model.f_slice_area = '';
619
+ this.$refs.paged.$refs.criteria.model.f_meter_book_num = '';
620
+ this.$refs.paged.$refs.criteria.model.f_pcd = '';
621
+ this.$refs.paged.$refs.criteria.model.f_check_gasstart = '';
622
+
623
+ this.$refs.paged.$refs.criteria.model.f_check_gasend = '';
624
+ this.$refs.paged.$refs.criteria.model.f_approved_by = '';
625
+ this.$refs.paged.$refs.criteria.model.f_approved_timestart = '';
626
+ this.$refs.paged.$refs.criteria.model.f_approved_timeend = '';
627
+ this.$refs.paged.$refs.criteria.model.f_approved = '';
628
+
629
+ this.$refs.paged.$refs.criteria.model.tableBrand = '';
630
+ this.$refs.paged.$refs.criteria.model.f_no_checkplan = '';
631
+ this.$refs.paged.$refs.criteria.model.f_usegas = '';
632
+ this.$refs.paged.$refs.criteria.model.f_card_id = '';
633
+ this.$refs.paged.$refs.criteria.model.f_check_date = '';
634
+ },
635
+ //气表品牌查询
636
+ getTableBrands() {
637
+ new HttpResetClass().load("POST", `/rs/sql/safe_singleTable_OrderBy`,
638
+ {data: {items: "*", tablename: "t_gasbrand", orderitem: "id", condition: ` 1=1 `}},
639
+ {resolveMsg: null, rejectMsg: null}).then((resp) => {
640
+ resp.data.forEach((result) => {
641
+ this.tableBrands.push({label: result.f_meter_brand, value: result.f_meter_brand})
642
+ })
643
+ })
644
+ },
645
+ //获取省市区列表
646
+ getPcd(val) {
647
+ this.pcds = [{label: '全部', value: ''}]
648
+ new HttpResetClass().load("POST", `/rs/sql/safe_singleTable_OrderBy`,
649
+ {data: {items: "*", tablename: "t_pcd", orderitem: "id", condition: `f_orgid in ${val}`}},
650
+ {resolveMsg: null, rejectMsg: null}).then((pcdlist) => {
651
+ pcdlist.data.forEach((result) => {
652
+ this.pcds.push({label: result.f_pcd, value: result.f_pcd})
653
+ })
654
+ })
655
+ },
656
+ showaudio() {
657
+ //tag
658
+ this.audioshow = !this.audioshow
659
+ //tag
660
+ },
661
+ getmeterbook(val) {
662
+ this.cbc = []
663
+ this.cbc.push({
664
+ label: '全部',
665
+ value: ''
666
+ })
667
+ if (val == '') {
668
+
669
+ this.cbcs.forEach(res => {
670
+ this.cbc.push({
671
+ label: res.f_book_name,
672
+ value: res.id
673
+ })
674
+ })
675
+ } else {
676
+ this.cbcs.forEach(res => {
677
+ if (res.f_book_slice_area == val) {
678
+ this.cbc.push({
679
+ label: res.f_book_name,
680
+ value: res.id
681
+ })
682
+ }
683
+ })
684
+ }
685
+ },
686
+ Mreadibook(val) {
687
+ ////tag
688
+ ////tag
689
+ if (val) {
690
+ new HttpResetClass().load('POST', `/rs/sql/tel_singleTable_OrderBy`, {
691
+ data: {
692
+ items: 'name',
693
+ tablename: 't_zone',
694
+ condition: `parentid in ${val}`,
695
+ orderitem: 'id'
696
+ }
697
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
698
+ this.sliceArea = []
699
+ this.sliceArea.push({
700
+ label: '全部',
701
+ value: ''
702
+ })
703
+ res.data.forEach(ress => {
704
+ this.sliceArea.push({
705
+ label: ress.name,
706
+ value: ress.name
707
+ })
708
+ })
709
+
710
+ })
711
+ }
712
+ },
713
+ getAllMeterBook(val) {
714
+ ////tag
715
+ ////tag
716
+ this.cbcs = []
717
+ if (val) {
718
+ new HttpResetClass().load('POST', `/rs/sql/tel_singleTable_OrderBy`, {
719
+ data: {
720
+ items: 'f_book_name,f_book_slice_area,id',
721
+ tablename: 't_meter_book',
722
+ condition: `f_filiale_id in ${val}`,
723
+ orderitem: 'id'
724
+ }
725
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
726
+ res.data.forEach(ress => {
727
+ this.cbcs.push({
728
+ id: ress.id,
729
+ f_book_name: ress.f_book_name,
730
+ f_book_slice_area: ress.f_book_slice_area
731
+ })
732
+ })
733
+ this.cbc = []
734
+ this.cbc.push({
735
+ label: '全部',
736
+ value: ''
737
+ })
738
+ this.cbcs.forEach(res => {
739
+ this.cbc.push({
740
+ label: res.f_book_name,
741
+ value: res.id
742
+ })
743
+ })
744
+ })
745
+ }
746
+ },
747
+ getRes(obj) {
748
+ this.model.f_filialeid = this.$login.convertToIn(obj.resids);
749
+ this.searchData.f_filialeid = this.$login.convertToIn(obj.resids);
750
+ this.Mreadibook(this.model.f_filialeid)
751
+ this.getAllMeterBook(this.model.f_filialeid)
752
+ this.getPcd(this.model.f_filialeid)
753
+ //this.$refs.paged.$refs.criteria.search()
754
+ },
755
+
756
+ change(row) {
757
+ asyncReady(this).then(() => {
758
+ if (row.f_safe_type == '已挂表未办卡安检') {
759
+ row.f_upload_state = '已传'
760
+ this.$goto('new-check-paper-temp', {
761
+ f_plan_id: row.f_check_plan_id,
762
+ item: row,
763
+ role: 'view'
764
+ }, 'self', () => this.search())
765
+ return
766
+ }
767
+ row.f_upload_state = '已传'
768
+ this.$goto('new-check-paper', {
769
+ f_plan_id: row.f_check_plan_id,
770
+ item: row,
771
+ role: 'view'
772
+ }, 'self', () => this.search())
773
+ }).catch(
774
+ (respanse) => {
775
+ alert('获取配置文件失败')
776
+ })
777
+ },
778
+ readConfig() {
779
+ let gen = asyncReady(this)
780
+ return co(gen)
781
+ },
782
+ showChooser() {
783
+ this.showModal = true
784
+ },
785
+ hidden() {
786
+ this.criteriaShow = !this.criteriaShow
787
+ },
788
+ refresh() {
789
+ this.$refs.paged.$refs.criteria.search()
790
+ },
791
+ ok() {
792
+ this.showModal = false
793
+ if (this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow.id) {
794
+ this.model.f_plan_id = this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow.id
795
+ this.model.f_check_plan = this.$refs.paged.$refs.criteria.$refs.modal.$children[0].selectedRow
796
+ }
797
+ },
798
+ cancel() {
799
+ this.showModal = false
800
+ this.model.f_check_plan = {f_plan_name: '', id: ''}
801
+ this.model.f_plan_id = ''
802
+ },
803
+ print(row) {
804
+ this.showcheckmsg = true
805
+ this.checkInfo = row
806
+ },
807
+
808
+ sort(field, rule) {
809
+ // 将所有排序方式设为不排序,实现相互排斥
810
+ for (let key in this.orderFields) {
811
+ if (key === field) {
812
+ this.orderFields[key] = rule
813
+ } else {
814
+ this.orderFields[key] = 'no'
815
+ }
816
+ }
817
+ // 如果新规则不排序,还原为默认排序
818
+ if (rule === 'no') {
819
+ this.model.paramSource.orderitem = `'${this.orderDefault}'`
820
+ } else {
821
+ this.model.paramSource.orderitem = `'${field} ${rule}'`
822
+ }
823
+ this.search()
824
+ },
825
+ search() {
826
+ console.log('审核通过回调')
827
+ this.$refs.paged.$refs.criteria.search()
828
+ },
829
+ selfSearch(args) {
830
+ ////tag
831
+ //args.condition+=" and f_check_type='民用'"
832
+ if (args.model.f_check_date) {
833
+ const daysBefore = Number(args.model.f_check_date);
834
+ if (daysBefore > 0) {
835
+ // 获取当前日期
836
+ const now = new Date();
837
+ // 计算三天前的日期
838
+ const threeDaysBefore = new Date(now.getTime() - (daysBefore * 24 * 60 * 60 * 1000));
839
+ // 如果需要格式化日期,可以使用Date对象的方法
840
+ var formattedDate = threeDaysBefore.toISOString().split('T')[0];
841
+ args.condition += ` and f_offsite_time <='${formattedDate} 23:59:59'`;
842
+ } else {
843
+ console.error('f_check_date不是一个有效的正整数');
844
+ }
845
+ }
846
+
847
+ if (args.model.f_result) {
848
+ if(args.model.f_result == '正常'){
849
+ args.condition += ` and f_defect_content like '%正常%' `
850
+ }else{
851
+ args.condition += ` and f_defect_content like '%有隐患%' `
852
+ }
853
+ }
854
+ this.model.search(args.condition, args.model, args.condValue)
855
+ }
856
+ },
857
+ ready() {
858
+ if (this.safeAudit) {
859
+ let oa = {
860
+ 'f_approved_by': '审核人',
861
+ 'f_approvedstart_time': '审核开始时间',
862
+ 'f_approved_time': '审核结束时间',
863
+ 'f_approved': '审核状态'
864
+ }
865
+ this.excelHeaders = Object.assign({}, this.excelHeaders, oa)
866
+ }
867
+ ////tag
868
+ this.function = this.f
869
+ ////tag
870
+ //获取气表品牌
871
+ this.getTableBrands()
872
+ let gen = select(this)
873
+ //this.pianqu()
874
+ this.Mreadibook(`('${this.$login.f.orgid}')`)
875
+ co(gen)
876
+ },
877
+ watch: {
878
+ 'model.f_no_checkplan'(val) {
879
+ if (this.model.f_no_checkplan) {
880
+ this.searchData.f_no_checkplan = val
881
+ }
882
+ if (this.model.f_no_checkplan == '有计划安检') {
883
+
884
+ this.showChooser()
885
+ }
886
+ },
887
+ 'model.condition'(val) {
888
+ if (val) {
889
+ this.searchData.condition = val
890
+ }
891
+
892
+ },
893
+ 'model.f_entry'(val) {
894
+ this.searchData.f_entry_status = val
895
+ },
896
+ 'model.f_plan_id'(val) {
897
+ if (val) {
898
+ this.searchData.f_plan_id = val
899
+ }
900
+ },
901
+ 'model.f_slice_area'(val) {
902
+ },
903
+ 'model.f_approved'(val) {
904
+ if (val) {
905
+ this.searchData.f_approved = val
906
+ }
907
+ },
908
+ }
909
+
910
+ }
911
+ </script>