safecheck-client 4.0.0-9 → 4.0.0-90

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 (363) hide show
  1. package/.babelrc +5 -5
  2. package/.editorconfig +9 -9
  3. package/android.html +18 -18
  4. package/config/dev.env.js +6 -6
  5. package/config/index.js +38 -38
  6. package/config/prod.env.js +3 -3
  7. package/config/test.env.js +6 -6
  8. package/docs/AppBase.md +22 -22
  9. package/docs/Busy.md +14 -14
  10. package/docs/CriteriaPaged.md +47 -47
  11. package/docs/DataGrid.md +54 -54
  12. package/docs/DataModel.md +22 -22
  13. package/docs/Dynamic.md +42 -42
  14. package/docs/GetParams.md +11 -11
  15. package/docs/HttpBusy.md +13 -13
  16. package/docs/HttpStore.md +29 -29
  17. package/docs/MessageBox.md +28 -28
  18. package/docs/PagedList.md +29 -29
  19. package/docs/Pager.md +21 -21
  20. package/docs/Project.md +23 -23
  21. package/docs/Route.md +105 -105
  22. package/docs/SafetyCheck/AdjustPlan.md +13 -13
  23. package/docs/SafetyCheck/CheckerPlan.md +12 -12
  24. package/docs/Task.md +46 -46
  25. package/docs/TreeList.md +28 -28
  26. package/docs/TreeMixin.md +18 -18
  27. package/docs/all.md +10 -10
  28. package/docs/list.md +42 -42
  29. package/docs/partial.md +75 -75
  30. package/docs/selector.md +82 -82
  31. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/Snippets.md +28 -28
  32. 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
  33. 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
  34. 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
  35. package/docs//347/225/214/351/235/242/345/210/266/344/275/234/350/247/204/350/214/203.md +54 -54
  36. package/examples/AddressList/App.vue +13 -13
  37. package/examples/AddressList/index.html +11 -11
  38. package/examples/DispatchList/App.vue +10 -10
  39. package/examples/DispatchList/BaseTree.vue +13 -13
  40. package/examples/DispatchList/Init.vue +22 -22
  41. package/examples/DispatchList/Test.vue +20 -20
  42. package/examples/DispatchList/index.html +11 -11
  43. package/examples/DispatchList/main.js +18 -18
  44. package/home.html +16 -16
  45. package/package.json +2 -2
  46. package/publish.bat +7 -7
  47. package/release.bat +5 -5
  48. package/src/Widget.vue +13 -13
  49. package/src/android-bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  50. package/src/android-bootstrap/less/.csscomb.json +304 -304
  51. package/src/android-bootstrap/less/.csslintrc +19 -19
  52. package/src/android-bootstrap/less/alerts.less +73 -73
  53. package/src/android-bootstrap/less/badges.less +66 -66
  54. package/src/android-bootstrap/less/bootstrap.less +56 -56
  55. package/src/android-bootstrap/less/breadcrumbs.less +26 -26
  56. package/src/android-bootstrap/less/button-groups.less +247 -247
  57. package/src/android-bootstrap/less/buttons.less +173 -173
  58. package/src/android-bootstrap/less/carousel.less +269 -269
  59. package/src/android-bootstrap/less/close.less +34 -34
  60. package/src/android-bootstrap/less/code.less +69 -69
  61. package/src/android-bootstrap/less/component-animations.less +33 -33
  62. package/src/android-bootstrap/less/grid.less +84 -84
  63. package/src/android-bootstrap/less/input-groups.less +167 -167
  64. package/src/android-bootstrap/less/jumbotron.less +52 -52
  65. package/src/android-bootstrap/less/labels.less +64 -64
  66. package/src/android-bootstrap/less/list-group.less +141 -141
  67. package/src/android-bootstrap/less/media.less +66 -66
  68. package/src/android-bootstrap/less/mixins/alerts.less +14 -14
  69. package/src/android-bootstrap/less/mixins/background-variant.less +9 -9
  70. package/src/android-bootstrap/less/mixins/border-radius.less +18 -18
  71. package/src/android-bootstrap/less/mixins/buttons.less +69 -69
  72. package/src/android-bootstrap/less/mixins/center-block.less +7 -7
  73. package/src/android-bootstrap/less/mixins/clearfix.less +22 -22
  74. package/src/android-bootstrap/less/mixins/forms.less +90 -90
  75. package/src/android-bootstrap/less/mixins/gradients.less +59 -59
  76. package/src/android-bootstrap/less/mixins/grid-framework.less +92 -92
  77. package/src/android-bootstrap/less/mixins/grid.less +122 -122
  78. package/src/android-bootstrap/less/mixins/hide-text.less +21 -21
  79. package/src/android-bootstrap/less/mixins/image.less +33 -33
  80. package/src/android-bootstrap/less/mixins/labels.less +12 -12
  81. package/src/android-bootstrap/less/mixins/list-group.less +30 -30
  82. package/src/android-bootstrap/less/mixins/nav-divider.less +10 -10
  83. package/src/android-bootstrap/less/mixins/nav-vertical-align.less +9 -9
  84. package/src/android-bootstrap/less/mixins/opacity.less +8 -8
  85. package/src/android-bootstrap/less/mixins/pagination.less +24 -24
  86. package/src/android-bootstrap/less/mixins/panels.less +24 -24
  87. package/src/android-bootstrap/less/mixins/progress-bar.less +10 -10
  88. package/src/android-bootstrap/less/mixins/reset-filter.less +8 -8
  89. package/src/android-bootstrap/less/mixins/reset-text.less +18 -18
  90. package/src/android-bootstrap/less/mixins/resize.less +6 -6
  91. package/src/android-bootstrap/less/mixins/responsive-visibility.less +15 -15
  92. package/src/android-bootstrap/less/mixins/size.less +10 -10
  93. package/src/android-bootstrap/less/mixins/tab-focus.less +9 -9
  94. package/src/android-bootstrap/less/mixins/table-row.less +44 -44
  95. package/src/android-bootstrap/less/mixins/text-emphasis.less +9 -9
  96. package/src/android-bootstrap/less/mixins/text-overflow.less +8 -8
  97. package/src/android-bootstrap/less/mixins/vendor-prefixes.less +227 -227
  98. package/src/android-bootstrap/less/mixins.less +40 -40
  99. package/src/android-bootstrap/less/modals.less +151 -151
  100. package/src/android-bootstrap/less/navbar.less +660 -660
  101. package/src/android-bootstrap/less/navs.less +290 -290
  102. package/src/android-bootstrap/less/normalize.less +424 -424
  103. package/src/android-bootstrap/less/pager.less +76 -76
  104. package/src/android-bootstrap/less/pagination.less +89 -89
  105. package/src/android-bootstrap/less/panels.less +274 -274
  106. package/src/android-bootstrap/less/popovers.less +131 -131
  107. package/src/android-bootstrap/less/print.less +101 -101
  108. package/src/android-bootstrap/less/progress-bars.less +87 -87
  109. package/src/android-bootstrap/less/responsive-embed.less +35 -35
  110. package/src/android-bootstrap/less/responsive-utilities.less +194 -194
  111. package/src/android-bootstrap/less/scaffolding.less +161 -161
  112. package/src/android-bootstrap/less/tables.less +262 -262
  113. package/src/android-bootstrap/less/theme.less +291 -291
  114. package/src/android-bootstrap/less/thumbnails.less +36 -36
  115. package/src/android-bootstrap/less/tooltip.less +102 -102
  116. package/src/android-bootstrap/less/type.less +303 -303
  117. package/src/android-bootstrap/less/utilities.less +55 -55
  118. package/src/android-bootstrap/less/variables.less +896 -896
  119. package/src/android-bootstrap/less/wells.less +29 -29
  120. package/src/androidTest.js +20 -20
  121. package/src/bootstrap/less/.csscomb.json +304 -304
  122. package/src/bootstrap/less/.csslintrc +19 -19
  123. package/src/bootstrap/less/alerts.less +73 -73
  124. package/src/bootstrap/less/badges.less +66 -66
  125. package/src/bootstrap/less/breadcrumbs.less +26 -26
  126. package/src/bootstrap/less/button-groups.less +247 -247
  127. package/src/bootstrap/less/buttons.less +172 -172
  128. package/src/bootstrap/less/carousel.less +269 -269
  129. package/src/bootstrap/less/close.less +34 -34
  130. package/src/bootstrap/less/code.less +69 -69
  131. package/src/bootstrap/less/component-animations.less +33 -33
  132. package/src/bootstrap/less/dropdowns.less +216 -216
  133. package/src/bootstrap/less/forms.less +626 -626
  134. package/src/bootstrap/less/grid.less +84 -84
  135. package/src/bootstrap/less/input-groups.less +167 -167
  136. package/src/bootstrap/less/jumbotron.less +52 -52
  137. package/src/bootstrap/less/labels.less +64 -64
  138. package/src/bootstrap/less/list-group.less +141 -141
  139. package/src/bootstrap/less/media.less +66 -66
  140. package/src/bootstrap/less/mixins/alerts.less +14 -14
  141. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  142. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  143. package/src/bootstrap/less/mixins/buttons.less +69 -69
  144. package/src/bootstrap/less/mixins/center-block.less +7 -7
  145. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  146. package/src/bootstrap/less/mixins/forms.less +90 -90
  147. package/src/bootstrap/less/mixins/gradients.less +59 -59
  148. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  149. package/src/bootstrap/less/mixins/grid.less +122 -122
  150. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  151. package/src/bootstrap/less/mixins/image.less +33 -33
  152. package/src/bootstrap/less/mixins/labels.less +12 -12
  153. package/src/bootstrap/less/mixins/list-group.less +30 -30
  154. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  155. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  156. package/src/bootstrap/less/mixins/opacity.less +8 -8
  157. package/src/bootstrap/less/mixins/pagination.less +24 -24
  158. package/src/bootstrap/less/mixins/panels.less +24 -24
  159. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  160. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  161. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  162. package/src/bootstrap/less/mixins/resize.less +6 -6
  163. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  164. package/src/bootstrap/less/mixins/size.less +10 -10
  165. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  166. package/src/bootstrap/less/mixins/table-row.less +44 -44
  167. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  168. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  169. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  170. package/src/bootstrap/less/mixins.less +40 -40
  171. package/src/bootstrap/less/modals.less +151 -151
  172. package/src/bootstrap/less/navbar.less +660 -660
  173. package/src/bootstrap/less/normalize.less +424 -424
  174. package/src/bootstrap/less/pagination.less +89 -89
  175. package/src/bootstrap/less/panels.less +275 -275
  176. package/src/bootstrap/less/popovers.less +131 -131
  177. package/src/bootstrap/less/print.less +101 -101
  178. package/src/bootstrap/less/progress-bars.less +87 -87
  179. package/src/bootstrap/less/responsive-embed.less +35 -35
  180. package/src/bootstrap/less/responsive-utilities.less +194 -194
  181. package/src/bootstrap/less/scaffolding.less +161 -161
  182. package/src/bootstrap/less/theme.less +291 -291
  183. package/src/bootstrap/less/thumbnails.less +36 -36
  184. package/src/bootstrap/less/tooltip.less +102 -102
  185. package/src/bootstrap/less/type.less +303 -303
  186. package/src/bootstrap/less/utilities.less +55 -55
  187. package/src/bootstrap/less/wells.less +29 -29
  188. package/src/components/FileUpload.vue +696 -696
  189. package/src/components/Hello.vue +39 -39
  190. package/src/components/LeftTree.vue +27 -27
  191. package/src/components/NewDefectList/DefectListNew.vue +11 -14
  192. package/src/components/NewDefectList/DefectPaperNew.vue +44 -44
  193. package/src/components/Util/ImgSelfSafePlus.vue +13 -3
  194. package/src/components/android/AndroidDefectDeal.vue +1 -1
  195. package/src/components/android/AndroidDefectDealBeforeSafe.vue +1 -1
  196. package/src/components/android/AndroidDefectDetails.vue +769 -0
  197. package/src/components/android/AttendanceTally.vue +116 -116
  198. package/src/components/android/BlackUserOnLine.vue +2 -2
  199. package/src/components/android/Blank.vue +10 -10
  200. package/src/components/android/CheckUnplanPage.vue +56 -56
  201. package/src/components/android/Checker.vue +12 -12
  202. package/src/components/android/CheckerAnnual.vue +81 -81
  203. package/src/components/android/CheckerAvarta.vue +82 -82
  204. package/src/components/android/EquipmentInspection.vue +348 -348
  205. package/src/components/android/FootprintMap.vue +120 -120
  206. package/src/components/android/HiddentroubleInvestigation.vue +192 -192
  207. package/src/components/android/Insurance/PhoneInsurancePurchase.vue +1 -1
  208. package/src/components/android/Insurance/PhoneInsurancePurchaseDetail.vue +4 -4
  209. package/src/components/android/MasterMain.vue +77 -77
  210. package/src/components/android/Menu.vue +132 -132
  211. package/src/components/android/NewCheckpaperAndroid.vue +28 -21
  212. package/src/components/android/PaperAlarm.vue +85 -85
  213. package/src/components/android/PaperDeviceNoncivil.vue +214 -214
  214. package/src/components/android/PaperFeedback.vue +15 -13
  215. package/src/components/android/PaperFeedbackTemp.vue +2 -2
  216. package/src/components/android/PhoneUpUserinfo.vue +20 -0
  217. package/src/components/android/PlumberAnnual.vue +83 -83
  218. package/src/components/android/PlumberAnnualDetail.vue +65 -65
  219. package/src/components/android/PlumberMonthly.vue +84 -84
  220. package/src/components/android/PostMap.vue +83 -83
  221. package/src/components/android/QueryCheckHistory.vue +122 -122
  222. package/src/components/android/QueryCheckHistoryItem.vue +62 -62
  223. package/src/components/android/RelieveRestrict.vue +1 -1
  224. package/src/components/android/RepairMain.vue +60 -60
  225. package/src/components/android/Repairman.vue +12 -12
  226. package/src/components/android/Restriction.vue +1 -1
  227. package/src/components/android/SafecheckDevices.vue +47 -2
  228. package/src/components/android/SafecheckOrderV.vue +2 -2
  229. package/src/components/android/SealBind.vue +392 -0
  230. package/src/components/android/SealManage.vue +250 -0
  231. package/src/components/android/StationMaster.vue +12 -12
  232. package/src/components/defects/DefectModal.vue +101 -101
  233. package/src/components/defects/DevicesAndItem.vue +39 -39
  234. package/src/components/inspections/inspectionFeedback.vue +2 -2
  235. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  236. package/src/components/notice/NoticeForm.vue +100 -100
  237. package/src/components/notice/NoticeIssue.vue +20 -20
  238. package/src/components/paper/PaperList.vue +796 -779
  239. package/src/components/paper/PicViewer.vue +18 -18
  240. package/src/components/pc/AddToCheckBook.vue +100 -23
  241. package/src/components/pc/CheckBook.vue +2 -0
  242. package/src/components/pc/CheckBookDetails.vue +6 -39
  243. package/src/components/pc/CheckBookEntry.vue +6 -7
  244. package/src/components/pc/CheckBookList.vue +61 -72
  245. package/src/components/pc/CheckBookSearchArea.vue +20 -24
  246. package/src/components/pc/CheckBookSearchUser.vue +139 -84
  247. package/src/components/pc/CheckBookSearchUserList.vue +1 -2
  248. package/src/components/pc/CheckBookUser.vue +276 -44
  249. package/src/components/pc/DefectDeal.vue +1 -1
  250. package/src/components/pc/NewCheckpaper.vue +16 -10
  251. package/src/components/pc/NewCheckpaperTemp.vue +5 -5
  252. package/src/components/pc/PaperDefectMain.vue +1 -0
  253. package/src/components/pc/RoleSelectorDep.vue +2 -1
  254. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  255. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  256. package/src/components/phonestate/PostMap.vue +82 -82
  257. package/src/components/planmanage/PlanManage.vue +825 -821
  258. package/src/components/planmanage/checkPlanList.vue +28 -0
  259. package/src/components/planmanage/checkUserList.vue +346 -346
  260. package/src/components/querycheckpaper/CheckSearchUser.vue +68 -68
  261. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  262. package/src/components/report/CheckPlanAreaList.vue +266 -266
  263. package/src/components/rongcheng/AspPaperFeedback.vue +1 -1
  264. package/src/components/rongcheng/PaperFeedback.vue +2 -2
  265. package/src/components/safecheck/queryManage/CheckBookAll.vue +2 -2
  266. package/src/components/userfile/MeterFile.vue +145 -145
  267. package/src/components/userfile/MeterModify.vue +46 -46
  268. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  269. package/src/filiale/ancheng/android/PaperFeedback.vue +2 -2
  270. package/src/filiale/ankangyihua/android/AndroidDefectDeal.vue +1 -1
  271. package/src/filiale/baiyin/android/AndroidDefectDeal.vue +1 -1
  272. package/src/filiale/bayan/android/PaperFeedback.vue +2 -2
  273. package/src/filiale/fugou/pc/PaperDefectMain.vue +1 -1
  274. package/src/filiale/hanzhong/android/PaperFeedback.vue +2 -2
  275. package/src/filiale/huatong/android/PaperFeedback.vue +2 -2
  276. package/src/filiale/huayin/android/PaperFeedback.vue +2 -2
  277. package/src/filiale/huayin/android/SafecheckOrderV.vue +1 -1
  278. package/src/filiale/jiaocheng/android/PaperFeedback.vue +2 -2
  279. package/src/filiale/jingyang/android/PaperFeedback.vue +2 -2
  280. package/src/filiale/jinhong/android/CurrentCreate.vue +1195 -0
  281. package/src/filiale/jinhong/android/PhoneInsurancePurchaseDetail.vue +174 -99
  282. package/src/filiale/jinhong/android/PhoneInsuranceRecordList.vue +339 -0
  283. package/src/filiale/jinhong/android.js +3 -1
  284. package/src/filiale/jinhong/pc/CheckBookList.vue +388 -0
  285. package/src/filiale/jinhong/pc/CheckPlanAreaList.vue +528 -0
  286. package/src/filiale/jinhong/pc/CheckSearchUser.vue +1094 -0
  287. package/src/filiale/jinhong/pc/DefectListNew.vue +663 -0
  288. package/src/filiale/jinhong/pc/DefectPaperNew.vue +1100 -0
  289. package/src/filiale/jinhong/pc/PaperList.vue +845 -0
  290. package/src/filiale/jinhong/pc/PlanManage.vue +925 -0
  291. package/src/filiale/jinhong/pc/checkUserList.vue +776 -0
  292. package/src/filiale/jinhong/pc.js +12 -0
  293. package/src/filiale/kelai/android/AndroidDefectDeal.vue +2 -2
  294. package/src/filiale/kelai/android/PaperFeedback.vue +2 -2
  295. package/src/filiale/kelai/android/RelieveRestrict.vue +1 -1
  296. package/src/filiale/kelai/android/SafecheckOrderV.vue +1 -1
  297. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasPaper.vue +1 -1
  298. package/src/filiale/meihekou/android/AreaPlan.vue +577 -0
  299. package/src/filiale/meihekou/android/CheckPlanList.vue +198 -0
  300. package/src/filiale/meihekou/android/CheckPlanListArea.vue +190 -0
  301. package/src/filiale/meihekou/android/CurrentCreate.vue +1097 -0
  302. package/src/filiale/meihekou/android/MeterReading.vue +106 -0
  303. package/src/filiale/meihekou/android/PaperFeedback.vue +1538 -0
  304. package/src/filiale/meihekou/android/PhoneInsurancePurchaseDetail.vue +293 -0
  305. package/src/filiale/meihekou/android/PhoneUpUserinfo.vue +1306 -0
  306. package/src/filiale/meihekou/android/SafecheckOrderV.vue +2412 -0
  307. package/src/filiale/meihekou/android/SafecheckUserInfo.vue +785 -0
  308. package/src/filiale/meihekou/android.js +21 -0
  309. package/src/filiale/meihekou/pc/NewCheckpaper.vue +1959 -0
  310. package/src/filiale/meihekou/pc/NewCheckpaperTemp.vue +1288 -0
  311. package/src/filiale/meihekou/pc.js +13 -0
  312. package/src/filiale/pingxiang/android/PaperFeedback.vue +2 -2
  313. package/src/filiale/qianneng/android/PaperFeedback.vue +2 -2
  314. package/src/filiale/qingjian/pc/NewCheckpaper.vue +5 -11
  315. package/src/filiale/rizhao/android/PaperFeedback.vue +2 -2
  316. package/src/filiale/rongchuang/android/PaperFeedback.vue +2 -2
  317. package/src/filiale/shanggao/android/PaperFeedback.vue +2 -2
  318. package/src/filiale/shanxian/android/AndroidDefectDeal.vue +1 -1
  319. package/src/filiale/shanxian/android/PaperFeedback.vue +2 -2
  320. package/src/filiale/shexian/android/AndroidDefectDeal.vue +1 -1
  321. package/src/filiale/shexian/android/PaperFeedback.vue +2 -2
  322. package/src/filiale/shimen/android/PaperFeedback.vue +2 -2
  323. package/src/filiale/tongchuan/android/AndroidDefectDeal.vue +1 -1
  324. package/src/filiale/tongchuan/android/PaperFeedback.vue +2 -2
  325. package/src/filiale/weinan/android/SafecheckOrderV.vue +3 -3
  326. package/src/filiale/wenxi/android/PaperFeedback.vue +3 -3
  327. package/src/filiale/wuan/android/PaperFeedback.vue +2 -2
  328. package/src/filiale/wuhai/android/PaperFeedback.vue +2 -2
  329. package/src/filiale/xiangyuanzhongai/android/AndroidDefectDeal.vue +634 -0
  330. package/src/filiale/xiangyuanzhongai/android/PhoneUpUserinfo.vue +1251 -0
  331. package/src/filiale/xiangyuanzhongai/android/SafecheckDevices.vue +20 -1
  332. package/src/filiale/xiangyuanzhongai/android/SafecheckOrderV.vue +2282 -0
  333. package/src/filiale/xiangyuanzhongai/android/SafecheckUserInfo.vue +786 -0
  334. package/src/filiale/xiangyuanzhongai/android.js +4 -0
  335. package/src/filiale/xiangyuanzhongai/pc/DefectDeal.vue +1007 -0
  336. package/src/filiale/xiangyuanzhongai/pc/PaperList.vue +791 -0
  337. package/src/filiale/xiangyuanzhongai/pc.js +2 -0
  338. package/src/filiale/yangchunboneng/android/PaperFeedback.vue +2 -2
  339. package/src/filiale/yongzhou/android/PaperFeedback.vue +2 -2
  340. package/src/filiale/yuansheng/android/AndroidDefectDeal.vue +1 -1
  341. package/src/filiale/yuansheng/android/PaperFeedback.vue +2 -2
  342. package/src/filiale/yunchengminsheng/android/DailyworkloadQuery.vue +2 -2
  343. package/src/filiale/yunchengminsheng/android/PhoneSellInfo.vue +113 -0
  344. package/src/filiale/yunchengminsheng/android/SafecheckOrderV.vue +4 -2
  345. package/src/filiale/yunchengminsheng/android/SafecheckUserInfo.vue +1 -1
  346. package/src/filiale/yunchengminsheng/android.js +1 -0
  347. package/src/filiale/yunchengminsheng/pc/NewCheckpaper.vue +1544 -1536
  348. package/src/filiale/zhongsheng/android/PaperFeedback.vue +2 -2
  349. package/src/filiale/zhoukou/android/PaperFeedback.vue +2 -2
  350. package/src/main.js +1 -1
  351. package/src/plugins/LoadData.js +10 -10
  352. package/src/plugins/LoadParams.js +24 -24
  353. package/src/safecheck-android.js +3 -0
  354. package/src/stores/wxconfig.js +10 -10
  355. package/src/utils/getNowDate.js +33 -33
  356. package/test/e2e/custom-assertions/elementCount.js +26 -26
  357. package/test/e2e/nightwatch.conf.js +40 -40
  358. package/test/e2e/runner.js +30 -30
  359. package/test/e2e/specs/test.js +13 -13
  360. package/test/unit/.eslintrc +5 -5
  361. package/test/unit/TestUtil.js +62 -62
  362. package/test/unit/context.html +20 -20
  363. package/test/unit/index.js +13 -13
@@ -0,0 +1,1100 @@
1
+ <template>
2
+ <div class="flex">
3
+ <work-busy :is-busy="isbusy"></work-busy>
4
+ <criteria-paged :model="model" v-ref:paged>
5
+ <criteria partial='criteria' @condition-changed='$parent.search' v-ref:criteria>
6
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
7
+ <div class="row" v-show="!$parent.$parent.$parent.showItem">
8
+ <div :class="$parent.$parent.style">
9
+ <label class="font_normal_body">安检计划</label>
10
+ <input type="text" class="input_search" v-model="$parent.$parent.f_check_plan.f_plan_name"
11
+ @click="$parent.$parent.showChooser"
12
+ style="width: 60%" placeholder="安检计划" readonly="readonly">
13
+ </div>
14
+ <div :class="$parent.$parent.style" v-show="false">
15
+ <label class="font_normal_body">存在隐患</label>
16
+ <v-select style="width:60% "
17
+ class="select select_list"
18
+ :value.sync="model.f_has_defect"
19
+ v-model="model.f_has_defect"
20
+ :options='$parent.$parent.hasDefectOptions'
21
+ :placeholder='model.f_has_defect'
22
+ condition="f_has_defect = '{}'"
23
+ close-on-select>
24
+ </v-select>
25
+ </div>
26
+ <div :class="$parent.$parent.style">
27
+ <label class="font_normal_body">用户编号</label>
28
+ <input type="text" class="input_search" v-model="model.f_userinfo_code"
29
+ condition="f_userinfo_code = '{}'"
30
+ style="width: 60%" placeholder="用户编号">
31
+ </div>
32
+ <div :class="$parent.$parent.style">
33
+ <label class="font_normal_body">完成情况</label>
34
+ <v-select
35
+ placeholder='完成情况查询'
36
+ :value-single="true"
37
+ class="select select_list" style="width: 60%"
38
+ v-model='model.f_is_repair'
39
+ :value.sync="model.f_is_repair"
40
+ :options='$parent.$parent.repaired'
41
+ condition="f_is_repair = '{}'"
42
+ close-on-select clear-button> </v-select>
43
+ </div>
44
+ <div :class="$parent.$parent.style">
45
+ <label class="font_normal_body">处理情况</label>
46
+ <v-select
47
+ placeholder='处理情况查询'
48
+ :value-single="true"
49
+ class="select select_list" style="width: 60%"
50
+ v-model='model.f_is_deal'
51
+ :value.sync="model.f_is_deal"
52
+ :options='$parent.$parent.deals'
53
+ condition="f_is_deal = '{}'"
54
+ close-on-select clear-button> </v-select>
55
+ </div>
56
+ <div class=" col-sm-4 form-group button-range" >
57
+ <div class="span" style="float: right;margin-top: 8px">
58
+ <div style="float: right" class="button_spacing"
59
+ :class="{'button_shrink_left':$parent.$parent.$parent.showItem,'button_shrink_right':!$parent.$parent.$parent.showItem}"
60
+ @click="$parent.$parent.hiddenr()"></div>
61
+ <div style="float: right" class="button_spacing"
62
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
63
+ @click="$parent.$parent.hidden()"></div>
64
+ <button style="float: right" class="button_search button_spacing" @click="search">查询</button>
65
+ <button style="float: right" v-if="$parent.$parent.transfer=='是'" class="button_search button_spacing" @click="$parent.$parent.toRepair">转维修</button>
66
+ <div style="float: right">
67
+ <export-excel :data="{condition: $parent.$parent.model.condition,f_filialeids:$parent.$parent.model.f_filialeids,f_defect_content:$parent.$parent.model.f_defect_content}"
68
+ :field="$parent.$parent.getfield"
69
+ progress="safeGetExportProgress"
70
+ sqlurl="api/af-safecheck/logic/exportfile" sql-name="GetCheckPaperByDefectNew" template-name='安检隐患明细' :choose-col="true"></export-excel>
71
+ </div>
72
+ </div>
73
+ </div>
74
+ </div>
75
+ <div class="row" v-show="$parent.$parent.criteriaShow&&!$parent.$parent.$parent.showItem">
76
+ <div :class="$parent.$parent.style">
77
+ <label class="font_normal_body">片&emsp;&emsp;区</label>
78
+ <v-select class="select_list select"
79
+ placeholder='片区/管理站' style="width: 60%"
80
+ :value.sync="model.f_slice_area" v-model="model.f_slice_area"
81
+ :options='$parent.$parent.sliceArea'
82
+ filer-key="name"
83
+ close-on-select clear-button
84
+ condition="f_slice_area='{}'"
85
+ @change="$parent.$parent.getmeterbook(model.f_slice_area)"
86
+ :value-single="true">
87
+ </v-select>
88
+ </div>
89
+ <div :class="$parent.$parent.style2" style="margin: 0">
90
+ <role-selector-safe
91
+ role-name="安检员"
92
+ role-lable="安&nbsp;检&nbsp;员&nbsp;"
93
+ :resobjprop.sync="$parent.$parent.resids"
94
+ @re-res="$parent.$parent.getRes"
95
+ :value.sync="model.f_checker_id"
96
+ v-model="model.f_checker_id"
97
+ condition="f_checker_name = '{}'">
98
+ </role-selector-safe>
99
+ </div>
100
+
101
+ <div :class="$parent.$parent.style">
102
+ <label class="font_normal_body">安检册</label>
103
+ <v-select class="select_list select"
104
+ placeholder='安检册' style="width: 60%"
105
+ :value.sync="model.f_meter_book_num" v-model="model.f_meter_book_num"
106
+ :options='$parent.$parent.checkBooks'
107
+ filer-key="name"
108
+ close-on-select clear-button
109
+ condition="f_check_book_name like '%{}%'"
110
+ :value-single="true">
111
+ </v-select>
112
+ </div>
113
+ <div :class="$parent.$parent.style">
114
+ <label class="font_normal_body">起始时间</label>
115
+ <datepicker
116
+ placeholder='起始时间' style="width:60%"
117
+ :disabled-days-of-week="[]"
118
+ :format="'yyyy-MM-dd'"
119
+ :show-rest-button="reset"
120
+ :value.sync="model.f_start_time"
121
+ v-model="model.f_start_time"
122
+ condition="f_offsite_time >= '{} 00:00:00'">
123
+ </datepicker>
124
+ </div>
125
+ <div :class="$parent.$parent.style">
126
+ <label class="font_normal_body">结束时间</label>
127
+ <datepicker
128
+ placeholder='结束时间' style="width:60%"
129
+ :disabled-days-of-week="[]"
130
+ :format="'yyyy-MM-dd'"
131
+ :show-rest-button="reset"
132
+ :value.sync="model.f_end_time"
133
+ v-model="model.f_end_time"
134
+ condition="f_offsite_time <= '{} 23:59:59'">
135
+ </datepicker>
136
+ </div>
137
+
138
+ </div>
139
+ <div class="row" v-show="$parent.$parent.criteriaShow&&!$parent.$parent.$parent.showItem">
140
+
141
+ <div :class="$parent.$parent.style">
142
+ <label class="font_normal_body">维&ensp;修&ensp;员</label>
143
+ <input type="text" class="input_search" v-model="model.f_repairman"
144
+ condition="f_repairman = '{}'"
145
+ style="width: 60%" placeholder="维修员">
146
+ </div>
147
+ <div :class="$parent.$parent.style">
148
+ <label class="font_normal_body">用户名称</label>
149
+ <input type="text" class="input_search" v-model="model.f_user_name"
150
+ condition="f_user_name = '{}'"
151
+ style="width: 60%" placeholder="用户名称">
152
+ </div>
153
+ <div :class="$parent.$parent.style">
154
+ <label class="font_normal_body">小区名称:</label>
155
+ <input style="width: 60%" class="input_search" v-model="model.f_residential_area" placeholder="请输入小区(可模糊查询)" condition="f_residential_area like '%{}%'">
156
+ </div>
157
+
158
+ </div>
159
+
160
+
161
+
162
+ <div class="row" v-show="$parent.$parent.$parent.showItem">
163
+ <div :class="$parent.$parent.style">
164
+ <label class="font_normal_body">安检计划</label>
165
+ <input type="text" class="input_search" v-model="$parent.$parent.f_check_plan.f_plan_name"
166
+ @click="$parent.$parent.showChooser"
167
+ style="width: 60%" placeholder="安检计划" readonly="readonly">
168
+ </div>
169
+ <div :class="$parent.$parent.style" v-show="false">
170
+ <label class="font_normal_body">存在隐患</label>
171
+ <v-select style="width:60% "
172
+ class="select select_list"
173
+ :value.sync="model.f_has_defect"
174
+ v-model="model.f_has_defect"
175
+ :options='$parent.$parent.hasDefectOptions'
176
+ :placeholder='model.f_has_defect'
177
+ condition="f_has_defect = '{}'"
178
+ close-on-select>
179
+ </v-select>
180
+ </div>
181
+ <div class="row" v-show="$parent.$parent.$parent.showItem">
182
+ <div :class="$parent.$parent.style">
183
+ <label class="font_normal_body">用户编号</label>
184
+ <input type="text" class="input_search" v-model="model.f_userinfo_code"
185
+ condition="f_userinfo_code = '{}'"
186
+ style="width: 60%" placeholder="用户编号">
187
+ </div>
188
+
189
+ <div class=" col-sm-4 form-group button-range">
190
+ <div class="span" style="float: right;margin-top: 8px;margin-right: 50px">
191
+ <div style="float: right" class="button_spacing"
192
+ :class="{'button_shrink_left':$parent.$parent.$parent.showItem,'button_shrink_right':!$parent.$parent.$parent.showItem}"
193
+ @click="$parent.$parent.hiddenr()"></div>
194
+ <div style="float: right" class="button_spacing"
195
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
196
+ @click="$parent.$parent.hidden()"></div>
197
+ <button style="float: right" class="button_search button_spacing" @click="search">查询</button>
198
+ <button style="float: right" v-if="$parent.$parent.transfer=='是'" class="button_search button_spacing" @click="$parent.$parent.toRepair">转维修</button>
199
+ <div style="float: right">
200
+ <export-excel-old :data="{condition: $parent.$parent.model.condition,f_filialeids:$parent.$parent.model.f_filialeids}"
201
+ :field="$parent.$parent.getfield"
202
+ progress="safeGetExportProgress"
203
+ sqlurl="api/af-safecheck/logic/exportfile" sql-name="GetCheckPaperByDefectNew" template-name='安检计划明细' :choose-col="true"></export-excel-old>
204
+ </div>
205
+ </div>
206
+ </div>
207
+
208
+ </div>
209
+
210
+ <div :class="$parent.$parent.style">
211
+ <label class="font_normal_body">完成情况</label>
212
+ <v-select
213
+ placeholder='完成情况查询'
214
+ :value-single="true"
215
+ class="select select_list" style="width: 60%"
216
+ v-model='model.f_is_repair'
217
+ :value.sync="model.f_is_repair"
218
+ :options='$parent.$parent.repaired'
219
+ condition="f_is_repair = '{}'"
220
+ close-on-select clear-button> </v-select>
221
+ </div>
222
+ <div :class="$parent.$parent.style">
223
+ <label class="font_normal_body">处理情况</label>
224
+ <v-select
225
+ placeholder='处理情况查询'
226
+ :value-single="true"
227
+ class="select select_list" style="width: 60%"
228
+ v-model='model.f_is_deal'
229
+ :value.sync="model.f_is_deal"
230
+ :options='$parent.$parent.deals'
231
+ condition="f_is_deal = '{}'"
232
+ close-on-select clear-button> </v-select>
233
+ </div>
234
+ <div :class="$parent.$parent.style2" style="margin: 0">
235
+ <role-selector-safe
236
+ role-name="安检员"
237
+ :resobjprop.sync="$parent.$parent.resids"
238
+ role-lable="安&nbsp;检&nbsp;员&nbsp;"
239
+ @re-res="$parent.$parent.getRes"
240
+ :value.sync="model.f_checker_id"
241
+ v-model="model.f_checker_id"
242
+ condition="f_checker_name = '{}'">
243
+ </role-selector-safe>
244
+ </div>
245
+ </div>
246
+ <div class="row" v-show="$parent.$parent.criteriaShow && $parent.$parent.$parent.showItem">
247
+ <div :class="$parent.$parent.style">
248
+ <label class="font_normal_body">片&emsp;&emsp;区</label>
249
+ <v-select class="select_list select"
250
+ placeholder='片区/管理站' style="width: 60%"
251
+ :value.sync="model.f_slice_area" v-model="model.f_slice_area"
252
+ :options='$parent.$parent.sliceArea'
253
+ filer-key="name"
254
+ close-on-select clear-button
255
+ condition="f_slice_area='{}'"
256
+ @change="$parent.$parent.getmeterbook(model.f_slice_area)"
257
+ :value-single="true">
258
+ </v-select>
259
+ </div>
260
+ <div :class="$parent.$parent.style">
261
+ <label class="font_normal_body">安检册</label>
262
+ <v-select class="select_list select"
263
+ placeholder='安检册' style="width: 60%"
264
+ :value.sync="model.f_meter_book_num" v-model="model.f_meter_book_num"
265
+ :options='$parent.$parent.checkBooks'
266
+ filer-key="name"
267
+ close-on-select clear-button
268
+ condition="f_check_book_name like '%{}%'"
269
+ :value-single="true">
270
+ </v-select>
271
+ </div>
272
+ <div :class="$parent.$parent.style">
273
+ <label class="font_normal_body">起始时间</label>
274
+ <datepicker
275
+ placeholder='起始时间' style="width:60%"
276
+ :disabled-days-of-week="[]"
277
+ :format="'yyyy-MM-dd'"
278
+ :show-rest-button="reset"
279
+ :value.sync="model.f_start_time"
280
+ v-model="model.f_start_time"
281
+ condition="f_offsite_time >= '{} 00:00:00'">
282
+ </datepicker>
283
+ </div>
284
+ <div :class="$parent.$parent.style">
285
+ <label class="font_normal_body">结束时间</label>
286
+ <datepicker
287
+ placeholder='结束时间' style="width:60%"
288
+ :disabled-days-of-week="[]"
289
+ :format="'yyyy-MM-dd'"
290
+ :show-rest-button="reset"
291
+ :value.sync="model.f_end_time"
292
+ v-model="model.f_end_time"
293
+ condition="f_offsite_time <= '{} 23:59:59'">
294
+ </datepicker>
295
+ </div>
296
+ </div>
297
+ <div class="row" v-show="$parent.$parent.criteriaShow && $parent.$parent.$parent.showItem">
298
+ <div :class="$parent.$parent.style">
299
+ <label class="font_normal_body">维&ensp;修&ensp;员</label>
300
+ <input type="text" class="input_search" v-model="model.f_repairman"
301
+ condition="f_repairman = '{}'"
302
+ style="width: 60%" placeholder="维修员">
303
+ </div>
304
+ <div :class="$parent.$parent.style">
305
+ <label class="font_normal_body">用户名称</label>
306
+ <input type="text" class="input_search" v-model="model.f_user_name"
307
+ condition="f_user_name = '{}'"
308
+ style="width: 60%" placeholder="用户名称">
309
+ </div>
310
+ <div :class="$parent.$parent.style">
311
+ <label class="font_normal_body">小区名称:</label>
312
+ <div class="col-xs-8" >
313
+ <input style="width: 60%" class="input_search" v-model="model.f_residential_area" placeholder="请输入小区(可模糊查询)" condition="f_residential_area like '%{}%'">
314
+ </div>
315
+ </div>
316
+ </div>
317
+ </div>
318
+ </criteria>
319
+ <data-grid :model="model" partial='list' v-ref:grid class="list_area table_sy">
320
+ <template partial='head'>
321
+ <tr>
322
+ <th v-if="$parent.$parent.$parent.transfer=='是'"><nobr><!--<input type="checkbox" v-model="$parent.$parent.$parent.checkAll" @click.stop="()=>{return}" />-->选择</nobr></th>
323
+ <th><nobr>入户状态</nobr></th>
324
+ <th><nobr>用户编号</nobr></th>
325
+ <th><nobr>用户名</nobr></th>
326
+ <th><nobr>用户电话</nobr></th>
327
+ <th><nobr>用户小区</nobr></th>
328
+ <th><nobr>用户地址</nobr></th>
329
+ <th><nobr>安检时间</nobr></th>
330
+ <th><nobr>安检员</nobr></th>
331
+ <th><nobr>计划名</nobr></th>
332
+ <th><nobr>是否有隐患</nobr></th>
333
+ <th><nobr>隐患数</nobr></th>
334
+ <th><nobr>处理数</nobr></th>
335
+ <th><nobr>完成数</nobr></th>
336
+ <th><nobr>处理情况</nobr></th>
337
+ <th><nobr>完成情况</nobr></th>
338
+ <!-- <th><nobr>维修情况</nobr></th>-->
339
+ <th><nobr>维修员</nobr></th>
340
+ <th><nobr>隐患明细</nobr></th>
341
+ </tr>
342
+ </template>
343
+ <template partial='body'>
344
+ <td v-if="$parent.$parent.$parent.transfer=='是'" style="text-align: center;white-space:nowrap;"><input type="checkbox" v-if="row.f_defect_count>row.f_deal_count && (row.f_defect_count - row.f_repair_count) > row.zxzg_count" @click="$event.cancelBubble=true" :checked="$parent.$parent.$parent.isChecked(row.id)" @change="$parent.$parent.$parent.setCheckes(row.id)"></input></td>
345
+ <td style="text-align: center;white-space:nowrap;">{{row.f_entry_status}}</td>
346
+ <td style="text-align: center;white-space:nowrap;">{{row.f_userinfo_code}}</td>
347
+ <td style="text-align: center;white-space:nowrap;">{{row.f_user_name}}</td>
348
+ <td style="text-align: center;white-space:nowrap;">{{row.f_user_phone}}</td>
349
+ <td style="text-align: center;white-space:nowrap;">{{row.f_residential_area}}</td>
350
+ <td style="text-align: center;white-space:nowrap;">{{row.f_address}}</td>
351
+ <td style="text-align: center;white-space:nowrap;">{{row.f_offsite_time}}</td>
352
+ <td style="text-align: center;white-space:nowrap;">{{row.f_checker_name}}</td>
353
+ <td style="text-align: center;white-space:nowrap;">{{row.f_plan_name}}</td>
354
+ <td style="text-align: center;white-space:nowrap;">{{row.f_has_defect}}</td>
355
+ <td style="text-align: center;white-space:nowrap;">{{row.f_defect_count}}</td>
356
+ <td style="text-align: center;white-space:nowrap;">{{row.f_deal_count}}</td>
357
+ <td style="text-align: center;white-space:nowrap;">{{row.f_repair_count}}</td>
358
+ <td style="text-align: center;white-space:nowrap;">{{row.f_is_deal}}</td>
359
+ <td style="text-align: center;white-space:nowrap;">{{row.f_is_repair}}</td>
360
+ <!-- <td style="text-align: center;white-space:nowrap;">{{row.f_repaired}}</td>-->
361
+ <td style="text-align: center;white-space:nowrap;">{{row.f_repairman}}</td>
362
+ <td style="text-align: center;white-space:nowrap;"><span :title="$parent.$parent.$parent.trouble(row.f_defect_content)" style="display: block;max-width: 300px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;">{{ $parent.$parent.$parent.trouble(row.f_defect_content)}}</span></td>
363
+ </template>
364
+ </data-grid>
365
+ </criteria-paged>
366
+
367
+ <modal :show.sync="showModal" v-ref:modal>
368
+ <div slot="modal-header" class="modal-header">
369
+ <h4 class="modal-title">
370
+ 选择计划
371
+ </h4>
372
+ </div>
373
+ <div slot="modal-body" class="modal-body">
374
+ <plan-chooser :f.sync="this.$login.f" v-ref:chooser></plan-chooser>
375
+ </div>
376
+ <div slot="modal-footer" class="modal-footer" style="text-align: center">
377
+ <button class="button_search" @click="ok">确认</button>
378
+ <button class="button_search" @click="cancel">取消</button>
379
+ </div>
380
+ </modal>
381
+ <modal :show.sync="showModal2" :backdrop="false">
382
+ <div slot="modal-header" class="modal-header">
383
+ <h4 class="modal-title">
384
+ 转维修
385
+ </h4>
386
+ </div>
387
+ <div slot="modal-body" class="modal-body">
388
+ <div v-if="true">
389
+ <div class="row" style="margin-top: 10px">
390
+ <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">派发类型</label>
391
+ <div class="col-xs-8 col-md-8">
392
+ <v-select :value.sync="selectData.dispatchType" :value-single="true" v-model="selectData.dispatchType"
393
+ :options='dispatchTypeOptions' placeholder='派发类型'
394
+ close-on-select>
395
+ </v-select>
396
+ </div>
397
+ </div>
398
+ <div class="row" style="margin-top: 10px" v-if="selectData.dispatchType=='派发给维修员'">
399
+ <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">维&ensp;修&ensp;员</label>
400
+ <div class="col-xs-8 col-md-8">
401
+ <v-select
402
+ :value.sync="selectData.f_repairman"
403
+ :value-single="true"
404
+ :options='repairers'
405
+ placeholder='请选择维修员'
406
+ close-on-select></v-select>
407
+ </div>
408
+ </div>
409
+ <div class="row" style="margin-top: 10px" v-if="selectData.dispatchType=='派发给站点'">
410
+ <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">站&ensp;&ensp;&ensp;&ensp;点</label>
411
+ <div class="col-xs-8 col-md-8">
412
+ <right-tree
413
+ islist
414
+ :userid="userid"
415
+ :source="'dep=this.getParentByType($organization$).getSpecialResByType($department$),tool.getFullTree(dep.where(row.hasSpecialRole($派单员$)))'"
416
+ @re-res="getSiteRes"></right-tree>
417
+ </div>
418
+ </div>
419
+ <div class="row" style="margin-top: 10px">
420
+ <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">报修类型</label>
421
+ <div class="col-xs-8 col-md-8">
422
+ <v-select :value.sync="selectData.f_repairtype" style="width:60%"
423
+ class="select select_list"
424
+ :value-single="true"
425
+ :options='repairTypeOptions'
426
+ close-on-select>
427
+ </v-select>
428
+ </div>
429
+ </div>
430
+ <div class="row" style="margin-top: 10px">
431
+ <label class="control-label font text-left" style="float:left;margin-left:20%;margin-top:5px">备&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;注</label>
432
+ <div class="col-xs-8 col-md-8">
433
+ <textarea style="width: 60%; height: 100px" v-model="selectData.f_remarks"></textarea>
434
+ </div>
435
+ </div>
436
+ </div>
437
+ </div>
438
+ <div slot="modal-footer" class="modal-footer" style="text-align: center">
439
+ <button class="button_search" @click="rectification">转维修</button>
440
+ <button class="button_search" @click="cancel1">取消</button>
441
+ </div>
442
+ </modal>
443
+ <modal :show.sync="showModal3">
444
+ <div slot="modal-header" class="modal-header">
445
+ <h4 class="modal-title">
446
+ 转维修进度{{ progressbarWidth }}%
447
+ </h4>
448
+ </div>
449
+ <div slot="modal-body" class="modal-body">
450
+ <div class="progress">
451
+ <div class="progress-bar" role="progressbar" aria-valuenow="60"
452
+ aria-valuemin="0" aria-valuemax="100" :style="'width:'+ progressbarWidth+'%'">
453
+ <!-- <span class="sr-only">40% 完成</span>-->
454
+ </div>
455
+ </div>
456
+ </div>
457
+ <div slot="modal-footer" class="modal-footer" style="text-align: center" v-show="false"></div>
458
+ </modal>
459
+ </div>
460
+ </template>
461
+ <script>
462
+ import {PagedList} from 'vue-client'
463
+ import HttpResetClass from "vue-client/src/plugins/HttpResetClass";
464
+ import co from 'co'
465
+ import Vue from 'vue'
466
+ import * as Util from '../../../components/Util'
467
+
468
+ let select = function* (self) {
469
+ let http = new HttpResetClass()
470
+ let getGasman = yield http.load('POST', '/rs/search', {
471
+ source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
472
+ userid: self.$login.f.id
473
+ }, {resolveMsg: null, rejectMsg: null})
474
+ //tag
475
+ self.checkersid.push({label: '全部', value: ''})
476
+ getGasman.data.forEach((checker) => {
477
+ self.checkersid.push({label: checker.name, value: checker.name})
478
+ })
479
+ }
480
+ export default {
481
+ title: '隐患查询',
482
+ data() {
483
+ let model = new PagedList('api/af-safecheck/sql/GetCheckPaperByDefectNew', 20, {
484
+ f_filialeids: 'this.f_filialeids',f_defect_content: 'this.f_defect_content'
485
+ })
486
+ model.f_filialeids = '(' + this.$login.f.orgid + ')'
487
+ model.f_defect_content="CASE WHEN CHARINDEX( '\"result\":\"正常\"', f_defect_content ) > 0 THEN '无隐患' ELSE replace(replace(replace( replace( RIGHT ( f_defect_content, len( f_defect_content ) - 26 ), substring('{}',2,1), '' ), substring('{}',1,1), '' ),']',''),'\"','') END"
488
+ return {
489
+ repaired:[{label: '全部', value: ''},{label: '未完成', value: '未完成'}, {label: '已完成', value: '已完成'}],
490
+ deals:[{label: '全部', value: ''},{label: '未处理', value: '未处理'}, {label: '已处理', value: '已处理'}],
491
+ hasDefectOptions: [{label: '全部', value: ''}, {label: '有隐患', value: '有隐患'}, {label: '无隐患', value: '无隐患'}],
492
+ f: this.$login.f,
493
+ model: model,
494
+ criteriaShow: false,
495
+ checkAll:false,
496
+ timercount:0,
497
+ showModal2:false,
498
+ repairTypeOptions:this.$appdata.getParam('报修类型'),
499
+ dispatchTypeOptions: [{label: '派发给站点', value: '派发给站点'},{label: '派发给维修员', value: '派发给维修员'}],
500
+ checkes:[],
501
+ showModal: false,
502
+ f_check_plan: {f_plan_name: '', id: ''},
503
+ sumsmodel: {},
504
+ resids:{},
505
+ all: false,
506
+ fields: {},
507
+
508
+ selectData:{
509
+ dispatchType:'',
510
+ f_repairman:'',
511
+ f_remarks:'',
512
+ f_repairtype:''
513
+ },
514
+ progressbarWidth:'0',
515
+ modelval: [],
516
+ isbusy:false,
517
+ transfer: null,
518
+ checkersid: [],
519
+ showModal3:false,
520
+ toRepairCount:0,
521
+ sliceArea: [],
522
+ callSends:[],
523
+ cbc:[],
524
+ checkBooks:[],
525
+ repairedOptions:[{label: '全部', value: ''},{label: '已修', value: '已修'}, {label: '未修', value: '未修'}],
526
+ repairers:[],
527
+ cbcs:[],
528
+ thead: '',
529
+ headData: ['入户状态','用户编号','用户名','用户电话','用户小区','用户地址','安检时间','安检员','计划名','是否有隐患','隐患数','隐患明细','处理数','完成数','处理情况','完成情况','维修员'],
530
+ bodyData: ['f_entry_status','f_userinfo_code','f_user_name','f_user_phone','f_residential_area','f_address','f_offsite_time','f_checker_name','f_plan_name','f_has_defect','f_defect_count','defecttext','f_deal_count','f_repair_count','f_is_deal','f_is_repair','f_repairman'],
531
+ }
532
+ },
533
+ props:{
534
+ style: {
535
+ type: String,
536
+ default: 'col-sm-2 form-group'
537
+ },
538
+ style2: {
539
+ type: String,
540
+ default: 'col-sm-4 form-group'
541
+ }
542
+
543
+ },
544
+
545
+ methods: {
546
+ getCheckBook(){
547
+ this.checkBooks=[]
548
+ new HttpResetClass().load('POST', `/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
549
+ data: {
550
+ items: 'id,f_check_book_name,f_check_book_type',
551
+ tablename: 't_check_book',
552
+ condition: `f_orgid = '${this.$login.f.orgid}'`,
553
+ orderitem: 'id desc'
554
+ }
555
+ }, {resolveMsg: null, rejectMsg: null}).then(res => {
556
+ this.checkBooks.push({label: '全部', value: ''})
557
+ res.data.forEach(ress => {
558
+ this.checkBooks.push({
559
+ label: ress.f_check_book_name,
560
+ value: ress.f_check_book_name
561
+ })
562
+ })
563
+ })
564
+ },
565
+ getSiteRes(obj) {
566
+ console.log('siteRes ---> ')
567
+ console.log(obj)
568
+ if(obj.resids[0]){
569
+ this.selectData.f_meetunit = obj.res.join('.')
570
+ this.selectData.f_reciever = obj.resids.join('.')
571
+ this.selectData.f_outlets = obj.res[obj.res.length - 1]
572
+ }else {
573
+ this.selectData.f_meetunit = ''
574
+ this.selectData.f_reciever = ''
575
+ this.selectData.f_outlets = ''
576
+ }
577
+ },
578
+ trouble(val) {
579
+ // return val.replaceAll("'",'')
580
+ // .replaceAll("\"",'')
581
+ // .replaceAll("{",'')
582
+ // .replaceAll("}",'')
583
+ // .replaceAll("]",'')
584
+ // .replaceAll("[",'')
585
+ // .replaceAll("result:",'')
586
+ // .replaceAll("data:",'')
587
+ // .replaceAll("有隐患",'')
588
+ // .replaceAll(",",'')
589
+
590
+
591
+ const defect_content = JSON.parse(val)
592
+ let result = ''
593
+ if (defect_content.data) {
594
+ const jsonData = defect_content.data
595
+ for (const itemdata of jsonData) {
596
+ const keys = Object.keys(itemdata)
597
+ for (const itm of keys) {
598
+ const value = itemdata[itm]
599
+ result += itm + ':' + value
600
+ }
601
+ }
602
+ }
603
+ return result
604
+ },
605
+ getEmp() {
606
+ let val = {source: 'this.getParentByType($organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$)!=null ).where(row.getAttributes().get($rolestr$).indexOf($维修员$) != -1))', userid: `${this.$login.f.id}`}
607
+ let http = new HttpResetClass()
608
+ http.load('POST', '/rs/search', {data: val}, {resolveMsg: null, rejectMsg: null}).then((res) => {
609
+ let str=`'`
610
+ res.data.forEach((item,idx,arr) => {
611
+ //tag
612
+ if(idx+1==arr.length){
613
+ str += item.id + `'`
614
+ }else{
615
+ str += item.id+`','`
616
+ }
617
+
618
+ })
619
+ let http1 = new HttpResetClass()
620
+ http1.load('POST', 'api/af-safecheck/sql/safe_singleTable_OrderBy', {
621
+ data: {
622
+ items: 'id,f_user_telephone',
623
+ tablename: 't_user',
624
+ condition: `id in (${str})`,
625
+ orderitem: 'id'
626
+ }
627
+ }, {resolveMsg: null, rejectMsg: null}).then((ress) => {
628
+
629
+ res.data.forEach((user)=>{
630
+ try {
631
+ ress.data.forEach((tel,tidx,arr)=>{
632
+ //tag
633
+ if(user.id==tel.id){
634
+ this.repairers.push({label: `${user.name}:${tel.f_user_telephone}`, value: user.name})
635
+ ress.data.splice(tidx,1)
636
+ //tag
637
+ throw new Error("跳出循环");
638
+ }
639
+ })
640
+ }catch (e) {
641
+ //tag
642
+ }
643
+ })
644
+ })
645
+
646
+ })
647
+ },
648
+ toRepair(){
649
+ if(this.checkes.length==0){
650
+ return this.$showMessage('请先选择需要转维修的用户!')
651
+ }
652
+ this.showModal2=true
653
+ },
654
+ async rectification(){
655
+
656
+ if(this.selectData.dispatchType){
657
+ if(this.selectData.dispatchType=='派发给站点'){
658
+ if(!this.selectData.f_reciever){
659
+ this.$showMessage('请选择部门!')
660
+ return
661
+ }
662
+ }else{
663
+ if(!this.selectData.f_repairman){
664
+ this.$showMessage('请选择维修员!')
665
+ return
666
+ }
667
+ }
668
+ }else {
669
+ this.$showMessage('请选择派发类型!')
670
+ return
671
+ }
672
+
673
+ if(!this.selectData.f_repairtype){
674
+ this.$showMessage('请选择报修类型!')
675
+ return
676
+ }
677
+ this.showModal3=true
678
+ let act={}
679
+ let toRepair=''
680
+ let successCount=0
681
+ if(this.selectData.dispatchType=='派发给站点'){
682
+ act={f_meetunit:this.selectData.f_meetunit,f_reciever:this.selectData.f_reciever,f_service_acitivity_type:'派单'}
683
+ toRepair=null
684
+ }else{
685
+ console.log('派发给维修员---------'+this.selectData.f_repairman)
686
+ act={f_meetunit:'',f_reciever:this.selectData.f_repairman,f_service_acitivity_type:'派单'}
687
+ toRepair='一级派单'
688
+ }
689
+ let rep={
690
+ loginUser: {
691
+ name: this.$login.f.name,
692
+ ename: this.$login.f.ename
693
+ },
694
+ f_meetunit: this.$login.f.deps,
695
+ f_attendant: this.$login.f.name,
696
+ f_outlets: this.$login.f.deps,
697
+ f_remarks: this.selectData.f_remarks,
698
+ f_repairtype: this.selectData.f_repairtype,
699
+ toRepair: toRepair,
700
+ activity:act
701
+ }
702
+ for(let i=0; i<this.checkes.length; i++){
703
+ try {
704
+ let result =await new HttpResetClass().load('post','/api/af-safecheck/logic/phoneUploadRectification', {
705
+ id:this.checkes[i],
706
+ repData:rep,
707
+ source:'pc'
708
+ }, {resolveMsg: null, rejectMsg: null})
709
+ if (result.data.code==200) {
710
+ successCount += result.data.successcon
711
+ this.progressbarWidth=Math.ceil((i+1)*100/(this.checkes.length))
712
+ }
713
+ }catch (e) {
714
+ this.showModal3=false
715
+ this.$showMessage('网络异常,请稍后再试!')
716
+ return
717
+ }
718
+ }
719
+ this.showModal3=false
720
+ this.cancel1()
721
+ this.$showMessage('本次转维修成功'+successCount+'单')
722
+ },
723
+ /*async rectification(){
724
+ this.isbusy =true
725
+ console.log("----this.checkes",this.checkes.toString())
726
+ console.log("----this.getcon()",this.getcon())
727
+ if(this.checkes.length==0){
728
+ return this.$showMessage('请先选择需要转维修的用户!')
729
+ }
730
+ // if (this.checkAll){
731
+ let data={
732
+ f_filialeids: this.model.params.f_filialeids,
733
+ f_defect_content: this.model.params.f_defect_content,
734
+ condition: `${this.model.params.condition} and id in(${this.getcon()})`
735
+ }
736
+ let res1= await new HttpResetClass().load('post','api/af-safecheck/sql/GetCheckPaperByDefectNew',{data: data })
737
+ for (let i = 0; i < res1.data.length; i++) {
738
+ let data1={
739
+ f_paper_id: res1.data[i].id,
740
+ condition:`f_repaire_type = '隐患未处理'`
741
+ }
742
+ let res2 = await new HttpResetClass().load('POST' , 'api/af-safecheck/sql/GetDefectByPaperIdNew' , {data: data1 } )
743
+ //tag
744
+ if(res2.data.length==0){
745
+ continue
746
+ }
747
+ const uploadData = {
748
+ model: {
749
+ serviceacitivity: [{
750
+ f_service_acitivity_type: '派单'
751
+ }],
752
+ f_repairitems: {},
753
+ failure: '',
754
+ f_source: '安检',
755
+ f_service_id: '',
756
+ f_contact_phone: res1.data[i].f_user_phone,
757
+ f_meetunit: this.$login.f.deps,
758
+ f_phone: '',
759
+ f_user_name: res1.data[i].f_user_name,
760
+ f_address: res1.data[i].f_address,
761
+ f_repair_date: Util.getNowDate(),
762
+ f_reciever: '',
763
+ f_remarks: this.selectData.f_remarks,
764
+ f_user_type: res1.data[i].f_check_type,
765
+ f_area: '',
766
+ f_unit_name: '',
767
+ f_street: res1.data[i].f_street,
768
+ f_residential_area: res1.data[i].f_residential_area,
769
+ f_building: res1.data[i].f_building,
770
+ f_unit: res1.data[i].f_unit,
771
+ f_floor: res1.data[i].f_floor,
772
+ f_room: res1.data[i].f_room,
773
+ aState: '',
774
+ f_repairtype: this.selectData.f_repairtype,
775
+ f_userinfo_id: res1.data[i].f_userinfo_id,
776
+ f_userinfo_code: res1.data[i].f_userinfo_code,
777
+ f_orgstr: res1.data[i].f_filialeid,
778
+ f_outlets: '',
779
+ f_attendant: this.$login.f.name
780
+ },
781
+ loginUser: {
782
+ name: this.$login.f.name,
783
+ ename: this.$login.f.ename
784
+ },
785
+ user: {
786
+ f_userinfo_id: res1.data[i].f_userinfo_id
787
+ },
788
+ callObj: null
789
+ }
790
+ uploadData.model.serviceacitivity[0].f_reciever = this.selectData.f_repairman
791
+ // uploadData.model.f_meetunit = self.$login.f.orgpathnames
792
+ // uploadData.model.f_orgstr = self.$login.f.orgpathstr
793
+ // uploadData.model.f_outlets = self.$login.f.f_parentname
794
+ uploadData.model.f_orgid = this.$login.f.orgid
795
+ uploadData.model.f_filiale = this.$login.f.org
796
+ uploadData.model.f_outlets = this.$login.f.deps
797
+ uploadData.model.f_filiale_id = this.$login.f.orgid
798
+ uploadData.toRepair = '一级派单'
799
+ // let res3 = await new HttpResetClass().load('post','/api/af-safecheck/sql/GetUserForRepaireNew', {data: {f_userinfo_id: res1.data[i].f_userinfo_id}})
800
+ // uploadData.model = Object.assign(uploadData.model, res3.data[0])
801
+ let failure = []
802
+ res2.data.forEach(row => {
803
+ console.log('row.f_item_value',row.f_item_value)
804
+ failure.push({
805
+ f_failure_type: row.f_item_name,
806
+ failurecase: row.f_item_value?row.f_item_value.split(','):''
807
+ })
808
+ })
809
+ uploadData.model.failure = failure
810
+ // 拼接repairitems
811
+ let rows = JSON.parse(JSON.stringify(res2.data))
812
+ let repairitems = {
813
+ data: []
814
+ }
815
+ let safecheckOptions = [{"data": "已处理"}, {"data": "未处理"}]
816
+ // 取隐患未处理的
817
+ rows = rows.filter(row => row.f_repaire_type == '隐患未处理')
818
+ //tag)
819
+ // 开始拼接
820
+ rows.forEach(row => {
821
+ let existIndex = -1
822
+ // 判断该设备是否已经存在
823
+ for (let i = 0; i < repairitems.data.length; i++) {
824
+ if (repairitems.data[i].f_type == row.f_device_type) {
825
+ existIndex = i
826
+ break
827
+ }
828
+ }
829
+ if (existIndex == -1) {
830
+ // 不存在则新建
831
+ let newItem = {
832
+ f_type: row.f_device_type,
833
+ details: [{
834
+ f_defect_id: row.id,
835
+ f_project: `${row.f_item_name}:${row.f_item_value}`,
836
+ type: 'selector',
837
+ options: safecheckOptions
838
+ }]
839
+ }
840
+ repairitems.data.push(newItem)
841
+ } else {
842
+ // 存在则追加
843
+ repairitems.data[existIndex].details.push({
844
+ f_defect_id: row.id,
845
+ f_project: `${row.f_item_name}:${row.f_item_value}`,
846
+ type: 'selector',
847
+ options: safecheckOptions
848
+ })
849
+ }
850
+ })
851
+ uploadData.model.f_repairitems = repairitems
852
+ uploadData.rows=rows
853
+ //tag)
854
+ //tag
855
+ console.log('uploadData---', uploadData)
856
+ if (uploadData.model.f_repairitems.data.length>0){
857
+ this.callSends.push(uploadData)
858
+ }else{
859
+ //tag
860
+ }
861
+ }
862
+ //tag)
863
+ let timer = setInterval(async ()=>{
864
+ this.showModal3=true
865
+ this.isbusy=false
866
+ if (this.timercount<this.callSends.length){
867
+ //tag)
868
+ let rows=this.callSends[this.timercount].rows
869
+ //tag)
870
+ let result = await this.$resetpost('/api/af-safecheck/logic/callerSend1', this.callSends[this.timercount])
871
+ //tag)
872
+ if (result.data.f_service_id) {
873
+ const data = {
874
+ f_paper_id: rows[0].f_paper_id,
875
+ f_service_id: result.data.f_service_id,
876
+ itemsId: this.$login.convertToIn(rows.map(row => row.id))
877
+ }
878
+ //tag
879
+ let updateRes = await this.$resetpost('/api/af-safecheck/logic/updateDefectStateNew', data)
880
+ }
881
+ this.toRepairCount++
882
+ //tag
883
+ this.timercount++
884
+ }else{
885
+ clearInterval(timer)
886
+ //tag
887
+ this.callSends=[]
888
+ this.timercount=0
889
+ this.showModal3=false
890
+ this.cancel1()
891
+ this.$showMessage('本次转维修成功'+this.toRepairCount+'单')
892
+ this.toRepairCount=0
893
+ }
894
+ }, 3000)
895
+ },*/
896
+ cancel1(){
897
+ this.showModal2=false
898
+ this.selectData={
899
+ dispatchType:'',
900
+ f_repairman:'',
901
+ f_remarks:'',
902
+ f_repairtype:''
903
+ }
904
+ },
905
+ sleep(d){
906
+ //tag)
907
+ var t = Date.now()
908
+ while(Date.now - t <= d){
909
+
910
+ }
911
+ //tag)
912
+ },
913
+ isChecked(v) {
914
+ // 如果全选,不在的按选中算,否则,在的按选中算
915
+ if (this.checkAll) {
916
+ return this.checkes.indexOf(v) == -1
917
+ } else {
918
+ return this.checkes.indexOf(v) != -1
919
+ }
920
+ },
921
+ setCheckAll() {
922
+ this.checkAll=this.checkAll?false:true;
923
+ // 全选改变后,清空选中数据
924
+ this.checkes = []
925
+ },
926
+ setCheckes(id) {
927
+ let index=this.checkes.indexOf(id)
928
+ if(index<0){
929
+ this.checkes.push(id)
930
+ }else{
931
+ this.checkes.splice(index,1)
932
+ }
933
+ },
934
+
935
+ getmeterbook(val){
936
+ this.cbc=[]
937
+ this.cbc.push({
938
+ label:'全部',
939
+ value:''
940
+ })
941
+ if (val==''){
942
+
943
+ this.cbcs.forEach(res=>{
944
+ this.cbc.push({
945
+ label:res.f_book_name,
946
+ value:res.id
947
+ })
948
+ })
949
+ }else{
950
+ this.cbcs.forEach(res=>{
951
+ if (res.f_book_slice_area==val){
952
+ this.cbc.push({
953
+ label:res.f_book_name,
954
+ value:res.id
955
+ })
956
+ }
957
+ })
958
+ }
959
+ },
960
+
961
+ Mreadibook(val){
962
+ //tag
963
+ //tag
964
+ this.sliceArea=[]
965
+ if (val){
966
+ new HttpResetClass().load('POST',`/api/af-safecheck/sql/safe_singleTable_OrderBy`, {data: {
967
+ items: 'name',
968
+ tablename: 't_zone',
969
+ condition: `parentid in ${val}`,
970
+ orderitem: 'id'
971
+ }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
972
+ this.sliceArea.push({
973
+ label:'全部',
974
+ value:''
975
+ })
976
+ res.data.forEach(ress=>{
977
+ this.sliceArea.push({
978
+ label:ress.name,
979
+ value:ress.name
980
+ })
981
+ })
982
+
983
+ })
984
+ }
985
+ },
986
+ getAllMeterBook(val){
987
+ //tag
988
+ //tag
989
+ this.cbcs=[]
990
+ if (val){
991
+ new HttpResetClass().load('POST',`/api/af-safecheck/sql/safe_singleTable_OrderBy`, {data: {
992
+ items: 'f_book_name,f_book_slice_area,id',
993
+ tablename: 't_meter_book',
994
+ condition: `f_filiale_id in ${val}`,
995
+ orderitem: 'id'
996
+ }}, {resolveMsg: null, rejectMsg: null}).then((res) => {
997
+ res.data.forEach(ress=>{
998
+ this.cbcs.push({
999
+ id:ress.id,
1000
+ f_book_name:ress.f_book_name,
1001
+ f_book_slice_area:ress.f_book_slice_area
1002
+ })
1003
+ })
1004
+ this.cbc=[]
1005
+ this.cbc.push({
1006
+ label:'全部',
1007
+ value:''
1008
+ })
1009
+ this.cbcs.forEach(res=>{
1010
+ this.cbc.push({
1011
+ label:res.f_book_name,
1012
+ value:res.id
1013
+ })
1014
+ })
1015
+ })
1016
+ }
1017
+ },
1018
+ hiddenr() {
1019
+ this.$parent.showItem = !this.$parent.showItem
1020
+ },
1021
+ hidden() {
1022
+ this.criteriaShow = !this.criteriaShow
1023
+ },
1024
+ search(args) {
1025
+ //tag
1026
+ if (this.f_check_plan.f_plan_name) {
1027
+ args.condition += ` and f_check_plan_id = '${this.f_check_plan.id}'`
1028
+ }
1029
+ this.checkes = []
1030
+ this.checkAll=false
1031
+ this.model.search(args.condition, args.model)
1032
+ },
1033
+ getRes(obj) {
1034
+ //tag
1035
+ this.resids = {res:obj.res[0], resids:obj.resids[0]}
1036
+ this.model.f_filialeids = this.$login.convertToIn(obj.resids);
1037
+ this.Mreadibook(this.model.f_filialeids)
1038
+ this.getAllMeterBook(this.model.f_filialeids)
1039
+ },
1040
+ showChooser() {
1041
+ this.showModal = true
1042
+ },
1043
+ ok() {
1044
+ this.showModal = false
1045
+ if (this.$refs.modal.$children[0].selectedRow.id) {
1046
+ this.f_check_plan = this.$refs.modal.$children[0].selectedRow
1047
+ }
1048
+ },
1049
+ cancel() {
1050
+ this.showModal = false
1051
+ this.f_check_plan = {f_plan_name: '', id: ''}
1052
+ }
1053
+ },
1054
+ ready() {
1055
+ //tag
1056
+ this.transfer=Vue.$appdata.getSingleValue('安检转工单')
1057
+ this.$refs.paged.$refs.criteria.model.f_has_defect = '有隐患'
1058
+ this.getEmp()
1059
+ let gen = select(this)
1060
+ this.getCheckBook()
1061
+ // this.Mreadibook(`('${this.$login.f.orgid}')`)
1062
+ co(gen)
1063
+ },
1064
+ watch:{
1065
+ 'timercount'(){
1066
+ if (this.timercount===0){
1067
+ this.progressbarWidth = '0'
1068
+ }else {
1069
+ //tag
1070
+ //tag
1071
+ this.progressbarWidth=parseInt(this.timercount*100/(this.callSends.length+1))
1072
+ }
1073
+
1074
+ }
1075
+ },
1076
+ computed: {
1077
+ selected() {
1078
+ return this.$refs.paged.$refs.grid.selected
1079
+ },
1080
+ getfield () {
1081
+ //tag
1082
+ let data = {}
1083
+ this.bodyData.forEach((value, index) => {
1084
+ data[this.bodyData[index]] = this.headData[index]
1085
+ })
1086
+ //合计字段打印
1087
+ this.tfoot = `<tr><th colspan=${this.modelval.length}>全表汇总信息: `
1088
+ if (this.sumsmodel) {
1089
+ Object.keys(this.sumsmodel).forEach((key) => {
1090
+ this.tfoot += this.fields[key] + '合计: ' + `<font color="blue">${this.sumsmodel[key]} </font>`
1091
+ })
1092
+ } else {
1093
+ this.tfoot += '暂无'
1094
+ }
1095
+ this.tfoot += '</th></tr>'
1096
+ return data
1097
+ }
1098
+ }
1099
+ }
1100
+ </script>