safecheck-client 3.0.30-62-t11 → 3.0.30-62-t12

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 (244) hide show
  1. package/examples/SafePlan/comp.js +1527 -1527
  2. package/examples/SafePlan-liaoyuan/comp.js +1432 -1432
  3. package/examples/SafePlan-shaoguan/comp.js +1190 -1190
  4. package/examples/SafePlan-tongchuan/comp.js +1480 -1480
  5. package/examples/SafePlan-wenxi/comp.js +1545 -1545
  6. package/examples/SafePlan-zhoukou/comp.js +1525 -1525
  7. package/examples/SafePlanrongcheng/comp.js +1141 -1141
  8. package/examples/SafePlanrongcheng-gs/comp.js +1140 -1140
  9. package/examples/SafePlanrongcheng-gssq/comp.js +1143 -1143
  10. package/examples/SafePlanrongcheng-mysq/comp.js +1144 -1144
  11. package/package.json +1 -1
  12. package/src/components/CheckerCount/ZhouKouCheckCount.vue +272 -272
  13. package/src/components/DefectDealMain/DefectPaperNew.vue +1052 -1052
  14. package/src/components/NewDefectList/DefectPaperNew.vue +1079 -1079
  15. package/src/components/checkplan/CheckDetail.vue +205 -205
  16. package/src/components/checkplan/SelectCheckPlan.vue +311 -311
  17. package/src/components/createcheckplan/PlanUersList.vue +137 -137
  18. package/src/components/defect/DefectPaper.vue +764 -764
  19. package/src/components/defect/DefectPaperWeiXiu.vue +508 -508
  20. package/src/components/inspections/InspectionList.vue +476 -476
  21. package/src/components/inspections/InspectionLists.vue +478 -478
  22. package/src/components/inspections/InspectionListss.vue +477 -477
  23. package/src/components/noplan/NoPlanSearchUser.vue +300 -300
  24. package/src/components/olddata/OldPaperList.vue +340 -340
  25. package/src/components/paper/PaperList.vue +790 -790
  26. package/src/components/paper/filialeCheckInfo.vue +111 -111
  27. package/src/components/pc/CheckNoDetail.vue +209 -209
  28. package/src/components/pc/DefectDeal.vue +997 -997
  29. package/src/components/pc/NewCheckpaper.vue +1957 -1957
  30. package/src/components/pc/PaperChazhiMain.vue +504 -504
  31. package/src/components/pc/PaperDefectMain.vue +1 -1
  32. package/src/components/pc/PaperEdit.vue +151 -151
  33. package/src/components/pc/PaperVisitMain.vue +179 -179
  34. package/src/components/pc/SafeVisitHistory.vue +208 -208
  35. package/src/components/pc/SafecheckDeviceList.vue +260 -260
  36. package/src/components/pc/SecurityCheckLedger.vue +133 -133
  37. package/src/components/pc/SelectCheckNoPlan.vue +278 -278
  38. package/src/components/pc/SelectCheckPlanAndNoPLan.vue +281 -281
  39. package/src/components/planmanage/checkPlanList.vue +369 -369
  40. package/src/components/planmanage/checkUserList.vue +773 -773
  41. package/src/components/querycheckpaper/CheckSearchUser.vue +1067 -1067
  42. package/src/components/querycheckpaper/CheckSearchUserNew.vue +1109 -1109
  43. package/src/components/querycheckpaper/ShebeiSearchUser.vue +690 -690
  44. package/src/components/report/CheckPlanAreaList.vue +505 -505
  45. package/src/components/report/CheckPlanUserList.vue +216 -216
  46. package/src/components/report/NoCheckplanSafecheck.vue +212 -212
  47. package/src/components/rongcheng/CheckSearchArea.vue +703 -703
  48. package/src/components/rongcheng/CheckSearchUser.vue +936 -936
  49. package/src/components/rongcheng/CheckSearchUserNo.vue +778 -778
  50. package/src/components/rongcheng/CheckUserList.vue +205 -205
  51. package/src/components/rongcheng/DefectPaper.vue +676 -676
  52. package/src/components/rongcheng/PaperListAJ.vue +434 -434
  53. package/src/components/rongcheng/PaperListNPAJ.vue +431 -431
  54. package/src/components/rongcheng/PaperListNPSQ.vue +455 -455
  55. package/src/components/rongcheng/PaperListSQ.vue +444 -444
  56. package/src/components/rongcheng/checkerplan/SelectCheckPlan.vue +271 -271
  57. package/src/components/rongcheng/report/CheckPlanUserList.vue +228 -228
  58. package/src/components/safecheckNew/PaperList.vue +785 -785
  59. package/src/components/shaoguan/DefectPaper.vue +217 -217
  60. package/src/components/shaoguan/PaperList.vue +466 -466
  61. package/src/components/userfile/UserInfoAudit.vue +316 -316
  62. package/src/filiale/ALshan/pc/CheckSearchUser.vue +927 -927
  63. package/src/filiale/ALshan/pc/checkUserList.vue +714 -714
  64. package/src/filiale/ancheng/pc/PaperList.vue +659 -659
  65. package/src/filiale/ankangyihua/pc/CheckPlanAreaList.vue +512 -512
  66. package/src/filiale/ankangyihua/pc/CheckSearchUser.vue +1039 -1039
  67. package/src/filiale/ankangyihua/pc/DefectPaperWeiXiu.vue +545 -545
  68. package/src/filiale/ankangyihua/pc/PaperDefectMain.vue +864 -864
  69. package/src/filiale/ankangyihua/pc/PaperList.vue +656 -656
  70. package/src/filiale/ankangyihua/pc/checkUserList.vue +697 -697
  71. package/src/filiale/baiyin/pc/CheckPlanAreaList.vue +485 -485
  72. package/src/filiale/baiyin/pc/CheckSearchUser.vue +1067 -1067
  73. package/src/filiale/baiyin/pc/DefectPaperNew.vue +1052 -1052
  74. package/src/filiale/baiyin/pc/PaperList.vue +790 -790
  75. package/src/filiale/baiyin/pc/checkUserList.vue +771 -771
  76. package/src/filiale/bayan/pc/CheckDetail.vue +205 -205
  77. package/src/filiale/bayan/pc/CheckSearchUser.vue +1110 -1110
  78. package/src/filiale/bayan/pc/DefectPaperNew.vue +1239 -1239
  79. package/src/filiale/bayan/pc/PaperList.vue +900 -900
  80. package/src/filiale/bayan/pc/SelectCheckPlan.vue +396 -396
  81. package/src/filiale/dexin/pc/DefectPaperNew.vue +1066 -1066
  82. package/src/filiale/dexin/pc/PaperList.vue +805 -805
  83. package/src/filiale/fugou/pc/DefectPaperNew.vue +1085 -1085
  84. package/src/filiale/fugou/pc/PaperDefectMain.vue +928 -928
  85. package/src/filiale/fugou/pc/PaperList.vue +911 -911
  86. package/src/filiale/fugou/pc/checkPlanList.vue +371 -371
  87. package/src/filiale/fugou/pc/checkUserList.vue +904 -904
  88. package/src/filiale/fugu/pc/CheckSearchUser.vue +977 -977
  89. package/src/filiale/fugu/pc/SelectCheckPlan.vue +273 -273
  90. package/src/filiale/fugu/pc/planmanage/checkUserList.vue +688 -688
  91. package/src/filiale/ganquan/pc/DefectPaperNew.vue +1009 -1009
  92. package/src/filiale/ganquan/pc/PaperList.vue +654 -654
  93. package/src/filiale/ganquan/pc/PaperVisitMain.vue +166 -166
  94. package/src/filiale/ganquan/pc/SelectCheckPlan.vue +234 -234
  95. package/src/filiale/ganquan/pc/checkUserList.vue +681 -681
  96. package/src/filiale/gehua/pc/PaperList.vue +558 -558
  97. package/src/filiale/gehua/pc/checkUserList.vue +720 -720
  98. package/src/filiale/guangxi/pc/CheckPlanAreaList.vue +471 -471
  99. package/src/filiale/guangxi/pc/DefectPaperNew.vue +988 -988
  100. package/src/filiale/hanzhong/pc/CheckSearchUser.vue +1127 -1127
  101. package/src/filiale/hanzhong/pc/CheckUserList.vue +755 -755
  102. package/src/filiale/hanzhong/pc/PaperList.vue +702 -702
  103. package/src/filiale/huaran/pc/PaperList.vue +843 -843
  104. package/src/filiale/huaran/pc/checkPlanList.vue +419 -419
  105. package/src/filiale/huaran/pc/checkUserList.vue +900 -900
  106. package/src/filiale/huatong/pc/PaperDefectMain.vue +800 -800
  107. package/src/filiale/huatong/pc/PaperList.vue +789 -789
  108. package/src/filiale/huayin/pc/PaperList.vue +621 -621
  109. package/src/filiale/jiaocheng/pc/CheckSearchUser.vue +1011 -1011
  110. package/src/filiale/jinbin/pc/CheckPlanAreaList.vue +479 -479
  111. package/src/filiale/jingyang/pc/CheckSearchUser.vue +1062 -1062
  112. package/src/filiale/jingyang/pc/PaperList.vue +793 -793
  113. package/src/filiale/jingyang/pc/ReportCheckItemList.vue +543 -543
  114. package/src/filiale/kelai/pc/CheckPlanAreaList.vue +476 -476
  115. package/src/filiale/kelai/pc/CheckSearchUser.vue +1011 -1011
  116. package/src/filiale/kelai/pc/DefectPaperNew.vue +1090 -1090
  117. package/src/filiale/kelai/pc/FaultLimitGas/FaultLimitGasPaper.vue +897 -897
  118. package/src/filiale/kelai/pc/PaperList.vue +596 -596
  119. package/src/filiale/kelai/pc/checkUserList.vue +698 -698
  120. package/src/filiale/liaoyuan/pc/CheckSearchUser.vue +963 -963
  121. package/src/filiale/liaoyuan/pc/DefectPaperWeiXiu.vue +1011 -1011
  122. package/src/filiale/liaoyuan/pc/PaperList.vue +637 -637
  123. package/src/filiale/liaoyuan/pc/checkPlanList.vue +373 -373
  124. package/src/filiale/lixian/pc/CheckPlanAreaList.vue +467 -467
  125. package/src/filiale/lixian/pc/CheckSearchUser.vue +927 -927
  126. package/src/filiale/lixian/pc/PaperChazhiMain.vue +540 -540
  127. package/src/filiale/lixian/pc/PaperDefectMain.vue +551 -551
  128. package/src/filiale/lixian/pc/PaperList.vue +620 -620
  129. package/src/filiale/lixian/pc/checkPlanList.vue +366 -366
  130. package/src/filiale/lixian/pc/checkUserList.vue +761 -761
  131. package/src/filiale/minsheng/pc/CheckSearchUser.vue +976 -976
  132. package/src/filiale/minsheng/pc/checkUserList.vue +806 -806
  133. package/src/filiale/pingxiang/pc/DefectPaperNew.vue +1012 -1012
  134. package/src/filiale/pingxiang/pc/PaperList.vue +595 -595
  135. package/src/filiale/qianneng/pc/DefectPaperNew.vue +1072 -1072
  136. package/src/filiale/qianneng/pc/NoCheckplanSafecheck.vue +220 -220
  137. package/src/filiale/qianneng/pc/PaperList.vue +777 -777
  138. package/src/filiale/qianneng/pc/checkPlanList.vue +429 -429
  139. package/src/filiale/qianneng/pc/checkUserList.vue +871 -871
  140. package/src/filiale/qingjian/pc/PaperDefectMain.vue +895 -895
  141. package/src/filiale/qingtongxia/pc/PaperDefectMain.vue +858 -858
  142. package/src/filiale/rizhao/pc/PaperList.vue +714 -714
  143. package/src/filiale/rongchuang/pc/PaperList.vue +812 -812
  144. package/src/filiale/rongchuang/pc/checkUserList.vue +621 -621
  145. package/src/filiale/shanxian/pc/CheckDetail.vue +205 -205
  146. package/src/filiale/shanxian/pc/CheckSearchUser.vue +1114 -1114
  147. package/src/filiale/shanxian/pc/DefectPaperNew.vue +1096 -1096
  148. package/src/filiale/shanxian/pc/PaperList.vue +785 -785
  149. package/src/filiale/shanxian/pc/SelectCheckPlan.vue +324 -324
  150. package/src/filiale/shanxian/pc/checkUserList.vue +700 -700
  151. package/src/filiale/shaoguan/pc/PaperList.vue +589 -589
  152. package/src/filiale/shexian/pc/DefectPaperNew.vue +1161 -1161
  153. package/src/filiale/shexian/pc/PaperDefectMain.vue +893 -893
  154. package/src/filiale/shexian/pc/PaperList.vue +822 -822
  155. package/src/filiale/shimen/pc/CheckPlanAreaList.vue +463 -463
  156. package/src/filiale/shimen/pc/CheckSearchUser.vue +927 -927
  157. package/src/filiale/shimen/pc/PaperDefectMain.vue +589 -589
  158. package/src/filiale/shimen/pc/PaperList.vue +547 -547
  159. package/src/filiale/shiquan/pc/checkUserList.vue +755 -755
  160. package/src/filiale/siyang/pc/CheckPlanAreaList.vue +512 -512
  161. package/src/filiale/siyang/pc/CheckSearchUser.vue +1035 -1035
  162. package/src/filiale/siyang/pc/PaperDefectMain.vue +864 -864
  163. package/src/filiale/siyang/pc/PaperList.vue +834 -834
  164. package/src/filiale/siyang/pc/checkPlanList.vue +367 -367
  165. package/src/filiale/siyang/pc/checkUserList.vue +765 -765
  166. package/src/filiale/tianke/pc/PaperDefectMain.vue +891 -891
  167. package/src/filiale/tongchuan/pc/CheckDetail.vue +205 -205
  168. package/src/filiale/tongchuan/pc/CheckPlanAreaList.vue +502 -502
  169. package/src/filiale/tongchuan/pc/CheckPlanUserList.vue +246 -246
  170. package/src/filiale/tongchuan/pc/CheckSearchUser.vue +1045 -1045
  171. package/src/filiale/tongchuan/pc/DefectPaper.vue +764 -764
  172. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +593 -593
  173. package/src/filiale/tongchuan/pc/NoCheckplanSafecheck.vue +213 -213
  174. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +1060 -1060
  175. package/src/filiale/tongchuan/pc/PaperList.vue +670 -670
  176. package/src/filiale/tongchuan/pc/SelectCheckPlan.vue +296 -296
  177. package/src/filiale/tongchuan/pc/checkUserList.vue +639 -639
  178. package/src/filiale/weinan/pc/CheckBookSearchUserList.vue +735 -735
  179. package/src/filiale/weinan/pc/CheckDetail.vue +278 -278
  180. package/src/filiale/weinan/pc/CheckDetailOutHelp.vue +297 -297
  181. package/src/filiale/weinan/pc/CheckNoDetail.vue +259 -259
  182. package/src/filiale/weinan/pc/CheckPlanUserList.vue +338 -338
  183. package/src/filiale/weinan/pc/CheckSearchUser.vue +1078 -1078
  184. package/src/filiale/weinan/pc/DefectPaperNew.vue +1096 -1096
  185. package/src/filiale/weinan/pc/PaperDefectMain.vue +576 -576
  186. package/src/filiale/weinan/pc/PaperList.vue +674 -674
  187. package/src/filiale/weinan/pc/SelectCheckNoPlan.vue +299 -299
  188. package/src/filiale/weinan/pc/SelectCheckPlan.vue +389 -389
  189. package/src/filiale/weinan/pc/SelectCheckPlanOutHelp.vue +446 -446
  190. package/src/filiale/weinan/pc/checkPlanList.vue +456 -456
  191. package/src/filiale/weinan/pc/checkUserList.vue +712 -712
  192. package/src/filiale/weinanct/pc/PaperList.vue +593 -593
  193. package/src/filiale/wensu/pc/CheckDetail.vue +205 -205
  194. package/src/filiale/wensu/pc/CheckSearchUser.vue +1238 -1238
  195. package/src/filiale/wensu/pc/DefectPaperNew.vue +1148 -1148
  196. package/src/filiale/wensu/pc/SelectCheckPlan.vue +342 -342
  197. package/src/filiale/wensu/pc/checkUserList.vue +650 -650
  198. package/src/filiale/wenxi/pc/CheckPlanAreaList.vue +456 -456
  199. package/src/filiale/wenxi/pc/CheckPlanUserList.vue +217 -217
  200. package/src/filiale/wenxi/pc/CheckSearchUser.vue +991 -991
  201. package/src/filiale/wenxi/pc/DefectPaper.vue +663 -663
  202. package/src/filiale/wenxi/pc/PaperDefectMain.vue +790 -790
  203. package/src/filiale/wenxi/pc/PaperList.vue +949 -949
  204. package/src/filiale/wenxi/pc/checkPlanList.vue +517 -517
  205. package/src/filiale/wenxi/pc/checkUserList.vue +695 -695
  206. package/src/filiale/wuan/pc/DefectPaperWeiXiu.vue +515 -515
  207. package/src/filiale/wuan/pc/PaperList.vue +562 -562
  208. package/src/filiale/wuhai/pc/CheckSearchUser.vue +959 -959
  209. package/src/filiale/wuhai/pc/PaperList.vue +785 -785
  210. package/src/filiale/wuhai/pc/checkUserList.vue +611 -611
  211. package/src/filiale/xilan/pc/PaperList.vue +795 -795
  212. package/src/filiale/xilan/pc/checkUserList.vue +772 -772
  213. package/src/filiale/xinkang/pc/CheckPlanAreaList.vue +425 -425
  214. package/src/filiale/xinkang/pc/CheckPlanUserList.vue +216 -216
  215. package/src/filiale/xinkang/pc/CheckSearchUser.vue +1026 -1026
  216. package/src/filiale/xinkang/pc/DefectPaperWeiXiu.vue +538 -538
  217. package/src/filiale/xinkang/pc/PaperDefectMain.vue +525 -525
  218. package/src/filiale/xinkang/pc/PaperList.vue +603 -603
  219. package/src/filiale/xinkang/pc/checkUserList.vue +639 -639
  220. package/src/filiale/yangchunboneng/pc/CheckBookUser.vue +269 -269
  221. package/src/filiale/yangchunboneng/pc/CheckPlanAreaList.vue +642 -642
  222. package/src/filiale/yangchunboneng/pc/CheckSearchUser.vue +1192 -1192
  223. package/src/filiale/yangchunboneng/pc/DefectPaperNew.vue +1128 -1128
  224. package/src/filiale/yangchunboneng/pc/PaperDefectMain.vue +1046 -1046
  225. package/src/filiale/yangchunboneng/pc/PaperList.vue +773 -773
  226. package/src/filiale/yongzhou/pc/CheckSearchUser.vue +1092 -1092
  227. package/src/filiale/yongzhou/pc/DefectPaperNew.vue +1105 -1105
  228. package/src/filiale/yongzhou/pc/NoCheckplanSafecheck.vue +557 -557
  229. package/src/filiale/yongzhou/pc/PaperDefectMain.vue +872 -872
  230. package/src/filiale/yongzhou/pc/PaperList.vue +798 -798
  231. package/src/filiale/yongzhou/pc/SelectCheckPlan.vue +364 -364
  232. package/src/filiale/yongzhou/pc/checkUserList.vue +752 -752
  233. package/src/filiale/yongzhou/pc/communityDetail.vue +194 -194
  234. package/src/filiale/yongzhou/pc/communityTypeDetailG.vue +138 -138
  235. package/src/filiale/yongzhou/pc/safeDetail.vue +539 -539
  236. package/src/filiale/yongzhou/pc/safeStatisticsDay.vue +455 -455
  237. package/src/filiale/yongzhou/pc/safeStatisticsMonth.vue +267 -267
  238. package/src/filiale/yuansheng/pc/PaperList.vue +621 -621
  239. package/src/filiale/yunchengminsheng/pc/checkUserList.vue +753 -753
  240. package/src/filiale/zhongsheng/pc/CheckPlanAreaList.vue +495 -495
  241. package/src/filiale/zhongsheng/pc/DefectPaperWeiXiu.vue +515 -515
  242. package/src/filiale/zhongsheng/pc/PaperList.vue +644 -644
  243. package/src/filiale/zhoukou/pc/CheckSearchUser.vue +923 -923
  244. package/src/filiale/zhoukou/pc/PaperDefectMain.vue +465 -465
@@ -1,900 +1,900 @@
1
- <template>
2
- <div>
3
- <criteria-paged :model="model" v-ref:paged>
4
- <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:criteria>
5
- <div partial>
6
- <div class="row ">
7
- <label class="form-group font_normal_body"><b>用户信息</b></label>
8
-
9
- <div class="form-group col-sm-1">
10
- <input type="text" class="input_search" v-model="model.f_userinfo_code"
11
- style="width: 95%" placeholder="客户编号" condition="ui.f_userinfo_code='{}'">
12
- </div>
13
- <div class="form-group col-sm-1">
14
- <input type="text" class="input_search" v-model="model.f_user_name"
15
- style="width: 95%" placeholder="客户名称" condition="ui.f_user_name like '%{}%'">
16
- </div>
17
- <div class="form-group col-sm-1">
18
- <input type="text" class="input_search" v-model="model.f_address"
19
- style="width: 95%" placeholder="客户地址" condition="ua.f_address like '%{}%'">
20
- </div>
21
- <div class="form-group col-sm-1 upuserinfo_sel">
22
- <v-select
23
- class="select select_list"
24
- :width="'95%'"
25
- :value.sync="model.f_area"
26
- v-model="model.f_area"
27
- :options='$parent.$parent.areaList'
28
- :timeout="500"
29
- @select-search="$parent.$parent.select_search"
30
- placeholder='小区选择'
31
- condition="ua.f_residential_area = '{}'"
32
- close-on-select
33
- value-single
34
- >
35
- </v-select>
36
- </div>
37
- <div class="form-group col-sm-1 upuserinfo_sel">
38
- <v-select class="select select_list"
39
- :width="'95%'"
40
- class="select select_list"
41
- :value.sync="model.checkBook"
42
- v-model="model.checkBook"
43
- :options='$parent.$parent.checkBooks'
44
- placeholder='安&ensp;检&ensp;册'
45
- :multiple="true"
46
- >
47
- </v-select>
48
- </div>
49
- <div class="form-group col-sm-4">
50
- <button class="button_new" style="margin-right: 10px" @click="$parent.$parent.showUserCondition()">
51
- 更多条件
52
- </button>
53
- <button class="button_new" style="margin-right: 10px" @click="$parent.$parent.showUploadCodeCondition()">
54
- 导入编号
55
- </button>
56
- <button class="button_new" style="margin-right: 10px" @click="$parent.$parent.clearUserInfoId()">
57
- 清空编号
58
- </button>
59
- <button class="button_search" style="margin-right: 10px" @click="search()">查询</button>
60
- </div>
61
- <div class="form-group col-sm-1" style="float: right">
62
- <button class="button_search" style="margin-right: 10px" @click="$parent.$parent.dragtoPlanItem()">
63
- 添入任务
64
- </button>
65
- </div>
66
- <modal :show.sync="$parent.$parent.showCondtion" v-ref:modal :width="'50%'" :backdrop="false">
67
- <div slot="modal-header" class="modal-header">
68
- <h4 class="modal-title">
69
- 用户查询条件
70
- </h4>
71
- </div>
72
- <div slot="modal-body" class="modal-body">
73
- <div class="row">
74
- <div class="form-group col-sm-4">
75
- <label class="font_normal_body">用户类型:</label>
76
- <v-select
77
- class="select select_list"
78
- :value.sync="model.f_user_type"
79
- v-model="model.f_user_type"
80
- :options='$parent.$parent.userTypes'
81
- placeholder='请选择'
82
- condition="uf.f_user_type='{}'"
83
- :search="false"
84
- close-on-select
85
- value-single
86
- >
87
- </v-select>
88
- </div>
89
- <div class="form-group col-sm-4">
90
- <label class="font_normal_body">用户状态:</label>
91
- <v-select
92
- class="select select_list"
93
- :value.sync="model.f_user_state"
94
- v-model="model.f_user_state"
95
- :options='$parent.$parent.userStates'
96
- placeholder='请选择'
97
- condition="ui.f_user_state='{}'"
98
- :search="false"
99
- close-on-select
100
- value-single
101
- >
102
- </v-select>
103
- </div>
104
- <div class="form-group col-sm-4">
105
- <label class="font_normal_body">用气性质:</label>
106
- <v-select
107
- class="select select_list"
108
- :value.sync="model.f_gasproperties"
109
- v-model="model.f_gasproperties"
110
- :options='$parent.$parent.gasproperties'
111
- placeholder='请选择'
112
- condition="uf.f_gasproperties='{}'"
113
- :search="false"
114
- close-on-select
115
- value-single
116
- >
117
- </v-select>
118
- </div>
119
- <div class="form-group col-sm-4">
120
- <label class="font_normal_body">气表类型:</label>
121
- <v-select
122
- class="select select_list"
123
- :value.sync="model.meter_classify"
124
- v-model="model.meter_classify"
125
- :options='$parent.$parent.meter_classifys'
126
- placeholder='请选择'
127
- condition="uf.F_METER_CLASSIFY='{}'"
128
- :search="false"
129
- close-on-select
130
- value-single
131
- >
132
- </v-select>
133
- </div>
134
- <div class="form-group col-sm-4">
135
- <label class="font_normal_body">街&emsp;&emsp;道:</label>
136
- <v-select
137
- class="select select_list"
138
- :value.sync="model.f_street"
139
- v-model="model.f_street"
140
- :options='$parent.$parent.streets'
141
- placeholder='请选择'
142
- condition="ua.f_street_id='{}'"
143
- close-on-select
144
- value-single
145
- >
146
- </v-select>
147
- </div>
148
- <!--<div class="form-group col-sm-4" >
149
- <label class="font_normal_body">小区名称:</label>
150
- <input type="text" class="input_search" v-model="model.f_userinfo_code"
151
- style="width: 60%" placeholder="请选择" condition="ua.f_residential_area = '{}'">
152
- </div>-->
153
- <div class="form-group col-sm-4">
154
- <label class="font_normal_body">楼&ensp;栋&ensp;号:</label>
155
- <input type="text" class="input_search" v-model="model.f_building"
156
- style="width: 60%" placeholder="请选择" condition="ua.f_building='{}'">
157
- </div>
158
- <div class="form-group col-sm-4">
159
- <label class="font_normal_body">单&ensp;元&ensp;号:</label>
160
- <input type="text" class="input_search" v-model="model.f_unit"
161
- style="width: 60%" placeholder="请选择" condition="ua.f_unit='{}'">
162
- </div>
163
- <div class="form-group col-sm-4">
164
- <label class="font_normal_body">楼&ensp;层&ensp;号:</label>
165
- <input type="text" class="input_search" v-model="model.f_floor"
166
- style="width: 60%" placeholder="请选择" condition="ua.f_floor='{}'">
167
- </div>
168
- <div class="form-group col-sm-4">
169
- <label class="font_normal_body">开户起始:</label>
170
- <datepicker
171
- placeholder='请选择'
172
- style="width:60%"
173
- :disabled-days-of-week="[]"
174
- :format="'yyyy-MM-dd'"
175
- :show-rest-button="reset"
176
- :value.sync="model.f_startfile_time"
177
- v-model="model.f_startfile_time"
178
- condition="ui.f_createfile_date >= '{} 00:00:00'">
179
- </datepicker>
180
- </div>
181
- <div class="form-group col-sm-4">
182
- <label class="font_normal_body">开户截止:</label>
183
- <datepicker
184
- placeholder='请选择'
185
- :disabled-days-of-week="[]"
186
- style="width:60%"
187
- :format="'yyyy-MM-dd'"
188
- :show-rest-button="reset"
189
- :value.sync="model.f_endfile_time"
190
- v-model="model.f_endfile_time"
191
- condition="ui.f_createfile_date <= '{} 23:59:59'">
192
- </datepicker>
193
- </div>
194
- <div class="form-group col-sm-4">
195
- <label class="font_normal_body">表&ensp;箱&ensp;号:</label>
196
- <input type="text" class="input_search" v-model="model.f_metertitles"
197
- style="width: 60%" placeholder="请输入" condition="uf.f_metertitles='{}'">
198
- </div>
199
- <div class="form-group col-sm-4">
200
- <label class="font_normal_body">用户电话:</label>
201
- <input type="text" class="input_search" v-model="model.f_user_phone"
202
- style="width: 60%" placeholder="请输入" condition="ui.f_user_phone='{}'">
203
- </div>
204
- <div class="form-group col-sm-4">
205
- <label class="font_normal_body">片&ensp;&ensp;&ensp;&ensp;区:</label>
206
- <v-select
207
- class="select select_list"
208
- :value.sync="model.f_book_slice_area"
209
- v-model="model.f_book_slice_area"
210
- :options='$parent.$parent.sliceArea'
211
- @change="$parent.$parent.slice_areaChange(model.f_book_slice_area)"
212
- placeholder='请选择'
213
- condition="ua.f_slice_area ='{}'"
214
- close-on-select
215
- value-single
216
- >
217
- </v-select>
218
- </div>
219
- <div class="form-group col-sm-4">
220
- <label class="font_normal_body">抄&ensp;表&ensp;册:</label>
221
- <v-select
222
- class="select select_list"
223
- :value.sync="model.f_meter_book_num"
224
- v-model="model.f_meter_book_num"
225
- :options='$parent.$parent.cbc'
226
- placeholder='请选择'
227
- condition="uf.f_meter_book_num='{}'"
228
- close-on-select
229
- value-single
230
- >
231
- </v-select>
232
- </div>
233
- <div class="form-group col-sm-4">
234
- <label class="font_normal_body">派发情况:</label>
235
- <v-select
236
- class="select select_list"
237
- :value.sync="model.yearCheck"
238
- v-model="model.yearCheck"
239
- :options='$parent.$parent.yearCheckList'
240
- placeholder='请选择'
241
- condition="{}"
242
- :search="false"
243
- close-on-select
244
- value-single
245
- >
246
- </v-select>
247
- </div>
248
- <div class="form-group col-sm-4">
249
- <label class="font_normal_body">安检起始:</label>
250
- <datepicker
251
- placeholder='请选择'
252
- style="width:60%"
253
- :disabled-days-of-week="[]"
254
- :format="'yyyy-MM-dd'"
255
- :show-rest-button="reset"
256
- :value.sync="model.f_start_time"
257
- v-model="model.f_start_time"
258
- >
259
- </datepicker>
260
- </div>
261
- <div class="form-group col-sm-4">
262
- <label class="font_normal_body">安检截止:</label>
263
- <datepicker
264
- placeholder='请选择'
265
- :disabled-days-of-week="[]"
266
- style="width:60%"
267
- :format="'yyyy-MM-dd'"
268
- :show-rest-button="reset"
269
- :value.sync="model.f_end_time"
270
- v-model="model.f_end_time"
271
- >
272
- </datepicker>
273
- </div>
274
- <div class="form-group col-sm-4">
275
- <label class="font_normal_body">安检状态:</label>
276
- <v-select
277
- class="select select_list"
278
- :value.sync="model.f_last_check_state"
279
- v-model="model.f_last_check_state"
280
- :options='$parent.$parent.entry_status'
281
- placeholder='请选择'
282
- :search="false"
283
- close-on-select
284
- value-single
285
- >
286
- </v-select>
287
- </div>
288
- <!-- <div class="form-group col-sm-4">-->
289
- <!-- <label class="font_normal_body">安&ensp;检&ensp;册:</label>-->
290
- <!-- <v-select-->
291
- <!-- class="select select_list"-->
292
- <!-- :value.sync="model.checkBook"-->
293
- <!-- v-model="model.checkBook"-->
294
- <!-- :options='$parent.$parent.checkBooks'-->
295
- <!-- placeholder='请选择'-->
296
- <!-- :search="false"-->
297
- <!-- close-on-select-->
298
- <!-- value-single-->
299
- <!-- >-->
300
- <!-- </v-select>-->
301
- <!-- </div>-->
302
- <div class="form-group col-sm-4">
303
- <label class="font_normal_body">通气起始:</label>
304
- <datepicker
305
- placeholder='通气开始时间'
306
- style="width:60%"
307
- :disabled-days-of-week="[]"
308
- :format="'yyyy-MM-dd'"
309
- :show-rest-button="reset"
310
- :value.sync="model.f_startgas_time"
311
- v-model="model.f_startgas_time"
312
- condition="ui.f_uservent_date >= '{} 00:00:00'">
313
- </datepicker>
314
- </div>
315
- <div class="form-group col-sm-4">
316
- <label class="font_normal_body">通气截止:</label>
317
- <datepicker
318
- placeholder='通气结束时间'
319
- :disabled-days-of-week="[]"
320
- style="width:60%"
321
- :format="'yyyy-MM-dd'"
322
- :show-rest-button="reset"
323
- :value.sync="model.f_endgas_time"
324
- v-model="model.f_endgas_time"
325
- condition="ui.f_uservent_date <= '{} 23:59:59'">
326
- </datepicker>
327
- </div>
328
- <!--<div class="form-group col-sm-4" >
329
- <label class="font_normal_body">入户情况:</label>
330
- <v-select
331
- class="select select_list"
332
- :value.sync="model.f_hasHousehold"
333
- v-model="model.f_hasHousehold"
334
- :options='$parent.$parent.hasHousehold'
335
- placeholder='请选择'
336
- close-on-select
337
- :search="false"
338
- value-single
339
- >
340
- </v-select>
341
- </div>-->
342
-
343
- </div>
344
- </div>
345
- <div slot="modal-footer" class="modal-footer" style="text-align: center">
346
- <button class="button_search" style="margin-right: 15px" @click="search()">查询</button>
347
- <button class="button_search" @click="$parent.$parent.cancel">取消</button>
348
- </div>
349
- </modal>
350
- <modal :show.sync="$parent.$parent.excelUserCondtion" width="500px" v-ref:modal1>
351
- <div slot="modal-header" class="modal-header">
352
- <h4 class="modal-title">
353
- 导入用户编号
354
- </h4>
355
- </div>
356
- <div slot="modal-body" class="modal-body">
357
- <div class="row">
358
- <file-upload class="my-file-uploader " name="UploadFile" class="btn btn-success"
359
- style="border-radius: 2px;"
360
- action="rs/file/uploadFile" tagname="档案信息导入" v-ref:file :headers="headers"
361
- multiple></file-upload>
362
- <img src="../../../assets/Excelformat.png" style="width: 100%"/>
363
- </div>
364
- </div>
365
- <footer slot="modal-footer" class="modal-footer">
366
- </footer>
367
- </modal>
368
- <!--<div class="form-group col-sm-4 button-range" >
369
-
370
- <button class="button_search" style="margin-right: 10px" @click="search()">查询</button>
371
- <export-excel-safe :data="$parent.$parent.exportParameter"
372
- :field="$parent.$parent.excelHeaders"
373
- sqlurl="api/af-safecheck/logic/SafeExportExcel" sql-name="planItem"
374
- template-name='安检任务明细' :choose-col="true">
375
- </export-excel-safe>
376
-
377
- </div>-->
378
- </div>
379
- </div>
380
- </criteria>
381
- <data-grid :model="model" partial='list' class="table_sy">
382
-
383
- <template partial='head'>
384
- <tr>
385
- <th>
386
- <nobr><input type="checkbox" onClick="event.cancelBubble = true"
387
- :checked="$parent.$parent.$parent.checkAll" @change="$parent.$parent.$parent.setCheckAll()"/>
388
- 全选
389
- </nobr>
390
- </th>
391
- <th>
392
- <nobr>用户编号</nobr>
393
- </th>
394
- <th>
395
- <nobr>用户名称</nobr>
396
- </th>
397
- <th>
398
- <nobr>用户类型</nobr>
399
- </th>
400
- <th>
401
- <nobr>用户电话</nobr>
402
- </th>
403
- <th>
404
- <nobr>表具类型</nobr>
405
- </th>
406
- <th>
407
- <nobr>小区名称</nobr>
408
- </th>
409
- <th>
410
- <nobr>安检册</nobr>
411
- </th>
412
- <th>
413
- <nobr>抄表册</nobr>
414
- </th>
415
- <th title="当前所在的安检任务名称">
416
- <nobr>所属任务</nobr>
417
- </th>
418
- <th title="最后一次安检日期">
419
- <nobr>安检日期</nobr>
420
- </th>
421
- <th>
422
- <nobr>首次通气时间</nobr>
423
- </th>
424
- <th>
425
- <nobr>详细地址</nobr>
426
- </th>
427
- </tr>
428
- </template>
429
- <template partial='body'>
430
- <td style="text-align: center;white-space:nowrap;"><input type="checkbox" onClick="event.cancelBubble = true"
431
- :checked="$parent.$parent.$parent.isChecked(row.id)"
432
- @change="$parent.$parent.$parent.setCheckes(row.id)"/>
433
- </td>
434
- <td style="text-align: center">
435
- <nobr>{{ row.f_userinfo_code }}</nobr>
436
- </td>
437
- <td style="text-align: center">
438
- <nobr>{{ row.f_user_name }}</nobr>
439
- </td>
440
- <td style="text-align: center">
441
- <nobr>{{ row.f_user_type }}</nobr>
442
- </td>
443
- <td style="text-align: center">
444
- <nobr>{{ row.f_user_phone }}</nobr>
445
- </td>
446
- <td style="text-align: center">
447
- <nobr>{{ row.f_meter_classify }}</nobr>
448
- </td>
449
- <td style="text-align: center">
450
- <nobr>{{ row.f_residential_area }}</nobr>
451
- </td>
452
- <td style="text-align: center">
453
- <nobr>{{ row.f_book_slice_area }}</nobr>
454
- </td>
455
- <td style="text-align: center">
456
- <nobr>{{ row.f_book_name }}</nobr>
457
- </td>
458
- <td style="text-align: center">
459
- <nobr>{{ row.f_plan_name }}</nobr>
460
- </td>
461
- <td style="text-align: center">
462
- <nobr>{{ row.f_last_check_date }}</nobr>
463
- </td>
464
- <td style="text-align: center">
465
- <nobr>{{ row.f_uservent_date }}</nobr>
466
- </td>
467
- <td style="text-align: center">
468
- <nobr>{{ row.f_address }}</nobr>
469
- </td>
470
- </template>
471
- </data-grid>
472
- </criteria-paged>
473
- </div>
474
- </template>
475
-
476
- <script>
477
- import {HttpResetClass, PagedList} from "vue-client";
478
- import Vue from "vue";
479
-
480
- export default {
481
- name: "PlanManage",
482
- title: '任务管理',
483
- data() {
484
- return {
485
- model: new PagedList('/api/af-safecheck/sql/FetchUserFileByOrgNoRuHuSXQ', 100, {
486
- "orderitem": "'f_residential_area,f_building,f_unit,f_floor,f_room'",
487
- "f_usertype": "''",
488
- "month": "''",
489
- "SafeCheckSX": {"f_check_start": '', "f_check_end": ''},
490
- "SafeCheckCQ": "''",
491
- "startday": "''",
492
- "endday": "''"
493
- }),
494
- a: '1',
495
- opt: [{label: "测试", value: "测试"}],
496
- showCondtion: false,
497
- userTypes: [],//用户类型
498
- userStates: [],//用户状态
499
- gasproperties: [],//用气性质
500
- meter_classifys: [],//气表类型
501
- hasHousehold: [{label: "全部", value: ""}, {label: "已入户", value: "已入户"}, {
502
- label: "未入户",
503
- value: "未入户"
504
- }],
505
- yearCheckList: [{label: "全部", value: ""}, {
506
- label: "已在任务中",
507
- value: "ua.f_plan_id is not null"
508
- }, {label: "未在任务中", value: "ua.f_plan_id is null"}],
509
- entry_status: this.$appdata.getParam('安检状态') ? [{
510
- label: '全部',
511
- value: ''
512
- }, ...this.$appdata.getParam('安检状态')] : [{label: '全部', value: ''}],
513
- sliceArea: [],
514
- meterbooks: [],
515
- // hasCheckBooks:'否',
516
- checkBooks: [],
517
- cbc: [],
518
- areaList: [],
519
- checkAll: false,
520
- checkes: [],
521
- excelUserCondtion: false,
522
- uploadCodeCondition: '',
523
- streets: []
524
- }
525
- },
526
- props: ["selectplan", "userlogin"],
527
- ready() {
528
- console.log('-====')
529
- console.log(this.$login.f)
530
- this.$refs.paged.$refs.criteria.model.f_user_state = '正常'
531
- // this.hasCheckBooks=this.$appdata.getSingleValue('是否使用安检册')
532
- // this.$refs.paged.$refs.criteria.model.f_endfile_time=Util.toStartDateYearString()
533
- //this.$refs.paged.$refs.criteria.model.f_hasHousehold='未入户'
534
- this.getCheckBook()
535
- this.setConList()
536
- this.loadpage()
537
-
538
- },
539
- methods: {
540
- getCheckBook() {
541
- this.checkBooks = []
542
- new HttpResetClass().load('POST', `/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
543
- data: {
544
- items: 'id,f_check_book_name,f_check_book_type',
545
- tablename: 't_check_book',
546
- condition: `f_orgid = '${this.userlogin.orgid}'`,
547
- orderitem: 'id desc'
548
- }
549
- }, {resolveMsg: null, rejectMsg: null}).then(res => {
550
- // this.checkBooks.push({label: '全部', value: ''})
551
- res.data.forEach(ress => {
552
- this.checkBooks.push({
553
- label: ress.f_check_book_name,
554
- value: `${ress.id}-${ress.f_check_book_type}`
555
- })
556
- })
557
- })
558
- },
559
- loadpage() {
560
- this.select_search()
561
- this.select_street()
562
- this.Mreadibook()
563
- this.getSliceArea()
564
- },
565
- cancel() {
566
- this.showCondtion = false
567
- this.excelUserCondtion = false
568
- },
569
- //清空用户编号
570
- clearUserInfoId() {
571
- this.uploadCodeCondition = ''
572
- Vue.showMessage("已清空用户编号")
573
- },
574
- showUploadCodeCondition() {
575
- this.excelUserCondtion = true
576
- },
577
- selfSearch(args) {
578
- //tag)
579
- args.condition += ` and ui.f_filialeid='${this.userlogin.orgid}'`
580
- /*if(args.model.f_hasHousehold=='已入户'){
581
- args.condition +=` and Extract(year from TO_DATE(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'))=2021 and ua.F_LAST_CHECK_STATE='入户'`
582
- }else if(args.model.f_hasHousehold=='未入户'){
583
- args.condition +=` and (Extract(year from nvl(TO_DATE(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'),'1990-01-01 00:00:00'))!=2021 or nvl(ua.F_LAST_CHECK_STATE,'未入户')!='入户')`
584
- }*/
585
-
586
- if (args.model.f_last_check_state == '未检') {
587
- let nocheckcon = 'and ( ui.f_last_check_date is null '
588
- if (args.model.f_start_time) {
589
- nocheckcon += ` or ui.f_last_check_date <='${args.model.f_start_time} 00:00:00' `
590
- }
591
- if (args.model.f_end_time) {
592
- nocheckcon += ` or ui.f_last_check_date >='${args.model.f_end_time} 23:59:59' `
593
- }
594
- nocheckcon += ')'
595
- args.condition += nocheckcon
596
- } else {
597
- if (args.model.f_last_check_state) {
598
- args.condition += ` and ui.f_last_check_state = '${args.model.f_last_check_state}'`
599
- }
600
- if (args.model.f_start_time) {
601
- args.condition += ` and ui.f_last_check_date >='${args.model.f_start_time} 00:00:00' `
602
- }
603
- if (args.model.f_end_time) {
604
- args.condition += ` and ui.f_last_check_date <='${args.model.f_end_time} 23:59:59' `
605
- }
606
- }
607
- debugger
608
- if (args.model.checkBook && Array.isArray(args.model.checkBook)) {
609
- let userIds = [];
610
- let areaIds = [];
611
- args.model.checkBook.forEach(checkBook => {
612
- let arr = checkBook.split('-');
613
- if (arr[1] == '用户') {
614
- userIds.push(arr[0]);
615
- } else {
616
- areaIds.push(arr[0]);
617
- }
618
- });
619
- if (userIds.length > 0 && areaIds.length == 0) {
620
- args.condition += ` and ua.f_check_book_id in (${userIds.map(id => `'${id}'`).join(',')})`;
621
- }
622
- if (areaIds.length > 0 && userIds.length == 0) {
623
- args.condition += ` and area.f_check_book_id in (${areaIds.map(id => `'${id}'`).join(',')}) and ua.f_check_book_id is null`;
624
- }
625
- if (userIds.length > 0 && areaIds.length > 0){
626
- args.condition += ` and (ua.f_check_book_id in (${userIds.map(id => `'${id}'`).join(',')}) or area.f_check_book_id in (${areaIds.map(id => `'${id}'`).join(',')}))`;
627
- }
628
- }
629
- if (this.uploadCodeCondition) {
630
- args.condition += ` and ${this.uploadCodeCondition}`
631
- }
632
- this.cancel()
633
- this.checkes = []
634
- this.checkAll = false
635
- this.model.search(args.condition, args.model, args.condValue)
636
- },
637
- showUserCondition() {
638
- this.showCondtion = true
639
- },
640
- setConList() {
641
- this.userTypes = this.$appdata.getParam('用户类型') ? [{
642
- label: '全部',
643
- value: ''
644
- }, ...this.$appdata.getParam('用户类型')] : [{label: '全部', value: ''}]
645
-
646
- this.userStates = this.$appdata.getParam('安检用户状态') ? [{
647
- label: '全部',
648
- value: ''
649
- }, ...this.$appdata.getParam('安检用户状态')] : [{label: '全部', value: ''}]
650
- this.gasproperties = this.$appdata.getParam('用气性质') ? [{
651
- label: '全部',
652
- value: ''
653
- }, ...this.$appdata.getParam('用气性质')] : [{label: '全部', value: ''}]
654
- this.meter_classifys = this.$appdata.getParam('气表类型') ? [{
655
- label: '全部',
656
- value: ''
657
- }, ...this.$appdata.getParam('气表类型')] : [{label: '全部', value: ''}]
658
- },
659
- select_search(text) {
660
- //tag
661
- let pcdText = text ? ` and f_residential_area like '%${text}%'` : ''
662
- new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
663
- data: {
664
- items: "*",
665
- tablename: "t_area",
666
- orderitem: "id",
667
- condition: `f_orgid = '${this.userlogin.orgid}' ${pcdText} `
668
- }
669
- }, {resolveMsg: null, rejectMsg: null}).then((res) => {
670
- //tag)
671
- if (res.data.length > 0) {
672
- this.areaList = []
673
- this.areaList.push({label: "全部", value: ""})
674
- res.data.forEach((result) => {
675
- this.areaList.push({label: result.f_residential_area, value: result.f_residential_area})
676
- })
677
- }
678
- //tag)
679
- })
680
- },
681
- select_street() {
682
- //tag
683
- new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
684
- data: {
685
- items: "id,f_street",
686
- tablename: "t_street",
687
- orderitem: "id",
688
- condition: `f_orgid = '${this.userlogin.orgid}'`
689
- }
690
- }, {resolveMsg: null, rejectMsg: null}).then((res) => {
691
- //tag)
692
- if (res.data.length > 0) {
693
- this.streets = []
694
- this.streets.push({label: "全部", value: ""})
695
- res.data.forEach((result) => {
696
- this.streets.push({label: result.f_street, value: result.id})
697
- })
698
- }
699
- })
700
- },
701
- //获取抄表册
702
- async Mreadibook() {
703
- this.cbc = []
704
- this.sliceArea = []
705
- let http = new HttpResetClass()
706
- let getMeterReadingBooks = await http.load('POST', 'api/af-safecheck/logic/getMeterBooksData',
707
- {data: {f_orgid: "('" + this.userlogin.orgid + "')"}},
708
- {resolveMsg: null, rejectMsg: '获取失败!!!'})
709
- this.cbc = [{label: '全部', value: ''}]
710
- //tag
711
- //tag)
712
- //tag
713
- this.meterbooks = []
714
- this.meterbooks = getMeterReadingBooks.data.meterbooks
715
- this.meterbooks.forEach((res) => {
716
- this.cbc.push({label: res.f_book_name, value: res.id})
717
- /*if(res.f_book_slice_area){
718
- if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
719
- this.sliceArea.push(res.f_book_slice_area)
720
- }
721
- }*/
722
- })
723
-
724
- },
725
- //安检册获取
726
- async getSliceArea() {
727
- let http = new HttpResetClass()
728
- let getAllArea = await http.load('POST', '/rs/search', {
729
- source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
730
- userid: this.userlogin.id
731
- }, {resolveMsg: null, rejectMsg: '获取安检册出错!!!'})
732
- this.sliceArea = [{label: '全部', value: ''}]
733
- //tag
734
- //tag
735
- //tag
736
- getAllArea.data.forEach((res) => {
737
- if (res.parentid == this.userlogin.orgid) {
738
- this.sliceArea.push({label: res.name, value: res.name})
739
- }
740
- })
741
- //tag
742
- },
743
- //安检册改变-对应抄表册下拉重新赋值
744
- slice_areaChange(value) {
745
- //tag
746
- if (!value) {
747
- this.cbc = []
748
- this.meterbooks.forEach((res) => {
749
- this.cbc.push({label: res.f_book_name, value: res.id})
750
- })
751
- } else {
752
- this.cbc = []
753
- this.meterbooks.forEach((res) => {
754
- if (res.f_book_slice_area == value) {
755
- this.cbc.push({label: res.f_book_name, value: res.id})
756
- }
757
- })
758
- }
759
- },
760
- isChecked(v) {
761
- // 如果全选,不在的按选中算,否则,在的按选中算
762
- if (this.checkAll) {
763
- return this.checkes.indexOf(v) == -1
764
- } else {
765
- return this.checkes.indexOf(v) != -1
766
- }
767
- },
768
- setCheckAll() {
769
- this.checkAll = this.checkAll ? false : true;
770
- // 全选改变后,清空选中数据
771
- this.checkes = []
772
- },
773
- setCheckes(id) {
774
- let index = this.checkes.indexOf(id)
775
- if (index < 0) {
776
- this.checkes.push(id)
777
- } else {
778
- this.checkes.splice(index, 1)
779
- }
780
- },
781
- //将客户信息拖至任务中
782
- async dragtoPlanItem() {
783
- if (this.model.rows.length == 0) {
784
- Vue.showMessage("未检测到列表中有用户!")
785
- return
786
- }
787
- if (!this.checkAll && this.checkes.length == 0) {
788
- Vue.showMessage("请先勾选你要添入到上方任务中的用户!")
789
- return
790
- }
791
- if (this.selectplan && this.selectplan.id) {
792
- this.$parent.isSend = true
793
- try {
794
- let res = await new HttpResetClass().load("POST", "/api/af-safecheck/logic/AddCheckPlanItem", {
795
- data: {
796
- f_operator: this.userlogin.name,
797
- f_plan_id: this.selectplan.id,
798
- f_safecheck_type: this.selectplan.f_safecheck_type,
799
- f_filialeid: this.userlogin.orgid,
800
- f_subscribe_date: '',
801
- condition: this.model.condition,
802
- switchCheckAll: true,
803
- checkAll: this.checkAll,
804
- param: this.checkes,
805
- columnName: "ua.id"
806
- }
807
- }, {resolveMsg: null, rejectMsg: null})
808
- //tag+"---"+res.data.result.length)
809
- this.$parent.isSend = false
810
- if (res.data.code == 200) {
811
- //alert("添加成功!有"+res.data.result.length+"条用户地址已经存在于其他任务中: \n"+res.data.result.reduce((c,v)=>{c += v.f_user_name+":"+v.f_address+"\n"}),0)
812
- this.$showMessage("添加成功!" + (res.data.result.length > 0 ? "有" + res.data.result.length + "条用户地址已经存在于其他任务中" : ""))
813
- this.$parent.refresh()
814
- } else {
815
- this.$showMessage("添加失败!")
816
- }
817
- } catch (e) {
818
- this.$showMessage("添加失败!")
819
- }
820
- } else {
821
- this.$parent.isSend = false
822
- this.$showMessage("请先打开一个任务再进行操作")
823
- }
824
- }
825
- },
826
- events: {
827
- onFileUpload: function (file, res) {
828
- //tag)
829
- //tag)
830
- let data = {
831
- filepath: res.f_downloadpath
832
- }
833
- new HttpResetClass().load('POST', '/api/af-safecheck/logic/safe_GetUserInfoFromExcel', {data: data}, {
834
- resolveMsg: '导入成功!已生成条件,若要去除导入条件请点击旁边 ‘清空用户编号’ 按钮。',
835
- rejectMsg: '导入失败'
836
- }).then((res) => {
837
- this.uploadCodeCondition = res.data.condition
838
- this.excelUserCondtion = false
839
- })
840
- },
841
-
842
- },
843
- watch:{
844
- 'userlogin.orgid'(){
845
- this.getCheckBook()
846
- this.loadpage()
847
- }
848
- }
849
- }
850
- </script>
851
-
852
- <style scoped>
853
- .safe-planfont {
854
- font-family: MicrosoftYaHei;
855
- font-size: 15px;
856
- font-weight: normal;
857
- font-stretch: normal;
858
- letter-spacing: 2px;
859
- color: #333333;
860
- line-height: 25px;
861
- }
862
-
863
- .safe-bodyfont {
864
- font-family: MicrosoftYaHei;
865
- font-size: 14px;
866
- font-weight: normal;
867
- font-stretch: normal;
868
- letter-spacing: 0px;
869
- color: #999999;
870
- line-height: 30px;
871
- }
872
-
873
- .safe-leftplan {
874
- height: auto;
875
- border-bottom: 1px solid #ececec;
876
- padding: 10px 5px
877
- }
878
-
879
- .leftplan-center {
880
- border-top: 1px solid #ececec;
881
- border-bottom: 1px solid #ececec;
882
- }
883
-
884
- .safe_p {
885
- white-space: nowrap;
886
- overflow: hidden;
887
- text-overflow: ellipsis;
888
- }
889
-
890
- .safe-div-p {
891
- color: #4792de;
892
- text-align: end;
893
- padding: 8px 15px;
894
- }
895
- </style>
896
- <style lang="less">
897
- .upuserinfo_sel ul {
898
- width: 150% !important;
899
- }
900
- </style>
1
+ <template>
2
+ <div>
3
+ <criteria-paged :model="model" v-ref:paged>
4
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:criteria>
5
+ <div partial>
6
+ <div class="row ">
7
+ <label class="form-group font_normal_body"><b>用户信息</b></label>
8
+
9
+ <div class="form-group col-sm-1">
10
+ <input type="text" class="input_search" v-model="model.f_userinfo_code"
11
+ style="width: 95%" placeholder="客户编号" condition="ui.f_userinfo_code='{}'">
12
+ </div>
13
+ <div class="form-group col-sm-1">
14
+ <input type="text" class="input_search" v-model="model.f_user_name"
15
+ style="width: 95%" placeholder="客户名称" condition="ui.f_user_name like '%{}%'">
16
+ </div>
17
+ <div class="form-group col-sm-1">
18
+ <input type="text" class="input_search" v-model="model.f_address"
19
+ style="width: 95%" placeholder="客户地址" condition="ua.f_address like '%{}%'">
20
+ </div>
21
+ <div class="form-group col-sm-1 upuserinfo_sel">
22
+ <v-select
23
+ class="select select_list"
24
+ :width="'95%'"
25
+ :value.sync="model.f_area"
26
+ v-model="model.f_area"
27
+ :options='$parent.$parent.areaList'
28
+ :timeout="500"
29
+ @select-search="$parent.$parent.select_search"
30
+ placeholder='小区选择'
31
+ condition="ua.f_residential_area = '{}'"
32
+ close-on-select
33
+ value-single
34
+ >
35
+ </v-select>
36
+ </div>
37
+ <div class="form-group col-sm-1 upuserinfo_sel">
38
+ <v-select class="select select_list"
39
+ :width="'95%'"
40
+ class="select select_list"
41
+ :value.sync="model.checkBook"
42
+ v-model="model.checkBook"
43
+ :options='$parent.$parent.checkBooks'
44
+ placeholder='安&ensp;检&ensp;册'
45
+ :multiple="true"
46
+ >
47
+ </v-select>
48
+ </div>
49
+ <div class="form-group col-sm-4">
50
+ <button class="button_new" style="margin-right: 10px" @click="$parent.$parent.showUserCondition()">
51
+ 更多条件
52
+ </button>
53
+ <button class="button_new" style="margin-right: 10px" @click="$parent.$parent.showUploadCodeCondition()">
54
+ 导入编号
55
+ </button>
56
+ <button class="button_new" style="margin-right: 10px" @click="$parent.$parent.clearUserInfoId()">
57
+ 清空编号
58
+ </button>
59
+ <button class="button_search" style="margin-right: 10px" @click="search()">查询</button>
60
+ </div>
61
+ <div class="form-group col-sm-1" style="float: right">
62
+ <button class="button_search" style="margin-right: 10px" @click="$parent.$parent.dragtoPlanItem()">
63
+ 添入任务
64
+ </button>
65
+ </div>
66
+ <modal :show.sync="$parent.$parent.showCondtion" v-ref:modal :width="'50%'" :backdrop="false">
67
+ <div slot="modal-header" class="modal-header">
68
+ <h4 class="modal-title">
69
+ 用户查询条件
70
+ </h4>
71
+ </div>
72
+ <div slot="modal-body" class="modal-body">
73
+ <div class="row">
74
+ <div class="form-group col-sm-4">
75
+ <label class="font_normal_body">用户类型:</label>
76
+ <v-select
77
+ class="select select_list"
78
+ :value.sync="model.f_user_type"
79
+ v-model="model.f_user_type"
80
+ :options='$parent.$parent.userTypes'
81
+ placeholder='请选择'
82
+ condition="uf.f_user_type='{}'"
83
+ :search="false"
84
+ close-on-select
85
+ value-single
86
+ >
87
+ </v-select>
88
+ </div>
89
+ <div class="form-group col-sm-4">
90
+ <label class="font_normal_body">用户状态:</label>
91
+ <v-select
92
+ class="select select_list"
93
+ :value.sync="model.f_user_state"
94
+ v-model="model.f_user_state"
95
+ :options='$parent.$parent.userStates'
96
+ placeholder='请选择'
97
+ condition="ui.f_user_state='{}'"
98
+ :search="false"
99
+ close-on-select
100
+ value-single
101
+ >
102
+ </v-select>
103
+ </div>
104
+ <div class="form-group col-sm-4">
105
+ <label class="font_normal_body">用气性质:</label>
106
+ <v-select
107
+ class="select select_list"
108
+ :value.sync="model.f_gasproperties"
109
+ v-model="model.f_gasproperties"
110
+ :options='$parent.$parent.gasproperties'
111
+ placeholder='请选择'
112
+ condition="uf.f_gasproperties='{}'"
113
+ :search="false"
114
+ close-on-select
115
+ value-single
116
+ >
117
+ </v-select>
118
+ </div>
119
+ <div class="form-group col-sm-4">
120
+ <label class="font_normal_body">气表类型:</label>
121
+ <v-select
122
+ class="select select_list"
123
+ :value.sync="model.meter_classify"
124
+ v-model="model.meter_classify"
125
+ :options='$parent.$parent.meter_classifys'
126
+ placeholder='请选择'
127
+ condition="uf.F_METER_CLASSIFY='{}'"
128
+ :search="false"
129
+ close-on-select
130
+ value-single
131
+ >
132
+ </v-select>
133
+ </div>
134
+ <div class="form-group col-sm-4">
135
+ <label class="font_normal_body">街&emsp;&emsp;道:</label>
136
+ <v-select
137
+ class="select select_list"
138
+ :value.sync="model.f_street"
139
+ v-model="model.f_street"
140
+ :options='$parent.$parent.streets'
141
+ placeholder='请选择'
142
+ condition="ua.f_street_id='{}'"
143
+ close-on-select
144
+ value-single
145
+ >
146
+ </v-select>
147
+ </div>
148
+ <!--<div class="form-group col-sm-4" >
149
+ <label class="font_normal_body">小区名称:</label>
150
+ <input type="text" class="input_search" v-model="model.f_userinfo_code"
151
+ style="width: 60%" placeholder="请选择" condition="ua.f_residential_area = '{}'">
152
+ </div>-->
153
+ <div class="form-group col-sm-4">
154
+ <label class="font_normal_body">楼&ensp;栋&ensp;号:</label>
155
+ <input type="text" class="input_search" v-model="model.f_building"
156
+ style="width: 60%" placeholder="请选择" condition="ua.f_building='{}'">
157
+ </div>
158
+ <div class="form-group col-sm-4">
159
+ <label class="font_normal_body">单&ensp;元&ensp;号:</label>
160
+ <input type="text" class="input_search" v-model="model.f_unit"
161
+ style="width: 60%" placeholder="请选择" condition="ua.f_unit='{}'">
162
+ </div>
163
+ <div class="form-group col-sm-4">
164
+ <label class="font_normal_body">楼&ensp;层&ensp;号:</label>
165
+ <input type="text" class="input_search" v-model="model.f_floor"
166
+ style="width: 60%" placeholder="请选择" condition="ua.f_floor='{}'">
167
+ </div>
168
+ <div class="form-group col-sm-4">
169
+ <label class="font_normal_body">开户起始:</label>
170
+ <datepicker
171
+ placeholder='请选择'
172
+ style="width:60%"
173
+ :disabled-days-of-week="[]"
174
+ :format="'yyyy-MM-dd'"
175
+ :show-rest-button="reset"
176
+ :value.sync="model.f_startfile_time"
177
+ v-model="model.f_startfile_time"
178
+ condition="ui.f_createfile_date >= '{} 00:00:00'">
179
+ </datepicker>
180
+ </div>
181
+ <div class="form-group col-sm-4">
182
+ <label class="font_normal_body">开户截止:</label>
183
+ <datepicker
184
+ placeholder='请选择'
185
+ :disabled-days-of-week="[]"
186
+ style="width:60%"
187
+ :format="'yyyy-MM-dd'"
188
+ :show-rest-button="reset"
189
+ :value.sync="model.f_endfile_time"
190
+ v-model="model.f_endfile_time"
191
+ condition="ui.f_createfile_date <= '{} 23:59:59'">
192
+ </datepicker>
193
+ </div>
194
+ <div class="form-group col-sm-4">
195
+ <label class="font_normal_body">表&ensp;箱&ensp;号:</label>
196
+ <input type="text" class="input_search" v-model="model.f_metertitles"
197
+ style="width: 60%" placeholder="请输入" condition="uf.f_metertitles='{}'">
198
+ </div>
199
+ <div class="form-group col-sm-4">
200
+ <label class="font_normal_body">用户电话:</label>
201
+ <input type="text" class="input_search" v-model="model.f_user_phone"
202
+ style="width: 60%" placeholder="请输入" condition="ui.f_user_phone='{}'">
203
+ </div>
204
+ <div class="form-group col-sm-4">
205
+ <label class="font_normal_body">片&ensp;&ensp;&ensp;&ensp;区:</label>
206
+ <v-select
207
+ class="select select_list"
208
+ :value.sync="model.f_book_slice_area"
209
+ v-model="model.f_book_slice_area"
210
+ :options='$parent.$parent.sliceArea'
211
+ @change="$parent.$parent.slice_areaChange(model.f_book_slice_area)"
212
+ placeholder='请选择'
213
+ condition="ua.f_slice_area ='{}'"
214
+ close-on-select
215
+ value-single
216
+ >
217
+ </v-select>
218
+ </div>
219
+ <div class="form-group col-sm-4">
220
+ <label class="font_normal_body">抄&ensp;表&ensp;册:</label>
221
+ <v-select
222
+ class="select select_list"
223
+ :value.sync="model.f_meter_book_num"
224
+ v-model="model.f_meter_book_num"
225
+ :options='$parent.$parent.cbc'
226
+ placeholder='请选择'
227
+ condition="uf.f_meter_book_num='{}'"
228
+ close-on-select
229
+ value-single
230
+ >
231
+ </v-select>
232
+ </div>
233
+ <div class="form-group col-sm-4">
234
+ <label class="font_normal_body">派发情况:</label>
235
+ <v-select
236
+ class="select select_list"
237
+ :value.sync="model.yearCheck"
238
+ v-model="model.yearCheck"
239
+ :options='$parent.$parent.yearCheckList'
240
+ placeholder='请选择'
241
+ condition="{}"
242
+ :search="false"
243
+ close-on-select
244
+ value-single
245
+ >
246
+ </v-select>
247
+ </div>
248
+ <div class="form-group col-sm-4">
249
+ <label class="font_normal_body">安检起始:</label>
250
+ <datepicker
251
+ placeholder='请选择'
252
+ style="width:60%"
253
+ :disabled-days-of-week="[]"
254
+ :format="'yyyy-MM-dd'"
255
+ :show-rest-button="reset"
256
+ :value.sync="model.f_start_time"
257
+ v-model="model.f_start_time"
258
+ >
259
+ </datepicker>
260
+ </div>
261
+ <div class="form-group col-sm-4">
262
+ <label class="font_normal_body">安检截止:</label>
263
+ <datepicker
264
+ placeholder='请选择'
265
+ :disabled-days-of-week="[]"
266
+ style="width:60%"
267
+ :format="'yyyy-MM-dd'"
268
+ :show-rest-button="reset"
269
+ :value.sync="model.f_end_time"
270
+ v-model="model.f_end_time"
271
+ >
272
+ </datepicker>
273
+ </div>
274
+ <div class="form-group col-sm-4">
275
+ <label class="font_normal_body">安检状态:</label>
276
+ <v-select
277
+ class="select select_list"
278
+ :value.sync="model.f_last_check_state"
279
+ v-model="model.f_last_check_state"
280
+ :options='$parent.$parent.entry_status'
281
+ placeholder='请选择'
282
+ :search="false"
283
+ close-on-select
284
+ value-single
285
+ >
286
+ </v-select>
287
+ </div>
288
+ <!-- <div class="form-group col-sm-4">-->
289
+ <!-- <label class="font_normal_body">安&ensp;检&ensp;册:</label>-->
290
+ <!-- <v-select-->
291
+ <!-- class="select select_list"-->
292
+ <!-- :value.sync="model.checkBook"-->
293
+ <!-- v-model="model.checkBook"-->
294
+ <!-- :options='$parent.$parent.checkBooks'-->
295
+ <!-- placeholder='请选择'-->
296
+ <!-- :search="false"-->
297
+ <!-- close-on-select-->
298
+ <!-- value-single-->
299
+ <!-- >-->
300
+ <!-- </v-select>-->
301
+ <!-- </div>-->
302
+ <div class="form-group col-sm-4">
303
+ <label class="font_normal_body">通气起始:</label>
304
+ <datepicker
305
+ placeholder='通气开始时间'
306
+ style="width:60%"
307
+ :disabled-days-of-week="[]"
308
+ :format="'yyyy-MM-dd'"
309
+ :show-rest-button="reset"
310
+ :value.sync="model.f_startgas_time"
311
+ v-model="model.f_startgas_time"
312
+ condition="ui.f_uservent_date >= '{} 00:00:00'">
313
+ </datepicker>
314
+ </div>
315
+ <div class="form-group col-sm-4">
316
+ <label class="font_normal_body">通气截止:</label>
317
+ <datepicker
318
+ placeholder='通气结束时间'
319
+ :disabled-days-of-week="[]"
320
+ style="width:60%"
321
+ :format="'yyyy-MM-dd'"
322
+ :show-rest-button="reset"
323
+ :value.sync="model.f_endgas_time"
324
+ v-model="model.f_endgas_time"
325
+ condition="ui.f_uservent_date <= '{} 23:59:59'">
326
+ </datepicker>
327
+ </div>
328
+ <!--<div class="form-group col-sm-4" >
329
+ <label class="font_normal_body">入户情况:</label>
330
+ <v-select
331
+ class="select select_list"
332
+ :value.sync="model.f_hasHousehold"
333
+ v-model="model.f_hasHousehold"
334
+ :options='$parent.$parent.hasHousehold'
335
+ placeholder='请选择'
336
+ close-on-select
337
+ :search="false"
338
+ value-single
339
+ >
340
+ </v-select>
341
+ </div>-->
342
+
343
+ </div>
344
+ </div>
345
+ <div slot="modal-footer" class="modal-footer" style="text-align: center">
346
+ <button class="button_search" style="margin-right: 15px" @click="search()">查询</button>
347
+ <button class="button_search" @click="$parent.$parent.cancel">取消</button>
348
+ </div>
349
+ </modal>
350
+ <modal :show.sync="$parent.$parent.excelUserCondtion" width="500px" v-ref:modal1>
351
+ <div slot="modal-header" class="modal-header">
352
+ <h4 class="modal-title">
353
+ 导入用户编号
354
+ </h4>
355
+ </div>
356
+ <div slot="modal-body" class="modal-body">
357
+ <div class="row">
358
+ <file-upload class="my-file-uploader " name="UploadFile" class="btn btn-success"
359
+ style="border-radius: 2px;"
360
+ action="rs/file/uploadFile" tagname="档案信息导入" v-ref:file :headers="headers"
361
+ multiple></file-upload>
362
+ <img src="../../../assets/Excelformat.png" style="width: 100%"/>
363
+ </div>
364
+ </div>
365
+ <footer slot="modal-footer" class="modal-footer">
366
+ </footer>
367
+ </modal>
368
+ <!--<div class="form-group col-sm-4 button-range" >
369
+
370
+ <button class="button_search" style="margin-right: 10px" @click="search()">查询</button>
371
+ <export-excel-safe :data="$parent.$parent.exportParameter"
372
+ :field="$parent.$parent.excelHeaders"
373
+ sqlurl="api/af-safecheck/logic/exportfile" sql-name="planItem"
374
+ template-name='安检任务明细' :choose-col="true">
375
+ </export-excel-safe>
376
+
377
+ </div>-->
378
+ </div>
379
+ </div>
380
+ </criteria>
381
+ <data-grid :model="model" partial='list' class="table_sy">
382
+
383
+ <template partial='head'>
384
+ <tr>
385
+ <th>
386
+ <nobr><input type="checkbox" onClick="event.cancelBubble = true"
387
+ :checked="$parent.$parent.$parent.checkAll" @change="$parent.$parent.$parent.setCheckAll()"/>
388
+ 全选
389
+ </nobr>
390
+ </th>
391
+ <th>
392
+ <nobr>用户编号</nobr>
393
+ </th>
394
+ <th>
395
+ <nobr>用户名称</nobr>
396
+ </th>
397
+ <th>
398
+ <nobr>用户类型</nobr>
399
+ </th>
400
+ <th>
401
+ <nobr>用户电话</nobr>
402
+ </th>
403
+ <th>
404
+ <nobr>表具类型</nobr>
405
+ </th>
406
+ <th>
407
+ <nobr>小区名称</nobr>
408
+ </th>
409
+ <th>
410
+ <nobr>安检册</nobr>
411
+ </th>
412
+ <th>
413
+ <nobr>抄表册</nobr>
414
+ </th>
415
+ <th title="当前所在的安检任务名称">
416
+ <nobr>所属任务</nobr>
417
+ </th>
418
+ <th title="最后一次安检日期">
419
+ <nobr>安检日期</nobr>
420
+ </th>
421
+ <th>
422
+ <nobr>首次通气时间</nobr>
423
+ </th>
424
+ <th>
425
+ <nobr>详细地址</nobr>
426
+ </th>
427
+ </tr>
428
+ </template>
429
+ <template partial='body'>
430
+ <td style="text-align: center;white-space:nowrap;"><input type="checkbox" onClick="event.cancelBubble = true"
431
+ :checked="$parent.$parent.$parent.isChecked(row.id)"
432
+ @change="$parent.$parent.$parent.setCheckes(row.id)"/>
433
+ </td>
434
+ <td style="text-align: center">
435
+ <nobr>{{ row.f_userinfo_code }}</nobr>
436
+ </td>
437
+ <td style="text-align: center">
438
+ <nobr>{{ row.f_user_name }}</nobr>
439
+ </td>
440
+ <td style="text-align: center">
441
+ <nobr>{{ row.f_user_type }}</nobr>
442
+ </td>
443
+ <td style="text-align: center">
444
+ <nobr>{{ row.f_user_phone }}</nobr>
445
+ </td>
446
+ <td style="text-align: center">
447
+ <nobr>{{ row.f_meter_classify }}</nobr>
448
+ </td>
449
+ <td style="text-align: center">
450
+ <nobr>{{ row.f_residential_area }}</nobr>
451
+ </td>
452
+ <td style="text-align: center">
453
+ <nobr>{{ row.f_book_slice_area }}</nobr>
454
+ </td>
455
+ <td style="text-align: center">
456
+ <nobr>{{ row.f_book_name }}</nobr>
457
+ </td>
458
+ <td style="text-align: center">
459
+ <nobr>{{ row.f_plan_name }}</nobr>
460
+ </td>
461
+ <td style="text-align: center">
462
+ <nobr>{{ row.f_last_check_date }}</nobr>
463
+ </td>
464
+ <td style="text-align: center">
465
+ <nobr>{{ row.f_uservent_date }}</nobr>
466
+ </td>
467
+ <td style="text-align: center">
468
+ <nobr>{{ row.f_address }}</nobr>
469
+ </td>
470
+ </template>
471
+ </data-grid>
472
+ </criteria-paged>
473
+ </div>
474
+ </template>
475
+
476
+ <script>
477
+ import {HttpResetClass, PagedList} from "vue-client";
478
+ import Vue from "vue";
479
+
480
+ export default {
481
+ name: "PlanManage",
482
+ title: '任务管理',
483
+ data() {
484
+ return {
485
+ model: new PagedList('/api/af-safecheck/sql/FetchUserFileByOrgNoRuHuSXQ', 100, {
486
+ "orderitem": "'f_residential_area,f_building,f_unit,f_floor,f_room'",
487
+ "f_usertype": "''",
488
+ "month": "''",
489
+ "SafeCheckSX": {"f_check_start": '', "f_check_end": ''},
490
+ "SafeCheckCQ": "''",
491
+ "startday": "''",
492
+ "endday": "''"
493
+ }),
494
+ a: '1',
495
+ opt: [{label: "测试", value: "测试"}],
496
+ showCondtion: false,
497
+ userTypes: [],//用户类型
498
+ userStates: [],//用户状态
499
+ gasproperties: [],//用气性质
500
+ meter_classifys: [],//气表类型
501
+ hasHousehold: [{label: "全部", value: ""}, {label: "已入户", value: "已入户"}, {
502
+ label: "未入户",
503
+ value: "未入户"
504
+ }],
505
+ yearCheckList: [{label: "全部", value: ""}, {
506
+ label: "已在任务中",
507
+ value: "ua.f_plan_id is not null"
508
+ }, {label: "未在任务中", value: "ua.f_plan_id is null"}],
509
+ entry_status: this.$appdata.getParam('安检状态') ? [{
510
+ label: '全部',
511
+ value: ''
512
+ }, ...this.$appdata.getParam('安检状态')] : [{label: '全部', value: ''}],
513
+ sliceArea: [],
514
+ meterbooks: [],
515
+ // hasCheckBooks:'否',
516
+ checkBooks: [],
517
+ cbc: [],
518
+ areaList: [],
519
+ checkAll: false,
520
+ checkes: [],
521
+ excelUserCondtion: false,
522
+ uploadCodeCondition: '',
523
+ streets: []
524
+ }
525
+ },
526
+ props: ["selectplan", "userlogin"],
527
+ ready() {
528
+ console.log('-====')
529
+ console.log(this.$login.f)
530
+ this.$refs.paged.$refs.criteria.model.f_user_state = '正常'
531
+ // this.hasCheckBooks=this.$appdata.getSingleValue('是否使用安检册')
532
+ // this.$refs.paged.$refs.criteria.model.f_endfile_time=Util.toStartDateYearString()
533
+ //this.$refs.paged.$refs.criteria.model.f_hasHousehold='未入户'
534
+ this.getCheckBook()
535
+ this.setConList()
536
+ this.loadpage()
537
+
538
+ },
539
+ methods: {
540
+ getCheckBook() {
541
+ this.checkBooks = []
542
+ new HttpResetClass().load('POST', `/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
543
+ data: {
544
+ items: 'id,f_check_book_name,f_check_book_type',
545
+ tablename: 't_check_book',
546
+ condition: `f_orgid = '${this.userlogin.orgid}'`,
547
+ orderitem: 'id desc'
548
+ }
549
+ }, {resolveMsg: null, rejectMsg: null}).then(res => {
550
+ // this.checkBooks.push({label: '全部', value: ''})
551
+ res.data.forEach(ress => {
552
+ this.checkBooks.push({
553
+ label: ress.f_check_book_name,
554
+ value: `${ress.id}-${ress.f_check_book_type}`
555
+ })
556
+ })
557
+ })
558
+ },
559
+ loadpage() {
560
+ this.select_search()
561
+ this.select_street()
562
+ this.Mreadibook()
563
+ this.getSliceArea()
564
+ },
565
+ cancel() {
566
+ this.showCondtion = false
567
+ this.excelUserCondtion = false
568
+ },
569
+ //清空用户编号
570
+ clearUserInfoId() {
571
+ this.uploadCodeCondition = ''
572
+ Vue.showMessage("已清空用户编号")
573
+ },
574
+ showUploadCodeCondition() {
575
+ this.excelUserCondtion = true
576
+ },
577
+ selfSearch(args) {
578
+ //tag)
579
+ args.condition += ` and ui.f_filialeid='${this.userlogin.orgid}'`
580
+ /*if(args.model.f_hasHousehold=='已入户'){
581
+ args.condition +=` and Extract(year from TO_DATE(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'))=2021 and ua.F_LAST_CHECK_STATE='入户'`
582
+ }else if(args.model.f_hasHousehold=='未入户'){
583
+ args.condition +=` and (Extract(year from nvl(TO_DATE(ua.f_last_check_date,'yyyy-mm-dd hh24:mi:ss'),'1990-01-01 00:00:00'))!=2021 or nvl(ua.F_LAST_CHECK_STATE,'未入户')!='入户')`
584
+ }*/
585
+
586
+ if (args.model.f_last_check_state == '未检') {
587
+ let nocheckcon = 'and ( ui.f_last_check_date is null '
588
+ if (args.model.f_start_time) {
589
+ nocheckcon += ` or ui.f_last_check_date <='${args.model.f_start_time} 00:00:00' `
590
+ }
591
+ if (args.model.f_end_time) {
592
+ nocheckcon += ` or ui.f_last_check_date >='${args.model.f_end_time} 23:59:59' `
593
+ }
594
+ nocheckcon += ')'
595
+ args.condition += nocheckcon
596
+ } else {
597
+ if (args.model.f_last_check_state) {
598
+ args.condition += ` and ui.f_last_check_state = '${args.model.f_last_check_state}'`
599
+ }
600
+ if (args.model.f_start_time) {
601
+ args.condition += ` and ui.f_last_check_date >='${args.model.f_start_time} 00:00:00' `
602
+ }
603
+ if (args.model.f_end_time) {
604
+ args.condition += ` and ui.f_last_check_date <='${args.model.f_end_time} 23:59:59' `
605
+ }
606
+ }
607
+ debugger
608
+ if (args.model.checkBook && Array.isArray(args.model.checkBook)) {
609
+ let userIds = [];
610
+ let areaIds = [];
611
+ args.model.checkBook.forEach(checkBook => {
612
+ let arr = checkBook.split('-');
613
+ if (arr[1] == '用户') {
614
+ userIds.push(arr[0]);
615
+ } else {
616
+ areaIds.push(arr[0]);
617
+ }
618
+ });
619
+ if (userIds.length > 0 && areaIds.length == 0) {
620
+ args.condition += ` and ua.f_check_book_id in (${userIds.map(id => `'${id}'`).join(',')})`;
621
+ }
622
+ if (areaIds.length > 0 && userIds.length == 0) {
623
+ args.condition += ` and area.f_check_book_id in (${areaIds.map(id => `'${id}'`).join(',')}) and ua.f_check_book_id is null`;
624
+ }
625
+ if (userIds.length > 0 && areaIds.length > 0){
626
+ args.condition += ` and (ua.f_check_book_id in (${userIds.map(id => `'${id}'`).join(',')}) or area.f_check_book_id in (${areaIds.map(id => `'${id}'`).join(',')}))`;
627
+ }
628
+ }
629
+ if (this.uploadCodeCondition) {
630
+ args.condition += ` and ${this.uploadCodeCondition}`
631
+ }
632
+ this.cancel()
633
+ this.checkes = []
634
+ this.checkAll = false
635
+ this.model.search(args.condition, args.model, args.condValue)
636
+ },
637
+ showUserCondition() {
638
+ this.showCondtion = true
639
+ },
640
+ setConList() {
641
+ this.userTypes = this.$appdata.getParam('用户类型') ? [{
642
+ label: '全部',
643
+ value: ''
644
+ }, ...this.$appdata.getParam('用户类型')] : [{label: '全部', value: ''}]
645
+
646
+ this.userStates = this.$appdata.getParam('安检用户状态') ? [{
647
+ label: '全部',
648
+ value: ''
649
+ }, ...this.$appdata.getParam('安检用户状态')] : [{label: '全部', value: ''}]
650
+ this.gasproperties = this.$appdata.getParam('用气性质') ? [{
651
+ label: '全部',
652
+ value: ''
653
+ }, ...this.$appdata.getParam('用气性质')] : [{label: '全部', value: ''}]
654
+ this.meter_classifys = this.$appdata.getParam('气表类型') ? [{
655
+ label: '全部',
656
+ value: ''
657
+ }, ...this.$appdata.getParam('气表类型')] : [{label: '全部', value: ''}]
658
+ },
659
+ select_search(text) {
660
+ //tag
661
+ let pcdText = text ? ` and f_residential_area like '%${text}%'` : ''
662
+ new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
663
+ data: {
664
+ items: "*",
665
+ tablename: "t_area",
666
+ orderitem: "id",
667
+ condition: `f_orgid = '${this.userlogin.orgid}' ${pcdText} `
668
+ }
669
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
670
+ //tag)
671
+ if (res.data.length > 0) {
672
+ this.areaList = []
673
+ this.areaList.push({label: "全部", value: ""})
674
+ res.data.forEach((result) => {
675
+ this.areaList.push({label: result.f_residential_area, value: result.f_residential_area})
676
+ })
677
+ }
678
+ //tag)
679
+ })
680
+ },
681
+ select_street() {
682
+ //tag
683
+ new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
684
+ data: {
685
+ items: "id,f_street",
686
+ tablename: "t_street",
687
+ orderitem: "id",
688
+ condition: `f_orgid = '${this.userlogin.orgid}'`
689
+ }
690
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
691
+ //tag)
692
+ if (res.data.length > 0) {
693
+ this.streets = []
694
+ this.streets.push({label: "全部", value: ""})
695
+ res.data.forEach((result) => {
696
+ this.streets.push({label: result.f_street, value: result.id})
697
+ })
698
+ }
699
+ })
700
+ },
701
+ //获取抄表册
702
+ async Mreadibook() {
703
+ this.cbc = []
704
+ this.sliceArea = []
705
+ let http = new HttpResetClass()
706
+ let getMeterReadingBooks = await http.load('POST', 'api/af-safecheck/logic/getMeterBooksData',
707
+ {data: {f_orgid: "('" + this.userlogin.orgid + "')"}},
708
+ {resolveMsg: null, rejectMsg: '获取失败!!!'})
709
+ this.cbc = [{label: '全部', value: ''}]
710
+ //tag
711
+ //tag)
712
+ //tag
713
+ this.meterbooks = []
714
+ this.meterbooks = getMeterReadingBooks.data.meterbooks
715
+ this.meterbooks.forEach((res) => {
716
+ this.cbc.push({label: res.f_book_name, value: res.id})
717
+ /*if(res.f_book_slice_area){
718
+ if(this.sliceArea.indexOf(res.f_book_slice_area)<0){
719
+ this.sliceArea.push(res.f_book_slice_area)
720
+ }
721
+ }*/
722
+ })
723
+
724
+ },
725
+ //安检册获取
726
+ async getSliceArea() {
727
+ let http = new HttpResetClass()
728
+ let getAllArea = await http.load('POST', '/rs/search', {
729
+ source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
730
+ userid: this.userlogin.id
731
+ }, {resolveMsg: null, rejectMsg: '获取安检册出错!!!'})
732
+ this.sliceArea = [{label: '全部', value: ''}]
733
+ //tag
734
+ //tag
735
+ //tag
736
+ getAllArea.data.forEach((res) => {
737
+ if (res.parentid == this.userlogin.orgid) {
738
+ this.sliceArea.push({label: res.name, value: res.name})
739
+ }
740
+ })
741
+ //tag
742
+ },
743
+ //安检册改变-对应抄表册下拉重新赋值
744
+ slice_areaChange(value) {
745
+ //tag
746
+ if (!value) {
747
+ this.cbc = []
748
+ this.meterbooks.forEach((res) => {
749
+ this.cbc.push({label: res.f_book_name, value: res.id})
750
+ })
751
+ } else {
752
+ this.cbc = []
753
+ this.meterbooks.forEach((res) => {
754
+ if (res.f_book_slice_area == value) {
755
+ this.cbc.push({label: res.f_book_name, value: res.id})
756
+ }
757
+ })
758
+ }
759
+ },
760
+ isChecked(v) {
761
+ // 如果全选,不在的按选中算,否则,在的按选中算
762
+ if (this.checkAll) {
763
+ return this.checkes.indexOf(v) == -1
764
+ } else {
765
+ return this.checkes.indexOf(v) != -1
766
+ }
767
+ },
768
+ setCheckAll() {
769
+ this.checkAll = this.checkAll ? false : true;
770
+ // 全选改变后,清空选中数据
771
+ this.checkes = []
772
+ },
773
+ setCheckes(id) {
774
+ let index = this.checkes.indexOf(id)
775
+ if (index < 0) {
776
+ this.checkes.push(id)
777
+ } else {
778
+ this.checkes.splice(index, 1)
779
+ }
780
+ },
781
+ //将客户信息拖至任务中
782
+ async dragtoPlanItem() {
783
+ if (this.model.rows.length == 0) {
784
+ Vue.showMessage("未检测到列表中有用户!")
785
+ return
786
+ }
787
+ if (!this.checkAll && this.checkes.length == 0) {
788
+ Vue.showMessage("请先勾选你要添入到上方任务中的用户!")
789
+ return
790
+ }
791
+ if (this.selectplan && this.selectplan.id) {
792
+ this.$parent.isSend = true
793
+ try {
794
+ let res = await new HttpResetClass().load("POST", "/api/af-safecheck/logic/AddCheckPlanItem", {
795
+ data: {
796
+ f_operator: this.userlogin.name,
797
+ f_plan_id: this.selectplan.id,
798
+ f_safecheck_type: this.selectplan.f_safecheck_type,
799
+ f_filialeid: this.userlogin.orgid,
800
+ f_subscribe_date: '',
801
+ condition: this.model.condition,
802
+ switchCheckAll: true,
803
+ checkAll: this.checkAll,
804
+ param: this.checkes,
805
+ columnName: "ua.id"
806
+ }
807
+ }, {resolveMsg: null, rejectMsg: null})
808
+ //tag+"---"+res.data.result.length)
809
+ this.$parent.isSend = false
810
+ if (res.data.code == 200) {
811
+ //alert("添加成功!有"+res.data.result.length+"条用户地址已经存在于其他任务中: \n"+res.data.result.reduce((c,v)=>{c += v.f_user_name+":"+v.f_address+"\n"}),0)
812
+ this.$showMessage("添加成功!" + (res.data.result.length > 0 ? "有" + res.data.result.length + "条用户地址已经存在于其他任务中" : ""))
813
+ this.$parent.refresh()
814
+ } else {
815
+ this.$showMessage("添加失败!")
816
+ }
817
+ } catch (e) {
818
+ this.$showMessage("添加失败!")
819
+ }
820
+ } else {
821
+ this.$parent.isSend = false
822
+ this.$showMessage("请先打开一个任务再进行操作")
823
+ }
824
+ }
825
+ },
826
+ events: {
827
+ onFileUpload: function (file, res) {
828
+ //tag)
829
+ //tag)
830
+ let data = {
831
+ filepath: res.f_downloadpath
832
+ }
833
+ new HttpResetClass().load('POST', '/api/af-safecheck/logic/safe_GetUserInfoFromExcel', {data: data}, {
834
+ resolveMsg: '导入成功!已生成条件,若要去除导入条件请点击旁边 ‘清空用户编号’ 按钮。',
835
+ rejectMsg: '导入失败'
836
+ }).then((res) => {
837
+ this.uploadCodeCondition = res.data.condition
838
+ this.excelUserCondtion = false
839
+ })
840
+ },
841
+
842
+ },
843
+ watch:{
844
+ 'userlogin.orgid'(){
845
+ this.getCheckBook()
846
+ this.loadpage()
847
+ }
848
+ }
849
+ }
850
+ </script>
851
+
852
+ <style scoped>
853
+ .safe-planfont {
854
+ font-family: MicrosoftYaHei;
855
+ font-size: 15px;
856
+ font-weight: normal;
857
+ font-stretch: normal;
858
+ letter-spacing: 2px;
859
+ color: #333333;
860
+ line-height: 25px;
861
+ }
862
+
863
+ .safe-bodyfont {
864
+ font-family: MicrosoftYaHei;
865
+ font-size: 14px;
866
+ font-weight: normal;
867
+ font-stretch: normal;
868
+ letter-spacing: 0px;
869
+ color: #999999;
870
+ line-height: 30px;
871
+ }
872
+
873
+ .safe-leftplan {
874
+ height: auto;
875
+ border-bottom: 1px solid #ececec;
876
+ padding: 10px 5px
877
+ }
878
+
879
+ .leftplan-center {
880
+ border-top: 1px solid #ececec;
881
+ border-bottom: 1px solid #ececec;
882
+ }
883
+
884
+ .safe_p {
885
+ white-space: nowrap;
886
+ overflow: hidden;
887
+ text-overflow: ellipsis;
888
+ }
889
+
890
+ .safe-div-p {
891
+ color: #4792de;
892
+ text-align: end;
893
+ padding: 8px 15px;
894
+ }
895
+ </style>
896
+ <style lang="less">
897
+ .upuserinfo_sel ul {
898
+ width: 150% !important;
899
+ }
900
+ </style>