safecheck-client 3.0.39-8 → 3.0.39-80

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 (312) 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 +5 -5
  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/assets//345/256/232/344/275/215.png +0 -0
  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/grid.less +84 -84
  134. package/src/bootstrap/less/input-groups.less +167 -167
  135. package/src/bootstrap/less/jumbotron.less +52 -52
  136. package/src/bootstrap/less/labels.less +64 -64
  137. package/src/bootstrap/less/list-group.less +141 -141
  138. package/src/bootstrap/less/media.less +66 -66
  139. package/src/bootstrap/less/mixins/alerts.less +14 -14
  140. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  141. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  142. package/src/bootstrap/less/mixins/buttons.less +69 -69
  143. package/src/bootstrap/less/mixins/center-block.less +7 -7
  144. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  145. package/src/bootstrap/less/mixins/forms.less +90 -90
  146. package/src/bootstrap/less/mixins/gradients.less +59 -59
  147. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  148. package/src/bootstrap/less/mixins/grid.less +122 -122
  149. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  150. package/src/bootstrap/less/mixins/image.less +33 -33
  151. package/src/bootstrap/less/mixins/labels.less +12 -12
  152. package/src/bootstrap/less/mixins/list-group.less +30 -30
  153. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  154. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  155. package/src/bootstrap/less/mixins/opacity.less +8 -8
  156. package/src/bootstrap/less/mixins/pagination.less +24 -24
  157. package/src/bootstrap/less/mixins/panels.less +24 -24
  158. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  159. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  160. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  161. package/src/bootstrap/less/mixins/resize.less +6 -6
  162. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  163. package/src/bootstrap/less/mixins/size.less +10 -10
  164. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  165. package/src/bootstrap/less/mixins/table-row.less +44 -44
  166. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  167. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  168. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  169. package/src/bootstrap/less/mixins.less +40 -40
  170. package/src/bootstrap/less/modals.less +151 -151
  171. package/src/bootstrap/less/navbar.less +660 -660
  172. package/src/bootstrap/less/normalize.less +424 -424
  173. package/src/bootstrap/less/pagination.less +89 -89
  174. package/src/bootstrap/less/panels.less +275 -275
  175. package/src/bootstrap/less/popovers.less +131 -131
  176. package/src/bootstrap/less/print.less +101 -101
  177. package/src/bootstrap/less/progress-bars.less +87 -87
  178. package/src/bootstrap/less/responsive-embed.less +35 -35
  179. package/src/bootstrap/less/responsive-utilities.less +194 -194
  180. package/src/bootstrap/less/scaffolding.less +161 -161
  181. package/src/bootstrap/less/theme.less +291 -291
  182. package/src/bootstrap/less/thumbnails.less +36 -36
  183. package/src/bootstrap/less/tooltip.less +102 -102
  184. package/src/bootstrap/less/type.less +303 -303
  185. package/src/bootstrap/less/utilities.less +55 -55
  186. package/src/bootstrap/less/wells.less +29 -29
  187. package/src/components/FileUpload.vue +696 -696
  188. package/src/components/Hello.vue +39 -39
  189. package/src/components/LeftTree.vue +27 -27
  190. package/src/components/Util/ImgSelfSafePlus.vue +2 -2
  191. package/src/components/android/AndroidDefectDeal.vue +2 -2
  192. package/src/components/android/AttendanceTally.vue +116 -116
  193. package/src/components/android/Blank.vue +10 -10
  194. package/src/components/android/CheckUnplanPage.vue +56 -56
  195. package/src/components/android/Checker.vue +12 -12
  196. package/src/components/android/CheckerAnnual.vue +81 -81
  197. package/src/components/android/CheckerAvarta.vue +82 -82
  198. package/src/components/android/EquipmentInspection.vue +348 -348
  199. package/src/components/android/FootprintMap.vue +120 -120
  200. package/src/components/android/HiddentroubleInvestigation.vue +192 -192
  201. package/src/components/android/MasterMain.vue +77 -77
  202. package/src/components/android/Menu.vue +132 -132
  203. package/src/components/android/NewCheckpaperAndroid.vue +2 -2
  204. package/src/components/android/PaperAlarm.vue +85 -85
  205. package/src/components/android/PaperDeviceNoncivil.vue +214 -214
  206. package/src/components/android/PhoneUpUserinfo.vue +11 -0
  207. package/src/components/android/PlumberAnnual.vue +83 -83
  208. package/src/components/android/PlumberAnnualDetail.vue +65 -65
  209. package/src/components/android/PlumberMonthly.vue +84 -84
  210. package/src/components/android/PostMap.vue +83 -83
  211. package/src/components/android/QueryCheckHistory.vue +122 -122
  212. package/src/components/android/QueryCheckHistoryItem.vue +62 -62
  213. package/src/components/android/RepairMain.vue +60 -60
  214. package/src/components/android/Repairman.vue +12 -12
  215. package/src/components/android/StationMaster.vue +12 -12
  216. package/src/components/android/rejectInspecCheck.vue +322 -0
  217. package/src/components/defects/DefectModal.vue +101 -101
  218. package/src/components/defects/DevicesAndItem.vue +39 -39
  219. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  220. package/src/components/notice/NoticeForm.vue +100 -100
  221. package/src/components/notice/NoticeIssue.vue +20 -20
  222. package/src/components/paper/PicViewer.vue +18 -18
  223. package/src/components/pc/AddPlanItemYyChange.vue +5 -1
  224. package/src/components/pc/NewCheckpaper.vue +108 -14
  225. package/src/components/pc/PaperDefectMain.vue +1 -1
  226. package/src/components/pc/SafeCheckOrder/SafeCheckOrderList.vue +34 -0
  227. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  228. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  229. package/src/components/phonestate/PostMap.vue +82 -82
  230. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  231. package/src/components/rongcheng/PaperStatem.vue +6 -6
  232. package/src/components/rongcheng/PhoneUpUserinfo.vue +1 -0
  233. package/src/components/userfile/MeterFile.vue +145 -145
  234. package/src/components/userfile/MeterModify.vue +46 -46
  235. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  236. package/src/filiale/BFshiye/android/AndroidDefectDeal.vue +652 -0
  237. package/src/filiale/BFshiye/android/PhoneUpUserinfo.vue +3 -1
  238. package/src/filiale/BFshiye/android/SafecheckUserInfo.vue +861 -861
  239. package/src/filiale/BFshiye/pc/DefectListNew.vue +637 -0
  240. package/src/filiale/BFshiye/pc/NewCheckpaper.vue +18 -56
  241. package/src/filiale/BFshiye/pc.js +3 -2
  242. package/src/filiale/baiyin/android/SafecheckUserInfo.vue +775 -0
  243. package/src/filiale/baiyin/android.js +1 -0
  244. package/src/filiale/bayan/pc/NewCheckpaper.vue +2 -2
  245. package/src/filiale/bayan/pc/SelectAreaReport.vue +1 -0
  246. package/src/filiale/bayan/pc/SummaryOfSecurityInspectionProgress.vue +7 -7
  247. package/src/filiale/dexin/android/SafecheckOrderV.vue +1 -1
  248. package/src/filiale/dexin/android/SafecheckOrderVTemp.vue +4 -1
  249. package/src/filiale/hanzhong/pc/CheckHiddenDanger.vue +2 -2
  250. package/src/filiale/hanzhong/pc/CheckNumberStatistics.vue +1 -1
  251. package/src/filiale/hanzhong/pc/CheckSafeDetail.vue +6 -1
  252. package/src/filiale/hanzhong/pc/CheckSafeStatus.vue +1 -1
  253. package/src/filiale/hanzhong/pc/CheckerSafeDetail.vue +1 -1
  254. package/src/filiale/huatong/android/SafecheckOrderV.vue +2 -2
  255. package/src/filiale/jiaocheng/pc/NewCheckpaper.vue +64 -4
  256. package/src/filiale/jinhuang/android/AddPlanItem.vue +430 -0
  257. package/src/filiale/jinhuang/android/PhoneUpUserinfo.vue +183 -145
  258. package/src/filiale/jinhuang/android.js +2 -1
  259. package/src/filiale/kelai/android/PaperFeedback.vue +1553 -1550
  260. package/src/filiale/kelai/android/PhoneUpUserinfo.vue +1 -1
  261. package/src/filiale/kelai/android/SafecheckOrderV.vue +1 -1
  262. package/src/filiale/kelai/android/SafecheckUserInfo.vue +1 -1
  263. package/src/filiale/kelai/pc/PaperList.vue +13 -0
  264. package/src/filiale/kelai/pc/UserInfoAudit.vue +126 -90
  265. package/src/filiale/liaoyuan/pc/DefectPaperWeiXiu.vue +4 -6
  266. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +7 -7
  267. package/src/filiale/liaoyuan/pc/checkPlanList.vue +2 -3
  268. package/src/filiale/qingjian/android/PhoneUpUserinfo.vue +125 -38
  269. package/src/filiale/qingjian/android/SafecheckDevices.vue +1 -1
  270. package/src/filiale/qingjian/android/SafecheckOrderV.vue +3 -0
  271. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +42 -19
  272. package/src/filiale/rongchuang/android/AddPlanItemVisitingWithoutMeeting.vue +454 -0
  273. package/src/filiale/rongchuang/android/AddPlanItemYy.vue +498 -0
  274. package/src/filiale/rongchuang/android/PhoneUpUserinfo.vue +1262 -0
  275. package/src/filiale/rongchuang/android/SafecheckDevices.vue +1 -1
  276. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +3 -2
  277. package/src/filiale/rongchuang/android.js +3 -0
  278. package/src/filiale/rongchuang/pc/NewCheckpaper.vue +13 -1
  279. package/src/filiale/rongchuang/pc/checkPlanList.vue +398 -0
  280. package/src/filiale/rongchuang/pc.js +1 -0
  281. package/src/filiale/shanxian/pc/NewCheckpaper.vue +4 -4
  282. package/src/filiale/siyang/android/PhoneInsurancePurchaseDetail.vue +58 -24
  283. package/src/filiale/tongchuan/android/PhoneUpUserinfo.vue +888 -889
  284. package/src/filiale/tongchuan/android/SafecheckDevices.vue +909 -885
  285. package/src/filiale/tongchuan/pc/AMapTrailShowZk.vue +226 -0
  286. package/src/filiale/tongchuan/pc/CheckPlanCountChartAreaByWangGeYuan.vue +137 -0
  287. package/src/filiale/tongchuan/pc/CheckSearchUser.vue +47 -1
  288. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +46 -0
  289. package/src/filiale/tongchuan/pc/NoCheckplanSafecheck.vue +34 -0
  290. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +34 -0
  291. package/src/filiale/tongchuan/pc/PaperList.vue +44 -10
  292. package/src/filiale/tongchuan/pc/PersonTrack.vue +269 -0
  293. package/src/filiale/tongchuan/pc/SelectCheckPlan.vue +42 -2
  294. package/src/filiale/tongchuan/pc.js +3 -0
  295. package/src/filiale/wenxi/pc/PaperList.vue +9 -3
  296. package/src/filiale/wuan/android/SafecheckOrderV.vue +2242 -2242
  297. package/src/filiale/wuan/android/SafecheckUserInfo.vue +659 -659
  298. package/src/filiale/yangchunboneng/android/AndiroidSecurityAudit.vue +2 -1
  299. package/src/filiale/yangchunboneng/pc/CheckPlanAreaList.vue +3 -3
  300. package/src/plugins/LoadData.js +10 -10
  301. package/src/plugins/LoadParams.js +24 -24
  302. package/src/safecheck-android.js +1 -0
  303. package/src/stores/wxconfig.js +10 -10
  304. package/src/utils/getNowDate.js +33 -33
  305. package/test/e2e/custom-assertions/elementCount.js +26 -26
  306. package/test/e2e/nightwatch.conf.js +40 -40
  307. package/test/e2e/runner.js +30 -30
  308. package/test/e2e/specs/test.js +13 -13
  309. package/test/unit/.eslintrc +5 -5
  310. package/test/unit/TestUtil.js +62 -62
  311. package/test/unit/context.html +20 -20
  312. package/test/unit/index.js +13 -13
@@ -0,0 +1,226 @@
1
+ <template>
2
+ <div class="basic-main" style="height: 100%">
3
+ <div>
4
+ <div class="col-sm-9 amap-main" >
5
+ <div class="form-horizontal select-overspread container-fluid auto">
6
+ <div class="row">
7
+ <div class="col-sm-3 form-input-group" style="width: 20%">
8
+ <label class="control-label">公&emsp;&emsp;司</label>
9
+ <right-tree-safe @re-res="getRes" >
10
+ </right-tree-safe>
11
+ </div>
12
+ <div class="col-sm-3 form-input-group" style="width: 20%">
13
+ <label class="control-label" >轨迹时间</label>
14
+ <datepicker placeholder="轨迹时间"
15
+ :value.sync="requestData.chengeDate"
16
+ v-model="requestData.chengeDate"
17
+ :format="'yyyy-MM-dd'">
18
+ </datepicker>
19
+ </div>
20
+ <div class="col-sm-3 form-input-group" style="width: 20%">
21
+ <label class="control-label">安检员</label>
22
+ <v-select :value.sync="selUserIds" v-model='selUserIds'
23
+ :value-single="false" clear-button search multiple
24
+ :options='searchUserEndOption' placeholder='安检员'
25
+ ></v-select>
26
+ </div>
27
+ <div class="col-sm-3 form-input-group" style="width: 20%">
28
+ <label class="control-label">网格员</label>
29
+ <v-select class="select_list select"
30
+ placeholder='请选择' style="width: 60%"
31
+ :value.sync="requestData.f_book_checker" v-model="requestData.f_book_checker"
32
+ :options='users'
33
+ filer-key="name"
34
+ close-on-select clear-button
35
+ :value-single="true">
36
+ </v-select>
37
+ </div>
38
+ <div class="col-sm-3 form-input-group" style="width: 20%;float:right;">
39
+ <button class="btn btn-primary" @click="search">查询</button>
40
+ </div>
41
+ </div>
42
+ </div>
43
+ <amap-trajectory :outerlinedata.sync="outerlinedata" :pathnavigatorstyle="pathnavigatorstyle" ></amap-trajectory>
44
+ </div>
45
+ <div class="col-sm-3">
46
+ <div id="zzz" class="basic-main" style="flex:1;margin-left: 0px;overflow: hidden">
47
+ <div class="flex">
48
+ <div class="panel panel-info" style="flex: 4;margin-top:0px;height: 50%">
49
+ <div class="panel-heading" style="height: auto">
50
+ <h3 class="panel-title">轨迹记录</h3>
51
+ </div>
52
+ <div class="panel-body" style="overflow: scroll">
53
+ <accordion :one-at-a-time="true" v-if="reponData.length>0">
54
+ <template v-for="row in reponData">
55
+ <panel is-open="false" type="primary">
56
+ <strong slot="header">用户编号:{{row.f_user_id}} 用户姓名:{{row.f_user_name}}</strong>
57
+ <div v-for="(idx,item) in row.result" @click="chengeLocation(item)" :class="{'alert alert-info':idx%2===0,'alert alert-success':idx%2!==0}">
58
+ 轨迹时间段:{{item.f_start_date}} ~ {{item.f_end_date}}
59
+ </div>
60
+ </panel>
61
+ </template>
62
+ </accordion>
63
+ <h4 class="panel-title" v-else>暂无相关数据</h4>
64
+ </div>
65
+ </div>
66
+ </div>
67
+ </div>
68
+ </div>
69
+ </div>
70
+
71
+ </div>
72
+ </template>
73
+
74
+ <script>
75
+ import co from 'co'
76
+ import * as Util from '../../Util'
77
+ import {HttpResetClass} from 'vue-client'
78
+
79
+ /**
80
+ * 1. 首先获取当前选择的分公司下所有带定位角色的所有用户
81
+ * 2. 根据查询出来的所有用户的id和选择的时间去轨迹表查询,获取具体轨迹的时间段
82
+ * 3. 渲染给前台页面,前台根据选择的用户和时间端获取轨迹信息去渲染轨迹,每次只可以渲染一组轨迹
83
+ */
84
+
85
+
86
+ export default {
87
+ title: "安检员轨迹展示",
88
+ data() {
89
+ return {
90
+ toUserIds: '', //当前分公司下所有的用户id
91
+ selUserIds:[], // 当前选择的用户Id
92
+ requestData: {
93
+ chengeDate: Util.toStandardDateString(),
94
+ f_book_checker:'',
95
+ userIds: '',
96
+ },
97
+ searchUserEndOption: [], //当前公司的所有安检员
98
+ reponData: [], // 请求到的结果集合
99
+ outerlinedata: [], //点集
100
+ users:[{label: '全部', value: ''}],
101
+ pathnavigatorstyle: {
102
+ width: 16, //图标宽度
103
+ height: 32, // 图标高度
104
+ iconBase64: 'https://webapi.amap.com/ui/1.1/ui/misc/PathSimplifier/examples/imgs/car.png'//图标地址(外链地址或者Base64)
105
+ },
106
+ f_filialeids: '', //分公司ids
107
+ path: [],
108
+ }
109
+ },
110
+ methods: {
111
+ initBookChecker(){
112
+ new HttpResetClass().load('POST', '/rs/search', {
113
+ data: {
114
+ source: `root.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($网格员$) != -1)`,
115
+ userid: this.$login.f.id
116
+ }
117
+ }, {resolveMsg: null, rejectMsg: null}).then(res=>{
118
+ let data = res.data
119
+ const addedNames = new Set()
120
+ this.users = []
121
+ data.forEach(user => {
122
+ if (user.state === '在职') {
123
+ if (!addedNames.has(user.name)) {
124
+ this.users.push({label:user.name,value:user.id})
125
+ addedNames.add(user.name)
126
+ }
127
+ }
128
+ })
129
+ console.log(this.users)
130
+ })
131
+ },
132
+ search() {
133
+ if (this.selUserIds.length==0&&!this.requestData.userIds) {
134
+ this.requestData.userIds = this.toUserIds
135
+ }
136
+ if (this.requestData.f_book_checker){
137
+ const content = this.requestData.userIds.slice(1, -1)
138
+ const elements = content.split(',')
139
+ elements.push(`'${this.requestData.f_book_checker}'`)
140
+ this.requestData.userIds = `(${elements.join(',')})`
141
+ }
142
+ if (!this.f_filialeids) {
143
+ return this.$showMessage("请选择需要查询的分公司")
144
+ }
145
+ if (!this.requestData.chengeDate) {
146
+ return this.$showMessage("请选择需要查看的轨迹时间")
147
+ }
148
+ this.$resetpost('rs/logic/QueryUserTracksByCompany',this.requestData,{resolveMsg: "轨迹记录查询成功", rejectMsg: "轨迹记录查询失败"}).then((response)=>{
149
+ if (response!=undefined && response.data.code == 200) {
150
+ this.reponData = response.data.data
151
+ }else if (response!=null && response.data.code == 404) {
152
+ this.reponData = []
153
+ this.$showMessage("未查询到当前用户的相关轨迹信息")
154
+ } else if (response!=null && response.data.code == 555) {
155
+ this.$showMessage("查询轨迹信息错误!错误原因:"+response.data.msg)
156
+ }
157
+ })
158
+ },
159
+ getRes(obj){
160
+ // this.model.f_filialeids = this.$login.convertToIn(obj.resids);
161
+ console.log(obj)
162
+ if (obj.res != undefined && obj.res.length > 0 && obj.res[0] != undefined) {
163
+ this.getNewData(obj.res[0])
164
+ this.initBookChecker(obj.res[0])
165
+ }
166
+ this.f_filialeids = this.$login.convertToIn(obj.resids);
167
+ },
168
+ chengeLocation(row) {
169
+ console.log(row)
170
+ this.$resetpost('rs/logic/queryRemoteLocationMapData',{data:{id:row.id}},{resolveMsg: "查询渲染轨迹成功", rejectMsg:"查询渲染轨迹失败!"}).then((response)=>{
171
+ if (response!=undefined && response.data!=undefined) {
172
+ this.path = response.data
173
+ let name = `${row.f_user_name},${row.f_start_date}~${row.f_end_date}轨迹`
174
+ this.outerlinedata = [{path:this.path,speed:Math.ceil(this.path.length / 2),name:name}]
175
+ }
176
+ })
177
+ },
178
+ //获取定位人员类表
179
+ async getNewData(organization){
180
+ // let organization = '公司名称'
181
+ // let userRolestr = '需要定位人员'
182
+ let userRolestr = '安检员'
183
+ let res =await new HttpResetClass().load('POST', '/rs/search', {
184
+ // source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($需要定位人员$) != -1))',
185
+ source: "this.getParentByName($"+organization+"$).getAllChildrens().where(row.getAttributes().get($resourcetype$)==$user$).where(row.getAttributes().get($rolestr$)!=null).where(row.getAttributes().get($rolestr$).indexOf($"+userRolestr+"$)!=-1)",
186
+ userid: this.$login.f.id
187
+ }, {resolveMsg: null, rejectMsg: null})
188
+ let dataEnd = [];
189
+ let idsEnd = [];
190
+ res.data.forEach(res=>{
191
+ let h=true
192
+ dataEnd.forEach(per=>{
193
+ if(res.id==per.value){
194
+ h=false
195
+ }
196
+ })
197
+ if(h){
198
+ dataEnd.push({label:res.name,value:res.id})
199
+ idsEnd.push(res.id)
200
+ }
201
+ })
202
+ this.toUserIds = this.$login.convertToIn(idsEnd); //所有的员工ID
203
+ this.searchUserEndOption = dataEnd
204
+ },
205
+ },
206
+ ready(){
207
+ this.initBookChecker()
208
+ },
209
+ watch: {
210
+ 'selUserIds':function (val) {
211
+ if (val=='') {
212
+ this.requestData.userIds = ''
213
+ }else {
214
+ this.requestData.userIds = this.$login.convertToIn(val)
215
+ }
216
+ }
217
+ }
218
+ }
219
+ </script>
220
+
221
+ <style lang="less" scoped>
222
+ .amap-main {
223
+ height: 90%;
224
+ padding-right:10px;
225
+ }
226
+ </style>
@@ -0,0 +1,137 @@
1
+ <template>
2
+ <div id='app' class="basic-main" style="height: 100%">
3
+ <criteria-paged :model="model" :pager='false' v-ref:paged>
4
+ <criteria partial='criteria' @condition-changed='$parent.search' class="search_area" v-ref:criteria>
5
+ <div novalidate class="form-inline auto" partial>
6
+ <div class="row">
7
+ <div class="col-sm-4 form-group">
8
+ <role-selector-safe
9
+ :value-multiple="true"
10
+ :value-close="false"
11
+ role-name="网格员"
12
+ role-lable="网&ensp;格&ensp;员"
13
+ @re-res="$parent.$parent.getRes"
14
+ :value.sync="model.f_checker_id"
15
+ v-model="model.f_checker_id"
16
+ condition="f_checker_name in {}">
17
+ </role-selector-safe>
18
+ </div>
19
+ <div class="col-sm-2 form-group">
20
+ <label for="startDate" class="font_normal_body">开始日期:</label>
21
+ <datepicker id="startDate" placeholder="开始日期"
22
+ v-model="model.startDate"
23
+ :value.sync="model.startDate"
24
+ style="width: 60%;"
25
+ :disabled-days-of-Week="[]"
26
+ :format="'yyyy-MM-dd HH:mm:ss'"
27
+ :show-reset-button="reset">
28
+ </datepicker>
29
+ </div>
30
+ <div class="form-group col-sm-2">
31
+ <label class="font_normal_body">部门</label>
32
+ <v-select :value.sync="model.f_department_name" v-model='model.f_department_name'
33
+ :value-single="true" style="width: 60%"
34
+ class="select_list select"
35
+ :options='$parent.$parent.department_names' placeholder='部门'
36
+ close-on-select
37
+ condition="f_department_name = '{}'"></v-select>
38
+ </div>
39
+ <div class="col-sm-2 form-group">
40
+ <label for="endDate" class="font_normal_body">结束日期:</label>
41
+ <datepicker id="endDate" placeholder="结束日期"
42
+ v-model="model.endDate"
43
+ :value.sync="model.endDate"
44
+ :disabled-days-of-Week="[]"
45
+ style="width: 60%;"
46
+ :format="'yyyy-MM-dd HH:mm:ss'"
47
+ :show-reset-button="reset">
48
+ </datepicker>
49
+ </div>
50
+ <div class="col-sm-3 form-group" style="margin-top: 8px">
51
+ <button class="button_search button_spacing" @click="search()">查询</button>
52
+ <report-print class="button_export button_spacing" style="width:28%" id='shexian'></report-print>
53
+ <report-excel class="button_export button_spacing" style="width:28%" id='shexian'></report-excel>
54
+ </div>
55
+ </div>
56
+ </div>
57
+ </criteria>
58
+ <div partial='list' id='shexian' class="list_area" style="overflow-y: scroll">
59
+ <table class='tableprint' style="margin: 0px auto">
60
+ <thead>
61
+ <tr>
62
+ <th colspan='5' style="font-weight: normal; text-align: left;">
63
+ <h3 style="text-align: center">安检数据报表</h3>
64
+ </th>
65
+ </tr>
66
+ <tr>
67
+ <th colspan='5' style="font-weight: normal; text-align: center;">
68
+ 开始时间:{{model.model.startDate}}&nbsp;&nbsp;&nbsp;
69
+ 结束时间:{{ model.model.endDate }}
70
+ </th>
71
+ </tr>
72
+ </thead>
73
+ <tr>
74
+ <th colspan='5' style="font-weight: normal;">
75
+ {{{ model.data.substring(26,model.data.length-8) }}}
76
+ </th>
77
+ </tr>
78
+ </table>
79
+ </div>
80
+ </criteria-paged>
81
+ </div>
82
+
83
+ </template>
84
+
85
+ <script>
86
+ import {DataModel, HttpResetClass} from 'vue-client'
87
+ import * as Util from "../../../components/Util";
88
+
89
+ export default {
90
+ title: '统计报表',
91
+ data() {
92
+ let model = new DataModel('/rs/safecheck/report/CheckPlanCountChartAreaByWangGeYuan', {startDate: 'this.model.startDate', endDate: 'this.model.endDate', f_filialeid: 'this.f_filialeid'})
93
+ model.f_filialeid = '(' + this.$login.f.orgid + ')'
94
+ return {
95
+ filialeNameStr: '',
96
+ filialeCodeStr: '',
97
+ department_names:[{label:'全部',value:''}],
98
+ userid: this.$login.f.id,
99
+ source: `tool.getFullTree(this.getRights().where(row.getType() != $zone$).where(row.getType() == $organization$))`,
100
+ model: model
101
+ }
102
+ },
103
+ methods: {
104
+ getRes(obj) {
105
+ this.model.f_filialeid = this.$login.convertToIn(obj.resids);
106
+ },
107
+ search(args){
108
+ if (args.model.endDate){
109
+ args.condition += ` and tcp.f_offsite_time <= '${args.model.endDate}'`
110
+ }
111
+ if (args.model.startDate){
112
+ args.condition += ` and tcp.f_offsite_time >= '${args.model.startDate}'`
113
+ }
114
+ if (this.model.f_filialeid){
115
+ args.condition += ` and o.id in ${this.model.f_filialeid}`
116
+ }
117
+ this.model.search(args.condition,args.model)
118
+ }
119
+ },
120
+ ready() {
121
+ this.$refs.paged.$refs.criteria.model.startDate = Util.toStandardDateString()+' 00:00:00'
122
+ this.$refs.paged.$refs.criteria.model.endDate = Util.toStandardDateString()+' 23:59:59'
123
+ new HttpResetClass().load('post','/rs/sql/searchGroupByArea',{data:{condition:"1=1"}}).then(response=>{
124
+ response.data.forEach(item=>{
125
+ this.department_names.push({label:item.f_residential_area,value:item.f_residential_area})
126
+ })
127
+ }).catch(error=>{
128
+
129
+ })
130
+ },
131
+ computed: {
132
+ selected() {
133
+ return this.$refs.grid.selected
134
+ },
135
+ }
136
+ }
137
+ </script>
@@ -217,6 +217,18 @@
217
217
  :value-single="true"
218
218
  close-on-select clear-button></v-select>
219
219
  </div>
220
+ <div :class="$parent.$parent.style" v-show="$parent.$parent.criteriaShow">
221
+ <label class="font_normal_body">网&ensp;格&ensp;员</label>
222
+ <v-select class="select_list select"
223
+ placeholder='请选择' style="width: 60%"
224
+ :value.sync="model.f_book_checker" v-model="model.f_book_checker"
225
+ :options='$parent.$parent.users'
226
+ filer-key="name"
227
+ close-on-select clear-button
228
+ condition="f_book_checker like '%{}%' and f_checker_name = '{}'"
229
+ :value-single="true">
230
+ </v-select>
231
+ </div>
220
232
  </div>
221
233
 
222
234
  <div class="row" v-show="$parent.$parent.$parent.showItem">
@@ -324,7 +336,18 @@
324
336
  :value-single="true"
325
337
  close-on-select clear-button></v-select>
326
338
  </div>
327
-
339
+ <div :class="$parent.$parent.style" v-show="$parent.$parent.criteriaShow">
340
+ <label class="font_normal_body">网&ensp;格&ensp;员</label>
341
+ <v-select class="select_list select"
342
+ placeholder='请选择' style="width: 60%"
343
+ :value.sync="model.f_book_checker" v-model="model.f_book_checker"
344
+ :options='$parent.$parent.users'
345
+ filer-key="name"
346
+ close-on-select clear-button
347
+ condition="f_book_checker like '%{}%' and f_checker_name = '{}'"
348
+ :value-single="true">
349
+ </v-select>
350
+ </div>
328
351
  </div>
329
352
  <div class="row" v-show="$parent.$parent.$parent.showItem">
330
353
  <div :class="$parent.$parent.style" v-show="$parent.$parent.criteriaShow">
@@ -536,6 +559,7 @@
536
559
  timetype: "'dd'",
537
560
  f_defect_content: 'this.f_defect_content'
538
561
  }),
562
+ users:[{label: '全部', value: ''}],
539
563
  f_defect_content: "CASE WHEN CHARINDEX( '\"result\":\"正常\"', ua.f_last_check_result ) > 0 THEN '无隐患' ELSE replace(replace(replace( replace( RIGHT ( ua.f_last_check_result, len( ua.f_last_check_result ) - 26 ), substring('{}',2,1), '' ), substring('{}',1,1), '' ),']',''),'\"','') END",
540
564
  orgstrs: [{label: '全部', value: ''}],
541
565
  checkersid: [],
@@ -609,8 +633,30 @@
609
633
  this.Mreadibook(`('${this.$login.f.orgid}')`)
610
634
  this.getAllMeterBook(`('${this.$login.f.orgid}')`)
611
635
  this.getTableBrands()
636
+ this.initBookChecker()
637
+
612
638
  },
613
639
  methods: {
640
+ initBookChecker(){
641
+ new HttpResetClass().load('POST', '/rs/search', {
642
+ data: {
643
+ source: `root.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($网格员$) != -1)`,
644
+ userid: this.$login.f.id
645
+ }
646
+ }, {resolveMsg: null, rejectMsg: null}).then(res=>{
647
+ let data = res.data
648
+ const addedNames = new Set()
649
+ this.users = []
650
+ data.forEach(user => {
651
+ if (user.state === '在职') {
652
+ if (!addedNames.has(user.name)) {
653
+ this.users.push({ label: user.name, value: user.name })
654
+ addedNames.add(user.name)
655
+ }
656
+ }
657
+ });
658
+ })
659
+ },
614
660
  getTableBrands() {
615
661
  new HttpResetClass().load("POST", `/rs/sql/safe_singleTable_OrderBy`,
616
662
  {data: {items: "*", tablename: "t_gasbrand", orderitem: "id", condition: ` 1=1 `}},
@@ -157,6 +157,18 @@
157
157
  :value-single="true">
158
158
  </v-select>
159
159
  </div>
160
+ <div :class="$parent.$parent.style">
161
+ <label class="font_normal_body">网&ensp;格&ensp;员</label>
162
+ <v-select class="select_list select"
163
+ placeholder='请选择' style="width: 60%"
164
+ :value.sync="model.f_book_checker" v-model="model.f_book_checker"
165
+ :options='$parent.$parent.users'
166
+ filer-key="name"
167
+ close-on-select clear-button
168
+ condition="f_book_checker like '%{}%' and f_checker_name = '{}'"
169
+ :value-single="true">
170
+ </v-select>
171
+ </div>
160
172
 
161
173
 
162
174
  </div>
@@ -334,6 +346,18 @@
334
346
  :value-single="true">
335
347
  </v-select>
336
348
  </div>
349
+ <div :class="$parent.$parent.style">
350
+ <label class="font_normal_body">网&ensp;格&ensp;员</label>
351
+ <v-select class="select_list select"
352
+ placeholder='请选择' style="width: 60%"
353
+ :value.sync="model.f_book_checker" v-model="model.f_book_checker"
354
+ :options='$parent.$parent.users'
355
+ filer-key="name"
356
+ close-on-select clear-button
357
+ condition="f_book_checker like '%{}%' and f_checker_name = '{}'"
358
+ :value-single="true">
359
+ </v-select>
360
+ </div>
337
361
 
338
362
  </div>
339
363
  </div>
@@ -431,6 +455,7 @@
431
455
  gasproperties:[{label:'全部',value:''},...this.$appdata.getParam("民用"),...this.$appdata.getParam("非民用")],
432
456
  gasproperties2:[],
433
457
  modelval: [],
458
+ users:[{label: '全部', value: ''}],
434
459
  checkersid: [],
435
460
  sliceArea: [],
436
461
  pcds:[],
@@ -553,6 +578,26 @@
553
578
  })
554
579
  }
555
580
  },
581
+ initBookChecker(){
582
+ new HttpResetClass().load('POST', '/rs/search', {
583
+ data: {
584
+ source: `root.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($网格员$) != -1)`,
585
+ userid: this.$login.f.id
586
+ }
587
+ }, {resolveMsg: null, rejectMsg: null}).then(res=>{
588
+ let data = res.data
589
+ const addedNames = new Set()
590
+ this.users = []
591
+ data.forEach(user => {
592
+ if (user.state === '在职') {
593
+ if (!addedNames.has(user.name)) {
594
+ this.users.push({ label: user.name, value: user.name })
595
+ addedNames.add(user.name)
596
+ }
597
+ }
598
+ });
599
+ })
600
+ },
556
601
  hiddenr() {
557
602
  this.$parent.showItem = !this.$parent.showItem
558
603
  },
@@ -587,6 +632,7 @@
587
632
  },
588
633
  ready() {
589
634
  this.$refs.paged.$refs.criteria.model.f_has_defect = '有隐患'
635
+ this.initBookChecker()
590
636
  let gen = select(this)
591
637
  // this.Mreadibook(`('${this.$login.f.orgid}')`)
592
638
  co(gen)
@@ -44,6 +44,18 @@
44
44
  condition="f_upload_date <='{} '">
45
45
  </datepicker>
46
46
  </div>
47
+ <div class="col-sm-3 form-group form-input-group" style="width: 20%;">
48
+ <label class="font_normal_body">网&ensp;格&ensp;员</label>
49
+ <v-select class="select_list select"
50
+ placeholder='请选择' style="width: 60%"
51
+ :value.sync="model.f_book_checker" v-model="model.f_book_checker"
52
+ :options='$parent.$parent.users'
53
+ filer-key="name"
54
+ close-on-select clear-button
55
+ condition="f_book_checker like '%{}%' and f_checker_name = '{}'"
56
+ :value-single="true">
57
+ </v-select>
58
+ </div>
47
59
  <div class="col-sm-3 form-group form-input-group" style="width: 20%;float: right;">
48
60
  <report-print class="button_export button_spacing" style="width:28%" id='tongchuan'></report-print>
49
61
  <export-excel-safe :data="$parent.$parent.searchData"
@@ -145,6 +157,7 @@ export default {
145
157
  source: 'tool.getFullTree(this.getRights().where(row.getType() != $zone$).where(row.getType() == $organization$))', //获取公司参数
146
158
  userid: this.$login.f.id,
147
159
  orgname: '',
160
+ users:[{label: '全部', value: ''}],
148
161
  // checker:{},
149
162
  searchData: {
150
163
  condition: '',
@@ -182,6 +195,26 @@ export default {
182
195
  this.searchData.f_filiale_id = this.f_filiale_id //导出
183
196
  this.searchData.condition=args.condition //导出
184
197
  this.model.search(args.condition, args.model)
198
+ },
199
+ initBookChecker(){
200
+ new HttpResetClass().load('POST', '/rs/search', {
201
+ data: {
202
+ source: `root.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($网格员$) != -1)`,
203
+ userid: this.$login.f.id
204
+ }
205
+ }, {resolveMsg: null, rejectMsg: null}).then(res=>{
206
+ let data = res.data
207
+ const addedNames = new Set()
208
+ this.users = []
209
+ data.forEach(user => {
210
+ if (user.state === '在职') {
211
+ if (!addedNames.has(user.name)) {
212
+ this.users.push({ label: user.name, value: user.name })
213
+ addedNames.add(user.name)
214
+ }
215
+ }
216
+ });
217
+ })
185
218
  }
186
219
  },
187
220
  computed: {
@@ -197,6 +230,7 @@ export default {
197
230
  //tag
198
231
  this.$refs.paged.$refs.cri.model.startDate=Util.toStartDateString() +' 00:00:00'
199
232
  this.$refs.paged.$refs.cri.model.endDate=Util.toEndDateString() +' 23:59:59'
233
+ this.initBookChecker()
200
234
 
201
235
  }
202
236
 
@@ -190,6 +190,18 @@
190
190
  clear-button condition="is_repaired='{}'" :value-single="true">
191
191
  </v-select>
192
192
  </div>
193
+ <div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
194
+ <label class="font_normal_body">网&ensp;格&ensp;员</label>
195
+ <v-select class="select_list select"
196
+ placeholder='请选择' style="width: 60%"
197
+ :value.sync="model.f_book_checker" v-model="model.f_book_checker"
198
+ :options='$parent.$parent.users'
199
+ filer-key="name"
200
+ close-on-select clear-button
201
+ condition="f_book_checker like '%{}%' and f_checker_name = '{}'"
202
+ :value-single="true">
203
+ </v-select>
204
+ </div>
193
205
  </div>
194
206
  <modal :show.sync="$parent.$parent.showModal" v-ref:modal>
195
207
  <div slot="modal-header" class="modal-header">
@@ -523,6 +535,7 @@
523
535
  },
524
536
  fun: this.$login.f,
525
537
  checkersid: [],
538
+ users:[{label: '全部', value: ''}],
526
539
  safetype: this.getSafeParam('安检类型'),
527
540
  criteriaShow: false,
528
541
  repaireds: [{ label: '全部', value: '' }, { label: '已修', value: '已修' }, { label: '未修', value: '未修' }],
@@ -1006,6 +1019,26 @@
1006
1019
  })
1007
1020
  })
1008
1021
  },
1022
+ initBookChecker(){
1023
+ new HttpResetClass().load('POST', '/rs/search', {
1024
+ data: {
1025
+ source: `root.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($网格员$) != -1)`,
1026
+ userid: this.$login.f.id
1027
+ }
1028
+ }, {resolveMsg: null, rejectMsg: null}).then(res=>{
1029
+ let data = res.data
1030
+ const addedNames = new Set()
1031
+ this.users = []
1032
+ data.forEach(user => {
1033
+ if (user.state === '在职') {
1034
+ if (!addedNames.has(user.name)) {
1035
+ this.users.push({ label: user.name, value: user.name })
1036
+ addedNames.add(user.name)
1037
+ }
1038
+ }
1039
+ });
1040
+ })
1041
+ }
1009
1042
  },
1010
1043
 
1011
1044
  ready() {
@@ -1013,6 +1046,7 @@
1013
1046
  this.readConfig()
1014
1047
  this.function = this.f
1015
1048
  this.getPcds(`('${this.$login.f.orgid}')`)
1049
+ this.initBookChecker()
1016
1050
  let gen = select(this)
1017
1051
  // this.Mreadibook(`('${this.$login.f.orgid}')`)
1018
1052
  co(gen)