safecheck-client 3.0.39-7 → 3.0.39-70

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 (333) hide show
  1. package/.babelrc +5 -5
  2. package/.editorconfig +9 -9
  3. package/android.html +18 -18
  4. package/config/dev.env.js +6 -6
  5. package/config/index.js +38 -38
  6. package/config/prod.env.js +3 -3
  7. package/config/test.env.js +6 -6
  8. package/docs/AppBase.md +22 -22
  9. package/docs/Busy.md +14 -14
  10. package/docs/CriteriaPaged.md +47 -47
  11. package/docs/DataGrid.md +54 -54
  12. package/docs/DataModel.md +22 -22
  13. package/docs/Dynamic.md +42 -42
  14. package/docs/GetParams.md +11 -11
  15. package/docs/HttpBusy.md +13 -13
  16. package/docs/HttpStore.md +29 -29
  17. package/docs/MessageBox.md +28 -28
  18. package/docs/PagedList.md +29 -29
  19. package/docs/Pager.md +21 -21
  20. package/docs/Project.md +23 -23
  21. package/docs/Route.md +105 -105
  22. package/docs/SafetyCheck/AdjustPlan.md +13 -13
  23. package/docs/SafetyCheck/CheckerPlan.md +12 -12
  24. package/docs/Task.md +46 -46
  25. package/docs/TreeList.md +28 -28
  26. package/docs/TreeMixin.md +18 -18
  27. package/docs/all.md +10 -10
  28. package/docs/list.md +42 -42
  29. package/docs/partial.md +75 -75
  30. package/docs/selector.md +82 -82
  31. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/Snippets.md +28 -28
  32. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue-strap/345/217/230/346/233/264/350/256/260/345/275/225.md +7 -7
  33. package/docs//345/274/200/345/217/221/346/226/207/346/241/243/vue/345/217/230/346/233/264/350/256/260/345/275/225.md +13 -13
  34. package/docs//345/274/200/345/217/221/346/226/207/346/241/243//345/274/200/345/217/221/347/216/257/345/242/203/350/256/276/347/275/256.md +77 -77
  35. package/docs//347/225/214/351/235/242/345/210/266/344/275/234/350/247/204/350/214/203.md +54 -54
  36. package/examples/AddressList/App.vue +13 -13
  37. package/examples/AddressList/index.html +11 -11
  38. package/examples/DispatchList/App.vue +10 -10
  39. package/examples/DispatchList/BaseTree.vue +13 -13
  40. package/examples/DispatchList/Init.vue +22 -22
  41. package/examples/DispatchList/Test.vue +20 -20
  42. package/examples/DispatchList/index.html +11 -11
  43. package/examples/DispatchList/main.js +18 -18
  44. package/home.html +16 -16
  45. package/package.json +5 -5
  46. package/publish.bat +7 -7
  47. package/release.bat +5 -5
  48. package/src/App.vue +31 -26
  49. package/src/Widget.vue +13 -13
  50. package/src/android-bootstrap/fonts/glyphicons-halflings-regular.svg +287 -287
  51. package/src/android-bootstrap/less/.csscomb.json +304 -304
  52. package/src/android-bootstrap/less/.csslintrc +19 -19
  53. package/src/android-bootstrap/less/alerts.less +73 -73
  54. package/src/android-bootstrap/less/badges.less +66 -66
  55. package/src/android-bootstrap/less/bootstrap.less +56 -56
  56. package/src/android-bootstrap/less/breadcrumbs.less +26 -26
  57. package/src/android-bootstrap/less/button-groups.less +247 -247
  58. package/src/android-bootstrap/less/buttons.less +173 -173
  59. package/src/android-bootstrap/less/carousel.less +269 -269
  60. package/src/android-bootstrap/less/close.less +34 -34
  61. package/src/android-bootstrap/less/code.less +69 -69
  62. package/src/android-bootstrap/less/component-animations.less +33 -33
  63. package/src/android-bootstrap/less/grid.less +84 -84
  64. package/src/android-bootstrap/less/input-groups.less +167 -167
  65. package/src/android-bootstrap/less/jumbotron.less +52 -52
  66. package/src/android-bootstrap/less/labels.less +64 -64
  67. package/src/android-bootstrap/less/list-group.less +141 -141
  68. package/src/android-bootstrap/less/media.less +66 -66
  69. package/src/android-bootstrap/less/mixins/alerts.less +14 -14
  70. package/src/android-bootstrap/less/mixins/background-variant.less +9 -9
  71. package/src/android-bootstrap/less/mixins/border-radius.less +18 -18
  72. package/src/android-bootstrap/less/mixins/buttons.less +69 -69
  73. package/src/android-bootstrap/less/mixins/center-block.less +7 -7
  74. package/src/android-bootstrap/less/mixins/clearfix.less +22 -22
  75. package/src/android-bootstrap/less/mixins/forms.less +90 -90
  76. package/src/android-bootstrap/less/mixins/gradients.less +59 -59
  77. package/src/android-bootstrap/less/mixins/grid-framework.less +92 -92
  78. package/src/android-bootstrap/less/mixins/grid.less +122 -122
  79. package/src/android-bootstrap/less/mixins/hide-text.less +21 -21
  80. package/src/android-bootstrap/less/mixins/image.less +33 -33
  81. package/src/android-bootstrap/less/mixins/labels.less +12 -12
  82. package/src/android-bootstrap/less/mixins/list-group.less +30 -30
  83. package/src/android-bootstrap/less/mixins/nav-divider.less +10 -10
  84. package/src/android-bootstrap/less/mixins/nav-vertical-align.less +9 -9
  85. package/src/android-bootstrap/less/mixins/opacity.less +8 -8
  86. package/src/android-bootstrap/less/mixins/pagination.less +24 -24
  87. package/src/android-bootstrap/less/mixins/panels.less +24 -24
  88. package/src/android-bootstrap/less/mixins/progress-bar.less +10 -10
  89. package/src/android-bootstrap/less/mixins/reset-filter.less +8 -8
  90. package/src/android-bootstrap/less/mixins/reset-text.less +18 -18
  91. package/src/android-bootstrap/less/mixins/resize.less +6 -6
  92. package/src/android-bootstrap/less/mixins/responsive-visibility.less +15 -15
  93. package/src/android-bootstrap/less/mixins/size.less +10 -10
  94. package/src/android-bootstrap/less/mixins/tab-focus.less +9 -9
  95. package/src/android-bootstrap/less/mixins/table-row.less +44 -44
  96. package/src/android-bootstrap/less/mixins/text-emphasis.less +9 -9
  97. package/src/android-bootstrap/less/mixins/text-overflow.less +8 -8
  98. package/src/android-bootstrap/less/mixins/vendor-prefixes.less +227 -227
  99. package/src/android-bootstrap/less/mixins.less +40 -40
  100. package/src/android-bootstrap/less/modals.less +151 -151
  101. package/src/android-bootstrap/less/navbar.less +660 -660
  102. package/src/android-bootstrap/less/navs.less +290 -290
  103. package/src/android-bootstrap/less/normalize.less +424 -424
  104. package/src/android-bootstrap/less/pager.less +76 -76
  105. package/src/android-bootstrap/less/pagination.less +89 -89
  106. package/src/android-bootstrap/less/panels.less +274 -274
  107. package/src/android-bootstrap/less/popovers.less +131 -131
  108. package/src/android-bootstrap/less/print.less +101 -101
  109. package/src/android-bootstrap/less/progress-bars.less +87 -87
  110. package/src/android-bootstrap/less/responsive-embed.less +35 -35
  111. package/src/android-bootstrap/less/responsive-utilities.less +194 -194
  112. package/src/android-bootstrap/less/scaffolding.less +161 -161
  113. package/src/android-bootstrap/less/tables.less +262 -262
  114. package/src/android-bootstrap/less/theme.less +291 -291
  115. package/src/android-bootstrap/less/thumbnails.less +36 -36
  116. package/src/android-bootstrap/less/tooltip.less +102 -102
  117. package/src/android-bootstrap/less/type.less +303 -303
  118. package/src/android-bootstrap/less/utilities.less +55 -55
  119. package/src/android-bootstrap/less/variables.less +896 -896
  120. package/src/android-bootstrap/less/wells.less +29 -29
  121. package/src/assets//345/256/232/344/275/215.png +0 -0
  122. package/src/bootstrap/less/.csscomb.json +304 -304
  123. package/src/bootstrap/less/.csslintrc +19 -19
  124. package/src/bootstrap/less/alerts.less +73 -73
  125. package/src/bootstrap/less/badges.less +66 -66
  126. package/src/bootstrap/less/breadcrumbs.less +26 -26
  127. package/src/bootstrap/less/button-groups.less +247 -247
  128. package/src/bootstrap/less/buttons.less +172 -172
  129. package/src/bootstrap/less/carousel.less +269 -269
  130. package/src/bootstrap/less/close.less +34 -34
  131. package/src/bootstrap/less/code.less +69 -69
  132. package/src/bootstrap/less/component-animations.less +33 -33
  133. package/src/bootstrap/less/dropdowns.less +216 -216
  134. package/src/bootstrap/less/grid.less +84 -84
  135. package/src/bootstrap/less/input-groups.less +167 -167
  136. package/src/bootstrap/less/jumbotron.less +52 -52
  137. package/src/bootstrap/less/labels.less +64 -64
  138. package/src/bootstrap/less/list-group.less +141 -141
  139. package/src/bootstrap/less/media.less +66 -66
  140. package/src/bootstrap/less/mixins/alerts.less +14 -14
  141. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  142. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  143. package/src/bootstrap/less/mixins/buttons.less +69 -69
  144. package/src/bootstrap/less/mixins/center-block.less +7 -7
  145. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  146. package/src/bootstrap/less/mixins/forms.less +90 -90
  147. package/src/bootstrap/less/mixins/gradients.less +59 -59
  148. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  149. package/src/bootstrap/less/mixins/grid.less +122 -122
  150. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  151. package/src/bootstrap/less/mixins/image.less +33 -33
  152. package/src/bootstrap/less/mixins/labels.less +12 -12
  153. package/src/bootstrap/less/mixins/list-group.less +30 -30
  154. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  155. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  156. package/src/bootstrap/less/mixins/opacity.less +8 -8
  157. package/src/bootstrap/less/mixins/pagination.less +24 -24
  158. package/src/bootstrap/less/mixins/panels.less +24 -24
  159. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  160. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  161. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  162. package/src/bootstrap/less/mixins/resize.less +6 -6
  163. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  164. package/src/bootstrap/less/mixins/size.less +10 -10
  165. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  166. package/src/bootstrap/less/mixins/table-row.less +44 -44
  167. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  168. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  169. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  170. package/src/bootstrap/less/mixins.less +40 -40
  171. package/src/bootstrap/less/modals.less +151 -151
  172. package/src/bootstrap/less/navbar.less +660 -660
  173. package/src/bootstrap/less/normalize.less +424 -424
  174. package/src/bootstrap/less/pagination.less +89 -89
  175. package/src/bootstrap/less/panels.less +275 -275
  176. package/src/bootstrap/less/popovers.less +131 -131
  177. package/src/bootstrap/less/print.less +101 -101
  178. package/src/bootstrap/less/progress-bars.less +87 -87
  179. package/src/bootstrap/less/responsive-embed.less +35 -35
  180. package/src/bootstrap/less/responsive-utilities.less +194 -194
  181. package/src/bootstrap/less/scaffolding.less +161 -161
  182. package/src/bootstrap/less/theme.less +291 -291
  183. package/src/bootstrap/less/thumbnails.less +36 -36
  184. package/src/bootstrap/less/tooltip.less +102 -102
  185. package/src/bootstrap/less/type.less +303 -303
  186. package/src/bootstrap/less/utilities.less +55 -55
  187. package/src/bootstrap/less/wells.less +29 -29
  188. package/src/components/FileUpload.vue +696 -696
  189. package/src/components/Hello.vue +39 -39
  190. package/src/components/LeftTree.vue +27 -27
  191. package/src/components/android/AndroidDefectDeal.vue +2 -2
  192. package/src/components/android/AttendanceTally.vue +116 -116
  193. package/src/components/android/Blank.vue +10 -10
  194. package/src/components/android/CheckUnplanPage.vue +56 -56
  195. package/src/components/android/Checker.vue +12 -12
  196. package/src/components/android/CheckerAnnual.vue +81 -81
  197. package/src/components/android/CheckerAvarta.vue +82 -82
  198. package/src/components/android/EquipmentInspection.vue +348 -348
  199. package/src/components/android/FootprintMap.vue +120 -120
  200. package/src/components/android/HiddentroubleInvestigation.vue +192 -192
  201. package/src/components/android/MasterMain.vue +77 -77
  202. package/src/components/android/Menu.vue +132 -132
  203. package/src/components/android/NewCheckpaperAndroid.vue +2 -2
  204. package/src/components/android/PaperAlarm.vue +85 -85
  205. package/src/components/android/PaperDeviceNoncivil.vue +214 -214
  206. package/src/components/android/PlumberAnnual.vue +83 -83
  207. package/src/components/android/PlumberAnnualDetail.vue +65 -65
  208. package/src/components/android/PlumberMonthly.vue +84 -84
  209. package/src/components/android/PostMap.vue +83 -83
  210. package/src/components/android/QueryCheckHistory.vue +122 -122
  211. package/src/components/android/QueryCheckHistoryItem.vue +62 -62
  212. package/src/components/android/RepairMain.vue +60 -60
  213. package/src/components/android/Repairman.vue +12 -12
  214. package/src/components/android/SafecheckOrderV.vue +2291 -2291
  215. package/src/components/android/StationMaster.vue +12 -12
  216. package/src/components/android/rejectInspecCheck.vue +322 -0
  217. package/src/components/defects/DefectModal.vue +101 -101
  218. package/src/components/defects/DevicesAndItem.vue +39 -39
  219. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  220. package/src/components/notice/NoticeForm.vue +100 -100
  221. package/src/components/notice/NoticeIssue.vue +20 -20
  222. package/src/components/paper/PicViewer.vue +18 -18
  223. package/src/components/pc/AddPlanItemYyChange.vue +5 -1
  224. package/src/components/pc/NewCheckpaper.vue +108 -14
  225. package/src/components/pc/PaperDefectMain.vue +1 -1
  226. package/src/components/pc/RoleSelector.vue +172 -172
  227. package/src/components/pc/SafeCheckOrder/SafeCheckOrderList.vue +34 -0
  228. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  229. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  230. package/src/components/phonestate/PostMap.vue +82 -82
  231. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  232. package/src/components/rongcheng/AddPlanItem.vue +344 -344
  233. package/src/components/rongcheng/CheckCurrentCreate.vue +1081 -1081
  234. package/src/components/rongcheng/PaperDefectMain.vue +828 -828
  235. package/src/components/rongcheng/PaperStatem.vue +6 -6
  236. package/src/components/rongcheng/PhoneUpUserinfo.vue +1 -0
  237. package/src/components/userfile/MeterFile.vue +145 -145
  238. package/src/components/userfile/MeterModify.vue +46 -46
  239. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  240. package/src/filiale/BFshiye/android/AndroidDefectDeal.vue +652 -0
  241. package/src/filiale/BFshiye/android/PhoneUpUserinfo.vue +3 -1
  242. package/src/filiale/BFshiye/android/SafecheckUserInfo.vue +2 -8
  243. package/src/filiale/BFshiye/pc/DefectListNew.vue +637 -0
  244. package/src/filiale/BFshiye/pc/checkUserList.vue +772 -772
  245. package/src/filiale/BFshiye/pc.js +17 -16
  246. package/src/filiale/baiyin/android/SafecheckUserInfo.vue +775 -0
  247. package/src/filiale/baiyin/android.js +12 -11
  248. package/src/filiale/bayan/pc/NewCheckpaper.vue +2 -2
  249. package/src/filiale/bayan/pc/SelectAreaReport.vue +1 -0
  250. package/src/filiale/bayan/pc/SummaryOfSecurityInspectionProgress.vue +7 -7
  251. package/src/filiale/dexin/android/SafecheckOrderV.vue +1 -1
  252. package/src/filiale/dexin/android/SafecheckOrderVTemp.vue +4 -1
  253. package/src/filiale/dexin/pc/PaperList.vue +840 -840
  254. package/src/filiale/hanzhong/pc/CheckHiddenDanger.vue +2 -2
  255. package/src/filiale/hanzhong/pc/CheckNumberStatistics.vue +1 -1
  256. package/src/filiale/hanzhong/pc/CheckSafeDetail.vue +6 -1
  257. package/src/filiale/hanzhong/pc/CheckSafeStatus.vue +1 -1
  258. package/src/filiale/hanzhong/pc/CheckerSafeDetail.vue +1 -1
  259. package/src/filiale/huatong/android/SafecheckOrderV.vue +2 -2
  260. package/src/filiale/jinhuang/android/AddPlanItem.vue +430 -0
  261. package/src/filiale/jinhuang/android/PhoneUpUserinfo.vue +182 -144
  262. package/src/filiale/jinhuang/android.js +2 -1
  263. package/src/filiale/kelai/android/PaperFeedback.vue +1384 -1370
  264. package/src/filiale/kelai/android/PhoneUpUserinfo.vue +1 -1
  265. package/src/filiale/kelai/android/SafecheckOrderV.vue +1 -1
  266. package/src/filiale/kelai/android/SafecheckUserInfo.vue +1 -1
  267. package/src/filiale/kelai/pc/PaperList.vue +13 -0
  268. package/src/filiale/kelai/pc/UserInfoAudit.vue +126 -90
  269. package/src/filiale/liaoyuan/pc/DefectPaperWeiXiu.vue +4 -6
  270. package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +7 -7
  271. package/src/filiale/liaoyuan/pc/checkPlanList.vue +2 -3
  272. package/src/filiale/qingjian/android/PhoneUpUserinfo.vue +1357 -1270
  273. package/src/filiale/qingjian/android/SafecheckDevices.vue +1 -1
  274. package/src/filiale/qingjian/android/SafecheckOrderV.vue +3 -0
  275. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +823 -800
  276. package/src/filiale/qingjian/pc/NewCheckpaper.vue +1919 -1919
  277. package/src/filiale/rongchuang/android/AddPlanItemVisitingWithoutMeeting.vue +454 -0
  278. package/src/filiale/rongchuang/android/AddPlanItemYy.vue +498 -0
  279. package/src/filiale/rongchuang/android/PhoneUpUserinfo.vue +1262 -0
  280. package/src/filiale/rongchuang/android/SafecheckDevices.vue +1 -1
  281. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +3 -2
  282. package/src/filiale/rongchuang/android.js +3 -0
  283. package/src/filiale/rongchuang/pc/NewCheckpaper.vue +13 -1
  284. package/src/filiale/rongchuang/pc/checkPlanList.vue +398 -0
  285. package/src/filiale/rongchuang/pc.js +18 -17
  286. package/src/filiale/shanxian/pc/NewCheckpaper.vue +1 -1
  287. package/src/filiale/siyang/android/PhoneInsurancePurchaseDetail.vue +532 -498
  288. package/src/filiale/tongchuan/android/PhoneUpUserinfo.vue +1340 -1343
  289. package/src/filiale/tongchuan/android/SafecheckDevices.vue +909 -885
  290. package/src/filiale/tongchuan/pc/AMapTrailShowZk.vue +226 -0
  291. package/src/filiale/tongchuan/pc/CheckPlanCountChartAreaByWangGeYuan.vue +137 -0
  292. package/src/filiale/tongchuan/pc/CheckSearchUser.vue +47 -1
  293. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +46 -0
  294. package/src/filiale/tongchuan/pc/NoCheckplanSafecheck.vue +34 -0
  295. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +34 -0
  296. package/src/filiale/tongchuan/pc/PaperList.vue +44 -10
  297. package/src/filiale/tongchuan/pc/PersonTrack.vue +269 -0
  298. package/src/filiale/tongchuan/pc/SelectCheckPlan.vue +42 -2
  299. package/src/filiale/tongchuan/pc.js +3 -0
  300. package/src/filiale/wensu/android/SafecheckOrderV.vue +2444 -2444
  301. package/src/filiale/wensu/android/SafecheckUserInfo.vue +712 -712
  302. package/src/filiale/wensu/pc/CheckSearchUser.vue +1251 -1251
  303. package/src/filiale/wenxi/pc/PaperList.vue +9 -3
  304. package/src/filiale/wuan/android/SafecheckOrderV.vue +1 -1
  305. package/src/filiale/wuan/android/SafecheckUserInfo.vue +12 -8
  306. package/src/filiale/yangchunboneng/android/AndiroidSecurityAudit.vue +2 -1
  307. package/src/filiale/yangchunboneng/android/CurrentCreate.vue +1191 -1191
  308. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +913 -913
  309. package/src/filiale/yangchunboneng/android.js +21 -21
  310. package/src/filiale/yangchunboneng/pc/CheckBookList.vue +353 -353
  311. package/src/filiale/yangchunboneng/pc/CheckPlanAreaList.vue +3 -3
  312. package/src/filiale/yangchunboneng/pc/CheckSearchUser.vue +1197 -1197
  313. package/src/filiale/yangchunboneng/pc/HiddenSituation.vue +171 -171
  314. package/src/filiale/yangchunboneng/pc/PaperDefectMain.vue +1112 -1112
  315. package/src/filiale/yangchunboneng/pc/PaperList.vue +757 -757
  316. package/src/filiale/yangchunboneng/pc/SelectCheckPlan.vue +331 -331
  317. package/src/filiale/yangchunboneng/pc.js +29 -29
  318. package/src/main.js +33 -33
  319. package/src/plugins/LoadData.js +10 -10
  320. package/src/plugins/LoadParams.js +24 -24
  321. package/src/rongcheng.js +319 -319
  322. package/src/safecheck-android.js +316 -315
  323. package/src/stores/wxconfig.js +10 -10
  324. package/src/utils/getNowDate.js +33 -33
  325. package/test/e2e/custom-assertions/elementCount.js +26 -26
  326. package/test/e2e/nightwatch.conf.js +40 -40
  327. package/test/e2e/runner.js +30 -30
  328. package/test/e2e/specs/test.js +13 -13
  329. package/test/unit/.eslintrc +5 -5
  330. package/test/unit/TestUtil.js +62 -62
  331. package/test/unit/context.html +20 -20
  332. package/test/unit/index.js +13 -13
  333. package/yarn-error.log +0 -140
@@ -1,12 +1,12 @@
1
- <template>
2
- <div>
3
- <route :comp="{name: 'master-main'}"></route>
4
- </div>
5
- </template>
6
-
7
- <script>
8
- export default {
9
- title: '所长界面',
10
- props: ['orgs']
11
- }
12
- </script>
1
+ <template>
2
+ <div>
3
+ <route :comp="{name: 'master-main'}"></route>
4
+ </div>
5
+ </template>
6
+
7
+ <script>
8
+ export default {
9
+ title: '所长界面',
10
+ props: ['orgs']
11
+ }
12
+ </script>
@@ -0,0 +1,322 @@
1
+ <style scoped>
2
+ .bg {
3
+ background-color: blue;
4
+ height: 1px;
5
+ border: 0;
6
+ }
7
+
8
+ .app-row {
9
+ background-color: white;
10
+ padding: 10px 10px 0 10px;
11
+ border-bottom: 1px solid rgba(235, 235, 235, 0.5);
12
+ }
13
+
14
+ .search_input {
15
+ border: 0;
16
+ outline: none;
17
+ }
18
+
19
+ .font {
20
+ font: 15px PingFang-SC-Medium;
21
+ color: #666666;
22
+ }
23
+
24
+ .input-font {
25
+ font: 15px PingFang-SC-Medium;
26
+ color: #333333;
27
+ }
28
+
29
+ .btn-font {
30
+ font: 600 16px PingFang-SC-Bold;
31
+ color: #499EDF;
32
+ }
33
+
34
+ .btn-color {
35
+ background-color: #FFFFFF;
36
+ border-radius: 10px;
37
+ border: 1px solid #499EDF;
38
+ }
39
+
40
+ .app-text {
41
+ font-size: 12px;
42
+ }
43
+
44
+ .panel-self {
45
+ border-radius: 10px;
46
+ border: 1px solid #499EDF;
47
+ background-color: #F8F8F8;
48
+ }
49
+
50
+ .yybtn-color {
51
+ background-color: #499edf;
52
+ border-radius: 4px;
53
+ border: 1px solid #499EDF;
54
+ color: #FFFFFF;
55
+ font: 14px PingFang-SC-Bold;
56
+ }
57
+
58
+ .qxbtn-color {
59
+ background-color: #FFFFFF;
60
+ border-radius: 4px;
61
+ color: #499edf;
62
+ font: 14px PingFang-SC-Bold;
63
+ border: 1px solid #499EDF;
64
+ }
65
+
66
+ .button_shrink_top {
67
+ width: 35px;
68
+ height: 35px;
69
+ background-size: 100%;
70
+ background-image: url("../../../static/newStyle/stretch_top.png")
71
+ }
72
+
73
+ .button_shrink_bottom {
74
+ width: 35px;
75
+ height: 35px;
76
+ background-size: 100%;
77
+ background-image: url("../../../static/newStyle/stretch_bottom.png")
78
+ }
79
+
80
+ .button_shrink_left {
81
+ width: 35px;
82
+ height: 35px;
83
+ background-size: 100%;
84
+ background-image: url("../../../static/newStyle/stretch_left.png")
85
+ }
86
+
87
+ .button_shrink_right {
88
+ width: 35px;
89
+ height: 35px;
90
+ background-size: 100%;
91
+ background-image: url("../../../static/newStyle/stretch_right.png")
92
+ }
93
+ </style>
94
+ <template>
95
+ <div style="height: auto;width: 100%">
96
+ <criteria-paged :model="model" v-ref:paged>
97
+ <criteria partial='criteria' @condition-changed='search' v-ref:cri>
98
+ <div partial>
99
+ <form>
100
+ <div class="row app-row">
101
+ <div class="col-xs-4">
102
+ <img src="../../assets/用户姓名.png" style="width: 20px;margin-bottom: 5px" alt="">
103
+ <label class="font text-left">用户姓名:</label>
104
+ </div>
105
+ <div class="col-xs-8">
106
+ <input class="search_input input-font" v-model=model.f_user_name
107
+ condition="f_user_name like '%{}%'"/>
108
+ </div>
109
+ </div>
110
+ <div class="row app-row">
111
+ <div class="col-xs-4">
112
+ <img src="../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
113
+ <label for="f_userinfo_code" class="font text-left">用户编号:</label>
114
+ </div>
115
+ <div class="col-xs-8">
116
+ <input id="f_userinfo_code" class="search_input input-font"
117
+ v-model=model.f_userinfo_code condition="f_userinfo_code like '%{}%'"/>
118
+ </div>
119
+ </div>
120
+ <div class="row app-row">
121
+ <div class="col-xs-4">
122
+ <img src="../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
123
+ <label class="font text-left">用户地址:</label>
124
+ </div>
125
+ <div class="col-xs-8">
126
+ <input class="search_input input-font"
127
+ v-model=model.f_address condition="f_address like '%{}%'"/>
128
+ </div>
129
+ </div>
130
+ <div class="row app-row">
131
+ <div class="col-xs-4">
132
+ <img src="../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
133
+ <label class="font text-left">安检员:</label>
134
+ </div>
135
+ <div class="col-xs-8">
136
+ <v-select :value.sync="model.check" v-model='model.check'
137
+ :value-single="true"
138
+ class="select_list select"
139
+ :options='$parent.$parent.checkers'
140
+ placeholder='安检员'
141
+ close-on-select width="100%"></v-select>
142
+ </div>
143
+ </div>
144
+ <div class="row text-center" style="margin-top: 20px;">
145
+ <button type="button" class="btn btn-lg btn-font btn-color" style="width: 25%;"
146
+ @click="$parent.$parent.selfSearch">查询
147
+ </button>
148
+ <div style="float: right;margin-right: 3% " class="button_spacing"
149
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
150
+ @click="$parent.$parent.hidden()"></div>
151
+ </div>
152
+ <div style="height:30px;"></div>
153
+ </form>
154
+ </div>
155
+ </criteria>
156
+ <list :model="model" partial='list'>
157
+ <div partial>
158
+ <div class="auto app-text" style="margin-top: 5px;">
159
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
160
+ <div class="panel-body panel-self">
161
+ <div class="col-xs-12">
162
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户编号:</b></p>
163
+ <p class="panel-title col-xs-5 text-left input-font" style="width: 74%">{{ row.f_userinfo_code }}</p>
164
+ </div>
165
+ <div class="col-xs-12">
166
+ <p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户名称:</b></p>
167
+ <p class="panel-title col-xs-7 text-left input-font" style="width: 79%">{{ row.f_user_name }}</p>
168
+ </div>
169
+ <div class="col-xs-12">
170
+ <p class="panel-title text-left font" style="width: 23%;float: left"><b>用户电话:</b></p>
171
+ <p class="panel-title text-left input-font" style="width: 77%">{{ row.f_user_phone }}</p>
172
+ </div>
173
+ <div class="col-xs-12">
174
+ <p class="panel-title text-left font" style="width: 23%;float: left"><b>安检时间:</b></p>
175
+ <p class="panel-title text-left input-font" style="width: 77%">{{ row.f_create_time }}</p>
176
+ </div>
177
+ <div class="col-xs-12">
178
+ <p class="panel-title text-left font" style="width: 21%;float: left"><b>用户地址:</b></p>
179
+ <p class="panel-title text-left input-font" style="width: 79%">{{ row.f_address }}</p>
180
+ </div>
181
+ <div class="col-xs-12">
182
+ <p class="panel-title text-left font" style="width: 21%;float: left"><b>所属安检:</b></p>
183
+ <p class="panel-title text-left input-font" style="width: 79%">{{ row.f_checker_name }}</p>
184
+ </div>
185
+ <div class="col-xs-12">
186
+ <p class="panel-title col-xs-5 text-left font"><b>不通过原因:</b></p>
187
+ <p style="color: red" class="panel-title col-xs-7 text-left input-font">{{ row.f_approved_note }}</p>
188
+ </div>
189
+ <div class="col-xs-12">
190
+ <button type="button" name="button" class="btn btn-primary"
191
+ style="background-color:#499edf;float: right;margin-right:10px;"
192
+ @click="$parent.$parent.$parent.Handle(row)">处理
193
+ </button>
194
+ </div>
195
+ </div>
196
+ </div>
197
+ </div>
198
+ </div>
199
+ </list>
200
+ </criteria-paged>
201
+ </div>
202
+ </template>
203
+ <script>
204
+ import Vue from 'vue'
205
+ import {HttpResetClass, PagedList} from 'vue-client'
206
+ import * as Util from '../Util'
207
+ import co from "co";
208
+ let select = function * (self) {
209
+ let http = new HttpResetClass()
210
+ http.load('POST', `${self.$androidUtil.getProxyUrl()}/rs/search`, {
211
+ source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($安检员$) != -1))',
212
+ userid: Vue.user.id
213
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
214
+ //tag
215
+ self.checkers.push({label:'全部',value:''})
216
+ res.data.forEach((checker)=>{
217
+ self.checkers.push({label:checker.name,value:checker.name})
218
+ })
219
+ })
220
+ }
221
+ export default {
222
+ title: '安检单驳回',
223
+ data() {
224
+ return {
225
+ checkers: [],
226
+ showModal: false,
227
+ f_filialeids: '',
228
+ model: new PagedList(`${this.$androidUtil.getProxyUrl()}/rs/sql/AndroidGetcheckpaper`, 20, {
229
+ condition: 'this.condition',
230
+ f_filialeid: `'${Vue.user.orgid}'`,
231
+ f_checker_id: `'${Vue.user.id}'`
232
+ }),
233
+ criteriaShow: false,
234
+ select: {}
235
+ }
236
+ },
237
+ ready() {
238
+ this.selfSearch()
239
+ let gen = select(this)
240
+ co(gen)
241
+ },
242
+ methods: {
243
+ selfSearch() {
244
+ let condition = "1=1 "
245
+ if (this.$refs.paged.$refs.cri.model.f_user_name) {
246
+ if (this.$refs.paged.$refs.cri.model.f_user_name.toString().trim()) {
247
+ condition += " and f_user_name like '%" + this.$refs.paged.$refs.cri.model.f_user_name + "%'"
248
+ }
249
+ }
250
+ if (this.$refs.paged.$refs.cri.model.f_userinfo_code) {
251
+ if (this.$refs.paged.$refs.cri.model.f_userinfo_code.toString().trim()) {
252
+ condition += " and f_userinfo_code = '" + this.$refs.paged.$refs.cri.model.f_userinfo_code + "'"
253
+ }
254
+ }
255
+ if (this.$refs.paged.$refs.cri.model.f_address) {
256
+ if (this.$refs.paged.$refs.cri.model.f_address.toString().trim()) {
257
+ condition += " and f_address like '%" + this.$refs.paged.$refs.cri.model.f_address + "%'"
258
+ }
259
+ }
260
+ if (this.$refs.paged.$refs.cri.model.check) {
261
+ if (this.$refs.paged.$refs.cri.model.check.toString().trim()) {
262
+ condition += " and f_checker_name like '%" + this.$refs.paged.$refs.cri.model.check + "%'"
263
+ }
264
+ }else{
265
+ condition += " and f_checker_name like '%" + Vue.user.name+ "%'"
266
+ }
267
+ this.model.search(condition)
268
+ },
269
+ hidden() {
270
+ this.criteriaShow = !this.criteriaShow
271
+ },
272
+ Handle(row) {
273
+ //跳转到无计划安检
274
+ if (row.f_userinfo_code) {
275
+ let http = new HttpResetClass()
276
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/提取用户档案`, {data: {condition: "f_userinfo_code= '" + row.f_userinfo_code + "'",
277
+ groupitem:'', orderitem: 'f_residential_area,CAST(build as int),f_unit,CAST(floor1 as int),f_room', f_check_type: '',f_filialeid:'',
278
+ f_user_name: '', myCycle: '', fyCycle: '', f_user_type: '', f_sign: '', f_residential_area: '', f_address: '', f_user_state: '', f_orgids: '', f_unit: '', f_building: ''
279
+ }}).then(
280
+ (res) => {
281
+ if(res.data.length==0){
282
+ this.$showMessage('未查询到当前用户档案信息')
283
+ return
284
+ }
285
+ let info = res.data[0]
286
+ info.id = ''
287
+ info.f_state = '未检'
288
+ info.f_no_checkplan = '无计划安检'
289
+ this.$resetpost(`${this.$androidUtil.getProxyUrl()}/rs/sql/查询计划项表信息`,{data:{f_userid:info.f_userinfo_id}}).then((response)=>{
290
+ info['f_plan_meters'] = response.data
291
+ var pardate = {
292
+ _this:this,
293
+ tittle:'安检详情',
294
+ safe:true
295
+ }
296
+ this.$dispatch('gotoson',pardate)
297
+ this.$goto('safecheck-order-v', {item: info, role: 'inspect',parentPage:'rejectInspecCheck'}, 'self', this.selfSearch)
298
+ })
299
+ })
300
+ }
301
+ },
302
+ reassign(row) {
303
+ this.select = row
304
+ this.showModal = true
305
+ },
306
+ manyisok() {
307
+ let sqlstr=`update t_check_paper set f_checker_reciver='${this.check}' where id='${this.select.id}'`
308
+ let http = new HttpResetClass()
309
+ http.load('POST', 'rs/logic/runSQL', {data: {sql: sqlstr}},
310
+ {resolveMsg: null, rejectMsg: '移出安检册失败'}).then(resp=>{
311
+ this.showModal = false
312
+ this.selfSearch()
313
+ }).catch(error=>{
314
+ this.$showMessage('转单失败',error)
315
+ })
316
+ },
317
+ iscancel() {
318
+ this.showModal = false
319
+ }
320
+ }
321
+ }
322
+ </script>
@@ -1,101 +1,101 @@
1
- <template>
2
- <modal :show.sync="$parent.show" v-ref:modal>
3
- <div slot="modal-header" class="modal-header">
4
- <h4 class="modal-title">
5
- 隐患处理
6
- </h4>
7
- </div>
8
- <div slot="modal-body" class="modal-body">
9
- <div class="row auto">
10
- <div class="form-group">
11
- <label class="col-sm-12 control-label">隐患级别:</label>
12
- <div class="col-sm-12">{{defect.f_defect_level}}</div>
13
- </div>
14
- <div class="form-group">
15
- <label class="col-sm-12 control-label text-left">隐患:</label>
16
- <div class="col-sm-12">{{defect.f_defect}}</div>
17
- </div>
18
- <div class="form-group">
19
- <label class="col-sm-12 control-label">部位:</label>
20
- <div class="col-sm-12">{{defect.f_device_type}}</div>
21
- </div>
22
- <div class="form-group">
23
- <label class="col-sm-12 control-label">处理方式:</label>
24
- <div class="col-sm-12">
25
- <radio-group :value.sync="defect.f_resolve_type" type="success" buttons="false" disabled="disabled">
26
- <radio disabled="disabled" v-if="defect.f_resolve_type =='现场处理'" value="现场处理">现场处理</radio>
27
- <radio disabled="disabled" v-if="defect.f_resolve_type =='用户处理'" value="用户处理">用户处理</radio>
28
- <radio disabled="disabled" v-if="defect.f_resolve_type =='维修处理'" value="维修处理">维修处理</radio>
29
- </radio-group></div>
30
- </div>
31
- <div class="form-group">
32
- <label class="col-sm-12 control-label">整改结果:</label>
33
- <div class="col-sm-12">
34
- <v-select id="f_ratification" :value.sync="f_ratification"
35
- :options='ratifications' close-on-select clear-button></v-select></div>
36
- </div>
37
- <div class="form-group">
38
- <label class="col-sm-12 control-label">处理人:</label>
39
- <div class="col-sm-12">
40
- <input type="text" class="form-control" v-model="defect.f_ratifiedpeople" maxlength="20">
41
- <!--<chooser :userid.sync='f.id' v-model="defect.f_ratifiedpeople" resource-type="user" :width='200' :select-data.sync='chosenOrg'></chooser>-->
42
- </div>
43
- </div>
44
- <div class="form-group">
45
- <label class="col-sm-12 control-label">处理时间:</label>
46
- <div class="col-sm-12"><datepicker id="f_end"
47
- :value.sync="defect.f_ratifieddate"
48
- :disabled-days-of-Week="[]" :format="'yyyy-MM-dd'"></datepicker></div>
49
- </div>
50
- <div class="form-group">
51
- <label class="col-sm-12 control-label">备注:</label>
52
- <div class="col-sm-12"><textarea class="form-control" v-model="defect.f_remark" rows="3"></textarea></div>
53
- </div>
54
- </div>
55
- </div>
56
- <div slot="modal-footer" class="modal-footer">
57
- <button type="button" class="btn btn-default" @click="$parent.todo(defect)" v-if="!defect.flag">保存</button>
58
- <button type="button" class="btn btn-default" @click="$parent.undo">取消</button>
59
- </div>
60
- </modal>
61
- </template>
62
-
63
- <script>
64
- import { PagedList } from 'vue-client'
65
- import Vue from 'vue'
66
- import * as Util from '../Util'
67
- import RadioGroup from 'vue-client/src/vue-strap/src/radioGroup'
68
- import Radio from 'vue-client/src/vue-strap/src/radioBtn'
69
-
70
- export default {
71
- title:'隐患处理',
72
- props:['defect','f'],
73
- data(){
74
- return {
75
- model: {},
76
- chosenOrg:{id:0},
77
- ratifications:[
78
- {label: '请选择处理结果', value: null},
79
- {label: '未处理', value: '未处理'},
80
- {label: '已处理', value: '已处理'},
81
- ],
82
- }
83
- },
84
- components: {
85
- RadioGroup,
86
- Radio
87
- },
88
- watch:{
89
- 'f_ratification'(val){
90
- if(this.defect.f_ratification)
91
- this.defect.f_ratification = this.f_ratification[0]
92
- },
93
- 'defect'(val){
94
- this.defect.id = this.defect.defectid
95
- this.f_ratification = this.defect.ratification
96
- this.defect.f_remark = this.defect.remark
97
- }
98
- },
99
- }
100
- </script>
101
-
1
+ <template>
2
+ <modal :show.sync="$parent.show" v-ref:modal>
3
+ <div slot="modal-header" class="modal-header">
4
+ <h4 class="modal-title">
5
+ 隐患处理
6
+ </h4>
7
+ </div>
8
+ <div slot="modal-body" class="modal-body">
9
+ <div class="row auto">
10
+ <div class="form-group">
11
+ <label class="col-sm-12 control-label">隐患级别:</label>
12
+ <div class="col-sm-12">{{defect.f_defect_level}}</div>
13
+ </div>
14
+ <div class="form-group">
15
+ <label class="col-sm-12 control-label text-left">隐患:</label>
16
+ <div class="col-sm-12">{{defect.f_defect}}</div>
17
+ </div>
18
+ <div class="form-group">
19
+ <label class="col-sm-12 control-label">部位:</label>
20
+ <div class="col-sm-12">{{defect.f_device_type}}</div>
21
+ </div>
22
+ <div class="form-group">
23
+ <label class="col-sm-12 control-label">处理方式:</label>
24
+ <div class="col-sm-12">
25
+ <radio-group :value.sync="defect.f_resolve_type" type="success" buttons="false" disabled="disabled">
26
+ <radio disabled="disabled" v-if="defect.f_resolve_type =='现场处理'" value="现场处理">现场处理</radio>
27
+ <radio disabled="disabled" v-if="defect.f_resolve_type =='用户处理'" value="用户处理">用户处理</radio>
28
+ <radio disabled="disabled" v-if="defect.f_resolve_type =='维修处理'" value="维修处理">维修处理</radio>
29
+ </radio-group></div>
30
+ </div>
31
+ <div class="form-group">
32
+ <label class="col-sm-12 control-label">整改结果:</label>
33
+ <div class="col-sm-12">
34
+ <v-select id="f_ratification" :value.sync="f_ratification"
35
+ :options='ratifications' close-on-select clear-button></v-select></div>
36
+ </div>
37
+ <div class="form-group">
38
+ <label class="col-sm-12 control-label">处理人:</label>
39
+ <div class="col-sm-12">
40
+ <input type="text" class="form-control" v-model="defect.f_ratifiedpeople" maxlength="20">
41
+ <!--<chooser :userid.sync='f.id' v-model="defect.f_ratifiedpeople" resource-type="user" :width='200' :select-data.sync='chosenOrg'></chooser>-->
42
+ </div>
43
+ </div>
44
+ <div class="form-group">
45
+ <label class="col-sm-12 control-label">处理时间:</label>
46
+ <div class="col-sm-12"><datepicker id="f_end"
47
+ :value.sync="defect.f_ratifieddate"
48
+ :disabled-days-of-Week="[]" :format="'yyyy-MM-dd'"></datepicker></div>
49
+ </div>
50
+ <div class="form-group">
51
+ <label class="col-sm-12 control-label">备注:</label>
52
+ <div class="col-sm-12"><textarea class="form-control" v-model="defect.f_remark" rows="3"></textarea></div>
53
+ </div>
54
+ </div>
55
+ </div>
56
+ <div slot="modal-footer" class="modal-footer">
57
+ <button type="button" class="btn btn-default" @click="$parent.todo(defect)" v-if="!defect.flag">保存</button>
58
+ <button type="button" class="btn btn-default" @click="$parent.undo">取消</button>
59
+ </div>
60
+ </modal>
61
+ </template>
62
+
63
+ <script>
64
+ import { PagedList } from 'vue-client'
65
+ import Vue from 'vue'
66
+ import * as Util from '../Util'
67
+ import RadioGroup from 'vue-client/src/vue-strap/src/radioGroup'
68
+ import Radio from 'vue-client/src/vue-strap/src/radioBtn'
69
+
70
+ export default {
71
+ title:'隐患处理',
72
+ props:['defect','f'],
73
+ data(){
74
+ return {
75
+ model: {},
76
+ chosenOrg:{id:0},
77
+ ratifications:[
78
+ {label: '请选择处理结果', value: null},
79
+ {label: '未处理', value: '未处理'},
80
+ {label: '已处理', value: '已处理'},
81
+ ],
82
+ }
83
+ },
84
+ components: {
85
+ RadioGroup,
86
+ Radio
87
+ },
88
+ watch:{
89
+ 'f_ratification'(val){
90
+ if(this.defect.f_ratification)
91
+ this.defect.f_ratification = this.f_ratification[0]
92
+ },
93
+ 'defect'(val){
94
+ this.defect.id = this.defect.defectid
95
+ this.f_ratification = this.defect.ratification
96
+ this.defect.f_remark = this.defect.remark
97
+ }
98
+ },
99
+ }
100
+ </script>
101
+
@@ -1,39 +1,39 @@
1
- <template>
2
- <div>
3
- <table class="table table-bordered table-hover">
4
- <thead>
5
- <tr>
6
- <th>检查项</th>
7
- <th>数据字段</th>
8
- <th>数据类型</th>
9
- <th>是否必检</th>
10
- </tr>
11
- </thead>
12
- <tbody v-for=" row in model">
13
- <tr>
14
- <td>{{row.f_item_name}}</td>
15
- <td>{{row.f_item_field}}</td>
16
- <td>{{row.f_item_type}}</td>
17
- <td>{{row.f_write_must}}</td>
18
- </tr>
19
- </tbody>
20
- </table>
21
- </div>
22
- </template>
23
-
24
- <script>
25
-
26
- export default {
27
- title: '安检设备项列表',
28
- data () {
29
- return {
30
- model:this.$parent.device
31
- }
32
- },
33
- watch:{
34
- '$parent.device'(val){
35
- this.model = val
36
- },
37
- }
38
- }
39
- </script>
1
+ <template>
2
+ <div>
3
+ <table class="table table-bordered table-hover">
4
+ <thead>
5
+ <tr>
6
+ <th>检查项</th>
7
+ <th>数据字段</th>
8
+ <th>数据类型</th>
9
+ <th>是否必检</th>
10
+ </tr>
11
+ </thead>
12
+ <tbody v-for=" row in model">
13
+ <tr>
14
+ <td>{{row.f_item_name}}</td>
15
+ <td>{{row.f_item_field}}</td>
16
+ <td>{{row.f_item_type}}</td>
17
+ <td>{{row.f_write_must}}</td>
18
+ </tr>
19
+ </tbody>
20
+ </table>
21
+ </div>
22
+ </template>
23
+
24
+ <script>
25
+
26
+ export default {
27
+ title: '安检设备项列表',
28
+ data () {
29
+ return {
30
+ model:this.$parent.device
31
+ }
32
+ },
33
+ watch:{
34
+ '$parent.device'(val){
35
+ this.model = val
36
+ },
37
+ }
38
+ }
39
+ </script>