safecheck-client 3.0.39-81 → 3.0.39-83

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 (278) 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/App.vue +26 -31
  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/bootstrap/less/.csscomb.json +304 -304
  122. package/src/bootstrap/less/.csslintrc +19 -19
  123. package/src/bootstrap/less/alerts.less +73 -73
  124. package/src/bootstrap/less/badges.less +66 -66
  125. package/src/bootstrap/less/breadcrumbs.less +26 -26
  126. package/src/bootstrap/less/button-groups.less +247 -247
  127. package/src/bootstrap/less/buttons.less +172 -172
  128. package/src/bootstrap/less/carousel.less +269 -269
  129. package/src/bootstrap/less/close.less +34 -34
  130. package/src/bootstrap/less/code.less +69 -69
  131. package/src/bootstrap/less/component-animations.less +33 -33
  132. package/src/bootstrap/less/dropdowns.less +216 -216
  133. package/src/bootstrap/less/grid.less +84 -84
  134. package/src/bootstrap/less/input-groups.less +167 -167
  135. package/src/bootstrap/less/jumbotron.less +52 -52
  136. package/src/bootstrap/less/labels.less +64 -64
  137. package/src/bootstrap/less/list-group.less +141 -141
  138. package/src/bootstrap/less/media.less +66 -66
  139. package/src/bootstrap/less/mixins/alerts.less +14 -14
  140. package/src/bootstrap/less/mixins/background-variant.less +9 -9
  141. package/src/bootstrap/less/mixins/border-radius.less +18 -18
  142. package/src/bootstrap/less/mixins/buttons.less +69 -69
  143. package/src/bootstrap/less/mixins/center-block.less +7 -7
  144. package/src/bootstrap/less/mixins/clearfix.less +22 -22
  145. package/src/bootstrap/less/mixins/forms.less +90 -90
  146. package/src/bootstrap/less/mixins/gradients.less +59 -59
  147. package/src/bootstrap/less/mixins/grid-framework.less +92 -92
  148. package/src/bootstrap/less/mixins/grid.less +122 -122
  149. package/src/bootstrap/less/mixins/hide-text.less +21 -21
  150. package/src/bootstrap/less/mixins/image.less +33 -33
  151. package/src/bootstrap/less/mixins/labels.less +12 -12
  152. package/src/bootstrap/less/mixins/list-group.less +30 -30
  153. package/src/bootstrap/less/mixins/nav-divider.less +10 -10
  154. package/src/bootstrap/less/mixins/nav-vertical-align.less +9 -9
  155. package/src/bootstrap/less/mixins/opacity.less +8 -8
  156. package/src/bootstrap/less/mixins/pagination.less +24 -24
  157. package/src/bootstrap/less/mixins/panels.less +24 -24
  158. package/src/bootstrap/less/mixins/progress-bar.less +10 -10
  159. package/src/bootstrap/less/mixins/reset-filter.less +8 -8
  160. package/src/bootstrap/less/mixins/reset-text.less +18 -18
  161. package/src/bootstrap/less/mixins/resize.less +6 -6
  162. package/src/bootstrap/less/mixins/responsive-visibility.less +15 -15
  163. package/src/bootstrap/less/mixins/size.less +10 -10
  164. package/src/bootstrap/less/mixins/tab-focus.less +9 -9
  165. package/src/bootstrap/less/mixins/table-row.less +44 -44
  166. package/src/bootstrap/less/mixins/text-emphasis.less +9 -9
  167. package/src/bootstrap/less/mixins/text-overflow.less +8 -8
  168. package/src/bootstrap/less/mixins/vendor-prefixes.less +227 -227
  169. package/src/bootstrap/less/mixins.less +40 -40
  170. package/src/bootstrap/less/modals.less +151 -151
  171. package/src/bootstrap/less/navbar.less +660 -660
  172. package/src/bootstrap/less/normalize.less +424 -424
  173. package/src/bootstrap/less/pagination.less +89 -89
  174. package/src/bootstrap/less/panels.less +275 -275
  175. package/src/bootstrap/less/popovers.less +131 -131
  176. package/src/bootstrap/less/print.less +101 -101
  177. package/src/bootstrap/less/progress-bars.less +87 -87
  178. package/src/bootstrap/less/responsive-embed.less +35 -35
  179. package/src/bootstrap/less/responsive-utilities.less +194 -194
  180. package/src/bootstrap/less/scaffolding.less +161 -161
  181. package/src/bootstrap/less/theme.less +291 -291
  182. package/src/bootstrap/less/thumbnails.less +36 -36
  183. package/src/bootstrap/less/tooltip.less +102 -102
  184. package/src/bootstrap/less/type.less +303 -303
  185. package/src/bootstrap/less/utilities.less +55 -55
  186. package/src/bootstrap/less/wells.less +29 -29
  187. package/src/components/FileUpload.vue +696 -696
  188. package/src/components/Hello.vue +39 -39
  189. package/src/components/LeftTree.vue +27 -27
  190. package/src/components/android/AttendanceTally.vue +116 -116
  191. package/src/components/android/Blank.vue +10 -10
  192. package/src/components/android/CheckUnplanPage.vue +56 -56
  193. package/src/components/android/Checker.vue +12 -12
  194. package/src/components/android/CheckerAnnual.vue +81 -81
  195. package/src/components/android/CheckerAvarta.vue +82 -82
  196. package/src/components/android/EquipmentInspection.vue +348 -348
  197. package/src/components/android/FootprintMap.vue +120 -120
  198. package/src/components/android/HiddentroubleInvestigation.vue +192 -192
  199. package/src/components/android/MasterMain.vue +77 -77
  200. package/src/components/android/Menu.vue +132 -132
  201. package/src/components/android/PaperAlarm.vue +85 -85
  202. package/src/components/android/PaperDeviceNoncivil.vue +214 -214
  203. package/src/components/android/PlumberAnnual.vue +83 -83
  204. package/src/components/android/PlumberAnnualDetail.vue +65 -65
  205. package/src/components/android/PlumberMonthly.vue +84 -84
  206. package/src/components/android/PostMap.vue +83 -83
  207. package/src/components/android/QueryCheckHistory.vue +122 -122
  208. package/src/components/android/QueryCheckHistoryItem.vue +62 -62
  209. package/src/components/android/RepairMain.vue +60 -60
  210. package/src/components/android/Repairman.vue +12 -12
  211. package/src/components/android/StationMaster.vue +12 -12
  212. package/src/components/android/block/BlockUserDetails.vue +356 -0
  213. package/src/components/android/block/BlockUserManager.vue +226 -0
  214. package/src/components/android/rejectInspecCheck.vue +322 -322
  215. package/src/components/defects/DefectModal.vue +101 -101
  216. package/src/components/defects/DevicesAndItem.vue +39 -39
  217. package/src/components/issueplan/IssuePlanMain.vue +23 -23
  218. package/src/components/notice/NoticeForm.vue +100 -100
  219. package/src/components/notice/NoticeIssue.vue +20 -20
  220. package/src/components/paper/PicViewer.vue +18 -18
  221. package/src/components/pc/NewCheckpaperTemp.vue +1308 -1308
  222. package/src/components/pc/RoleSelector.vue +172 -172
  223. package/src/components/phonestate/MonthlyTraffic.vue +66 -66
  224. package/src/components/phonestate/MonthlyTrafficRouter.vue +15 -15
  225. package/src/components/phonestate/PostMap.vue +82 -82
  226. package/src/components/querycheckpaper/PaperItem.vue +59 -59
  227. package/src/components/rongcheng/AddPlanItem.vue +344 -344
  228. package/src/components/rongcheng/CheckCurrentCreate.vue +1081 -1081
  229. package/src/components/rongcheng/PaperDefectMain.vue +828 -828
  230. package/src/components/userfile/MeterFile.vue +145 -145
  231. package/src/components/userfile/MeterModify.vue +46 -46
  232. package/src/components/userfileaudit/MeterAuditFile.vue +129 -129
  233. package/src/filiale/BFshiye/android/AndroidDefectDeal.vue +652 -652
  234. package/src/filiale/BFshiye/pc/DefectListNew.vue +637 -637
  235. package/src/filiale/BFshiye/pc/checkUserList.vue +772 -772
  236. package/src/filiale/BFshiye/pc.js +17 -17
  237. package/src/filiale/baiyin/android/SafecheckUserInfo.vue +775 -775
  238. package/src/filiale/baiyin/android.js +12 -12
  239. package/src/filiale/dexin/android/SafecheckDevicesTemp.vue +1419 -1419
  240. package/src/filiale/dexin/android/SafecheckOrderVTemp.vue +4 -3
  241. package/src/filiale/dexin/pc/PaperList.vue +857 -840
  242. package/src/filiale/qingjian/android/PhoneUpUserinfo.vue +1357 -1357
  243. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +823 -823
  244. package/src/filiale/qingjian/pc/NewCheckpaper.vue +1919 -1919
  245. package/src/filiale/rongchuang/android/PhoneUpUserinfo.vue +1262 -1262
  246. package/src/filiale/rongchuang/pc/checkPlanList.vue +398 -398
  247. package/src/filiale/rongchuang/pc.js +18 -18
  248. package/src/filiale/shanxian/pc/NewCheckpaper.vue +1526 -1526
  249. package/src/filiale/siyang/android/PhoneInsurancePurchaseDetail.vue +532 -532
  250. package/src/filiale/wensu/android/SafecheckOrderV.vue +2444 -2444
  251. package/src/filiale/wensu/android/SafecheckUserInfo.vue +712 -712
  252. package/src/filiale/wensu/pc/CheckSearchUser.vue +1251 -1251
  253. package/src/filiale/yangchunboneng/android/CurrentCreate.vue +1191 -1191
  254. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +913 -913
  255. package/src/filiale/yangchunboneng/android.js +21 -21
  256. package/src/filiale/yangchunboneng/pc/CheckBookList.vue +353 -353
  257. package/src/filiale/yangchunboneng/pc/CheckSearchUser.vue +1197 -1197
  258. package/src/filiale/yangchunboneng/pc/HiddenSituation.vue +171 -171
  259. package/src/filiale/yangchunboneng/pc/PaperDefectMain.vue +1112 -1112
  260. package/src/filiale/yangchunboneng/pc/PaperList.vue +757 -757
  261. package/src/filiale/yangchunboneng/pc/SelectCheckPlan.vue +331 -331
  262. package/src/filiale/yangchunboneng/pc.js +29 -29
  263. package/src/main.js +33 -33
  264. package/src/plugins/LoadData.js +10 -10
  265. package/src/plugins/LoadParams.js +24 -24
  266. package/src/rongcheng.js +319 -319
  267. package/src/safecheck-android.js +318 -316
  268. package/src/stores/wxconfig.js +10 -10
  269. package/src/utils/getNowDate.js +33 -33
  270. package/test/e2e/custom-assertions/elementCount.js +26 -26
  271. package/test/e2e/nightwatch.conf.js +40 -40
  272. package/test/e2e/runner.js +30 -30
  273. package/test/e2e/specs/test.js +13 -13
  274. package/test/unit/.eslintrc +5 -5
  275. package/test/unit/TestUtil.js +62 -62
  276. package/test/unit/context.html +20 -20
  277. package/test/unit/index.js +13 -13
  278. package/yarn-error.log +140 -0
@@ -0,0 +1,356 @@
1
+ <template>
2
+ <div style="height: 100%">
3
+ <work-busy :is-busy="busy"></work-busy>
4
+ <div class="panel auto" v-if="blackUser">
5
+ <div class="panel-body " id="upuserinfo_sel">
6
+ <div class="row auto" style="margin: 5px 0">
7
+ <label class="righttxt">用户编号:</label>
8
+ <input type="text" class="form-control rightipt" v-model="model.f_userinfo_code" disabled="true"/>
9
+ </div>
10
+ <div class="row auto" style="margin: 5px 0">
11
+ <label class="righttxt">用户名称:</label><input type="text" class="form-control rightipt"
12
+ v-model="model.f_user_name" disabled="true"/>
13
+ </div>
14
+ <div class="row auto" style="margin: 5px 0">
15
+ <label class="righttxt">身份证号:</label><input type="text" class="form-control rightipt" disabled="true"
16
+ v-model="model.f_idnumber" />
17
+ </div>
18
+ <div class="row auto" style="margin: 5px 0">
19
+ <label class="righttxt">用户状态:</label><input type="text" class="form-control rightipt" disabled="true"
20
+ v-model="model.f_user_state"/>
21
+ </div>
22
+ <div class="row auto" style="margin: 5px 0">
23
+ <label class="righttxt">用户电话:</label><input type="text" class="form-control rightipt" disabled="true"
24
+ v-model="model.f_user_phone"/>
25
+ </div>
26
+ <div class="row auto" style="margin: 5px 0">
27
+ <label class="righttxt">表号:</label><input type="text" class="form-control rightipt" disabled="true"
28
+ v-model="model.f_meternumber"/>
29
+ </div>
30
+ <div class="row auto" style="margin: 5px 0">
31
+ <label class="righttxt">卡号:</label><input type="text" class="form-control rightipt" disabled="true"
32
+ v-model="model.f_card_id"/>
33
+ </div>
34
+ <div class="row auto" style="margin: 5px 0">
35
+ <label class="righttxt">拉黑原因:</label><textarea class="form-control rightipt"
36
+ style="height: 150px"
37
+ v-model="model.f_remark"></textarea>
38
+ </div>
39
+ <div class="row auto" style="margin-top: 20px">
40
+ <button type="button" class="btn btn-lg btn-font btn-color" style="width: 45%;" @click="black">拉黑</button>
41
+ </div>
42
+ </div>
43
+ </div>
44
+ <div class="panel auto" v-if="liftUser">
45
+ <div partial>
46
+ <div class="auto app-text" style="margin-top: 5px;" v-for="row in list">
47
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
48
+ <div class="panel-body panel-self">
49
+ <div class="row">
50
+ <p class="panel-title col-xs-4 text-left font">用户编号</p>
51
+ <p class="panel-title col-xs-8 text-left input-font">{{ model.f_userinfo_code }}</p>
52
+ </div>
53
+ <div class="row">
54
+ <p class="panel-title col-xs-4 text-left font">用户名称</p>
55
+ <p class="panel-title col-xs-8 text-left input-font">{{ model.f_user_name }}</p>
56
+ </div>
57
+ <div class="row">
58
+ <p class="panel-title col-xs-4 text-left font">表号</p>
59
+ <p class="panel-title col-xs-8 text-left input-font">{{ model.f_meternumber }}</p>
60
+ </div>
61
+ <div class="row">
62
+ <p class="panel-title col-xs-4 text-left font">用户类型</p>
63
+ <p class="panel-title col-xs-8 text-left input-font">{{ model.f_user_type }}</p>
64
+ </div>
65
+ <div class="row">
66
+ <p class="panel-title col-xs-4 text-left font">用户电话</p>
67
+ <p class="panel-title col-xs-8 text-left input-font">{{ model.f_user_phone }}</p>
68
+ </div>
69
+ <div class="row">
70
+ <p class="panel-title col-xs-4 text-left font">用户地址</p>
71
+ <p class="panel-title col-xs-8 text-left input-font">{{ model.f_address }}</p>
72
+ </div>
73
+ <div class="row">
74
+ <p class="panel-title col-xs-4 text-left font">操作时间</p>
75
+ <p class="panel-title col-xs-8 text-left input-font">{{ row.f_operate_date }}</p>
76
+ </div>
77
+ <div class="row">
78
+ <p class="panel-title col-xs-4 text-left font">操作人</p>
79
+ <p class="panel-title col-xs-8 text-left input-font">{{ row.f_operator }}</p>
80
+ </div>
81
+ <div class="row">
82
+ <p class="panel-title col-xs-4 text-left font">操作原因</p>
83
+ <p class="panel-title col-xs-8 text-left input-font">{{ row.f_comments }}</p>
84
+ </div>
85
+ </div>
86
+ </div>
87
+ </div>
88
+ </div>
89
+ <div class="row auto" style="margin-top: 20px">
90
+ <button type="button" class="btn btn-lg btn-font btn-color" style="width: 45%;" @click="modalShow = true">取消拉黑</button>
91
+ </div>
92
+ <modal :show.sync="modalShow" v-ref:modal>
93
+ <div slot="modal-header" class="modal-header">
94
+ <h4 class="modal-title">
95
+ 取消限制用户购气
96
+ </h4>
97
+ </div>
98
+ <div slot="modal-body" class="modal-body">
99
+ <div class="row" style="margin-top: 6px">
100
+ <textarea id="el_ca_txt" v-model.trim="model.f_remark" style="border-radius:4px;width: 100%;" placeholder="请输入取消限制用户购气原因" >
101
+ </textarea>
102
+ </div>
103
+ </div>
104
+ <div slot="modal-footer" class="modal-footer">
105
+ <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="cancleBlack()">确认</button>
106
+ <button type="button" name="button" class="col-sm-3 btn btn-primary" @click="cancle()">取消</button>
107
+ </div>
108
+ </modal>
109
+ </div>
110
+ </div>
111
+ </template>
112
+
113
+ <script>
114
+
115
+
116
+ import Vue from "vue";
117
+ import * as Util from "../../Util";
118
+ import {HttpResetClass} from "vue-client";
119
+
120
+ export default {
121
+ title: '拉黑',
122
+ data() {
123
+ return {
124
+ model:{},
125
+ list:[],
126
+ busy:false,
127
+ modalShow:false,
128
+ blackUser:false,
129
+ liftUser:false
130
+ }
131
+ },
132
+ props: {
133
+ item: {
134
+ type: Object
135
+ }
136
+ },
137
+ methods:{
138
+ cancle(){
139
+ this.modalShow = false
140
+ this.model.f_remark = ''
141
+ },
142
+ async cancleBlack(){
143
+ if (!this.model.f_remark) {
144
+ this.$showMessage("请填写取消拉黑原因!")
145
+ return
146
+ }
147
+ this.busy = true
148
+ setTimeout(() => {
149
+ this.busy = false
150
+ }, 5000)
151
+ let http = new HttpResetClass()
152
+ let res1 = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
153
+ data: {
154
+ items: "version",
155
+ tablename: "t_userinfo",
156
+ condition: "f_userinfo_id=" + this.model.f_userinfo_id,
157
+ orderitem: "f_userinfo_id"
158
+ }
159
+ }, {resolveMsg: null, rejectMsg: null})
160
+ let res2 = await http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/logic/backlistOperate`, {
161
+ data: {
162
+ "f_operat_type": "取消拉黑",
163
+ "f_state": "有效",
164
+ "f_user_name": this.model.f_user_name,
165
+ "f_comments": this.model.f_remark,
166
+ "f_operator": Vue.user.name,
167
+ "f_operatorid": Vue.user.id,
168
+ "f_orgid": Vue.user.orgid,
169
+ "f_orgname": Vue.user.orgs,
170
+ "f_depid": Vue.user.depids,
171
+ "f_depname": Vue.user.deps,
172
+ "f_describe": `${Vue.user.name}对用户${this.model.f_user_name}进行取消拉黑`,
173
+ "f_userinfo_id": {
174
+ "f_userinfo_id": this.model.f_userinfo_id,
175
+ "f_user_state": "正常",
176
+ "version": res1.data[0].version
177
+ },
178
+ "f_limit_times":"",
179
+ "f_limit_value":""
180
+ }
181
+ }, {resolveMsg: null, rejectMsg: null})
182
+ this.busy = false
183
+ if (res2.data.code == 200) {
184
+ this.$showMessage("取消该用户限制购气成功!")
185
+ } else {
186
+ this.$showMessage("网络异常,请稍后再试!")
187
+ }
188
+ this.cancle()
189
+ },
190
+ async black(){
191
+ if (!this.model.f_remark || this.model.f_remark.trim() === '') {
192
+ this.$showMessage("请填写拉黑原因");
193
+ return;
194
+ }
195
+ let limit_times=1
196
+ let limit_value=3
197
+ let limit_amount=3
198
+ if(Vue.config.safecheck && Vue.config.safecheck.ApproveConfig.limit_times && Vue.config.safecheck.ApproveConfig.limit_value && Vue.config.safecheck.ApproveConfig.limit_amount){
199
+ limit_times = Vue.config.safecheck.ApproveConfig.limit_times
200
+ limit_value = Vue.config.safecheck.ApproveConfig.limit_value
201
+ limit_amount = Vue.config.safecheck.ApproveConfig.limit_amount
202
+ }
203
+ this.busy = true
204
+ setTimeout(() => {
205
+ this.busy = false
206
+ }, 5000)
207
+ let res2 = await new HttpResetClass().load('POST', `${this.$androidUtil.getProxyUrl()}/rs/logic/backlistOperate`, {
208
+ data: {
209
+ "f_operat_type": "拉黑",
210
+ "f_state": "有效",
211
+ "f_user_name": this.model.f_user_name,
212
+ "f_comments": this.model.f_remark,
213
+ "f_operator": Vue.user.name,
214
+ "f_operate_date":Util.toStandardTimeString(),
215
+ "f_operatorid": Vue.user.id,
216
+ "f_orgid": Vue.user.orgid,
217
+ "f_orgname": Vue.user.orgs,
218
+ "f_depid": Vue.user.depids,
219
+ "f_depname": Vue.user.deps,
220
+ "f_describe": `${Vue.user.name}对用户${this.model.f_user_name}进行拉黑`,
221
+ "f_userinfo_id": {
222
+ "f_userinfo_id": this.model.f_userinfo_id
223
+ },
224
+ "f_limit_times":limit_times,
225
+ "f_limit_value":limit_value,
226
+ "f_limit_amount":limit_amount,
227
+ 'f_limit_type':'气量'
228
+ }
229
+ }, {resolveMsg: null, rejectMsg: null})
230
+ this.busy = false
231
+ if (res2.data.code == 200) {
232
+ this.$showMessage("将该用户限制购气成功!")
233
+ } else if (res2.data.msg == '数据增加重复') {
234
+ this.$showMessage("该用户已被限制购气,请勿重复提交!")
235
+ } else {
236
+ this.$showMessage("网络异常,请稍后再试!")
237
+ }
238
+ },
239
+ async initList(){
240
+ const blackList = await new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
241
+ data: {
242
+ items: "b.*",
243
+ tablename: "t_userproperties a left join t_record b on a.f_record_id = b.id",
244
+ orderitem: "a.id",
245
+ condition: `a.f_userinfo_id = '${this.model.f_userinfo_id}' and a.f_parameter_key = 'blackList'`
246
+ }
247
+ }, {resolveMsg: null, rejectMsg: null})
248
+ console.log(blackList)
249
+ this.list = blackList.data
250
+ }
251
+ },
252
+ async ready() {
253
+ this.model = JSON.parse(JSON.stringify(this.item))
254
+ const blackList = await new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/rs/sql/safe_singleTable_OrderBy`, {
255
+ data: {
256
+ items: "*",
257
+ tablename: "t_userproperties",
258
+ orderitem: "id",
259
+ condition: `f_userinfo_id = '${this.model.f_userinfo_id}' and f_state = '有效' and f_parameter_key = 'blackList'`
260
+ }
261
+ }, {resolveMsg: null, rejectMsg: null})
262
+ if (blackList.data.length > 0){
263
+ await this.initList()
264
+ this.liftUser = true
265
+ }else {
266
+ this.blackUser = true
267
+ }
268
+
269
+ },
270
+ }
271
+ </script>
272
+ <style lang="less" scoped>
273
+
274
+ .btn{
275
+ display: block;
276
+ margin: 0 auto;
277
+ }
278
+
279
+ .btn-font{
280
+ font:600 16px PingFang-SC-Bold;
281
+ color: #499EDF;
282
+ }
283
+ .btn-color{
284
+ background-color: #FFFFFF;
285
+ border-radius: 10px ;
286
+ border: 1px solid #499EDF;
287
+ }
288
+
289
+ .butt3 {
290
+ float: right;
291
+ width: 12px;
292
+ margin: 1% 2% 0 0;
293
+ }
294
+
295
+ .rightipt {
296
+ width: 60%;
297
+ float: left;
298
+ margin-left: 5%;
299
+ }
300
+
301
+ .righttxt {
302
+ border: none;
303
+ margin-left: 5px;
304
+ /*border-left: 5px solid #A2C2EB;*/
305
+ float: left;
306
+ width: 25%;
307
+ margin-bottom: 3px;
308
+ text-align: left;
309
+ word-wrap: break-word;
310
+ white-space: normal;
311
+ }
312
+
313
+ .tit1 {
314
+ background-repeat: no-repeat;
315
+ background-position: center;
316
+ }
317
+
318
+ .spanboder {
319
+ border-bottom: 2px solid #499edf;
320
+ padding-bottom: 8px
321
+ }
322
+
323
+ #upuserinfo_sel /deep/ ul {
324
+ width: 100% !important;
325
+ left: 0 !important;
326
+ }
327
+
328
+ .btn-photo {
329
+ border: 0;
330
+ border-radius: 7px;
331
+ background-color: #7dc1f4;
332
+ font: 15px PingFang-SC-Bold;
333
+ height: 20%;
334
+ }
335
+
336
+ .panel-self {
337
+ border-radius: 10px;
338
+ border: 1px solid #499EDF;
339
+ background-color: #F8F8F8;
340
+ }
341
+
342
+ .div-photo {
343
+ width: auto;
344
+ height: auto;
345
+ /* margin-top: 10px; */
346
+ position: absolute;
347
+ bottom: 10px;
348
+ right: 10px;
349
+ }
350
+ </style>
351
+ <style lang="less">
352
+ #upuserinfo_sel ul {
353
+ width: 100% !important;
354
+ left: 0 !important;
355
+ }
356
+ </style>
@@ -0,0 +1,226 @@
1
+ <style scoped>
2
+ .app-row {
3
+ background-color: white;
4
+ padding: 10px 10px 0 10px;
5
+ border-bottom: 1px solid rgba(235, 235, 235, 0.5);
6
+ }
7
+ .search_input {
8
+ border: 0;
9
+ outline: none;
10
+ width: 100%;
11
+ }
12
+ .font{
13
+ font: 15px PingFang-SC-Medium;
14
+ color: #666666;
15
+ }
16
+ .input-font{
17
+ font: 15px PingFang-SC-Medium;
18
+ color: #333333;
19
+ }
20
+ .btn-font{
21
+ font:600 16px PingFang-SC-Bold;
22
+ color: #499EDF;
23
+ }
24
+ .btn-color{
25
+ background-color: #FFFFFF;
26
+ border-radius: 10px ;
27
+ border: 1px solid #499EDF;
28
+ }
29
+ .app-text {
30
+ font-size: 12px;
31
+ }
32
+ .panel-self{
33
+ border-radius: 10px;
34
+ border:1px solid #499EDF;
35
+ background-color: #F8F8F8;
36
+ }
37
+ .header-bar {
38
+ background-color: #499EDF;
39
+ color: white;
40
+ padding: 10px;
41
+ text-align: center;
42
+ position: relative;
43
+ }
44
+ .header-title {
45
+ font-size: 18px;
46
+ font-weight: bold;
47
+ }
48
+ .back-button {
49
+ position: absolute;
50
+ left: 10px;
51
+ top: 10px;
52
+ color: white;
53
+ }
54
+ .sound-button {
55
+ position: absolute;
56
+ right: 10px;
57
+ top: 10px;
58
+ color: white;
59
+ }
60
+ .btn-new {
61
+ background-color: #499EDF;
62
+ color: white;
63
+ border-radius: 10px;
64
+ border: none;
65
+ }
66
+ .user-info {
67
+ margin-top: 10px;
68
+ margin-bottom: 10px;
69
+ background-color: #f8f8f8;
70
+ padding: 10px;
71
+ border-radius: 5px;
72
+ }
73
+ </style>
74
+
75
+ <template>
76
+ <div class="auto">
77
+ <criteria-paged :model="model" v-ref:paged>
78
+ <criteria partial='criteria' @condition-changed='search' v-ref:cri>
79
+ <div partial>
80
+ <form>
81
+ <div class="row app-row">
82
+ <div class="col-xs-4">
83
+ <img src="../../../assets/表号.png" style="width: 20px;margin-bottom: 5px" alt="">
84
+ <label for="f_meternumber" class="font text-left">表 号:</label>
85
+ </div>
86
+ <div class="col-xs-8" >
87
+ <input id="f_meternumber" class="search_input input-font" v-model="model.f_meternumber" placeholder="请输入表号" condition="f_meternumber = '{}'"/>
88
+ </div>
89
+ </div>
90
+ <div class="row app-row">
91
+ <div class="col-xs-4">
92
+ <img src="../../../assets/表号.png" style="width: 20px;margin-bottom: 5px" alt="">
93
+ <label for="f_userinfo_code" class="font text-left">用户名称:</label>
94
+ </div>
95
+ <div class="col-xs-8" >
96
+ <input id="f_user_name" class="search_input input-font" v-model="model.f_user_name" placeholder="请输入用户名称 (可模糊查询)" condition="f_user_name like '%{}%'"/>
97
+ </div>
98
+ </div>
99
+ <div class="row app-row">
100
+ <div class="col-xs-4">
101
+ <img src="../../../assets/表号.png" style="width: 20px;margin-bottom: 5px" alt="">
102
+ <label for="f_address" class="font text-left">用户地址:</label>
103
+ </div>
104
+ <div class="col-xs-8" >
105
+ <input id="f_address" class="search_input input-font" v-model="model.f_address" placeholder="请输入用户地址 (可模糊查询)" condition="f_address like '%{}%'"/>
106
+ </div>
107
+ </div>
108
+ <div class="row app-row">
109
+ <div class="col-xs-4">
110
+ <img src="../../../assets/表号.png" style="width: 20px;margin-bottom: 5px" alt="">
111
+ <label for="f_residential_area" class="font text-left">小区名称:</label>
112
+ </div>
113
+ <div class="col-xs-8" >
114
+ <input id="f_residential_area" class="search_input input-font" v-model="model.f_residential_area" placeholder="请输入小区名称 (可模糊查询)" condition="f_residential_area like '%{}%'"/>
115
+ </div>
116
+ </div>
117
+ <div class="row app-row">
118
+ <div class="col-xs-4">
119
+ <img src="../../../assets/表号.png" style="width: 20px;margin-bottom: 5px" alt="">
120
+ <label for="f_seal_number" class="font text-left">表 封 号:</label>
121
+ </div>
122
+ <div class="col-xs-8" >
123
+ <input id="f_seal_number" class="search_input input-font" v-model="model.f_seal_number" placeholder="请输入表封号" condition="f_seal_number = '{}'"/>
124
+ </div>
125
+ </div>
126
+ <div class="row app-row">
127
+ <div class="col-xs-4">
128
+ <img src="../../../assets/表号.png" style="width: 20px;margin-bottom: 5px" alt="">
129
+ <label for="f_user_phone" class="font text-left">电 话 号:</label>
130
+ </div>
131
+ <div class="col-xs-8" >
132
+ <input id="f_user_phone" class="search_input input-font" v-model="model.f_user_phone" placeholder="请输入电话号" condition="f_user_phone = '{}'"/>
133
+ </div>
134
+ </div>
135
+ <div class="row app-row">
136
+ <div class="col-xs-4">
137
+ <img src="../../../assets/表号.png" style="width: 20px;margin-bottom: 5px" alt="">
138
+ <label for="f_card_id" class="font text-left">卡 号:</label>
139
+ </div>
140
+ <div class="col-xs-8" >
141
+ <input id="f_card_id" class="search_input input-font" v-model="model.f_card_id" placeholder="请输入卡号" condition="f_card_id = '{}'"/>
142
+ </div>
143
+ </div>
144
+
145
+ <div class="row text-center" style="margin-top: 20px;">
146
+ <button type="button" class="btn btn-lg btn-font btn-color" style="width: 45%; margin-right: 10px;" @click="search">查询</button>
147
+ </div>
148
+ <div style="height:30px;"></div>
149
+ </form>
150
+ </div>
151
+ </criteria>
152
+ <list :model="model" partial='list'>
153
+ <div partial>
154
+ <div class="auto app-text" @click="$parent.$parent.$parent.inspect(row)" style="margin-top: 5px;">
155
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
156
+ <div class="panel-body panel-self">
157
+ <div class="col-xs-12">
158
+ <p class="panel-title col-xs-5 text-left font" style="float: left"><b>用户编号:</b></p>
159
+ <p class="panel-title col-xs-7 text-left input-font" >{{ row.f_userinfo_code }}</p>
160
+ </div>
161
+ <div class="col-xs-12">
162
+ <p class="panel-title col-xs-5 text-left font" style="float: left"><b>用户名称:</b></p>
163
+ <p class="panel-title col-xs-7 text-left input-font" >{{ row.f_user_name }}</p>
164
+ </div>
165
+ <div class="col-xs-12">
166
+ <p class="panel-title col-xs-5 text-left font"><b>表号:</b></p>
167
+ <p class="panel-title col-xs-7 text-left input-font">{{ row.f_meternumber }}</p>
168
+ </div>
169
+ <div class="col-xs-12">
170
+ <p class="panel-title col-xs-5 text-left font"><b>用户类型:</b></p>
171
+ <p class="panel-title col-xs-7 text-left input-font">{{ row.f_user_type }}</p>
172
+ </div>
173
+ <div class="col-xs-12">
174
+ <p class="panel-title col-xs-5 text-left font"><b>用户电话:</b></p>
175
+ <p class="panel-title col-xs-7 text-left input-font" >{{ row.f_user_phone }}</p>
176
+ </div>
177
+ <div class="col-xs-12">
178
+ <p class="panel-title col-xs-5 text-left font"><b>小区名称:</b></p>
179
+ <p class="panel-title col-xs-7 text-left input-font" >{{ row.f_residential_area }}</p>
180
+ </div>
181
+ <div class="col-xs-12">
182
+ <p class="panel-title col-xs-5 text-left font" style="float: left"><b>用户地址:</b></p>
183
+ <p class="panel-title col-xs-7 text-left input-font" >{{ row.f_address }}</p>
184
+ </div>
185
+ </div>
186
+ </div>
187
+ </div>
188
+ </div>
189
+ </list>
190
+ </criteria-paged>
191
+ </div>
192
+ </template>
193
+
194
+ <script>
195
+ import Vue from 'vue'
196
+ import { PagedList } from 'vue-client'
197
+
198
+
199
+ export default {
200
+ title: '黑名单管理',
201
+ data () {
202
+ return {
203
+ model: new PagedList(`${this.$androidUtil.getProxyUrl()}/rs/sql/SwitchValveSeachUser`, 5),
204
+ }
205
+ },
206
+ ready () {
207
+
208
+ },
209
+ methods: {
210
+ inspect(row){
211
+ var pardate = {
212
+ _this:this,
213
+ tittle:'黑名单限制',
214
+ safe:true
215
+ }
216
+ this.$dispatch('gotoson',pardate)
217
+ this.$goto('block-user-details', {item: row}, 'self', this.reload)
218
+ },
219
+ reload(){
220
+ console.log('--')
221
+ }
222
+ },
223
+ components: {
224
+ }
225
+ }
226
+ </script>