safecheck-client 4.0.2-5 → 4.0.2-51

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 (518) 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 +1 -1
  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/bootstrap/less/.csscomb.json +304 -304
  121. package/src/bootstrap/less/.csslintrc +19 -19
  122. package/src/bootstrap/less/alerts.less +73 -73
  123. package/src/bootstrap/less/badges.less +66 -66
  124. package/src/bootstrap/less/breadcrumbs.less +26 -26
  125. package/src/bootstrap/less/button-groups.less +247 -247
  126. package/src/bootstrap/less/buttons.less +172 -172
  127. package/src/bootstrap/less/carousel.less +269 -269
  128. package/src/bootstrap/less/close.less +34 -34
  129. package/src/bootstrap/less/code.less +69 -69
  130. package/src/bootstrap/less/component-animations.less +33 -33
  131. package/src/bootstrap/less/dropdowns.less +216 -216
  132. package/src/bootstrap/less/grid.less +84 -84
  133. package/src/bootstrap/less/input-groups.less +167 -167
  134. package/src/bootstrap/less/jumbotron.less +52 -52
  135. package/src/bootstrap/less/labels.less +64 -64
  136. package/src/bootstrap/less/list-group.less +141 -141
  137. package/src/bootstrap/less/media.less +66 -66
  138. package/src/bootstrap/less/mixins/alerts.less +14 -14
  139. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  140. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  141. package/src/bootstrap/less/mixins/buttons.less +69 -69
  142. package/src/bootstrap/less/mixins/center-block.less +7 -7
  143. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  144. package/src/bootstrap/less/mixins/forms.less +90 -90
  145. package/src/bootstrap/less/mixins/gradients.less +59 -59
  146. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  147. package/src/bootstrap/less/mixins/grid.less +122 -122
  148. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  149. package/src/bootstrap/less/mixins/image.less +33 -33
  150. package/src/bootstrap/less/mixins/labels.less +12 -12
  151. package/src/bootstrap/less/mixins/list-group.less +30 -30
  152. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  153. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  154. package/src/bootstrap/less/mixins/opacity.less +8 -8
  155. package/src/bootstrap/less/mixins/pagination.less +24 -24
  156. package/src/bootstrap/less/mixins/panels.less +24 -24
  157. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  158. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  159. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  160. package/src/bootstrap/less/mixins/resize.less +6 -6
  161. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  162. package/src/bootstrap/less/mixins/size.less +10 -10
  163. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  164. package/src/bootstrap/less/mixins/table-row.less +44 -44
  165. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  166. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  167. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  168. package/src/bootstrap/less/mixins.less +40 -40
  169. package/src/bootstrap/less/modals.less +151 -151
  170. package/src/bootstrap/less/navbar.less +660 -660
  171. package/src/bootstrap/less/normalize.less +424 -424
  172. package/src/bootstrap/less/pagination.less +89 -89
  173. package/src/bootstrap/less/panels.less +275 -275
  174. package/src/bootstrap/less/popovers.less +131 -131
  175. package/src/bootstrap/less/print.less +101 -101
  176. package/src/bootstrap/less/progress-bars.less +87 -87
  177. package/src/bootstrap/less/responsive-embed.less +35 -35
  178. package/src/bootstrap/less/responsive-utilities.less +194 -194
  179. package/src/bootstrap/less/scaffolding.less +161 -161
  180. package/src/bootstrap/less/theme.less +291 -291
  181. package/src/bootstrap/less/thumbnails.less +36 -36
  182. package/src/bootstrap/less/tooltip.less +102 -102
  183. package/src/bootstrap/less/type.less +303 -303
  184. package/src/bootstrap/less/utilities.less +55 -55
  185. package/src/bootstrap/less/wells.less +29 -29
  186. package/src/components/CheckerCount/CheckCountUserList.vue +144 -144
  187. package/src/components/DefectDealMain/DefectListNew.vue +642 -642
  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/DefectPaperNew.vue +2 -2
  192. package/src/components/Util/RightTreeSafeDep.vue +362 -362
  193. package/src/components/android/AddPlanItem.vue +447 -447
  194. package/src/components/android/AddPlanItemYy.vue +451 -451
  195. package/src/components/android/AddSpecialPlanItem.vue +426 -426
  196. package/src/components/android/AndroidNotifiedDeal.vue +417 -0
  197. package/src/components/android/AttendanceTally.vue +116 -116
  198. package/src/components/android/Blank.vue +10 -10
  199. package/src/components/android/CheckUnplanPage.vue +56 -56
  200. package/src/components/android/Checker.vue +12 -12
  201. package/src/components/android/CheckerAnnual.vue +81 -81
  202. package/src/components/android/CheckerAvarta.vue +82 -82
  203. package/src/components/android/CurrentCreateYy.vue +1051 -1051
  204. package/src/components/android/DailyworkloadQuery.vue +473 -473
  205. package/src/components/android/Devices.vue +327 -327
  206. package/src/components/android/Devicesm.vue +327 -327
  207. package/src/components/android/EquipmentInspection.vue +348 -348
  208. package/src/components/android/FootprintMap.vue +120 -120
  209. package/src/components/android/HiddentroubleInvestigation.vue +192 -192
  210. package/src/components/android/MasterMain.vue +77 -77
  211. package/src/components/android/Menu.vue +132 -132
  212. package/src/components/android/PaperAlarm.vue +85 -85
  213. package/src/components/android/PaperDeviceNoncivil.vue +214 -214
  214. package/src/components/android/PaperFeedbackm.vue +1026 -1026
  215. package/src/components/android/PhoneRecordInfo.vue +113 -113
  216. package/src/components/android/PhoneSellInfo.vue +113 -113
  217. package/src/components/android/PhoneUpDetail.vue +1040 -1040
  218. package/src/components/android/PlumberAnnual.vue +83 -83
  219. package/src/components/android/PlumberAnnualDetail.vue +65 -65
  220. package/src/components/android/PlumberMonthly.vue +84 -84
  221. package/src/components/android/PostMap.vue +83 -83
  222. package/src/components/android/QRCode/QRCodeBinding.vue +300 -300
  223. package/src/components/android/QRCode/QRCodePage.vue +212 -212
  224. package/src/components/android/QueryCheckHistory.vue +122 -122
  225. package/src/components/android/QueryCheckHistoryItem.vue +62 -62
  226. package/src/components/android/RepairMain.vue +60 -60
  227. package/src/components/android/Repairman.vue +12 -12
  228. package/src/components/android/SafePlanItem.vue +509 -509
  229. package/src/components/android/StationMaster.vue +12 -12
  230. package/src/components/android/UploadPage.vue +232 -232
  231. package/src/components/android/examples/SafeListExamples.vue +296 -296
  232. package/src/components/android/old/PaperFeedback.vue +1015 -1015
  233. package/src/components/android/recheck/Recheck.vue +402 -402
  234. package/src/components/android/userinfo/SafecheckUserInfo.vue +776 -776
  235. package/src/components/android/week/CheckResultSimple.vue +251 -0
  236. package/src/components/android/week/FirstWeekCheck.vue +275 -0
  237. package/src/components/android/week/StepHeaderBar.vue +457 -0
  238. package/src/components/android/week/WeekCheck.vue +209 -0
  239. package/src/components/android/week/WeekCheckPaper.vue +219 -0
  240. package/src/components/android/week/WeekCheckPlan.vue +145 -0
  241. package/src/components/checkplan/SelectCheckPlan.vue +39 -0
  242. package/src/components/checkplan/checkmsg.vue +459 -459
  243. package/src/components/defect/DefectList.vue +507 -507
  244. package/src/components/defect/DefectListWeixiu.vue +484 -484
  245. package/src/components/defects/DefectModal.vue +101 -101
  246. package/src/components/defects/DevicesAndItem.vue +39 -39
  247. package/src/components/filialCircle/CircleList.vue +139 -139
  248. package/src/components/inspections/AddInspectPlanItem.vue +325 -325
  249. package/src/components/inspections/AddInspectPlanItems.vue +325 -325
  250. package/src/components/inspections/AddInspectPlanItemss.vue +317 -317
  251. package/src/components/inspections/DisplayInspectionList.vue +1224 -1224
  252. package/src/components/inspections/inspectionOrderV.vue +1853 -1853
  253. package/src/components/inspections/inspectionOrderVs.vue +1853 -1853
  254. package/src/components/inspections/inspectionOrderVss.vue +1856 -1856
  255. package/src/components/inspections/inspectionUserInfo.vue +398 -398
  256. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  257. package/src/components/map/PersonTrack.vue +226 -226
  258. package/src/components/notice/NoticeForm.vue +100 -100
  259. package/src/components/notice/NoticeIssue.vue +20 -20
  260. package/src/components/paper/PicViewer.vue +18 -18
  261. package/src/components/paper/RegionalList.vue +220 -220
  262. package/src/components/paper/safetyledger.vue +198 -0
  263. package/src/components/pc/AnnouncementPC.vue +524 -524
  264. package/src/components/pc/CheckBook.vue +1 -1
  265. package/src/components/pc/DefectList.vue +742 -742
  266. package/src/components/pc/DefectMaterialLook.vue +98 -98
  267. package/src/components/pc/DeviceChange.vue +1068 -1068
  268. package/src/components/pc/PaperDefectMain.vue +905 -905
  269. package/src/components/pc/RoleSelectorDep.vue +166 -166
  270. package/src/components/pc/SafeVisitInfo.vue +261 -261
  271. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  272. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  273. package/src/components/phonestate/PostMap.vue +82 -82
  274. package/src/components/planmanage/checkUserList.vue +1 -1
  275. package/src/components/querycheckpaper/CheckSearchUser.vue +2 -1
  276. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  277. package/src/components/report/CheckByPlan.vue +118 -118
  278. package/src/components/report/CheckPlanAreaList.vue +53 -7
  279. package/src/components/report/HiddenSituation.vue +165 -165
  280. package/src/components/rongcheng/AspiratedOrderV.vue +2377 -2377
  281. package/src/components/rongcheng/CurrentCreateOnline.vue +906 -906
  282. package/src/components/rongcheng/DefectList.vue +560 -560
  283. package/src/components/rongcheng/SafecheckOrderVCli.vue +2641 -2641
  284. package/src/components/safecheckNew/android/AddPlanItem.vue +419 -419
  285. package/src/components/safecheckNew/android/CurrentCreate.vue +1050 -1050
  286. package/src/components/safecheckNew/android/Recheck.vue +379 -379
  287. package/src/components/sendsingle/EquipmentManagement.vue +727 -727
  288. package/src/components/shaoguan/DefectList.vue +473 -473
  289. package/src/components/shaoguan/SafecheckOrderV.vue +2140 -2140
  290. package/src/components/tongcheng/PaperFeedback.vue +1061 -1061
  291. package/src/components/userfile/MeterFile.vue +145 -145
  292. package/src/components/userfile/MeterModify.vue +46 -46
  293. package/src/components/userfile/SecurityAudit.vue +243 -243
  294. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  295. package/src/filiale/ALshan/pc/DefectListWeixiu.vue +476 -476
  296. package/src/filiale/ancheng/android/SafecheckOrderV.vue +2703 -2703
  297. package/src/filiale/ancheng/android/SafecheckUserInfo.vue +737 -737
  298. package/src/filiale/ancheng/pc/checkScreen.vue +923 -923
  299. package/src/filiale/ankangyihua/android/AddPlanItem.vue +446 -446
  300. package/src/filiale/ankangyihua/android/SafecheckOrderV.vue +2908 -2908
  301. package/src/filiale/ankangyihua/pc/DefectListWeixiu.vue +491 -491
  302. package/src/filiale/baiyin/android/SafecheckOrderV.vue +2785 -2785
  303. package/src/filiale/baiyin/pc/DefectListNew.vue +597 -597
  304. package/src/filiale/bayan/android/Edit.vue +132 -132
  305. package/src/filiale/bayan/pc/DefectListNew.vue +597 -597
  306. package/src/filiale/bayan/pc/DeviceChange.vue +1838 -1838
  307. package/src/filiale/bayan/pc/HiddenSituation.vue +295 -295
  308. package/src/filiale/dexin/android/CasualSave.vue +1050 -1050
  309. package/src/filiale/dexin/android/SafecheckOrderV.vue +2950 -2950
  310. package/src/filiale/fugou/android/AddPlanItem.vue +413 -413
  311. package/src/filiale/fugou/android/SafecheckOrderV.vue +2796 -2796
  312. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +830 -830
  313. package/src/filiale/fugu/android/SafecheckOrderV.vue +2484 -2484
  314. package/src/filiale/fugu/pc/NewCheckpaper.vue +1287 -1287
  315. package/src/filiale/ganquan/android/AddPlanItem.vue +444 -444
  316. package/src/filiale/ganquan/android/SafecheckOrderV.vue +2485 -2485
  317. package/src/filiale/ganquan/pc/NewCheckpaper.vue +1354 -1354
  318. package/src/filiale/guangxi/pc/DefectListNew.vue +518 -518
  319. package/src/filiale/hanzhong/android/SafecheckOrderV.vue +2683 -2683
  320. package/src/filiale/hanzhong/android/SafecheckUserInfo.vue +786 -786
  321. package/src/filiale/huaran/android/SafecheckOrderV.vue +2803 -2803
  322. package/src/filiale/huatong/android/SafecheckOrderV.vue +2426 -2426
  323. package/src/filiale/huatong/android/SafecheckUserInfo.vue +749 -749
  324. package/src/filiale/huayin/pc/NewCheckpaper.vue +1307 -1307
  325. package/src/filiale/jiaocheng/android/AddPlanItem.vue +435 -435
  326. package/src/filiale/jiaocheng/android/SafecheckUserInfo.vue +737 -737
  327. package/src/filiale/jiaocheng/pc/DefectListNew.vue +576 -576
  328. package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -447
  329. package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2807 -2807
  330. package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -784
  331. package/src/filiale/jinbin/pc/DefectListWeixiu.vue +478 -478
  332. package/src/filiale/jingyang/android/AddPlanItem.vue +458 -458
  333. package/src/filiale/jingyang/android/SafecheckOrderV.vue +2734 -2734
  334. package/src/filiale/jingyang/android/SafecheckUserInfo.vue +781 -781
  335. package/src/filiale/jinhong/android/AndroidDefectDeal.vue +722 -0
  336. package/src/filiale/jinhong/android/CurrentCreate.vue +34 -12
  337. package/src/filiale/jinhong/android/PhoneInsurancePurchaseDetail.vue +463 -438
  338. package/src/filiale/jinhong/android/SafecheckOrderV.vue +2300 -0
  339. package/src/filiale/jinhong/android.js +13 -11
  340. package/src/filiale/jinhong/pc/CheckBookList.vue +28 -18
  341. package/src/filiale/jinhong/pc/CheckSearchUser.vue +42 -2
  342. package/src/filiale/jinhong/pc/NewCheckpaper.vue +1958 -0
  343. package/src/filiale/jinhong/pc/PaperList.vue +5 -1
  344. package/src/filiale/jinhong/pc/PlanManage.vue +927 -927
  345. package/src/filiale/jinhong/pc/checkPlanList.vue +73 -24
  346. package/src/filiale/jinhong/pc.js +1 -0
  347. package/src/filiale/kelai/android/AddPlanItem.vue +488 -488
  348. package/src/filiale/kelai/android/SafecheckUserInfo.vue +774 -774
  349. package/src/filiale/kelai/android/SafecheckUserInfo1.vue +618 -618
  350. package/src/filiale/kelai/pc/DefectListNew.vue +688 -688
  351. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasList.vue +518 -518
  352. package/src/filiale/kelai/pc/NewCheckpaper.vue +1454 -1454
  353. package/src/filiale/liaoyuan/android/AddPlanItem.vue +412 -412
  354. package/src/filiale/liaoyuan/android/CurrentCreate.vue +1066 -1066
  355. package/src/filiale/liaoyuan/android/SafecheckOrderV.vue +2388 -2388
  356. package/src/filiale/liaoyuan/android/SafecheckUserInfo.vue +557 -557
  357. package/src/filiale/liaoyuan/pc/DefectListWeixiu.vue +489 -489
  358. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +1020 -1020
  359. package/src/filiale/libo/android/CurrentCreate.vue +1091 -1091
  360. package/src/filiale/libo/android.js +15 -15
  361. package/src/filiale/lixian/android/SafecheckOrderV.vue +2404 -2404
  362. package/src/filiale/lixian/android/SafecheckUserInfo.vue +578 -578
  363. package/src/filiale/lixian/pc/NewCheckpaper.vue +1211 -1211
  364. package/src/filiale/meihekou/android/AreaPlan.vue +577 -577
  365. package/src/filiale/meihekou/android/CurrentCreate.vue +16 -0
  366. package/src/filiale/meihekou/android/MeterReading.vue +110 -110
  367. package/src/filiale/meihekou/android/PaperFeedback.vue +3 -0
  368. package/src/filiale/meihekou/android/PhoneUpUserinfo.vue +1307 -1307
  369. package/src/filiale/meihekou/android/SafecheckDevices.vue +6 -3
  370. package/src/filiale/meihekou/android/SafecheckOrderV.vue +27 -28
  371. package/src/filiale/meihekou/android/SafecheckUserInfo.vue +785 -785
  372. package/src/filiale/meihekou/pc/CheckDetail.vue +217 -0
  373. package/src/filiale/meihekou/pc/CheckPlan.vue +52 -0
  374. package/src/filiale/meihekou/pc/CheckPlanAreaList.vue +505 -0
  375. package/src/filiale/meihekou/pc/NewCheckpaper.vue +2028 -2027
  376. package/src/filiale/meihekou/pc/NewCheckpaperNew.vue +2051 -2050
  377. package/src/filiale/meihekou/pc/NewCheckpaperTemp.vue +1289 -1288
  378. package/src/filiale/meihekou/pc/SelectCheckPlan.vue +262 -0
  379. package/src/filiale/meihekou/pc.js +3 -0
  380. package/src/filiale/minsheng/android/SafecheckUserInfo.vue +754 -754
  381. package/src/filiale/minsheng/pc/DefectListNew.vue +535 -535
  382. package/src/filiale/pingxiang/android/SafecheckOrderV.vue +2424 -2424
  383. package/src/filiale/pingxiang/android/SafecheckUserInfo.vue +600 -600
  384. package/src/filiale/pingxiang/pc/DefectListNew.vue +519 -519
  385. package/src/filiale/pingxiang/pc/NewCheckpaper.vue +1294 -1294
  386. package/src/filiale/qianneng/android/AddPlanItem.vue +482 -482
  387. package/src/filiale/qianneng/android/SafecheckOrderV.vue +2785 -2785
  388. package/src/filiale/qianneng/android/SafecheckUserInfo.vue +775 -775
  389. package/src/filiale/qianneng/pc/DefectListNew.vue +576 -576
  390. package/src/filiale/qianneng/pc/NewCheckpaper.vue +1546 -1546
  391. package/src/filiale/qingjian/android/SafecheckOrderV.vue +2844 -2844
  392. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +800 -800
  393. package/src/filiale/qingjian/pc/NewCheckpaper.vue +1871 -1871
  394. package/src/filiale/qingjian/pc/SecurityCheckCoordinates.vue +359 -359
  395. package/src/filiale/qingjian/pc.js +15 -15
  396. package/src/filiale/qingtongxia/android/AddPlanItem.vue +450 -450
  397. package/src/filiale/qingtongxia/android/SafecheckOrderV.vue +2726 -2726
  398. package/src/filiale/qingtongxia/android/SafecheckUserInfo.vue +782 -782
  399. package/src/filiale/qingtongxia/pc/DefectListNew.vue +594 -594
  400. package/src/filiale/rizhao/android/AddPlanItem.vue +446 -446
  401. package/src/filiale/rizhao/android/SafecheckOrderV.vue +2430 -2430
  402. package/src/filiale/rizhao/android/SafecheckUserInfo.vue +640 -640
  403. package/src/filiale/rizhao/pc/DefectList.vue +489 -489
  404. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +2696 -2696
  405. package/src/filiale/rongchuang/android/checkpapermsg.vue +209 -209
  406. package/src/filiale/ruihua/android/SafecheckOrderV.vue +2747 -2747
  407. package/src/filiale/ruihua/android/SafecheckUserInfo.vue +804 -804
  408. package/src/filiale/shanggao/android/SafecheckOrderV.vue +2426 -2426
  409. package/src/filiale/shanxian/android/SafecheckUserInfo.vue +749 -749
  410. package/src/filiale/shanxian/pc/HiddenSituation.vue +121 -121
  411. package/src/filiale/shanxian/pc/NewCheckpaper.vue +1526 -1526
  412. package/src/filiale/shexian/android/AddPlanItem.vue +444 -444
  413. package/src/filiale/shexian/android/SafecheckOrderV.vue +2879 -2879
  414. package/src/filiale/shexian/pc/DefectListNew.vue +593 -593
  415. package/src/filiale/shexian/pc/NewCheckpaper.vue +1469 -1469
  416. package/src/filiale/shimen/android/SafecheckUserInfo.vue +547 -547
  417. package/src/filiale/shimen/pc/DefectList.vue +473 -473
  418. package/src/filiale/shimen/pc/NewCheckpaper.vue +1275 -1275
  419. package/src/filiale/siyang/android/AddPlanItem.vue +450 -450
  420. package/src/filiale/siyang/android/CurrentCreate.vue +1051 -1051
  421. package/src/filiale/siyang/android/PhoneRecordInfo.vue +214 -214
  422. package/src/filiale/siyang/android/SafecheckOrderV.vue +2796 -2796
  423. package/src/filiale/siyang/android/SafecheckUserInfo.vue +789 -789
  424. package/src/filiale/siyang/pc/HiddenSituation.vue +167 -167
  425. package/src/filiale/taiyuan/pc/NewCheckpaper.vue +1976 -1976
  426. package/src/filiale/taiyuan/pc/PlanManage.vue +891 -891
  427. package/src/filiale/taiyuan/pc/checkUserList.vue +798 -798
  428. package/src/filiale/tianke/android/AddPlanItem.vue +455 -455
  429. package/src/filiale/tianke/android/SafecheckOrderV.vue +2431 -2431
  430. package/src/filiale/tianke/android/SafecheckUserInfo.vue +744 -744
  431. package/src/filiale/tongchuan/android/AddPlanItem.vue +483 -483
  432. package/src/filiale/tongchuan/android/PhoneRecordInfo.vue +191 -191
  433. package/src/filiale/tongchuan/android/PhoneSellInfo.vue +113 -113
  434. package/src/filiale/tongchuan/android/SafecheckUserInfo.vue +720 -720
  435. package/src/filiale/tongchuan/pc/CheckBookDetails.vue +209 -209
  436. package/src/filiale/tongchuan/pc/DefectListWeixiu.vue +484 -484
  437. package/src/filiale/tongchuan/pc/HiddenSituation.vue +166 -166
  438. package/src/filiale/weinan/android/AddPlanItem.vue +438 -438
  439. package/src/filiale/weinan/android/CurrentCreate.vue +1171 -1171
  440. package/src/filiale/weinan/android/CurrentCreateOnline.vue +911 -911
  441. package/src/filiale/weinan/android/SafePlanItem.vue +440 -440
  442. package/src/filiale/weinan/android/SafecheckUserInfo.vue +778 -778
  443. package/src/filiale/weinan/pc/DefectListNew.vue +617 -617
  444. package/src/filiale/weinan/pc/DeviceChange.vue +1088 -1088
  445. package/src/filiale/weinan/pc/HiddenSituation.vue +167 -167
  446. package/src/filiale/weinan/pc/checkScreen.vue +1094 -1094
  447. package/src/filiale/weinanct/android/SafecheckOrderV.vue +2730 -2730
  448. package/src/filiale/weinanct/pc/NewCheckpaper.vue +1315 -1315
  449. package/src/filiale/wensu/android/AddPlanItem.vue +495 -495
  450. package/src/filiale/wensu/android/AndroidDefectDeal.vue +464 -464
  451. package/src/filiale/wensu/android/PaperFeedback.vue +1358 -1358
  452. package/src/filiale/wensu/android/SafecheckOrderV.vue +2430 -2430
  453. package/src/filiale/wensu/android/SafecheckUserInfo.vue +627 -627
  454. package/src/filiale/wensu/pc/DefectListNew.vue +735 -735
  455. package/src/filiale/wenxi/android/AddPlanItem.vue +431 -431
  456. package/src/filiale/wenxi/android/SafecheckOrderV.vue +2671 -2671
  457. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +673 -673
  458. package/src/filiale/wenxi/pc/DefectList.vue +653 -653
  459. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1358 -1358
  460. package/src/filiale/wuan/android/SafecheckOrderV.vue +2241 -2241
  461. package/src/filiale/wuan/android/SafecheckUserInfo.vue +596 -596
  462. package/src/filiale/wuan/pc/DefectListWeixiu.vue +506 -506
  463. package/src/filiale/wuan/pc/NewCheckpaper.vue +1169 -1169
  464. package/src/filiale/wuhai/android/SafecheckOrderV.vue +2456 -2456
  465. package/src/filiale/wuhai/android/SafecheckUserInfo.vue +573 -573
  466. package/src/filiale/wuhai/pc/NewCheckpaper.vue +1281 -1281
  467. package/src/filiale/xiangyuanzhongai/android/PhoneUpUserinfo.vue +1251 -1251
  468. package/src/filiale/xinkang/android/SafecheckDevices.vue +2 -2
  469. package/src/filiale/xinkang/android/SafecheckOrderV.vue +2683 -2676
  470. package/src/filiale/xinkang/pc/CheckSearchUser.vue +1026 -1026
  471. package/src/filiale/xinkang/pc/DefectListWeixiu.vue +475 -475
  472. package/src/filiale/xinkang/pc/NewCheckpaper.vue +17 -46
  473. package/src/filiale/xinliansihui/pc/PaperList.vue +814 -0
  474. package/src/filiale/xinliansihui/pc/PaperVisitMain.vue +206 -0
  475. package/src/filiale/xinliansihui/pc.js +13 -0
  476. package/src/filiale/yangchunboneng/android/AddPlanItem.vue +496 -496
  477. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2865 -2865
  478. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +887 -887
  479. package/src/filiale/yangchunboneng/pc/DefectListNew.vue +576 -576
  480. package/src/filiale/yongzhou/android/SafecheckOrderV.vue +2774 -2774
  481. package/src/filiale/yongzhou/android/SafecheckUserInfo.vue +776 -776
  482. package/src/filiale/yuansheng/android/SafecheckOrderV.vue +2758 -2758
  483. package/src/filiale/yuansheng/android/SafecheckUserInfo.vue +797 -797
  484. package/src/filiale/yuansheng/pc/DefectListNew.vue +524 -524
  485. package/src/filiale/yuansheng/pc/NewCheckpaper.vue +1371 -1371
  486. package/src/filiale/yuansheng/pc/checkmsg.vue +464 -464
  487. package/src/filiale/yunchengminsheng/android/DailyworkloadQuery.vue +491 -491
  488. package/src/filiale/yunchengminsheng/android/PaperFeedback.vue +1509 -1509
  489. package/src/filiale/yunchengminsheng/android/PhoneSellInfo.vue +113 -113
  490. package/src/filiale/yunchengminsheng/android/SafecheckDevices.vue +1270 -1270
  491. package/src/filiale/yunchengminsheng/android/SafecheckUserInfo.vue +785 -785
  492. package/src/filiale/yunchengminsheng/android.js +15 -15
  493. package/src/filiale/yunchengminsheng/pc/PaperList.vue +811 -811
  494. package/src/filiale/yunchengminsheng/pc.js +15 -15
  495. package/src/filiale/zhongsheng/android/BuyRecords.vue +122 -122
  496. package/src/filiale/zhongsheng/android/SafecheckOrderV.vue +2461 -2461
  497. package/src/filiale/zhongsheng/android/SafecheckUserInfo.vue +690 -690
  498. package/src/filiale/zhongsheng/pc/DefectListWeixiu.vue +514 -514
  499. package/src/filiale/zhongsheng/pc/NewCheckpaper.vue +1322 -1322
  500. package/src/filiale/zhongyi/android/SafecheckOrderV.vue +2431 -2431
  501. package/src/filiale/zhongyi/pc/DefectListNew.vue +514 -514
  502. package/src/filiale/zhoukou/android/SafecheckOrderV.vue +2502 -2502
  503. package/src/filiale/zhoukou/android/SafecheckUserInfo.vue +588 -588
  504. package/src/main.js +32 -33
  505. package/src/plugins/LoadData.js +10 -10
  506. package/src/plugins/LoadParams.js +24 -24
  507. package/src/safecheck-android.js +328 -316
  508. package/src/safecheck.js +927 -924
  509. package/src/stores/wxconfig.js +10 -10
  510. package/src/utils/getNowDate.js +33 -33
  511. package/test/e2e/custom-assertions/elementCount.js +26 -26
  512. package/test/e2e/nightwatch.conf.js +40 -40
  513. package/test/e2e/runner.js +30 -30
  514. package/test/e2e/specs/test.js +13 -13
  515. package/test/unit/.eslintrc +5 -5
  516. package/test/unit/TestUtil.js +62 -62
  517. package/test/unit/context.html +20 -20
  518. package/test/unit/index.js +13 -13
@@ -1,927 +1,927 @@
1
- <template>
2
- <work-busy :is-busy="isSend"></work-busy>
3
- <div class="binary" style="background-color: #e8f4ff">
4
- <!--左侧安检计划列表******************************************************-->
5
- <div class="binary-left flex flex-column" style="width: 16%">
6
- <div style="height: 9%">
7
- <div class="row auto">
8
- <img style="width: 20px;margin: 0 5px" src="../../../../static/images/searchhover.png" @click="showUserCondition()"/>
9
- <v-select :width="'80%'"
10
- class="select select_list"
11
- :search="false"
12
- :value.sync="currentorder"
13
- v-model="currentorder"
14
- @change="loadCheckPlan"
15
- :options='opt'
16
- close-on-select value-single >
17
- </v-select>
18
- </div>
19
- <div class="row auto safe-div-p"><!--<span style="margin-right: 5px" @click="refresh()" style="cursor:default">测试</span>--><span style="margin-right: 5px" @click="delCheckPlan()" style="cursor:default" v-if="isdelete">删除</span> <span @click="sendCheckPlan()" style="cursor:default">下发</span></div>
20
- </div>
21
- <div class="leftplan-center safe_plan_list">
22
- <div class="row safe-leftplan safe_list_li" :class="{'safe-selectplan':selectPlan.id==row.id}" v-for="row in checkplan.list.data" @click="selectPlanChange(row)">
23
- <table style="width:100%;table-layout:fixed" >
24
- <tr class="safe-planfont">
25
- <td rowspan="6"><input type="checkbox" style="pointer-events:auto" v-show="row.plan_count==0 || row.f_issued=='未下发'" onClick="event.cancelBubble = true" :checked="checkplan.check.isChecked(row.f_check_item_id)" @change="checkplan.check.setCheckes(row.id)"/></td>
26
- <td colspan="6" class="safe_p">{{row.f_plan_name}}</td>
27
- <td colspan="2" style="text-align: center"><img width="20px" style="pointer-events:auto" onClick="event.cancelBubble = true" @click="showUpPlans(row)" src="../../../../static/images/edit.png"/></td>
28
- </tr>
29
- <tr class="safe-bodyfont" style="color:#4792de">
30
- <td colspan="6">{{row.f_issued}}</td>
31
- <td colspan="2" class="safe_p">{{row.f_checker?row.f_checker:'共享'}}</td>
32
- </tr>
33
- <tr class="safe-bodyfont">
34
- <td colspan="4">{{row.f_plan_year}}-{{row.f_plan_month}}</td>
35
- <td colspan="2">总 :</td>
36
- <td colspan="2">{{row.plan_count}}</td>
37
- </tr>
38
- <tr class="safe-bodyfont">
39
- <td colspan="2">未检 :</td>
40
- <td colspan="2">{{row.unchecked}}</td>
41
- <td colspan="2">已检 :</td>
42
- <td colspan="2">{{row.checked}}</td>
43
- </tr>
44
- <tr class="safe-bodyfont" v-if="row.f_create_time">
45
- <td colspan="3">创建时间 :</td>
46
- <td colspan="5" style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" :title="row.f_create_time">{{row.f_create_time}}</td>
47
- </tr>
48
- <!-- <tr class="safe-bodyfont" v-if="row.f_safecheck_type">-->
49
- <!-- <td colspan="3">安检类型 :</td>-->
50
- <!-- <td colspan="5" style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" :title="row.f_safecheck_type">{{row.f_safecheck_type}}</td>-->
51
- <!-- </tr>-->
52
- <tr class="safe-bodyfont">
53
- <td colspan="3">计划备注 :</td>
54
- <td colspan="5" style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" :title="row.f_remark">{{row.f_remark}}</td>
55
- </tr>
56
- </table>
57
- </div>
58
- </div>
59
- <div style="height: 11%">
60
- <div class="row auto leftplan-center" style="padding: 8px">
61
- <div class="col-sm-6" style="">
62
- <span>共{{checkplan.list.count}}条</span>
63
- </div>
64
- <div class="col-sm-6" style="text-align: end">
65
- <span @click="loadMore('checkplan')"><img src="../../../../static/images/doubledown.png"/>&ensp;更多</span>
66
- </div>
67
- </div>
68
- <div class="row auto" style="padding: 10px;text-align: center">
69
- <img src="../../../../static/images/addnew.png" @click="showcCreatePlan()"/>
70
- </div>
71
- </div>
72
- </div>
73
- <!--右侧列表**************************************************************************-->
74
- <div class="binary-right" style="width: 84%;overflow: auto">
75
- <div style="height: 5%">
76
- <div class="col-sm-4">
77
- <label class="font_normal_body">公&emsp;&emsp;司</label>
78
- <right-tree-safe :islist="false" :width="'60%'" @re-res="getRes"></right-tree-safe>
79
- </div>
80
- </div>
81
- <div style="height: 95%">
82
- <div style="height: 50%" class="leftplan-center">
83
- <check-plan-list :selectplan="selectPlan" :userlogin="userlogin" v-ref:item></check-plan-list>
84
- </div>
85
- <div style="height: 50%">
86
- <check-user-list :selectplan="selectPlan" :userlogin="userlogin" v-ref:user></check-user-list>
87
- </div>
88
- </div>
89
- </div>
90
- <modal :show.sync="showCondtion" v-ref:modal :width="'50%'" :backdrop="false">
91
- <div slot="modal-header" class="modal-header">
92
- <h4 class="modal-title">
93
- 计划查询条件
94
- </h4>
95
- </div>
96
- <div slot="modal-body" class="modal-body">
97
- <div class="row">
98
- <div class="form-group col-sm-4" >
99
- <label class="font_normal_body">计划名称:</label>
100
- <input type="text" class="input_search" v-model="planCondition.f_plan_name" @change="setProperty('checkplan','f_plan_name',planCondition.f_plan_name)"
101
- style="width: 60%" placeholder="请选择" />
102
- </div>
103
- <div class="form-group col-sm-4" >
104
- <label class="font_normal_body">计划年份:</label>
105
- <v-select
106
- class="select select_list"
107
- :value.sync="planCondition.f_plan_year"
108
- v-model="planCondition.f_plan_year"
109
- @change="setProperty('checkplan','f_plan_year',planCondition.f_plan_year)"
110
- :search="false"
111
- :options='getConList("yearList")'
112
- placeholder='请选择'
113
- close-on-select
114
- value-single
115
- >
116
- </v-select>
117
- </div>
118
- <div class="form-group col-sm-4" >
119
- <label class="font_normal_body">计划月份:</label>
120
- <v-select
121
- class="select select_list"
122
- :value.sync="planCondition.f_plan_month"
123
- v-model="planCondition.f_plan_month"
124
- @change="setProperty('checkplan','f_plan_month',planCondition.f_plan_month)"
125
- :search="false"
126
- :options='getConList("monthList")'
127
- placeholder='请选择'
128
- close-on-select
129
- value-single>
130
- </v-select>
131
- </div>
132
- <div class="form-group col-sm-4" >
133
- <label class="font_normal_body">是否共享:</label>
134
- <v-select
135
- class="select select_list"
136
- :value.sync="planCondition.isShare"
137
- v-model="planCondition.isShare"
138
- @change="setProperty('checkplan','isAndNot',planCondition.isShare)"
139
- :options='getConList("conIsAndNot")'
140
- :search="false"
141
- placeholder='请选择'
142
- close-on-select
143
- value-single
144
- >
145
- </v-select>
146
- </div>
147
- <div class="form-group col-sm-4" >
148
- <label class="font_normal_body">是否下发:</label>
149
- <v-select
150
- class="select select_list"
151
- :value.sync="planCondition.issued"
152
- v-model="planCondition.issued"
153
- :options='getConList("isAndNot")'
154
- @change="setProperty('checkplan','issude',planCondition.issued)"
155
- placeholder='请选择'
156
- :search="false"
157
- close-on-select
158
- value-single
159
- >
160
- </v-select>
161
- </div>
162
- <div class="form-group col-sm-4" >
163
- <label class="font_normal_body">安&ensp;检&ensp;员:</label>
164
- <v-select
165
- class="select select_list"
166
- :value.sync="planCondition.f_checker"
167
- v-model="planCondition.f_checker"
168
- @change="setProperty('checkplan','checkerid',planCondition.f_checker.id)"
169
- :options='getConList("checker")'
170
- placeholder='请选择'
171
- close-on-select
172
- value-single
173
- >
174
- </v-select>
175
- </div>
176
-
177
- <div class="form-group col-sm-4" >
178
- <label class="font_normal_body">安检类型:</label>
179
- <v-select
180
- class="select select_list"
181
- :value.sync="planCondition.f_safecheck_type"
182
- v-model="planCondition.f_safecheck_type"
183
- @change="setProperty('checkplan','safechecktype',planCondition.f_safecheck_type)"
184
- :options='getConList("safechecktype")'
185
- placeholder='请选择'
186
- :search="false"
187
- close-on-select
188
- value-single
189
- >
190
- </v-select>
191
- </div>
192
- <div class="form-group col-sm-4" >
193
- <label class="font_normal_body">安检部门:</label>
194
- <v-select
195
- class="select select_list"
196
- :value.sync="planCondition.f_department_name"
197
- v-model="planCondition.f_department_name"
198
- @change="setProperty('checkplan','f_department_name',planCondition.f_department_name)"
199
- :options='getConList("departmentname")'
200
- placeholder='请选择'
201
- close-on-select
202
- value-single
203
- >
204
- </v-select>
205
- </div>
206
- <div class="form-group col-sm-4" >
207
- <label class="font_normal_body">创&ensp;建&ensp;人:</label>
208
- <input type="text" class="input_search" v-model="planCondition.f_create_operator" @change="setProperty('checkplan','f_create_operator',planCondition.f_create_operator)"
209
- style="width: 60%" placeholder="创建人" />
210
- </div>
211
- </div>
212
- </div>
213
- <div slot="modal-footer" class="modal-footer" style="text-align: center">
214
- <button class="button_search" @click="loadCheckPlan" style="margin-right: 15px">查询</button>
215
- <button class="button_search" @click="cancel">取消</button>
216
- </div>
217
- </modal>
218
- <modal :show.sync="showCreatePlan" v-ref:modal1 :width="'50%'" :backdrop="false">
219
- <div slot="modal-header" class="modal-header">
220
- <h4 class="modal-title">
221
- 新建计划
222
- </h4>
223
- </div>
224
- <div slot="modal-body" class="modal-body">
225
- <div class="row">
226
- <div class="form-group col-sm-4" >
227
- <label class="font_normal_body">计划名称:</label>
228
- <input type="text" class="input_search" v-model="createPlan.f_plan_name"
229
- style="width: 60%" placeholder="请选择" />
230
- </div>
231
- <div class="form-group col-sm-4" >
232
- <label class="font_normal_body">计划年份:</label>
233
- <v-select
234
- class="select select_list"
235
- :value.sync="createPlan.f_plan_year"
236
- v-model="createPlan.f_plan_year"
237
- :search="false"
238
- :options='yearList'
239
- placeholder='请选择'
240
- close-on-select
241
- value-single
242
- >
243
- </v-select>
244
- </div>
245
- <div class="form-group col-sm-4" >
246
- <label class="font_normal_body">计划月份:</label>
247
- <v-select
248
- class="select select_list"
249
- :value.sync="createPlan.f_plan_month"
250
- v-model="createPlan.f_plan_month"
251
- :search="false"
252
- :options='monthList'
253
- placeholder='请选择'
254
- close-on-select
255
- value-single>
256
- </v-select>
257
- </div>
258
- <div class="form-group col-sm-4" >
259
- <label class="font_normal_body">是否共享:</label>
260
- <v-select
261
- class="select select_list"
262
- :search="false"
263
- :value.sync="createPlan.isShare"
264
- v-model="createPlan.isShare"
265
- :options='isAndNot'
266
- placeholder='请选择'
267
- close-on-select
268
- value-single
269
- >
270
- </v-select>
271
- </div>
272
- <div class="form-group col-sm-4" v-show="createPlan.isShare=='是' && ismulchecker">
273
- <label class="font_normal_body">安&ensp;检&ensp;员:</label>
274
- <v-select
275
- class="select select_list"
276
- :value.sync="createPlan.checkers"
277
- v-model="createPlan.checkers"
278
- :options='checker'
279
- placeholder='请选择'
280
- :multiple="true"
281
- >
282
- </v-select>
283
- </div>
284
- <div class="form-group col-sm-4" v-show="createPlan.isShare=='否'">
285
- <label class="font_normal_body">安&ensp;检&ensp;员:</label>
286
- <v-select
287
- class="select select_list"
288
- :value.sync="createPlan.checker"
289
- v-model="createPlan.checker"
290
- :options='checker'
291
- placeholder='请选择'
292
- close-on-select
293
- value-single
294
- >
295
- </v-select>
296
- </div>
297
-
298
- <div class="form-group col-sm-4" >
299
- <label class="font_normal_body">安检类型:</label>
300
- <v-select
301
- class="select select_list"
302
- :value.sync="createPlan.f_safecheck_type"
303
- v-model="createPlan.f_safecheck_type"
304
- :search="false"
305
- :options='ntoway'
306
- placeholder='请选择'
307
- close-on-select
308
- value-single
309
- >
310
- </v-select>
311
- </div>
312
- <div class="form-group col-sm-12" >
313
- <label class="font_normal_body">计划备注:</label>
314
- <input type="text" class="input_search" v-model="createPlan.f_remark"
315
- style="width: 60%" placeholder="请输入备注" />
316
- </div>
317
- </div>
318
- </div>
319
- <div slot="modal-footer" class="modal-footer" style="text-align: center">
320
- <button class="button_search" style="margin-right: 15px" @click="addNewPlan()">创建计划</button>
321
- <button class="button_search" @click="cancel">取消</button>
322
- </div>
323
- </modal>
324
- <modal :show.sync="showUpPlan" v-ref:modal2 :backdrop="false">
325
- <div slot="modal-header" class="modal-header">
326
- <h4 class="modal-title">
327
- 修改计划
328
- </h4>
329
- </div>
330
- <div slot="modal-body" class="modal-body">
331
- <div class="row">
332
- <div class="form-group col-sm-4" >
333
- <label class="font_normal_body">计划名称:</label>
334
- <input type="text" class="input_search" v-model="upCheckPlan.f_plan_name"
335
- style="width: 60%" />
336
- </div>
337
- <div class="form-group col-sm-4" >
338
- <label class="font_normal_body">计划年份:</label>
339
- <v-select
340
- class="select select_list"
341
- :value.sync="upCheckPlan.f_plan_year"
342
- v-model="upCheckPlan.f_plan_year"
343
- :search="false"
344
- :value="upCheckPlan.f_plan_year"
345
- :options='yearList'
346
- :disabled="true"
347
- close-on-select
348
- value-single>
349
-
350
-
351
- </v-select>
352
- <!-- <datepicker
353
- placeholder='请选择'
354
- style="width:60%"
355
- :disabled-days-of-week="[]"
356
- :format="'yyyy'"
357
- :show-rest-button="reset"
358
- :value.sync="upCheckPlan.f_plan_year"
359
- v-model="upCheckPlan.f_plan_year">
360
- </datepicker>-->
361
- </div>
362
- <div class="form-group col-sm-4" >
363
- <label class="font_normal_body">计划月份:</label>
364
- <v-select
365
- class="select select_list"
366
- :value.sync="upCheckPlan.f_plan_month"
367
- v-model="upCheckPlan.f_plan_month"
368
- :disabled="true"
369
- :options='monthList'
370
- close-on-select
371
- value-single>
372
- </v-select>
373
- </div>
374
- <div class="form-group col-sm-4" >
375
- <label class="font_normal_body">是否共享:</label>
376
- <v-select
377
- class="select select_list"
378
- :search="false"
379
- :value.sync="upCheckPlan.isShare"
380
- v-model="upCheckPlan.isShare"
381
- :options='isAndNot'
382
- placeholder='请选择'
383
- :disabled="true"
384
- close-on-select
385
- value-single
386
- >
387
- </v-select>
388
- </div>
389
- <div class="form-group col-sm-4" v-show="upCheckPlan.isShare=='是' && ismulchecker">
390
- <label class="font_normal_body">安&ensp;检&ensp;员:</label>
391
- <v-select
392
- class="select select_list"
393
- :value.sync="upCheckPlan.checkers"
394
- v-model="upCheckPlan.checkers"
395
- :options='checker'
396
- placeholder='请选择'
397
- :multiple="true"
398
- >
399
- </v-select>
400
- </div>
401
- <div class="form-group col-sm-4" v-show="upCheckPlan.isShare=='否'">
402
- <label class="font_normal_body">安&ensp;检&ensp;员:</label>
403
- <v-select
404
- class="select select_list"
405
- :value.sync="upCheckPlan.checker"
406
- v-model="upCheckPlan.checker"
407
- :options='checker'
408
- close-on-select
409
- value-single
410
- >
411
- </v-select>
412
- </div>
413
-
414
- <div class="form-group col-sm-4">
415
- <label class="font_normal_body">安检类型:</label>
416
- <v-select
417
- class="select select_list"
418
- :value.sync="upCheckPlan.f_safecheck_type"
419
- v-model="upCheckPlan.f_safecheck_type"
420
- :options='ntoway'
421
- close-on-select
422
- :disabled="true"
423
- value-single
424
- >
425
- </v-select>
426
- </div>
427
- <div class="form-group col-sm-12" >
428
- <label class="font_normal_body">计划备注:</label>
429
- <input type="text" class="input_search" v-model="upCheckPlan.f_remark"
430
- style="width: 60%" placeholder="请输入备注" />
431
- </div>
432
- </div>
433
- </div>
434
- <div slot="modal-footer" class="modal-footer" style="text-align: center">
435
- <button class="button_search" style="margin-right: 15px" @click="upPlan()">保存修改</button>
436
- <button class="button_search" @click="cancel">取消</button>
437
- </div>
438
- </modal>
439
- </div>
440
- </template>
441
-
442
- <script>
443
- import {SearchList,HttpResetClass, PagedList} from "vue-client";
444
- import * as Util from "../../../components/Util";
445
- import Vue from "vue";
446
- import AppData from "../../../../src/stores/AppData";
447
-
448
- export default {
449
- name: "PlanManage",
450
- title: '计划管理',
451
- data() {
452
- return {
453
- ismulchecker:this.$appdata.getSingleValue('计划安检员多选')?true:false,
454
- a:'1',
455
- opt:[{label:"按时间降序",value:"按时间降序"},{label:"按时间升序",value:"按时间升序"}],
456
- currentorder:'按时间降序',
457
- isdelete:this.$login.r ? this.$login.r.includes("安检计划删除"):false,
458
- checkplan : new SearchList(true),
459
- selectPlan:{id:''},
460
- upCheckPlan:{
461
- f_plan_name:'',
462
- f_safecheck_type:'',
463
- f_plan_year:'',
464
- f_plan_month:'',
465
- f_checker_id:'',
466
- isShare:'',
467
- f_checker:'',
468
- f_checkerstr:'',
469
- checker:{},
470
- checkers:[],
471
- f_remark:''
472
- },
473
- isSend:false,
474
- createPlan:{
475
- f_plan_name:'',
476
- f_plan_year:'',
477
- f_plan_month:'',
478
- isShare:'否',
479
- f_issued:'否',
480
- f_checker_id:null,
481
- checker:{},
482
- checkers:[],
483
- f_checker:null,
484
- f_checkerstr:null,
485
- f_safecheck_type:'',
486
- f_remark:''
487
- },
488
- planCondition:{},
489
- showCondtion:false,
490
- showCreatePlan:false,
491
- showUpPlan:false,
492
- isAndNot:[{label:'是',value:'是'},{label:'否',value:'否'}],
493
- conIsAndNot:[{label:'是',value:'is null'},{label:'否',value:'is not null'}],
494
- yearList:[{label:2020,value:2020},{label:2021,value:2021},{label:2022,value:2022},{label:2023,value:2023},{label:2024,value:2024},{label:2025,value:2025},{label:2026,value:2026},{label:2027,value:2027},{label:2028,value:2028},{label:2029,value:2029},{label:2030,value:2030}],
495
- monthList:[{label:"1",value:1},{label:"2",value:2},{label:"3",value:3},{label:"4",value:4},{label:"5",value:5},{label:"6",value:6},{label:"7",value:7},{label:"8",value:8},{label:"9",value:9},{label:"10",value:10},{label:"11",value:11},{label:"12",value:12}],
496
- safechecktype:[{label:'年度普检',value:'年度普检'}],
497
- departmentname:this.$appdata.getParam('安检部门'),
498
- checker:[],
499
- checkertCon:[],
500
- userlogin:{
501
- id:this.$login.f.id,
502
- name:this.$login.f.name,
503
- orgid:this.$login.f.orgid,
504
- orgstr:this.$login.f.orgs,
505
- }
506
- //需要测试直接把下面放开即可
507
- /*userlogin:{
508
- id:'141701',
509
- name:'hwq',
510
- orgid:'35526',
511
- orgstr:'西华县天然气有限公司'
512
- }*/
513
- }
514
- },
515
- async ready(){
516
- document.addEventListener('keydown', this.handleEnter, true);
517
- await this.loadpage()
518
- if (!this.userlogin.orgid){
519
- if (this.$login.f.f_orgids){
520
- this.userlogin.orgid = this.$login.f.f_orgids.endsWith('.')?this.$login.f.f_orgids.substring(0,this.$login.f.f_orgids.length-1):this.$login.f.f_orgids
521
- }else {
522
- this.userlogin.orgid = ''
523
- }
524
- }
525
- },
526
- computed: {
527
- ntoway() {
528
- /*/!* return AppData.getParam('安检类型')*!/*/
529
- return this.$appdata.getParam('安检类型')
530
- }
531
- },
532
- methods:{
533
- handleEnter(e) {
534
- if (e.key === 'Enter') {
535
- this.$refs.user.$refs.paged.$refs.criteria.search()
536
- }
537
- },
538
- /* ntoway() {
539
- /!* return AppData.getParam('安检类型')*!/
540
- return Vue.$appdata.getParam('安检类型')
541
- },*/
542
- async loadpage(){
543
- //await this.checkplan.searchList("/api/af-safecheck/sql/预约计划下发", {},{groupitem:"",f_filialeids:"('"+this.userlogin.orgid+"')",orderitem:"f_create_time desc"})
544
- await this.loadCheckPlan()
545
- await this.searchChecker(this.userlogin.id)
546
- },
547
- getRes(obj) {
548
- console.log("----obj"+JSON.stringify(obj.resids))
549
- console.log(obj)
550
- if(obj.resids.length>0 && obj.resids[0]!=this.userlogin.orgid && obj.resids[0]){
551
- this.userlogin.orgid=obj.resids[0]
552
- this.userlogin.orgstr=obj.res[0]
553
- if(this.$refs.item && this.$refs.user){
554
- this.loadpage()
555
- this.selectPlan={id:""}
556
- this.$refs.item.model.rows=[]
557
- this.$refs.user.model.rows=[]
558
- this.$refs.user.loadpage()
559
- }
560
- }
561
- },
562
- getConList(field){
563
- return [{label:'全部',value:''}, ...this[field]]
564
- },
565
- selectPlanChange(plan){
566
- this.selectPlan=plan
567
- //this.upCheckPlan=plan
568
- },
569
- showUserCondition(){
570
- this.showCondtion=true
571
- },
572
- showcCreatePlan(){
573
- this.showCreatePlan=true
574
- this.createPlan.f_plan_year=new Date().getFullYear()
575
- this.createPlan.f_safecheck_type='年度普检'
576
- },
577
- cancel(){
578
- this.showCondtion=false
579
- this.showCreatePlan=false
580
- this.showUpPlan=false
581
- },
582
- //新建计划
583
- async addNewPlan() {
584
- if(!this.validationCreatePlan()){
585
- return
586
- }
587
- this.isSend=true
588
- let res=await new HttpResetClass().load("POST","/api/af-safecheck/sql/getCheckplan", {data: {condition:"f_plan_name='"+this.createPlan.f_plan_name+"'",sortfield:'f_create_time desc'}})
589
- console.log("结果-"+res.data.length)
590
- if(res.data.length>0){
591
- Vue.showMessage("计划名称不能重复!")
592
- this.isSend=false
593
- return
594
- }
595
- if(this.createPlan.isShare=="是"){
596
- if(this.ismulchecker && this.createPlan.checkers.length > 0){
597
- this.createPlan.checkers.forEach((value) => {
598
- this.createPlan.f_checkerstr += `${value.name},`
599
- })
600
- this.createPlan.f_checkerstr = this.createPlan.f_checkerstr.slice(0, -1)
601
- }
602
- this.createPlan.f_checker_id=null
603
- this.createPlan.f_checker=null
604
- }else{
605
- this.createPlan.f_checker_id=this.createPlan.checker.id
606
- this.createPlan.f_checker=this.createPlan.checker.name
607
- }
608
- console.log("this.createPlan.f_checker:"+this.createPlan.f_checker)
609
- this.createPlan.f_plan_type='预约计划'
610
- this.createPlan.f_subcompany=this.userlogin.orgstr
611
- this.createPlan.f_filialeid=this.userlogin.orgid
612
- this.createPlan.f_create_operator=this.userlogin.name
613
- this.createPlan.f_create_time=Util.toStandardTimeString()
614
- await new HttpResetClass().load('POST',"/api/af-safecheck/logic/createCheckPlan", {"data": this.createPlan},{resolveMsg : '新建计划成功!', rejectMsg : '新建计划失败!'})
615
- //await this.loadCheckPlan('',()=>{})
616
- this.createPlan={
617
- f_plan_name:'',
618
- f_plan_year:'',
619
- f_plan_month:'',
620
- isShare:'否',
621
- f_issued:'否',
622
- f_checker_id:null,
623
- checker:{},
624
- checkers:[],
625
- f_checker:null,
626
- f_checkerstr:null,
627
- f_safecheck_type:'',
628
- f_create_operator:''
629
- }
630
- await this.loadCheckPlan()
631
- this.isSend=false
632
-
633
- },
634
- validationCreatePlan(){
635
- if(!this.createPlan.f_plan_name){
636
- Vue.showMessage("请输入安检计划名称!")
637
- return false
638
- }
639
- if(!this.createPlan.f_plan_year){
640
- Vue.showMessage("请选择安检年份!")
641
- return false
642
- }
643
- if(!this.createPlan.f_plan_month){
644
- Vue.showMessage("请选择安检月份!")
645
- return false
646
- }
647
- if(this.createPlan.isShare=="否"){
648
- if(JSON.stringify(this.createPlan.checker)=='{}'){
649
- Vue.showMessage("请选择安检人员!")
650
- return false
651
- }
652
- }else{
653
- this.createPlan.f_checker=''
654
- }
655
- if(!this.createPlan.f_safecheck_type){
656
- Vue.showMessage("请选择安检类型!")
657
- return false
658
- }
659
- return true
660
- },
661
- //查询安检员selectChanged
662
- async searchChecker(){
663
- console.log(this.$login.f.orgid)
664
- debugger
665
- let res=await new HttpResetClass().load('POST', '/rs/search', {
666
- data:{
667
- source: `root.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1)`,
668
- userid: this.$login.f.id
669
- }
670
- }, {resolveMsg: null, rejectMsg: null})
671
- res.data.forEach((resRow) => {
672
- this.checker.push({label:resRow.name,value:resRow})
673
- })
674
- },
675
- //设置属性值
676
- setProperty(modulename, property, value) {
677
- console.log(modulename+"新添--"+property+"--"+value)
678
- if(value=='全部'){
679
- this[modulename].search.setField(property, '')
680
- }else{
681
- this[modulename].search.setField(property, value)
682
- }
683
- },
684
- //按条件查询所有安检计划
685
- async loadCheckPlan() {
686
- this.isSend=true
687
- this.checkplan.check.checkescheckes=[]
688
- let fieldValue=''
689
- switch(this.currentorder){
690
- case "按时间降序":
691
- fieldValue='f_create_time desc'
692
- break
693
- case "按时间升序":
694
- fieldValue='f_create_time'
695
- break
696
- }
697
- console.log("--------fieldValue"+fieldValue)
698
- this.cancel()
699
- await this.checkplan.searchList("/api/af-safecheck/sql/预约计划下发",
700
- {"f_plan_name": "f_plan_name like '%{}%'",
701
- "f_plan_year":"f_plan_year={}",
702
- "f_plan_month":"f_plan_month={}",
703
- "checkerid":"f_checker_id='{}'",
704
- "isAndNot":"f_checker {}",
705
- "safechecktype":"f_safecheck_type='{}'",
706
- "issude":"f_issued = '{}'",
707
- "f_create_operator": "f_create_operator like '%{}%'",
708
- "f_department_name": "f_department_name = '{}'",
709
- },
710
- {orderitem:fieldValue,
711
- f_filialeids:"('"+this.userlogin.orgid+"')",
712
- groupitem:""
713
- }
714
- )
715
-
716
- this.isSend=false
717
- },
718
- //加载更多数据
719
- async loadMore(modelname) {
720
- this.isSend=true
721
- await this[modelname].list.loadMore()
722
- this.isSend=false
723
- },
724
- showUpPlans(row){
725
- this.upCheckPlan.id=row.id
726
- this.upCheckPlan.f_safecheck_type=row.f_safecheck_type
727
- this.upCheckPlan.f_plan_name=row.f_plan_name
728
- this.upCheckPlan.f_plan_year=row.f_plan_year
729
- this.upCheckPlan.f_plan_month=row.f_plan_month
730
- this.upCheckPlan.f_checker_id=row.f_checker_id?row.f_checker_id:null
731
- this.upCheckPlan.f_checker=row.f_checker?row.f_checker:null
732
- this.upCheckPlan.isShare=row.f_checker_id?'否':'是'
733
- this.upCheckPlan.f_issued=row.f_issued
734
- this.upCheckPlan.f_remark=row.f_remark
735
- this.upCheckPlan.checker={id:row.f_checker_id,name:row.f_checker}
736
- this.showUpPlan=true
737
- },
738
- async upPlan(){
739
- if(!this.upCheckPlan.f_plan_name){
740
- Vue.showMessage("请输入安检计划名称!")
741
- return false
742
- }
743
- if(!this.upCheckPlan.f_plan_year){
744
- Vue.showMessage("请选择安检年份!")
745
- return false
746
- }
747
- if(!this.upCheckPlan.f_plan_month){
748
- Vue.showMessage("请选择安检月份!")
749
- return false
750
- }
751
- console.log(this.upCheckPlan)
752
-
753
- if(this.upCheckPlan.isShare=="是"){
754
- if(this.ismulchecker && this.upCheckPlan.checkers.length > 0){
755
- this.upCheckPlan.checkers.forEach((value) => {
756
- this.upCheckPlan.f_checkerstr += `${value.name},`
757
- })
758
- this.upCheckPlan.f_checkerstr = this.upCheckPlan.f_checkerstr.slice(0, -1)
759
- }
760
- this.upCheckPlan.f_checker_id=null
761
- this.upCheckPlan.f_checker=null
762
- }else{
763
- this.upCheckPlan.f_checker_id=this.upCheckPlan.checker.id
764
- this.upCheckPlan.f_checker=this.upCheckPlan.checker.name
765
- }
766
- this.isSend=true
767
- let res=await new HttpResetClass().load("POST", "/api/af-safecheck/logic/updateCheckPlan", {
768
- data:{
769
- checkers:this.createPlan.checkers,
770
- f_checkerstr:this.createPlan.f_checkerstr,
771
- f_checker:this.upCheckPlan.f_checker,
772
- f_safecheck_type:this.upCheckPlan.f_safecheck_type,
773
- f_checker_id:this.upCheckPlan.f_checker_id,
774
- f_plan_name:this.upCheckPlan.f_plan_name,
775
- f_plan_year:this.upCheckPlan.f_plan_year,
776
- f_plan_month:this.upCheckPlan.f_plan_month,
777
- f_plan_id:this.upCheckPlan.id,
778
- issued:'否',
779
- f_remark:this.upCheckPlan.f_remark,
780
- }
781
- }, {resolveMsg: null, rejectMsg: null})
782
- if(res.data.code==200){
783
- this.$showMessage("修改成功!")
784
- this.cancel()
785
- await this.loadCheckPlan()
786
- }else{
787
- this.$showMessage("修改失败!")
788
- }
789
- this.isSend=false
790
- },
791
- //下发安检计划
792
- async sendCheckPlan(f){
793
- if(this.checkplan.check.checkes.length<1){
794
- this.$showMessage("请选择要下发的安检计划")
795
- return
796
- }
797
- this.isSend=true
798
- let res=await new HttpResetClass().load("POST", "/api/af-safecheck/logic/NewBespeakCheckPlan", {
799
- data:{
800
- f_issued:'是',
801
- f_issue_time:Util.toStandardTimeString(),
802
- f_send_operator:this.userlogin.name,
803
- param:this.checkplan.check.checkes,
804
- }
805
- }, {resolveMsg: null, rejectMsg: null})
806
- if(res.data.code==200){
807
- //Vue.showMessage("下发成功!其中有"+res.data.repet+"个计划己经是下发状态")
808
- this.$showMessage("下发成功!")
809
- }else{
810
- this.$showMessage("下发失败!")
811
- }
812
- await this.loadCheckPlan()
813
- this.isSend=false
814
- },
815
- //删除安检计划
816
- async delCheckPlan(f){
817
- if(this.checkplan.check.checkes.length<1){
818
- this.$showMessage("请选择要删除的安检计划")
819
- return
820
- }
821
- this.isSend=true
822
- let res=await new HttpResetClass().load("POST", "/api/af-safecheck/logic/deleteCheckPlan", {
823
- data:{
824
- f_operator:this.userlogin.name,//global.login.name,
825
- condition:"",
826
- switchCheckAll:true,
827
- checkAll:false,
828
- param:this.checkplan.check.checkes,
829
- columnName: "f_plan_id"
830
- }
831
- }, {resolveMsg: null, rejectMsg: null})
832
- console.log(JSON.stringify(res))
833
- if(res.data.code==200){
834
- this.$showMessage("删除成功!")
835
- }else{
836
- this.$showMessage("删除失败!")
837
- }
838
- if(this.checkplan.check.checkes.indexOf(this.selectPlan.id)!= -1){
839
- this.selectPlan={id:''}
840
- console.log("包含了清空selectplan")
841
- }
842
- await this.loadCheckPlan()
843
- this.isSend=false
844
- },
845
- async refresh(){
846
- this.$refs.item.$refs.paged.$refs.criteria.search()
847
- this.$refs.user.$refs.paged.$refs.criteria.search()
848
- await this.loadCheckPlan()
849
- },
850
- async refreshPlan(){
851
- this.$refs.item.$refs.paged.$refs.criteria.search()
852
- await this.loadCheckPlan()
853
- }
854
- }
855
- }
856
- </script>
857
-
858
- <style scoped>
859
- .safe-planfont{
860
- font-family: MicrosoftYaHei;
861
- font-size: 15px;
862
- font-weight: normal;
863
- font-stretch: normal;
864
- letter-spacing: 2px;
865
- color: #333333;
866
- line-height: 25px;
867
- }
868
- .safe-bodyfont{
869
- font-family: MicrosoftYaHei;
870
- font-size: 14px;
871
- font-weight: normal;
872
- font-stretch: normal;
873
- letter-spacing: 0px;
874
- color: #999999;
875
- line-height: 30px;
876
- }
877
- .safe-leftplan{
878
- height:auto;
879
- border-bottom:1px solid #ececec;
880
- padding: 10px 5px
881
- }
882
- .leftplan-center{
883
- border-top:1px solid #ececec;
884
- border-bottom:1px solid #ececec;
885
- }
886
- .safe_p{
887
- white-space: nowrap;
888
- overflow: hidden;
889
- text-overflow: ellipsis;
890
- }
891
- .safe-div-p{
892
- color: #4792de;
893
- text-align: end;
894
- padding: 8px 15px;
895
- }
896
- .safe_list_li:hover{
897
- background-color: rgb(245,246,247);
898
- }
899
- .safe-selectplan{
900
- pointer-events: none;
901
- background-color: rgb(216,234,251);
902
- }
903
- .safe_plan_list{
904
- height: 80%;
905
- overflow: scroll;
906
- }
907
-
908
- </style>
909
- <style>
910
- .safe_plan_list::-webkit-scrollbar{
911
- background-color: #F5F5F5;
912
- }
913
-
914
- /*定义滚动条轨道 内阴影+圆角*/
915
- .safe_plan_list::-webkit-scrollbar-track{
916
- -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
917
- border-radius: 10px;
918
- background-color: #F5F5F5;
919
- }
920
-
921
- /*定义滑块 内阴影+圆角*/
922
- .safe_plan_list::-webkit-scrollbar-thumb{
923
- border-radius: 10px;
924
- -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
925
- background-color: #F5F5F5;
926
- }
927
- </style>
1
+ <template>
2
+ <work-busy :is-busy="isSend"></work-busy>
3
+ <div class="binary" style="background-color: #e8f4ff">
4
+ <!--左侧安检计划列表******************************************************-->
5
+ <div class="binary-left flex flex-column" style="width: 16%">
6
+ <div style="height: 9%">
7
+ <div class="row auto">
8
+ <img style="width: 20px;margin: 0 5px" src="../../../../static/images/searchhover.png" @click="showUserCondition()"/>
9
+ <v-select :width="'80%'"
10
+ class="select select_list"
11
+ :search="false"
12
+ :value.sync="currentorder"
13
+ v-model="currentorder"
14
+ @change="loadCheckPlan"
15
+ :options='opt'
16
+ close-on-select value-single >
17
+ </v-select>
18
+ </div>
19
+ <div class="row auto safe-div-p"><!--<span style="margin-right: 5px" @click="refresh()" style="cursor:default">测试</span>--><span style="margin-right: 5px" @click="delCheckPlan()" style="cursor:default" v-if="isdelete">删除</span> <span @click="sendCheckPlan()" style="cursor:default">下发</span></div>
20
+ </div>
21
+ <div class="leftplan-center safe_plan_list">
22
+ <div class="row safe-leftplan safe_list_li" :class="{'safe-selectplan':selectPlan.id==row.id}" v-for="row in checkplan.list.data" @click="selectPlanChange(row)">
23
+ <table style="width:100%;table-layout:fixed" >
24
+ <tr class="safe-planfont">
25
+ <td rowspan="6"><input type="checkbox" style="pointer-events:auto" v-show="row.plan_count==0 || row.f_issued=='未下发'" onClick="event.cancelBubble = true" :checked="checkplan.check.isChecked(row.f_check_item_id)" @change="checkplan.check.setCheckes(row.id)"/></td>
26
+ <td colspan="6" class="safe_p">{{row.f_plan_name}}</td>
27
+ <td colspan="2" style="text-align: center"><img width="20px" style="pointer-events:auto" onClick="event.cancelBubble = true" @click="showUpPlans(row)" src="../../../../static/images/edit.png"/></td>
28
+ </tr>
29
+ <tr class="safe-bodyfont" style="color:#4792de">
30
+ <td colspan="6">{{row.f_issued}}</td>
31
+ <td colspan="2" class="safe_p">{{row.f_checker?row.f_checker:'共享'}}</td>
32
+ </tr>
33
+ <tr class="safe-bodyfont">
34
+ <td colspan="4">{{row.f_plan_year}}-{{row.f_plan_month}}</td>
35
+ <td colspan="2">总 :</td>
36
+ <td colspan="2">{{row.plan_count}}</td>
37
+ </tr>
38
+ <tr class="safe-bodyfont">
39
+ <td colspan="2">未检 :</td>
40
+ <td colspan="2">{{row.unchecked}}</td>
41
+ <td colspan="2">已检 :</td>
42
+ <td colspan="2">{{row.checked}}</td>
43
+ </tr>
44
+ <tr class="safe-bodyfont" v-if="row.f_create_time">
45
+ <td colspan="3">创建时间 :</td>
46
+ <td colspan="5" style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" :title="row.f_create_time">{{row.f_create_time}}</td>
47
+ </tr>
48
+ <!-- <tr class="safe-bodyfont" v-if="row.f_safecheck_type">-->
49
+ <!-- <td colspan="3">安检类型 :</td>-->
50
+ <!-- <td colspan="5" style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" :title="row.f_safecheck_type">{{row.f_safecheck_type}}</td>-->
51
+ <!-- </tr>-->
52
+ <tr class="safe-bodyfont">
53
+ <td colspan="3">计划备注 :</td>
54
+ <td colspan="5" style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" :title="row.f_remark">{{row.f_remark}}</td>
55
+ </tr>
56
+ </table>
57
+ </div>
58
+ </div>
59
+ <div style="height: 11%">
60
+ <div class="row auto leftplan-center" style="padding: 8px">
61
+ <div class="col-sm-6" style="">
62
+ <span>共{{checkplan.list.count}}条</span>
63
+ </div>
64
+ <div class="col-sm-6" style="text-align: end">
65
+ <span @click="loadMore('checkplan')"><img src="../../../../static/images/doubledown.png"/>&ensp;更多</span>
66
+ </div>
67
+ </div>
68
+ <div class="row auto" style="padding: 10px;text-align: center">
69
+ <img src="../../../../static/images/addnew.png" @click="showcCreatePlan()"/>
70
+ </div>
71
+ </div>
72
+ </div>
73
+ <!--右侧列表**************************************************************************-->
74
+ <div class="binary-right" style="width: 84%;overflow: auto">
75
+ <div style="height: 5%">
76
+ <div class="col-sm-4">
77
+ <label class="font_normal_body">公&emsp;&emsp;司</label>
78
+ <right-tree-safe :islist="false" :width="'60%'" @re-res="getRes"></right-tree-safe>
79
+ </div>
80
+ </div>
81
+ <div style="height: 95%">
82
+ <div style="height: 50%" class="leftplan-center">
83
+ <check-plan-list :selectplan="selectPlan" :userlogin="userlogin" v-ref:item></check-plan-list>
84
+ </div>
85
+ <div style="height: 50%">
86
+ <check-user-list :selectplan="selectPlan" :userlogin="userlogin" v-ref:user></check-user-list>
87
+ </div>
88
+ </div>
89
+ </div>
90
+ <modal :show.sync="showCondtion" v-ref:modal :width="'50%'" :backdrop="false">
91
+ <div slot="modal-header" class="modal-header">
92
+ <h4 class="modal-title">
93
+ 计划查询条件
94
+ </h4>
95
+ </div>
96
+ <div slot="modal-body" class="modal-body">
97
+ <div class="row">
98
+ <div class="form-group col-sm-4" >
99
+ <label class="font_normal_body">计划名称:</label>
100
+ <input type="text" class="input_search" v-model="planCondition.f_plan_name" @change="setProperty('checkplan','f_plan_name',planCondition.f_plan_name)"
101
+ style="width: 60%" placeholder="请选择" />
102
+ </div>
103
+ <div class="form-group col-sm-4" >
104
+ <label class="font_normal_body">计划年份:</label>
105
+ <v-select
106
+ class="select select_list"
107
+ :value.sync="planCondition.f_plan_year"
108
+ v-model="planCondition.f_plan_year"
109
+ @change="setProperty('checkplan','f_plan_year',planCondition.f_plan_year)"
110
+ :search="false"
111
+ :options='getConList("yearList")'
112
+ placeholder='请选择'
113
+ close-on-select
114
+ value-single
115
+ >
116
+ </v-select>
117
+ </div>
118
+ <div class="form-group col-sm-4" >
119
+ <label class="font_normal_body">计划月份:</label>
120
+ <v-select
121
+ class="select select_list"
122
+ :value.sync="planCondition.f_plan_month"
123
+ v-model="planCondition.f_plan_month"
124
+ @change="setProperty('checkplan','f_plan_month',planCondition.f_plan_month)"
125
+ :search="false"
126
+ :options='getConList("monthList")'
127
+ placeholder='请选择'
128
+ close-on-select
129
+ value-single>
130
+ </v-select>
131
+ </div>
132
+ <div class="form-group col-sm-4" >
133
+ <label class="font_normal_body">是否共享:</label>
134
+ <v-select
135
+ class="select select_list"
136
+ :value.sync="planCondition.isShare"
137
+ v-model="planCondition.isShare"
138
+ @change="setProperty('checkplan','isAndNot',planCondition.isShare)"
139
+ :options='getConList("conIsAndNot")'
140
+ :search="false"
141
+ placeholder='请选择'
142
+ close-on-select
143
+ value-single
144
+ >
145
+ </v-select>
146
+ </div>
147
+ <div class="form-group col-sm-4" >
148
+ <label class="font_normal_body">是否下发:</label>
149
+ <v-select
150
+ class="select select_list"
151
+ :value.sync="planCondition.issued"
152
+ v-model="planCondition.issued"
153
+ :options='getConList("isAndNot")'
154
+ @change="setProperty('checkplan','issude',planCondition.issued)"
155
+ placeholder='请选择'
156
+ :search="false"
157
+ close-on-select
158
+ value-single
159
+ >
160
+ </v-select>
161
+ </div>
162
+ <div class="form-group col-sm-4" >
163
+ <label class="font_normal_body">安&ensp;检&ensp;员:</label>
164
+ <v-select
165
+ class="select select_list"
166
+ :value.sync="planCondition.f_checker"
167
+ v-model="planCondition.f_checker"
168
+ @change="setProperty('checkplan','checkerid',planCondition.f_checker.id)"
169
+ :options='getConList("checker")'
170
+ placeholder='请选择'
171
+ close-on-select
172
+ value-single
173
+ >
174
+ </v-select>
175
+ </div>
176
+
177
+ <div class="form-group col-sm-4" >
178
+ <label class="font_normal_body">安检类型:</label>
179
+ <v-select
180
+ class="select select_list"
181
+ :value.sync="planCondition.f_safecheck_type"
182
+ v-model="planCondition.f_safecheck_type"
183
+ @change="setProperty('checkplan','safechecktype',planCondition.f_safecheck_type)"
184
+ :options='getConList("safechecktype")'
185
+ placeholder='请选择'
186
+ :search="false"
187
+ close-on-select
188
+ value-single
189
+ >
190
+ </v-select>
191
+ </div>
192
+ <div class="form-group col-sm-4" >
193
+ <label class="font_normal_body">安检部门:</label>
194
+ <v-select
195
+ class="select select_list"
196
+ :value.sync="planCondition.f_department_name"
197
+ v-model="planCondition.f_department_name"
198
+ @change="setProperty('checkplan','f_department_name',planCondition.f_department_name)"
199
+ :options='getConList("departmentname")'
200
+ placeholder='请选择'
201
+ close-on-select
202
+ value-single
203
+ >
204
+ </v-select>
205
+ </div>
206
+ <div class="form-group col-sm-4" >
207
+ <label class="font_normal_body">创&ensp;建&ensp;人:</label>
208
+ <input type="text" class="input_search" v-model="planCondition.f_create_operator" @change="setProperty('checkplan','f_create_operator',planCondition.f_create_operator)"
209
+ style="width: 60%" placeholder="创建人" />
210
+ </div>
211
+ </div>
212
+ </div>
213
+ <div slot="modal-footer" class="modal-footer" style="text-align: center">
214
+ <button class="button_search" @click="loadCheckPlan" style="margin-right: 15px">查询</button>
215
+ <button class="button_search" @click="cancel">取消</button>
216
+ </div>
217
+ </modal>
218
+ <modal :show.sync="showCreatePlan" v-ref:modal1 :width="'50%'" :backdrop="false">
219
+ <div slot="modal-header" class="modal-header">
220
+ <h4 class="modal-title">
221
+ 新建计划
222
+ </h4>
223
+ </div>
224
+ <div slot="modal-body" class="modal-body">
225
+ <div class="row">
226
+ <div class="form-group col-sm-4" >
227
+ <label class="font_normal_body">计划名称:</label>
228
+ <input type="text" class="input_search" v-model="createPlan.f_plan_name"
229
+ style="width: 60%" placeholder="请选择" />
230
+ </div>
231
+ <div class="form-group col-sm-4" >
232
+ <label class="font_normal_body">计划年份:</label>
233
+ <v-select
234
+ class="select select_list"
235
+ :value.sync="createPlan.f_plan_year"
236
+ v-model="createPlan.f_plan_year"
237
+ :search="false"
238
+ :options='yearList'
239
+ placeholder='请选择'
240
+ close-on-select
241
+ value-single
242
+ >
243
+ </v-select>
244
+ </div>
245
+ <div class="form-group col-sm-4" >
246
+ <label class="font_normal_body">计划月份:</label>
247
+ <v-select
248
+ class="select select_list"
249
+ :value.sync="createPlan.f_plan_month"
250
+ v-model="createPlan.f_plan_month"
251
+ :search="false"
252
+ :options='monthList'
253
+ placeholder='请选择'
254
+ close-on-select
255
+ value-single>
256
+ </v-select>
257
+ </div>
258
+ <div class="form-group col-sm-4" >
259
+ <label class="font_normal_body">是否共享:</label>
260
+ <v-select
261
+ class="select select_list"
262
+ :search="false"
263
+ :value.sync="createPlan.isShare"
264
+ v-model="createPlan.isShare"
265
+ :options='isAndNot'
266
+ placeholder='请选择'
267
+ close-on-select
268
+ value-single
269
+ >
270
+ </v-select>
271
+ </div>
272
+ <div class="form-group col-sm-4" v-show="createPlan.isShare=='是' && ismulchecker">
273
+ <label class="font_normal_body">安&ensp;检&ensp;员:</label>
274
+ <v-select
275
+ class="select select_list"
276
+ :value.sync="createPlan.checkers"
277
+ v-model="createPlan.checkers"
278
+ :options='checker'
279
+ placeholder='请选择'
280
+ :multiple="true"
281
+ >
282
+ </v-select>
283
+ </div>
284
+ <div class="form-group col-sm-4" v-show="createPlan.isShare=='否'">
285
+ <label class="font_normal_body">安&ensp;检&ensp;员:</label>
286
+ <v-select
287
+ class="select select_list"
288
+ :value.sync="createPlan.checker"
289
+ v-model="createPlan.checker"
290
+ :options='checker'
291
+ placeholder='请选择'
292
+ close-on-select
293
+ value-single
294
+ >
295
+ </v-select>
296
+ </div>
297
+
298
+ <div class="form-group col-sm-4" >
299
+ <label class="font_normal_body">安检类型:</label>
300
+ <v-select
301
+ class="select select_list"
302
+ :value.sync="createPlan.f_safecheck_type"
303
+ v-model="createPlan.f_safecheck_type"
304
+ :search="false"
305
+ :options='ntoway'
306
+ placeholder='请选择'
307
+ close-on-select
308
+ value-single
309
+ >
310
+ </v-select>
311
+ </div>
312
+ <div class="form-group col-sm-12" >
313
+ <label class="font_normal_body">计划备注:</label>
314
+ <input type="text" class="input_search" v-model="createPlan.f_remark"
315
+ style="width: 60%" placeholder="请输入备注" />
316
+ </div>
317
+ </div>
318
+ </div>
319
+ <div slot="modal-footer" class="modal-footer" style="text-align: center">
320
+ <button class="button_search" style="margin-right: 15px" @click="addNewPlan()">创建计划</button>
321
+ <button class="button_search" @click="cancel">取消</button>
322
+ </div>
323
+ </modal>
324
+ <modal :show.sync="showUpPlan" v-ref:modal2 :backdrop="false">
325
+ <div slot="modal-header" class="modal-header">
326
+ <h4 class="modal-title">
327
+ 修改计划
328
+ </h4>
329
+ </div>
330
+ <div slot="modal-body" class="modal-body">
331
+ <div class="row">
332
+ <div class="form-group col-sm-4" >
333
+ <label class="font_normal_body">计划名称:</label>
334
+ <input type="text" class="input_search" v-model="upCheckPlan.f_plan_name"
335
+ style="width: 60%" />
336
+ </div>
337
+ <div class="form-group col-sm-4" >
338
+ <label class="font_normal_body">计划年份:</label>
339
+ <v-select
340
+ class="select select_list"
341
+ :value.sync="upCheckPlan.f_plan_year"
342
+ v-model="upCheckPlan.f_plan_year"
343
+ :search="false"
344
+ :value="upCheckPlan.f_plan_year"
345
+ :options='yearList'
346
+ :disabled="true"
347
+ close-on-select
348
+ value-single>
349
+
350
+
351
+ </v-select>
352
+ <!-- <datepicker
353
+ placeholder='请选择'
354
+ style="width:60%"
355
+ :disabled-days-of-week="[]"
356
+ :format="'yyyy'"
357
+ :show-rest-button="reset"
358
+ :value.sync="upCheckPlan.f_plan_year"
359
+ v-model="upCheckPlan.f_plan_year">
360
+ </datepicker>-->
361
+ </div>
362
+ <div class="form-group col-sm-4" >
363
+ <label class="font_normal_body">计划月份:</label>
364
+ <v-select
365
+ class="select select_list"
366
+ :value.sync="upCheckPlan.f_plan_month"
367
+ v-model="upCheckPlan.f_plan_month"
368
+ :disabled="true"
369
+ :options='monthList'
370
+ close-on-select
371
+ value-single>
372
+ </v-select>
373
+ </div>
374
+ <div class="form-group col-sm-4" >
375
+ <label class="font_normal_body">是否共享:</label>
376
+ <v-select
377
+ class="select select_list"
378
+ :search="false"
379
+ :value.sync="upCheckPlan.isShare"
380
+ v-model="upCheckPlan.isShare"
381
+ :options='isAndNot'
382
+ placeholder='请选择'
383
+ :disabled="true"
384
+ close-on-select
385
+ value-single
386
+ >
387
+ </v-select>
388
+ </div>
389
+ <div class="form-group col-sm-4" v-show="upCheckPlan.isShare=='是' && ismulchecker">
390
+ <label class="font_normal_body">安&ensp;检&ensp;员:</label>
391
+ <v-select
392
+ class="select select_list"
393
+ :value.sync="upCheckPlan.checkers"
394
+ v-model="upCheckPlan.checkers"
395
+ :options='checker'
396
+ placeholder='请选择'
397
+ :multiple="true"
398
+ >
399
+ </v-select>
400
+ </div>
401
+ <div class="form-group col-sm-4" v-show="upCheckPlan.isShare=='否'">
402
+ <label class="font_normal_body">安&ensp;检&ensp;员:</label>
403
+ <v-select
404
+ class="select select_list"
405
+ :value.sync="upCheckPlan.checker"
406
+ v-model="upCheckPlan.checker"
407
+ :options='checker'
408
+ close-on-select
409
+ value-single
410
+ >
411
+ </v-select>
412
+ </div>
413
+
414
+ <div class="form-group col-sm-4">
415
+ <label class="font_normal_body">安检类型:</label>
416
+ <v-select
417
+ class="select select_list"
418
+ :value.sync="upCheckPlan.f_safecheck_type"
419
+ v-model="upCheckPlan.f_safecheck_type"
420
+ :options='ntoway'
421
+ close-on-select
422
+ :disabled="true"
423
+ value-single
424
+ >
425
+ </v-select>
426
+ </div>
427
+ <div class="form-group col-sm-12" >
428
+ <label class="font_normal_body">计划备注:</label>
429
+ <input type="text" class="input_search" v-model="upCheckPlan.f_remark"
430
+ style="width: 60%" placeholder="请输入备注" />
431
+ </div>
432
+ </div>
433
+ </div>
434
+ <div slot="modal-footer" class="modal-footer" style="text-align: center">
435
+ <button class="button_search" style="margin-right: 15px" @click="upPlan()">保存修改</button>
436
+ <button class="button_search" @click="cancel">取消</button>
437
+ </div>
438
+ </modal>
439
+ </div>
440
+ </template>
441
+
442
+ <script>
443
+ import {SearchList,HttpResetClass, PagedList} from "vue-client";
444
+ import * as Util from "../../../components/Util";
445
+ import Vue from "vue";
446
+ import AppData from "../../../../src/stores/AppData";
447
+
448
+ export default {
449
+ name: "PlanManage",
450
+ title: '计划管理',
451
+ data() {
452
+ return {
453
+ ismulchecker:this.$appdata.getSingleValue('计划安检员多选')?true:false,
454
+ a:'1',
455
+ opt:[{label:"按时间降序",value:"按时间降序"},{label:"按时间升序",value:"按时间升序"}],
456
+ currentorder:'按时间降序',
457
+ isdelete:this.$login.r ? this.$login.r.includes("安检计划删除"):false,
458
+ checkplan : new SearchList(true),
459
+ selectPlan:{id:''},
460
+ upCheckPlan:{
461
+ f_plan_name:'',
462
+ f_safecheck_type:'',
463
+ f_plan_year:'',
464
+ f_plan_month:'',
465
+ f_checker_id:'',
466
+ isShare:'',
467
+ f_checker:'',
468
+ f_checkerstr:'',
469
+ checker:{},
470
+ checkers:[],
471
+ f_remark:''
472
+ },
473
+ isSend:false,
474
+ createPlan:{
475
+ f_plan_name:'',
476
+ f_plan_year:'',
477
+ f_plan_month:'',
478
+ isShare:'否',
479
+ f_issued:'否',
480
+ f_checker_id:null,
481
+ checker:{},
482
+ checkers:[],
483
+ f_checker:null,
484
+ f_checkerstr:null,
485
+ f_safecheck_type:'',
486
+ f_remark:''
487
+ },
488
+ planCondition:{},
489
+ showCondtion:false,
490
+ showCreatePlan:false,
491
+ showUpPlan:false,
492
+ isAndNot:[{label:'是',value:'是'},{label:'否',value:'否'}],
493
+ conIsAndNot:[{label:'是',value:'is null'},{label:'否',value:'is not null'}],
494
+ yearList:[{label:2020,value:2020},{label:2021,value:2021},{label:2022,value:2022},{label:2023,value:2023},{label:2024,value:2024},{label:2025,value:2025},{label:2026,value:2026},{label:2027,value:2027},{label:2028,value:2028},{label:2029,value:2029},{label:2030,value:2030}],
495
+ monthList:[{label:"1",value:1},{label:"2",value:2},{label:"3",value:3},{label:"4",value:4},{label:"5",value:5},{label:"6",value:6},{label:"7",value:7},{label:"8",value:8},{label:"9",value:9},{label:"10",value:10},{label:"11",value:11},{label:"12",value:12}],
496
+ safechecktype:[{label:'年度普检',value:'年度普检'}],
497
+ departmentname:this.$appdata.getParam('安检部门'),
498
+ checker:[],
499
+ checkertCon:[],
500
+ userlogin:{
501
+ id:this.$login.f.id,
502
+ name:this.$login.f.name,
503
+ orgid:this.$login.f.orgid,
504
+ orgstr:this.$login.f.orgs,
505
+ }
506
+ //需要测试直接把下面放开即可
507
+ /*userlogin:{
508
+ id:'141701',
509
+ name:'hwq',
510
+ orgid:'35526',
511
+ orgstr:'西华县天然气有限公司'
512
+ }*/
513
+ }
514
+ },
515
+ async ready(){
516
+ document.addEventListener('keydown', this.handleEnter, true);
517
+ await this.loadpage()
518
+ if (!this.userlogin.orgid){
519
+ if (this.$login.f.f_orgids){
520
+ this.userlogin.orgid = this.$login.f.f_orgids.endsWith('.')?this.$login.f.f_orgids.substring(0,this.$login.f.f_orgids.length-1):this.$login.f.f_orgids
521
+ }else {
522
+ this.userlogin.orgid = ''
523
+ }
524
+ }
525
+ },
526
+ computed: {
527
+ ntoway() {
528
+ /*/!* return AppData.getParam('安检类型')*!/*/
529
+ return this.$appdata.getParam('安检类型')
530
+ }
531
+ },
532
+ methods:{
533
+ handleEnter(e) {
534
+ if (e.key === 'Enter') {
535
+ this.$refs.user.$refs.paged.$refs.criteria.search()
536
+ }
537
+ },
538
+ /* ntoway() {
539
+ /!* return AppData.getParam('安检类型')*!/
540
+ return Vue.$appdata.getParam('安检类型')
541
+ },*/
542
+ async loadpage(){
543
+ //await this.checkplan.searchList("/api/af-safecheck/sql/预约计划下发", {},{groupitem:"",f_filialeids:"('"+this.userlogin.orgid+"')",orderitem:"f_create_time desc"})
544
+ await this.loadCheckPlan()
545
+ await this.searchChecker(this.userlogin.id)
546
+ },
547
+ getRes(obj) {
548
+ console.log("----obj"+JSON.stringify(obj.resids))
549
+ console.log(obj)
550
+ if(obj.resids.length>0 && obj.resids[0]!=this.userlogin.orgid && obj.resids[0]){
551
+ this.userlogin.orgid=obj.resids[0]
552
+ this.userlogin.orgstr=obj.res[0]
553
+ if(this.$refs.item && this.$refs.user){
554
+ this.loadpage()
555
+ this.selectPlan={id:""}
556
+ this.$refs.item.model.rows=[]
557
+ this.$refs.user.model.rows=[]
558
+ this.$refs.user.loadpage()
559
+ }
560
+ }
561
+ },
562
+ getConList(field){
563
+ return [{label:'全部',value:''}, ...this[field]]
564
+ },
565
+ selectPlanChange(plan){
566
+ this.selectPlan=plan
567
+ //this.upCheckPlan=plan
568
+ },
569
+ showUserCondition(){
570
+ this.showCondtion=true
571
+ },
572
+ showcCreatePlan(){
573
+ this.showCreatePlan=true
574
+ this.createPlan.f_plan_year=new Date().getFullYear()
575
+ this.createPlan.f_safecheck_type='年度普检'
576
+ },
577
+ cancel(){
578
+ this.showCondtion=false
579
+ this.showCreatePlan=false
580
+ this.showUpPlan=false
581
+ },
582
+ //新建计划
583
+ async addNewPlan() {
584
+ if(!this.validationCreatePlan()){
585
+ return
586
+ }
587
+ this.isSend=true
588
+ let res=await new HttpResetClass().load("POST","/api/af-safecheck/sql/getCheckplan", {data: {condition:"f_plan_name='"+this.createPlan.f_plan_name+"'",sortfield:'f_create_time desc'}})
589
+ console.log("结果-"+res.data.length)
590
+ if(res.data.length>0){
591
+ Vue.showMessage("计划名称不能重复!")
592
+ this.isSend=false
593
+ return
594
+ }
595
+ if(this.createPlan.isShare=="是"){
596
+ if(this.ismulchecker && this.createPlan.checkers.length > 0){
597
+ this.createPlan.checkers.forEach((value) => {
598
+ this.createPlan.f_checkerstr += `${value.name},`
599
+ })
600
+ this.createPlan.f_checkerstr = this.createPlan.f_checkerstr.slice(0, -1)
601
+ }
602
+ this.createPlan.f_checker_id=null
603
+ this.createPlan.f_checker=null
604
+ }else{
605
+ this.createPlan.f_checker_id=this.createPlan.checker.id
606
+ this.createPlan.f_checker=this.createPlan.checker.name
607
+ }
608
+ console.log("this.createPlan.f_checker:"+this.createPlan.f_checker)
609
+ this.createPlan.f_plan_type='预约计划'
610
+ this.createPlan.f_subcompany=this.userlogin.orgstr
611
+ this.createPlan.f_filialeid=this.userlogin.orgid
612
+ this.createPlan.f_create_operator=this.userlogin.name
613
+ this.createPlan.f_create_time=Util.toStandardTimeString()
614
+ await new HttpResetClass().load('POST',"/api/af-safecheck/logic/createCheckPlan", {"data": this.createPlan},{resolveMsg : '新建计划成功!', rejectMsg : '新建计划失败!'})
615
+ //await this.loadCheckPlan('',()=>{})
616
+ this.createPlan={
617
+ f_plan_name:'',
618
+ f_plan_year:'',
619
+ f_plan_month:'',
620
+ isShare:'否',
621
+ f_issued:'否',
622
+ f_checker_id:null,
623
+ checker:{},
624
+ checkers:[],
625
+ f_checker:null,
626
+ f_checkerstr:null,
627
+ f_safecheck_type:'',
628
+ f_create_operator:''
629
+ }
630
+ await this.loadCheckPlan()
631
+ this.isSend=false
632
+
633
+ },
634
+ validationCreatePlan(){
635
+ if(!this.createPlan.f_plan_name){
636
+ Vue.showMessage("请输入安检计划名称!")
637
+ return false
638
+ }
639
+ if(!this.createPlan.f_plan_year){
640
+ Vue.showMessage("请选择安检年份!")
641
+ return false
642
+ }
643
+ if(!this.createPlan.f_plan_month){
644
+ Vue.showMessage("请选择安检月份!")
645
+ return false
646
+ }
647
+ if(this.createPlan.isShare=="否"){
648
+ if(JSON.stringify(this.createPlan.checker)=='{}'){
649
+ Vue.showMessage("请选择安检人员!")
650
+ return false
651
+ }
652
+ }else{
653
+ this.createPlan.f_checker=''
654
+ }
655
+ if(!this.createPlan.f_safecheck_type){
656
+ Vue.showMessage("请选择安检类型!")
657
+ return false
658
+ }
659
+ return true
660
+ },
661
+ //查询安检员selectChanged
662
+ async searchChecker(){
663
+ console.log(this.$login.f.orgid)
664
+ debugger
665
+ let res=await new HttpResetClass().load('POST', '/rs/search', {
666
+ data:{
667
+ source: `root.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1)`,
668
+ userid: this.$login.f.id
669
+ }
670
+ }, {resolveMsg: null, rejectMsg: null})
671
+ res.data.forEach((resRow) => {
672
+ this.checker.push({label:resRow.name,value:resRow})
673
+ })
674
+ },
675
+ //设置属性值
676
+ setProperty(modulename, property, value) {
677
+ console.log(modulename+"新添--"+property+"--"+value)
678
+ if(value=='全部'){
679
+ this[modulename].search.setField(property, '')
680
+ }else{
681
+ this[modulename].search.setField(property, value)
682
+ }
683
+ },
684
+ //按条件查询所有安检计划
685
+ async loadCheckPlan() {
686
+ this.isSend=true
687
+ this.checkplan.check.checkescheckes=[]
688
+ let fieldValue=''
689
+ switch(this.currentorder){
690
+ case "按时间降序":
691
+ fieldValue='f_create_time desc'
692
+ break
693
+ case "按时间升序":
694
+ fieldValue='f_create_time'
695
+ break
696
+ }
697
+ console.log("--------fieldValue"+fieldValue)
698
+ this.cancel()
699
+ await this.checkplan.searchList("/api/af-safecheck/sql/预约计划下发",
700
+ {"f_plan_name": "f_plan_name like '%{}%'",
701
+ "f_plan_year":"f_plan_year={}",
702
+ "f_plan_month":"f_plan_month={}",
703
+ "checkerid":"f_checker_id='{}'",
704
+ "isAndNot":"f_checker {}",
705
+ "safechecktype":"f_safecheck_type='{}'",
706
+ "issude":"f_issued = '{}'",
707
+ "f_create_operator": "f_create_operator like '%{}%'",
708
+ "f_department_name": "f_department_name = '{}'",
709
+ },
710
+ {orderitem:fieldValue,
711
+ f_filialeids:"('"+this.userlogin.orgid+"')",
712
+ groupitem:""
713
+ }
714
+ )
715
+
716
+ this.isSend=false
717
+ },
718
+ //加载更多数据
719
+ async loadMore(modelname) {
720
+ this.isSend=true
721
+ await this[modelname].list.loadMore()
722
+ this.isSend=false
723
+ },
724
+ showUpPlans(row){
725
+ this.upCheckPlan.id=row.id
726
+ this.upCheckPlan.f_safecheck_type=row.f_safecheck_type
727
+ this.upCheckPlan.f_plan_name=row.f_plan_name
728
+ this.upCheckPlan.f_plan_year=row.f_plan_year
729
+ this.upCheckPlan.f_plan_month=row.f_plan_month
730
+ this.upCheckPlan.f_checker_id=row.f_checker_id?row.f_checker_id:null
731
+ this.upCheckPlan.f_checker=row.f_checker?row.f_checker:null
732
+ this.upCheckPlan.isShare=row.f_checker_id?'否':'是'
733
+ this.upCheckPlan.f_issued=row.f_issued
734
+ this.upCheckPlan.f_remark=row.f_remark
735
+ this.upCheckPlan.checker={id:row.f_checker_id,name:row.f_checker}
736
+ this.showUpPlan=true
737
+ },
738
+ async upPlan(){
739
+ if(!this.upCheckPlan.f_plan_name){
740
+ Vue.showMessage("请输入安检计划名称!")
741
+ return false
742
+ }
743
+ if(!this.upCheckPlan.f_plan_year){
744
+ Vue.showMessage("请选择安检年份!")
745
+ return false
746
+ }
747
+ if(!this.upCheckPlan.f_plan_month){
748
+ Vue.showMessage("请选择安检月份!")
749
+ return false
750
+ }
751
+ console.log(this.upCheckPlan)
752
+
753
+ if(this.upCheckPlan.isShare=="是"){
754
+ if(this.ismulchecker && this.upCheckPlan.checkers.length > 0){
755
+ this.upCheckPlan.checkers.forEach((value) => {
756
+ this.upCheckPlan.f_checkerstr += `${value.name},`
757
+ })
758
+ this.upCheckPlan.f_checkerstr = this.upCheckPlan.f_checkerstr.slice(0, -1)
759
+ }
760
+ this.upCheckPlan.f_checker_id=null
761
+ this.upCheckPlan.f_checker=null
762
+ }else{
763
+ this.upCheckPlan.f_checker_id=this.upCheckPlan.checker.id
764
+ this.upCheckPlan.f_checker=this.upCheckPlan.checker.name
765
+ }
766
+ this.isSend=true
767
+ let res=await new HttpResetClass().load("POST", "/api/af-safecheck/logic/updateCheckPlan", {
768
+ data:{
769
+ checkers:this.createPlan.checkers,
770
+ f_checkerstr:this.createPlan.f_checkerstr,
771
+ f_checker:this.upCheckPlan.f_checker,
772
+ f_safecheck_type:this.upCheckPlan.f_safecheck_type,
773
+ f_checker_id:this.upCheckPlan.f_checker_id,
774
+ f_plan_name:this.upCheckPlan.f_plan_name,
775
+ f_plan_year:this.upCheckPlan.f_plan_year,
776
+ f_plan_month:this.upCheckPlan.f_plan_month,
777
+ f_plan_id:this.upCheckPlan.id,
778
+ issued:'否',
779
+ f_remark:this.upCheckPlan.f_remark,
780
+ }
781
+ }, {resolveMsg: null, rejectMsg: null})
782
+ if(res.data.code==200){
783
+ this.$showMessage("修改成功!")
784
+ this.cancel()
785
+ await this.loadCheckPlan()
786
+ }else{
787
+ this.$showMessage("修改失败!")
788
+ }
789
+ this.isSend=false
790
+ },
791
+ //下发安检计划
792
+ async sendCheckPlan(f){
793
+ if(this.checkplan.check.checkes.length<1){
794
+ this.$showMessage("请选择要下发的安检计划")
795
+ return
796
+ }
797
+ this.isSend=true
798
+ let res=await new HttpResetClass().load("POST", "/api/af-safecheck/logic/NewBespeakCheckPlan", {
799
+ data:{
800
+ f_issued:'是',
801
+ f_issue_time:Util.toStandardTimeString(),
802
+ f_send_operator:this.userlogin.name,
803
+ param:this.checkplan.check.checkes,
804
+ }
805
+ }, {resolveMsg: null, rejectMsg: null})
806
+ if(res.data.code==200){
807
+ //Vue.showMessage("下发成功!其中有"+res.data.repet+"个计划己经是下发状态")
808
+ this.$showMessage("下发成功!")
809
+ }else{
810
+ this.$showMessage("下发失败!")
811
+ }
812
+ await this.loadCheckPlan()
813
+ this.isSend=false
814
+ },
815
+ //删除安检计划
816
+ async delCheckPlan(f){
817
+ if(this.checkplan.check.checkes.length<1){
818
+ this.$showMessage("请选择要删除的安检计划")
819
+ return
820
+ }
821
+ this.isSend=true
822
+ let res=await new HttpResetClass().load("POST", "/api/af-safecheck/logic/deleteCheckPlan", {
823
+ data:{
824
+ f_operator:this.userlogin.name,//global.login.name,
825
+ condition:"",
826
+ switchCheckAll:true,
827
+ checkAll:false,
828
+ param:this.checkplan.check.checkes,
829
+ columnName: "f_plan_id"
830
+ }
831
+ }, {resolveMsg: null, rejectMsg: null})
832
+ console.log(JSON.stringify(res))
833
+ if(res.data.code==200){
834
+ this.$showMessage("删除成功!")
835
+ }else{
836
+ this.$showMessage("删除失败!")
837
+ }
838
+ if(this.checkplan.check.checkes.indexOf(this.selectPlan.id)!= -1){
839
+ this.selectPlan={id:''}
840
+ console.log("包含了清空selectplan")
841
+ }
842
+ await this.loadCheckPlan()
843
+ this.isSend=false
844
+ },
845
+ async refresh(){
846
+ this.$refs.item.$refs.paged.$refs.criteria.search()
847
+ this.$refs.user.$refs.paged.$refs.criteria.search()
848
+ await this.loadCheckPlan()
849
+ },
850
+ async refreshPlan(){
851
+ this.$refs.item.$refs.paged.$refs.criteria.search()
852
+ await this.loadCheckPlan()
853
+ }
854
+ }
855
+ }
856
+ </script>
857
+
858
+ <style scoped>
859
+ .safe-planfont{
860
+ font-family: MicrosoftYaHei;
861
+ font-size: 15px;
862
+ font-weight: normal;
863
+ font-stretch: normal;
864
+ letter-spacing: 2px;
865
+ color: #333333;
866
+ line-height: 25px;
867
+ }
868
+ .safe-bodyfont{
869
+ font-family: MicrosoftYaHei;
870
+ font-size: 14px;
871
+ font-weight: normal;
872
+ font-stretch: normal;
873
+ letter-spacing: 0px;
874
+ color: #999999;
875
+ line-height: 30px;
876
+ }
877
+ .safe-leftplan{
878
+ height:auto;
879
+ border-bottom:1px solid #ececec;
880
+ padding: 10px 5px
881
+ }
882
+ .leftplan-center{
883
+ border-top:1px solid #ececec;
884
+ border-bottom:1px solid #ececec;
885
+ }
886
+ .safe_p{
887
+ white-space: nowrap;
888
+ overflow: hidden;
889
+ text-overflow: ellipsis;
890
+ }
891
+ .safe-div-p{
892
+ color: #4792de;
893
+ text-align: end;
894
+ padding: 8px 15px;
895
+ }
896
+ .safe_list_li:hover{
897
+ background-color: rgb(245,246,247);
898
+ }
899
+ .safe-selectplan{
900
+ pointer-events: none;
901
+ background-color: rgb(216,234,251);
902
+ }
903
+ .safe_plan_list{
904
+ height: 80%;
905
+ overflow: scroll;
906
+ }
907
+
908
+ </style>
909
+ <style>
910
+ .safe_plan_list::-webkit-scrollbar{
911
+ background-color: #F5F5F5;
912
+ }
913
+
914
+ /*定义滚动条轨道 内阴影+圆角*/
915
+ .safe_plan_list::-webkit-scrollbar-track{
916
+ -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
917
+ border-radius: 10px;
918
+ background-color: #F5F5F5;
919
+ }
920
+
921
+ /*定义滑块 内阴影+圆角*/
922
+ .safe_plan_list::-webkit-scrollbar-thumb{
923
+ border-radius: 10px;
924
+ -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
925
+ background-color: #F5F5F5;
926
+ }
927
+ </style>