safecheck-client 3.0.33-2 → 3.0.33-22

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 (33) hide show
  1. package/package.json +133 -133
  2. package/src/App.vue +31 -31
  3. package/src/components/paper/PaperList.vue +5 -4
  4. package/src/components/planmanage/checkUserList.vue +34 -2
  5. package/src/components/report/CheckPlanCountChartArea.vue +5 -0
  6. package/src/filiale/bayan/android/AddPlanItem.vue +5 -1
  7. package/src/filiale/bayan/android/SafecheckOrderV.vue +3 -0
  8. package/src/filiale/dexin/android/SafecheckDevices.vue +1 -1
  9. package/src/filiale/dexin/android/WebMeterOpen.vue +1 -1
  10. package/src/filiale/dexin/android/WebMeterOpenEdit.vue +25 -37
  11. package/src/filiale/fugou/pc/AddToCheckBook.vue +56 -119
  12. package/src/filiale/fugou/pc/CheckBookEntry.vue +47 -19
  13. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +718 -575
  14. package/src/filiale/fugou/pc/PlanManage.vue +17 -1
  15. package/src/filiale/fugou/pc/checkUserList.vue +222 -42
  16. package/src/filiale/tongchuan/pc/checkUserList.vue +2 -2
  17. package/src/filiale/weinan/android/SafecheckDevices.vue +1082 -1025
  18. package/src/filiale/weinan/android/SafecheckOrderV.vue +71 -26
  19. package/src/filiale/wensu/pc/CheckSearchUser.vue +2 -0
  20. package/src/filiale/wensu/pc/DefectPaperNew.vue +1 -1
  21. package/src/filiale/wensu/pc/PlanManage.vue +831 -831
  22. package/src/filiale/wensu/pc/checkUserList.vue +8 -8
  23. package/src/filiale/wensu/pc.js +20 -20
  24. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +1 -1
  25. package/src/filiale/wuhai/pc/PaperList.vue +785 -0
  26. package/src/filiale/wuhai/pc.js +1 -0
  27. package/src/filiale/yongzhou/pc/DefectPaperNew.vue +1105 -0
  28. package/src/filiale/yongzhou/pc/safeCheckDetail.vue +298 -0
  29. package/src/filiale/yongzhou/pc/safeCheckExamine.vue +277 -0
  30. package/src/filiale/yongzhou/pc/safeDetail.vue +27 -6
  31. package/src/filiale/yongzhou/pc.js +1 -0
  32. package/src/filiale/yunchengminsheng/pc/checkUserList.vue +18 -1
  33. package/src/main.js +33 -33
@@ -1,651 +1,794 @@
1
1
  <template>
2
- <div class="flex-row">
3
- <div class="basic-main">
4
- <criteria-paged :model="model" v-ref:paged>
5
- <criteria partial='criteria' class="search_area" @condition-changed='$parent.selfSearch' v-ref:criteria>
6
- <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
7
- <div class="row">
8
- <div class="form-group col-sm-3">
9
- <label class="font_normal_body">客户编号</label>
10
- <input type="text" class="input_search" v-model="model.f_userinfo_code"
11
- style="width: 60%" placeholder="客户编号" condition="f_userinfo_code='{}'">
12
- </div>
13
- <div class="form-group col-sm-3">
14
- <label class="font_normal_body">客户名称</label>
15
- <input type="text" class="input_search" v-model="model.f_user_name"
16
- style="width: 60%" placeholder="客户名称" condition="f_user_name like '%{}%'">
17
- </div>
18
- <div class="form-group col-sm-3">
19
- <label class="font_normal_body">用气性质</label>
20
- <v-select
21
- class="select select_list"
22
- :value.sync="model.f_gasproperties"
23
- v-model="model.f_gasproperties"
24
- :options='$parent.$parent.gasproperties'
25
- placeholder='请选择'
26
- condition="f_gasproperties='{}'"
27
- :search="false"
28
- close-on-select
29
- value-single
30
- >
31
- </v-select>
32
- </div>
33
- <div class="form-group col-sm-3">
34
- <button class="button_spacing button_search" @click="search()">查询</button>
35
- <div style="float: right" class="button_spacing"
36
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
37
- @click="$parent.$parent.hidden()"></div>
38
- </div>
39
-
40
- <!-- <div class="form-group col-sm-3" v-show="$parent.$parent.criteriaShow">-->
41
- <!-- <label class="font_normal_body">客户地址</label>-->
42
- <!-- <input type="text" class="input_search" v-model="model.f_address"-->
43
- <!-- style="width: 60%" placeholder="客户地址" condition="tua.f_address like '%{}%'">-->
44
- <!-- </div>-->
45
- <div class="form-group col-sm-3" v-show="$parent.$parent.criteriaShow">
46
- <label class="font_normal_body">客户类型</label>
47
- <v-select :value.sync="model.f_user_type" v-model='model.f_user_type'
48
- :value-single="true" style="width: 60%"
49
- class="select_list select"
50
- :options='$parent.$parent.userTypes' placeholder='客户类型'
51
- close-on-select
52
- condition="f_user_type ='{}'"></v-select>
53
- </div>
54
- <div class="form-group col-sm-3" v-show="$parent.$parent.criteriaShow">
55
- <label class="font_normal_body">用气类型</label>
56
- <v-select class="select_list select"
57
- placeholder='请选择' style="width: 60%"
58
- :value.sync="model.f_user_gas_type"
59
- v-model="model.f_user_gas_type"
60
- :options='$parent.$parent.userGasType'
61
- filer-key="name"
62
- close-on-select clear-button
63
- condition="f_user_gas_type='{}'"
64
- :value-single="true">
65
- </v-select>
66
- </div>
67
- <div class="form-group col-sm-3" v-show="$parent.$parent.criteriaShow">
68
- <label class="font_normal_body">用户标签</label>
69
- <v-select class="select_list select"
70
- placeholder='请选择' style="width: 60%"
71
- :value.sync="model.f_user_tags"
72
- v-model="model.f_user_tags"
73
- :options='$parent.$parent.userTags'
74
- filer-key="name"
75
- close-on-select clear-button
76
- condition="f_user_tags='{}'"
77
- :value-single="true">
78
- </v-select>
79
- </div>
2
+ <div id='MbpeopleList' class="flex">
3
+ <criteria-paged :model="model" v-ref:paged>
4
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
5
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
6
+ <div class="row">
7
+ <div class="col-sm-3 form-group">
8
+ <label class="font_normal_body">用户编号</label>
9
+ <input type="text" class="input_search" style="width:60%" v-model="model.f_userinfo_code"
10
+ condition="f_userinfo_code like '%{}%'" placeholder='用户编号'>
11
+ </div>
12
+ <div class="col-sm-3 form-group">
13
+ <label class="font_normal_body">用户姓名</label>
14
+ <input type="text" class="input_search" style="width:60%" v-model="model.f_user_name"
15
+ condition="f_user_name like '%{}%'" placeholder='用户姓名'>
80
16
  </div>
81
- <div class="row">
82
- <div class="col-sm-3 form-group" style="margin-bottom: 0px" v-show="$parent.$parent.criteriaShow">
83
- <label class="font_normal_body">公&emsp;&emsp;司</label>
84
- <right-tree-safe @re-res="$parent.$parent.getResm" v-model="model.f_orgid" condition="f_orgid in {}"></right-tree-safe>
85
- </div>
86
- <div class="col-sm-3 form-group" v-show="$parent.$parent.criteriaShow">
87
-
88
- <label class="font_normal_body">片区名称</label>
89
- <v-select :value.sync="model.f_check_book_id" v-model='model.f_check_book_id'
90
- :value-single="true" style="width: 60%"
91
- class="select_list select"
92
- :options='$parent.$parent.checkBooks' placeholder='片区名称'
93
- close-on-select
94
- condition="f_check_book_id ='{}'"></v-select>
95
17
 
96
- </div>
97
- <div class="col-sm-3 form-group" v-show="$parent.$parent.criteriaShow">
98
- <label class="font_normal_body">是否在册</label>
99
- <v-select :value.sync="model.f_is_checkbook" v-model='model.f_is_checkbook'
100
- :value-single="true" style="width: 60%"
101
- class="select_list select"
102
- @change="$parent.$parent.changeState"
103
- :options='$parent.$parent.isCheckBook' placeholder='有无所属片区'
104
- close-on-select
105
- condition="{}"></v-select>
106
- </div>
18
+ <div class="form-group button-range" style="float: right">
19
+ <button class="button_search button_spacing" @click="$parent.$parent.search()">查询</button>
20
+ <button class="button_clear button_spacing" @click="clear">清空</button>
21
+ <!-- <button class="button_export button_spacing" @click="$parent.$parent.importFile">导入</button>-->
22
+ <!-- <export-excel-->
23
+ <!-- :data="{condition:$parent.$parent.condition}"-->
24
+ <!-- :field="$parent.$parent.getfield"-->
25
+ <!-- sqlurl="api/af-revenue/logic/exportfile" sql-name="salembPeopleList" template-name='表册用户导出'-->
26
+ <!-- :choose-col="true"></export-excel>-->
27
+ <div style="float: right" class="button_spacing"
28
+ :class="{'button_shrink_top': $parent.$parent.criteriaShow,'button_shrink_bottom': !$parent.$parent.criteriaShow}"
29
+ @click="$parent.$parent.criteriaShow = !$parent.$parent.criteriaShow"></div>
107
30
  </div>
108
31
  </div>
109
- </criteria>
110
- <data-grid class="list_area table_sy" style="overflow: hidden" :model="model" partial='list' v-ref:grid>
111
- <template partial='head'>
112
- <tr @dblclick.stop="">
113
- <!-- <th>-->
114
- <!-- <nobr><input type="checkbox" v-model="$parent.$parent.$parent.bookAll"></input>全选</nobr>-->
115
- <!-- </th>-->
116
- <th>
117
- <nobr>客户姓名</nobr>
118
- </th>
119
- <th>
120
- <nobr>客户编号</nobr>
121
- </th>
122
- <th>
123
- <nobr>客户类型</nobr>
124
- </th>
125
- <th>
126
- <nobr>客户电话</nobr>
127
- </th>
128
- <th>
129
- <nobr>用户单位</nobr>
130
- </th>
131
- <th>
132
- <nobr>客户地址</nobr>
133
- </th>
134
- <th>
135
- <nobr>所属片区</nobr>
136
- </th>
137
- </tr>
138
- </template>
139
- <template partial='body'>
140
- <!-- <td style="text-align: center">-->
141
- <!-- <nobr><input type="checkbox" :checked="$parent.$parent.$parent.checkModel(row)"-->
142
- <!-- @change="$parent.$parent.$parent.checkChange(row, $event)"></input>-->
143
- <!-- </nobr>-->
144
- <!-- </td>-->
145
- <td style="text-align: center">{{ row.f_user_name }}</td>
146
- <td style="text-align: center">{{ row.f_userinfo_code }}</td>
147
- <td style="text-align: center">{{ row.f_user_type }}</td>
148
- <td style="text-align: center">{{ row.f_user_phone }}</td>
149
- <td style="text-align: center">{{ row.f_residential_area }}</td>
150
- <td style="text-align: center">{{ row.f_address }}</td>
151
- <td style="text-align: center">{{ row.f_check_book_name }}</td>
152
- </template>
153
- </data-grid>
154
- </criteria-paged>
155
- </div>
156
- <modal :show.sync="showModal" :backdrop="false">
157
- <div slot="modal-header" class="modal-header">
158
- <h4 class="modal-title">
159
- 创建片区
160
- </h4>
161
- </div>
162
- <div slot="modal-body" class="modal-body">
163
- <div v-if="true">
164
- <div class="row" style="margin-top: 10px">
165
- <!-- <label class="control-label font text-left" style="float:left;margin-left:10%;margin-top:5px">片区名称</label>-->
166
- <!-- <div class="col-xs-8 col-md-8">-->
167
- <!-- <input type="text" class="input_search" style="width: 70%;" v-model="checkBook.f_check_book_name"/>-->
168
- <!-- </div>-->
169
- <div class="col-sm-12 form-group" style="margin: 0">
170
- <role-selector-safe
171
- @re-res="getRes"
172
- role-name="安检员"
173
- role-lable="安&nbsp;检&nbsp;员&nbsp;"
174
- :value.sync="checkBook.f_checker_name"
175
- v-model="checkBook.f_checker_name">
176
- </role-selector-safe>
32
+ <div class="row" v-show="$parent.$parent.criteriaShow">
33
+ <div class="col-sm-3 form-group">
34
+ <label class="font_normal_body">&nbsp;小&nbsp;区&nbsp;域</label>
35
+ <v-select :value.sync="model.f_small_area" v-model="model.f_small_area"
36
+ :options='$parent.$parent.smallareas' placeholder='小区域'
37
+ close-on-select :search='true'
38
+ condition="f_small_area = '{}'"></v-select>
177
39
  </div>
178
- <div class="form-group col-sm-6" style="margin-top: 20px">
179
- <label class="font_normal_body">片区名</label>
180
- <input type="text" class="input_search" v-model="checkBook.f_check_book_name"
181
- style="width: 60%" >
40
+ <div class="form-group col-sm-3">
41
+ <label class="font_normal_body">用户电话</label>
42
+ <input type="text" class="form-control" v-model="model.f_user_phone" placeholder='用户电话'
43
+ condition="f_user_phone like '%{}%'" v-next-el='yhxm' style="width: 60%"
44
+ >
182
45
  </div>
183
- <div class="form-group col-sm-6" style="margin-top: 20px">
184
- <label class="font_normal_body">执行日期</label>
185
- <datepicker
186
- :value.sync="checkBook.f_run_date"
187
- style="width: 60%"
188
- :format="'yyyy-MM-dd'"
189
- v-model="checkBook.f_run_date"
190
- >
191
- </datepicker>
192
- </div>
193
- <div class="form-group col-sm-6" style="margin-top: 20px">
194
- <label class="font_normal_body">执行周期</label>
195
- <input type="number" class="input_search" v-model="checkBook.f_around_time"
196
- style="width: 60%" >
46
+ <div class="col-sm-2 form-group" title="参数名称:【用气类型】">
47
+ <label class="font_normal_body" >用气类型</label>
48
+ <v-select :value.sync="model.f_user_gas_type"
49
+ v-model="model.f_user_gas_type"
50
+ :options='$parent.$parent.usergastype' placeholder='请选择'
51
+ condition="f_user_gas_type in {}"
52
+ close-on-select></v-select>
197
53
  </div>
198
- <div class="form-group col-sm-6" style="margin-top: 20px">
199
- <label class="font_normal_body">周期单位</label>
200
- <v-select :value.sync="checkBook.f_around_unit" v-model='checkBook.f_around_unit'
201
- :value-single="true" style="width: 60%"
202
- class="select_list select"
203
- :options='aroundUnit' placeholder=''
54
+ <div class="col-sm-2 form-group" title="参数名称:【用户标签】">
55
+ <label class="font_normal_body" >用户标签</label>
56
+ <v-select :value.sync="model.f_user_tags"
57
+ v-model="model.f_user_tags"
58
+ :options='$parent.$parent.usertags' placeholder='请选择'
59
+ condition="f_user_tags in {}"
204
60
  close-on-select></v-select>
205
61
  </div>
206
- </div>
207
- </div>
208
- </div>
209
- <div slot="modal-footer" class="modal-footer" style="text-align: center">
210
- <button class="button_search" style="margin-right: 20px" @click="ok">确认</button>
211
- <button class="button_search" @click="cancel">取消</button>
212
- </div>
213
- </modal>
214
- <modal :show.sync="showModal2" :backdrop="false">
215
- <div slot="modal-header" class="modal-header">
216
- <h4 class="modal-title">
217
- 添加用户
218
- </h4>
219
- </div>
220
- <div slot="modal-body" class="modal-body">
221
- <div v-if="true">
222
- <div class="row" style="margin-top: 10px">
223
- <div class="form-group col-sm-12" style="margin-top: 20px">
224
- <label class="font_normal_body">片&ensp;区&ensp;名</label>
225
- <v-select :value.sync="selectBook" v-model='selectBook'
226
- :value-single="true" style="width: 80%"
227
- class="select_list select"
228
- :options='checkBooks' placeholder=''
62
+ <div class="form-group col-sm-3">
63
+ <label class="font_normal_body">客户类型</label>
64
+ <v-select :options='$parent.$parent.user_type' :value.sync="model.f_user_type"
65
+ close-on-select condition="f_user_type='{}'"
66
+ placeholder='用户类型' v-model="model.f_user_type"></v-select>
67
+ </div>
68
+ <div class="form-group col-sm-3">
69
+ <label class="font_normal_body">客户状态</label>
70
+ <v-select :options='$parent.$parent.user_state' :value.sync="model.f_user_state"
71
+ close-on-select condition="f_user_state = '{}'"
72
+ placeholder='客户状态' v-model="model.f_user_state"></v-select>
73
+ </div>
74
+ <div class="col-sm-3 form-group">
75
+ <label class="font_normal_body">所属表册</label>
76
+ <v-select :value.sync="model.f_check_book_num" v-model="model.f_check_book_num"
77
+ :options='$parent.$parent.meterbooks' placeholder='安检册'
78
+ :value-single="true"
79
+ condition="f_check_book_num='{}'"
80
+ style="width:60%"
229
81
  close-on-select></v-select>
230
82
  </div>
231
- </div>
232
- </div>
233
- </div>
234
- <div slot="modal-footer" class="modal-footer" style="text-align: center">
235
- <button class="button_search" style="margin-right: 20px" @click="ok2">确认</button>
236
- <button class="button_search" @click="cancel2">取消</button>
237
- </div>
238
- </modal>
239
- <modal :show.sync="showModal3" :backdrop="false">
240
- <div slot="modal-header" class="modal-header">
241
- <h4 class="modal-title">
242
- 调整用户
243
- </h4>
244
- </div>
245
- <div slot="modal-body" class="modal-body">
246
- <div v-if="true">
247
- <div class="row" style="margin-top: 10px;text-align: center">
248
- <div class="form-group col-sm-12" style="margin-top: 20px">
249
- <label class="font_normal_body">安&ensp;检&ensp;册</label>
250
- <v-select :value.sync="selectBook" v-model='selectBook'
251
- :value-single="true" style="width: 80%"
252
- class="select_list select"
253
- :options='checkBooks' placeholder=''
83
+ <div class="col-sm-3 form-group">
84
+ <label class="font_normal_body">抄&nbsp;表&nbsp;员&nbsp;</label>
85
+ <v-select :value.sync="model.f_inputtor" v-model='model.f_inputtor'
86
+ style="width:60%"
87
+ condition="f_inputtor in {}"
88
+ :options='$parent.$parent.inputtores' placeholder='抄表员'
89
+ close-on-select
90
+ v-el:cc></v-select>
91
+ </div>
92
+ <div class="col-sm-3 form-group">
93
+ <label class="font_normal_body">表箱号&emsp;</label>
94
+ <input style="width:60%" type="text" class="form-control" v-model="model.f_metertitles"
95
+ condition="f_metertitles like '%{}%'" placeholder='表箱号'
96
+ >
97
+ </div>
98
+ <div class="form-group col-sm-3">
99
+ <label class="font_normal_body">用气性质</label>
100
+ <v-select :options='$parent.$parent.gasproperties' :value.sync="model.f_gasproperties"
101
+ close-on-select condition="f_gasproperties='{}'"
102
+ placeholder='用气性质' v-model="model.f_gasproperties"></v-select>
103
+ </div>
104
+ <div class="form-group col-sm-3">
105
+ <label class="font_normal_body">气表类型</label>
106
+ <v-select :options='$parent.$parent.meter_classify' :value.sync="model.f_meter_classify"
107
+ close-on-select condition="f_meter_classify='{}'"
108
+ placeholder='气表类型' v-model="model.f_meter_classify"></v-select>
109
+ </div>
110
+ <div class="col-sm-3 form-group">
111
+ <label class="font_normal_body">气表品牌</label>
112
+ <v-select :value.sync="model.f_meter_brand"
113
+ v-model="model.f_meter_brand"
114
+ :options='$parent.$parent.meterbrands' placeholder='请选择'
115
+ condition="f_meter_brand in {}"
254
116
  close-on-select></v-select>
255
117
  </div>
118
+ <div class="form-group col-sm-3">
119
+ <label class="font_normal_body">气表状态</label>
120
+ <v-select :options='$parent.$parent.table_state' :value.sync="model.f_table_state"
121
+ close-on-select condition="f_table_state = '{}'"
122
+ placeholder='气表状态' v-model="model.f_table_state"></v-select>
123
+ </div>
124
+ <div class="col-sm-3 form-group">
125
+ <label class="font_normal_body">小&emsp;区&emsp;</label>
126
+ <input type="text" class="input_search" v-model="model.f_residential_area" style="width: 60%"
127
+ condition=" f_residential_area like '{}%'" placeholder="输入小区">
128
+ </div>
129
+ <div class="form-group col-sm-3">
130
+ <label class="font_normal_body">客户地址</label>
131
+ <input type="text" class="input_search" style="width:60%" v-model="model.f_address"
132
+ condition="f_address like '%{}%'" placeholder='客户地址'>
133
+ </div>
134
+ <div class="col-sm-3 form-group">
135
+ <label class="font_normal_body">楼&emsp;号&emsp;</label>
136
+ <input type="text" class="input_search" style="width:60%" v-model="model.f_building"
137
+ condition="f_building = '{}'" placeholder='楼号'>
138
+ </div>
139
+ <div class="form-group col-sm-3">
140
+ <label class="font_normal_body">组织机构</label>
141
+ <res-select :initresid='$parent.$parent.curorgid'
142
+ @res-select="$parent.$parent.getorg"
143
+ class="select select_list"
144
+ restype='organization' :is-mul="false"
145
+ style="width: 60%">
146
+ </res-select>
147
+ </div>
148
+ <div class="form-group col-sm-3">
149
+ <label class="font_normal_body">是否在册</label>
150
+ <v-select :options='$parent.$parent.whether_list'
151
+ :value.sync="model.f_book_name"
152
+ v-model="model.f_book_name"
153
+ close-on-select condition="f_book_name {}"
154
+ placeholder='是否在册' ></v-select>
155
+ </div>
156
+ <div class="col-sm-3 form-group">
157
+ <label class="font_normal_body">入户证号</label>
158
+ <input style="width:60%" type="text" class="form-control" v-model="model.f_book_no"
159
+ condition="f_book_no like '%{}%'" placeholder='入户证号'
160
+ >
161
+ </div>
162
+ <div class="col-sm-3 form-group">
163
+ <label class="font_normal_body">表&emsp;号&emsp;</label>
164
+ <input style="width:60%" type="text" class="form-control" v-model="model.f_meternumber"
165
+ condition="f_meternumber like '%{}%'" placeholder='表号'
166
+ >
167
+ </div>
168
+
169
+ <div class="col-sm-3 form-group">
170
+ <label class="font_normal_body">街道/乡镇</label>
171
+ <v-select :value.sync="model.f_street_id" :value-single="true"
172
+ :options='$parent.$parent.streetslist' placeholder='请选择'
173
+ condition="f_street_id = '{}'"
174
+ v-model='model.f_street_id'
175
+ @change="$parent.$parent.streetChange"
176
+ close-on-select :search="true" >
177
+ </v-select>
178
+ </div>
179
+ <div class="col-sm-3 form-group">
180
+ <label class="font_normal_body">片区/行政村</label>
181
+ <v-select :value.sync="model.f_community_id" v-model='model.f_community_id'
182
+ :options='$parent.$parent.communitylist' placeholder='片区/管理站' filer-key="name"
183
+ condition="f_community_id = '{}'"
184
+ @change="$parent.$parent.communityChange"
185
+ close-on-select v-ref:slice>
186
+ </v-select>
187
+ </div>
188
+ <div class="col-sm-3 form-group">
189
+ <label class="font_normal_body">小区/自然村</label>
190
+ <v-select :value.sync="model.f_residential_area_id" :value-single="true"
191
+ :options='$parent.$parent.areaslist' placeholder='请选择'
192
+ condition="f_residential_area_id = '{}'"
193
+ v-model='model.f_residential_area_id'
194
+ close-on-select>
195
+ </v-select>
196
+ </div>
256
197
  </div>
257
198
  </div>
258
- </div>
259
- <div slot="modal-footer" class="modal-footer" style="text-align: center">
260
- <button class="button_search" style="margin-right: 20px" @click="ok3">确认</button>
261
- <button class="button_search" @click="cancel3">取消</button>
262
- </div>
263
- </modal>
199
+ </criteria>
200
+ <data-grid class="list_area table_sy" :model="model" partial='list' v-ref:grid :optional="true">
201
+ <template partial='head'>
202
+ <!--<th>-->
203
+ <!--<input type="checkbox" id="f_operator" v-model="$parent.$parent.$parent.all[model.pageIndex-1]"-->
204
+ <!--@change="$parent.$parent.$parent.select()"/>-->
205
+ <!--</th>-->
206
+ <th><nobr>序号</nobr></th>
207
+ <th><nobr>客户编号</nobr></th>
208
+ <th><nobr>客户名称</nobr></th>
209
+ <th><nobr>客户状态</nobr></th>
264
210
 
211
+ <th><nobr>区/县</nobr></th>
212
+ <th><nobr>街道/乡镇</nobr></th>
213
+ <th><nobr>片区/行政村</nobr></th>
214
+ <th><nobr>小区/自然村</nobr></th>
215
+ <th><nobr>客户地址</nobr></th>
216
+ <th><nobr>表号</nobr></th>
217
+ <th><nobr>气表状态</nobr></th>
218
+ <th><nobr>所属表册</nobr></th>
219
+ <th><nobr>册内排序</nobr></th>
220
+ <th><nobr>表箱号</nobr></th>
221
+ <th><nobr>入户证号</nobr></th>
222
+ <th><nobr>表底数</nobr></th>
223
+ </template>
224
+ <template partial='body'>
225
+ <!--<td>-->
226
+ <!--<input :id="'body'+model.pageIndex" type='checkbox' @change="$parent.$parent.$parent.selectOne($event,row,$index)"-->
227
+ <!--:checked="$parent.$parent.$parent.ischecked(model.pageIndex-1,$index)"/>-->
228
+ <!--</td>-->
229
+ <td>{{$index+1}}</td>
230
+ <td>{{row.f_userinfo_code}}</td>
231
+ <td>{{row.f_user_name}}</td>
232
+ <td>{{row.f_user_state}}</td>
233
+
234
+ <td>{{row.f_pcd}}</td>
235
+ <td>{{row.f_street}}</td>
236
+ <td>{{row.f_community}}</td>
237
+ <td>{{row.f_residential_area}}</td>
238
+ <td>{{row.f_address}}</td>
239
+ <td>{{row.f_meternumber}}</td>
240
+ <td>{{row.f_table_state}}</td>
241
+ <td>{{row.f_book_name}}</td>
242
+ <td>{{row.f_meter_book_sort}}</td>
243
+ <!-- <td>{{row.f_adjustable_id}}</td>-->
244
+ <td style="text-align:center">{{row.f_metertitles}}</td>
245
+ <td style="text-align:center"><nobr>{{row.f_book_no}}</nobr></td>
246
+ <td style="text-align:center">{{row.f_meter_base}}</td>
247
+ </template>
248
+ </data-grid>
249
+ </criteria-paged>
265
250
  </div>
251
+ <modal :show.sync="show" width="500px" title="文件导入" v-ref:modal large backdrop="false">
252
+ <article slot="modal-body" class="modal-body">
253
+ <file-upload class="my-file-uploader " name="UploadFile" style="border-radius: 2px;"
254
+ action="api/af-revenue/file/uploadFile" tagname="导入表册用户" v-ref:file multiple></file-upload>
255
+ </article>
256
+ <footer slot="modal-footer" class="modal-footer">
257
+ </footer>
258
+ </modal>
266
259
  </template>
267
260
 
268
261
  <script>
269
- import {PagedList, HttpResetClass} from 'vue-client'
270
- import * as Util from "../../../components/Util";
271
- import bus from "../../../bus";
262
+ import {HttpResetClass, PagedList} from 'vue-client'
263
+ import Vue from 'vue'
272
264
 
265
+ let getAreaConfig = async function (self) {
266
+ // 获取气价里面的配置
267
+ await self.$getConfig(self, 'UserAddress')
268
+ Object.assign(self.model, self.config)
269
+ self.initdata()
270
+ }
271
+ let loadParamGem = async function (self) {
272
+ await self.$LoadParams.loadParam()
273
+ self.getfield = self.config.excelHeaders
274
+ // self.$refs.paged.$refs.cri.model.f_meter_classify = ['机表']
275
+ self.$refs.paged.$refs.cri.model.f_book_name = ['is null']
276
+ await self.initAdjustables()
277
+ // await self.search()
278
+ }
273
279
  export default {
274
- title: '片区管理',
280
+ name: 'MbpeopleList',
275
281
  data () {
276
- let model = new PagedList('rs/sql/getUserByCheckBookuser', 20)
277
282
  return {
278
- model: model,
279
- criteriaShow: false,
280
- excelHeaders: {},
281
- checkBooks: [],
283
+ f_filialeids: this.$login.f.orgid,
284
+ // 初始化省市区数据
285
+ pcdslist: [],
286
+ //初始化街道数据
287
+ streetslist:[],
288
+ communitylist:[],
289
+ areaslist: [],
290
+ // 选中所有地址
291
+ addresslist: [],
292
+ sliceArea: [],
293
+ orgCondtionStr: '',
294
+ f_filialeid: this.$login.f.orgid,
282
295
  f_orgid: '',
283
- bookAll: false,
284
- bookList: [],
285
- selectBook:'',
286
- userTypes: [{label: '全部', value: ''},{label: '民用', value: '民用'}, {label: '非民用', value: '非民用'}],
287
- // init:false,
288
- aroundUnit: [{label: '', value: '年'}, {label: '月', value: '月'}, {label: '日', value: '月'}],
289
- isCheckBook: [{label: '全部', value: ''}, {label: '是', value: 'f_check_book_name is not null'}, {label: '否', value: 'f_check_book_name is null'}],
290
- isSearch: false,
291
- checkBook: {
292
- f_check_book_name: '',
293
- f_run_date: '',
294
- f_around_time: '',
295
- f_around_unit: '',
296
- f_create_date: Util.toStandardDateString(),
297
- f_create_person: this.$login.f.name,
298
- f_orgid: '',
299
- f_checker_name: ''
296
+ invoiceuse: [{label: '是', value: 'is not null'}, {label: '否', value: 'is null'}],
297
+ model: new PagedList('api/af-revenue/sql/mb_peopleList', 20),
298
+ f_orgstr: this.$login.f.orgid,
299
+ // 要操作的用户
300
+ rowsdata: [],
301
+ aaa: '',
302
+ // 控制全选
303
+ all: [],
304
+ // 控制单选
305
+ radio: [],
306
+ show: false,
307
+ meterbooks: [{label: '全部', value: ''}],
308
+ criteriaShow: false,
309
+ gasproperties: this.$appdata.getParam('用气性质') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')] : [],
310
+ user_type: this.$appdata.getParam('用户类型') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')] : [],
311
+ meter_classify: this.$appdata.getParam('气表类型') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('气表类型')] : [],
312
+ table_state: this.$appdata.getParam('气表状态') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('气表状态')] : [],
313
+ f_small_areas: this.$appdata.getParam('小区域') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('小区域')] : [],
314
+ user_state: [{label: '正常', value: '正常'}, {label: '预备', value: '预备'}, {label: '销户', value: '销户'}],
315
+ whether_list: [{label: '已在册内', value: 'is not null'}, {label: '不在册内', value: 'is null'}],
316
+ meterbrands: [],
317
+ condition: '',
318
+ adjustables: [],
319
+ unnullrowdata: [],
320
+ getfield: {},
321
+ config: {
322
+ // 导出列要和查询列相同
323
+ excelHeaders: {
324
+ 'f_userfiles_id': '系统识别号',
325
+ 'f_userinfo_code': '用户编号',
326
+ 'f_user_name': '用户姓名',
327
+ 'f_address': '用户地址'
328
+ }
300
329
  },
301
- showModal: false,
302
- showModal2: false,
303
- showModal3: false,
304
- userGasType:[{label: '全部', value: ''},...this.$appdata.getParam('用气类型')],
305
- userTags:[{label: '全部', value: ''},...this.$appdata.getParam('用户标签')],
306
- gasproperties:[{label: '全部', value: ''},...this.$appdata.getParam('用气性质')],
307
- }
308
- },
309
- props: {
310
- showtype:{
311
- type: String
330
+ curorgid: [this.$login.f.orgid]
312
331
  }
313
332
  },
314
- computed: {
315
- searchData () {
316
- return {condition: this.model.condition}
317
- },
318
- bookCondition () {
319
- return this.model.condition
320
- },
321
- isCreateBook () {
322
- return this.$refs.paged.$refs.criteria.model.f_is_checkbook === 'f_check_book_name is null'
323
- },
324
- isChangeBook () {
325
- return this.$refs.paged.$refs.criteria.model.f_is_checkbook === 'f_check_book_name is not null'
326
- }
333
+ created () {
327
334
  },
328
- watch:{
329
- 'bookList'(){
330
- this.$emit('book-list',this.bookList)
331
- },
332
- 'bookAll'(val){
333
- if(!val){
334
- this.bookList=[]
335
- }
336
-
337
- this.$emit('book-all',this.bookAll)
338
- }
335
+ ready () {
336
+ getAreaConfig(this)
337
+ loadParamGem(this)
338
+ this.getmeterbook()
339
339
  },
340
340
  methods: {
341
- async ok2() {
342
- if (!this.selectBook) {
343
- this.$showMessage('请选择片区')
344
- return
345
- }
346
- if (this.isSearch && (this.bookAll || this.bookList.length > 0) && this.model.rows.length > 0) {
347
- let userCondition = ''
348
- if (this.bookList.length < 1) {
349
- //tag
350
- userCondition = this.bookCondition
351
- } else {
352
- //tag)
341
+ async meterbook(){
342
+ this.meterbooks=[]
343
+ if(this.f_orgid==''){
344
+ this.f_orgid=this.$login.f.orgid
345
+ }
346
+ let res=await this.$resetpost('rs/sql/tel_singleTable_OrderBy',{data:{items:' * ',tablename:'t_check_book',condition:` 1=1 `,orderitem:' id desc'}},{resolveMsg:null,rejectMsg:null})
347
+ for(let i=0;i<res.data.length;i++){
348
+ console.log("res",res.data[i])
349
+ let temp=[]
350
+ temp.label=res.data[i].f_check_book_name
351
+ temp.value=res.data[i].id
352
+ this.meterbooks.push(temp)
353
+ }
353
354
 
354
- userCondition = JSON.stringify(this.bookList).substring(JSON.stringify(this.bookList).indexOf('[') + 1, JSON.stringify(this.bookList).indexOf(']'))
355
- userCondition = 'tui.f_userinfo_id in (' + userCondition + ')'
356
- //tag
357
- }
358
- let addUser = `update t_user_address set f_check_book_id ='${this.selectBook}'
359
- FROM
360
- t_userinfo tui
361
- LEFT JOIN t_userfiles tuf ON tui.f_userinfo_id= tuf.f_userinfo_id
362
- LEFT JOIN t_user_address tua ON tuf.f_userinfo_id = tua.f_userinfo_id
363
- LEFT JOIN t_check_book tcb ON tua.f_check_book_id= tcb.id
364
- WHERE
365
- tui.f_user_state = '正常'
366
- AND ( tuf.f_table_state= '正常' OR tuf.f_table_state= '停用' )
367
- AND ${userCondition}`
368
- await new HttpResetClass().load('POST', 'rs/logic/runSQL', {data: {sql: addUser}},
369
- {resolveMsg: null, rejectMsg: '添加用户失败'})
370
- this.$showMessage('添加用户成功')
371
- this.selectBook = ''
372
- this.bookAll = false
373
- this.bookList = []
374
- this.showModal2 = false
375
- this.$refs.paged.$refs.criteria.search()
376
- }
377
- },
378
- async ok3() {
379
- if (!this.selectBook) {
380
- this.$showMessage('请选择片区')
381
- return
355
+ },
356
+ invoiceuseChange (val) {
357
+ // 查询已开票记录清空选项
358
+ if (val == 'is not null') {
359
+ this.rowsdata = []
360
+ this.radio = []
382
361
  }
383
- if (this.isSearch && (this.bookAll || this.bookList.length > 0) && this.model.rows.length > 0) {
384
- let userCondition = ''
385
- if (this.bookList.length < 1) {
386
- //tag
387
- userCondition = this.bookCondition
388
- } else {
389
- //tag)
362
+ },
390
363
 
391
- userCondition = JSON.stringify(this.bookList).substring(JSON.stringify(this.bookList).indexOf('[') + 1, JSON.stringify(this.bookList).indexOf(']'))
392
- userCondition = 'tui.f_userinfo_id in (' + userCondition + ')'
393
- //tag
364
+ select () {
365
+ let index = this.model.pageIndex - 1
366
+ console.log('全选', this.all[index])
367
+ if (!this.radio[index]) {
368
+ this.radio.$set(index, [])
369
+ }
370
+ if (this.all[index]) {
371
+ // 数据
372
+ this.rowsdata[index] = Object.assign([], this.model.rows)
373
+ // 勾选
374
+ for (var i = 0; i < this.model.rows.length; i++) {
375
+ this.radio[index].$set(i, true)
376
+ }
377
+ } else {
378
+ // 数据
379
+ this.rowsdata[index] = []
380
+ // 不勾选
381
+ for (var i = 0; i < this.model.rows.length; i++) {
382
+ this.radio[index].$set(i, false)
394
383
  }
395
- let upUser = `update t_user_address set f_check_book_id ='${this.selectBook}'
396
- FROM
397
- t_userinfo tui
398
- LEFT JOIN t_userfiles tuf ON tui.f_userinfo_id= tuf.f_userinfo_id
399
- LEFT JOIN t_user_address tua ON tuf.f_userinfo_id = tua.f_userinfo_id
400
- LEFT JOIN t_check_book tcb ON tua.f_check_book_id= tcb.id
401
- WHERE
402
- tui.f_user_state = '正常'
403
- AND ( tuf.f_table_state= '正常' OR tuf.f_table_state= '停用' )
404
- AND ${userCondition}`
405
- await new HttpResetClass().load('POST', 'rs/logic/runSQL', {data: {sql: upUser}},
406
- {resolveMsg: null, rejectMsg: '调整用户失败'})
407
- this.$showMessage('调整用户成功')
408
- this.selectBook = ''
409
- this.bookAll = false
410
- this.bookList = []
411
- this.showModal3 = false
412
- this.$refs.paged.$refs.criteria.search()
413
384
  }
385
+ this.mergeRowData()
386
+ },
387
+ importFile () {
388
+ this.show = true
414
389
  },
415
- cancel2(){
416
- this.selectBook = ''
417
- this.bookAll = false
418
- this.bookList = []
419
- this.showModal2 = false
420
- this.$refs.paged.$refs.criteria.search()
390
+ async initAdjustables () {
391
+ let arr = []
392
+ let filter = this.$login.f.orgid
393
+ this.$GetSaleParam.getAdjustable(filter).forEach((item) => {
394
+ let temp = {}
395
+ temp.label = '[' + item.value.f_adjustable_id + ']-' + item.label
396
+ temp.value = item.value.id
397
+ arr.push(temp)
398
+ })
399
+ this.adjustables = [{label: '全部', value: ''}, ...arr]
400
+ // 初始化气表品牌
401
+ let brandArr = []
402
+ this.$GetSaleParam.getGasbrand().forEach((item) => {
403
+ let temp1 = {}
404
+ temp1.label = item.label
405
+ temp1.value = item.value.f_meter_brand
406
+ brandArr.push(temp1)
407
+ })
408
+ this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
409
+ //
410
+ // // 加载安检册
411
+ // console.log("------------------this.$GetSaleParam.getMeterBooks()",this.$GetSaleParam.getMeterBooks())
412
+ // this.meterbooks = [{label: '全部', value: ''}, ...this.$GetSaleParam.getMeterBooks()]
421
413
  },
422
- cancel3(){
423
- this.selectBook = ''
424
- this.bookAll = false
425
- this.bookList = []
426
- this.showModal3 = false
427
- this.$refs.paged.$refs.criteria.search()
414
+ search () {
415
+ this.$refs.paged.$refs.cri.search()
416
+ console.log('mbpeople this = ', this)
428
417
  },
429
- addUser () {
430
- if (!this.isCreateBook) {
431
- this.$showMessage('请选择查询未划分片区的用户')
432
- return
433
- }
434
- if (this.isSearch && (this.bookAll || this.bookList.length > 0) && this.model.rows.length > 0) {
435
- this.showModal2 = true
436
- this.freshCheckBook()
437
- return
438
- }
439
- this.$showMessage('请选择用户')
418
+ selfSearch (args) {
419
+ let f_orgstr = this.orgCondtionStr ? this.orgCondtionStr : "and f_orgid in ('" + this.f_orgid + "')"
420
+ args.condition = `${args.condition} ` + f_orgstr
421
+ // args.condition += ` and f_orgid = ${this.f_orgstr}`
422
+ this.condition = args.condition
423
+ this.$parent.condition = this.condition
424
+ this.model.search(args.condition, args.model)
440
425
  },
441
- upUser () {
442
- if (!this.isChangeBook) {
443
- this.$showMessage('请选择查询已划分片区的用户')
444
- return
426
+ // 合并二维数组并去空
427
+ mergeRowData () {
428
+ console.log('!!!!!!!!!!!!!数组去空', this.rowsdata)
429
+ let data = []
430
+ // 合并
431
+ for (let array of this.rowsdata) {
432
+ data.push.apply(data, array)
445
433
  }
446
- if (this.isSearch && (this.bookAll || this.bookList.length > 0) && this.model.rows.length > 0) {
447
- this.showModal3 = true
448
- this.freshCheckBook()
449
- return
434
+ // 去空
435
+ // 拓展数组去空值的方法
436
+ Array.prototype.removeEmpty = function () {
437
+ for (var i = 0; i < this.length; i++) {
438
+ if (this[i] == '' || typeof (this[i]) == 'undefined') {
439
+ this.splice(i, 1)
440
+ i--
441
+ }
442
+ }
443
+ return this
450
444
  }
451
- this.$showMessage('请选择用户')
445
+ data = data.removeEmpty()
446
+ this.unnullrowdata = []
447
+ data.forEach((row) => {
448
+ this.unnullrowdata.push(row.f_userfiles_id + '')
449
+ })
450
+ this.$parent.rowsdata = this.unnullrowdata
451
+ // this.$parent.rowsdata = this.rowsdata
452
452
  },
453
- async delUser () {
454
- if (!this.isChangeBook) {
455
- this.$showMessage('请选择查询已划分片区的用户')
456
- return
453
+ selectOne (event, row, i) {
454
+ console.log('单选', event.target.checked)
455
+ let index = this.model.pageIndex - 1
456
+ if (!this.rowsdata[index]) {
457
+ this.rowsdata[index] = []
457
458
  }
458
- if (this.isSearch && (this.bookAll || this.bookList.length > 0) && this.model.rows.length > 0) {
459
- let userCondition= ''
460
- if (this.bookList.length < 1) {
461
- //tag
462
- userCondition = this.bookCondition
459
+ if (!this.radio[index]) {
460
+ this.radio.$set(index, [])
461
+ }
462
+ if (event.target.checked) {
463
+ // 数据
464
+ this.rowsdata[index][i] = row
465
+ // 勾选
466
+ this.radio[index].$set(i, true)
467
+ // 判断是否全部选中
468
+ var allState = true
469
+ if (this.model.rows.length != this.radio[index].length) {
470
+ allState = false
471
+ }
472
+ for (var state of this.radio[index]) {
473
+ if (!state) {
474
+ allState = false
475
+ }
476
+ }
477
+ if (allState) {
478
+ this.all.$set(index, true)
463
479
  } else {
464
- //tag)
465
-
466
- userCondition = JSON.stringify(this.bookList).substring(JSON.stringify(this.bookList).indexOf('[') + 1, JSON.stringify(this.bookList).indexOf(']'))
467
- userCondition = 'tui.f_userinfo_id in (' + userCondition + ')'
468
- //tag
480
+ this.all.$set(index, false)
469
481
  }
470
- let delUser= `update t_user_address set f_check_book_id =null
471
- FROM
472
- t_userinfo tui
473
- LEFT JOIN t_userfiles tuf ON tui.f_userinfo_id= tuf.f_userinfo_id
474
- LEFT JOIN t_user_address tua ON tuf.f_userinfo_id = tua.f_userinfo_id
475
- LEFT JOIN t_check_book tcb ON tua.f_check_book_id= tcb.id
476
- WHERE
477
- tui.f_user_state = '正常'
478
- AND ( tuf.f_table_state= '正常' OR tuf.f_table_state= '停用' )
479
- AND ${userCondition}`
480
- await new HttpResetClass().load('POST', 'rs/logic/runSQL', {data: {sql: delUser}},
481
- {resolveMsg: null, rejectMsg: '删除片区失败'})
482
- this.$showMessage('从片区删除所选用户成功')
483
- this.selectBook = ''
484
- this.bookAll = false
485
- this.bookList = []
486
- this.showModal3 = false
487
- this.$refs.paged.$refs.criteria.search()
488
- return
482
+ } else {
483
+ // 数据
484
+ this.rowsdata[index][i] = []
485
+ // 不勾选
486
+ this.radio[index].$set(i, false)
487
+ // 任意取消一个则全选状态设为false
488
+ this.all.$set(index, false)
489
489
  }
490
- this.$showMessage('请选择用户')
490
+ this.mergeRowData()
491
491
  },
492
- beforeCreateBook () {
493
- if (!this.isCreateBook) {
494
- this.$showMessage('请选择查询未划分片区的用户')
495
- return
496
- }
497
- if (this.isSearch && (this.bookAll || this.bookList.length > 0) && this.model.rows.length > 0) {
498
- this.showModal = true
499
- return
500
- }
501
- this.$showMessage('请选择用户')
492
+ getorg (val) {
493
+ console.log('getorg:val=', val)
494
+ console.log('getorg:this.f_orgid=', this.f_orgid)
495
+ this.f_orgid = val
496
+ this.f_filialeid = val[0]
502
497
  },
503
- ok () {
504
- //tag)
505
- let condition = ''
506
- if (!this.checkBook.f_check_book_name) {
507
- return this.$showMessage('请填写册名')
508
- }
509
- if (!this.checkBook.f_checker_name) {
510
- return this.$showMessage('请选择安检员')
511
- }
512
- if (!this.checkBook.f_around_time || !this.checkBook.f_around_unit) {
513
- return this.$showMessage('请选填写周期信息')
514
- }
515
- if (!this.checkBook.f_run_date) {
516
- return this.$showMessage('执行日期')
517
- }
518
- if (this.bookList.length < 1) {
519
- //tag
520
- condition = this.bookCondition
521
- } else {
522
- //tag)
498
+ async getmeterbook(){
499
+ await this.meterbook()
500
+ this.$emit('childre',this.meterbooks)
501
+ },
502
+ async initdata () {
503
+ this.initAreas(this.f_filialeids)
504
+ // 添加特殊地址选省市区
523
505
 
524
- condition = JSON.stringify(this.bookList).substring(JSON.stringify(this.bookList).indexOf('[') + 1, JSON.stringify(this.bookList).indexOf(']'))
525
- condition = 'tui.f_userinfo_id in (' + condition + ')'
526
- //tag
506
+ this.initpcds(` f_orgid = '${this.f_filialeids}'`)
507
+ this.initstreets(` f_orgid = '${this.f_filialeids}' `)
508
+ this.initareas(` f_orgid = '${this.f_filialeids}'`)
509
+ },
510
+ // 初始化片区
511
+ async initAreas (val) {
512
+ if (val) {
513
+ let getAllArea = await this.$resetpost('/rs/search', {
514
+ source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
515
+ userid: this.$login.f.id
516
+ }, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
517
+
518
+ let arr = getAllArea.data.filter((res) => {
519
+ return res.parentid == val
520
+ })
521
+ console.log('过滤之后的片区', arr)
522
+ this.sliceArea = []
523
+ arr.forEach((res) => {
524
+ this.sliceArea.push({label: res.name, value: res.name})
525
+ })
527
526
  }
528
- let data = {
529
- checkBook: this.checkBook,
530
- sqlStr: condition
527
+ },
528
+ initModel () {
529
+ if (this.row) {
530
+ this.cleardata()
531
+ this.model = Object.assign({}, this.model, this.row)
532
+ // 处理片区代码
533
+ this.model.slice_area = [{
534
+ name: this.model.f_slice_area,
535
+ code: this.model.f_area_code
536
+ }]
531
537
  }
532
- new HttpResetClass().load('post', 'rs/logic/AddCheckBook', {data}).then(res => {
533
- //tag)
534
- if (res.data.id) {
535
- this.$showMessage('创建成功')
536
- this.showModal = false
537
- this.isSearch = false
538
- this.bookList = []
539
- this.bookAll = false
540
- this.freshCheckBook()
541
- this.$refs.paged.$refs.criteria.search()
538
+ },
539
+ // 初始化省市区,添加街道
540
+ async initpcds (pconditon) {
541
+ this.pcdslist = []
542
+ let HttpReset = new HttpResetClass()
543
+ let req = await HttpReset.load('POST', 'api/af-revenue/sql/address_singleTableOrderBy?pageNo=1&pageSize=9999999', {
544
+ data: {
545
+ items: '*',
546
+ tablename: 't_pcd',
547
+ orderitem: 'id',
548
+ condition: pconditon
549
+ }
550
+ }, {resolveMsg: null, rejectMsg: '获取地址失败!'})
551
+ let redata = []
552
+ req.data.forEach((row, n) => {
553
+ redata[n] = {
554
+ label: row.f_pcd,
555
+ value: row.id,
556
+ data: row,
557
+ id: row.id
542
558
  }
543
559
  })
560
+ this.pcdslist = redata
561
+ console.log("xxxxxxxxxxxxxx")
562
+ console.log(this.pcdslist)
563
+ console.log("redataxxxxxxxx")
544
564
  },
545
- changeState (val) {
546
- //tag
547
- //tag
548
- this.bookAll = false
549
- this.bookList = []
550
- if (this.$refs.paged.$refs.criteria.model.f_orgid){
551
- this.$refs.paged.$refs.criteria.search()
552
- }
565
+ // 初始化街道 添加小区
566
+ async initstreets (pconditon) {
567
+ this.streetslist = []
568
+ let HttpReset = new HttpResetClass()
569
+ let req = await HttpReset.load('POST', 'api/af-revenue/sql/address_singleTableOrderBy', {
570
+ data: {
571
+ items: '*',
572
+ tablename: 't_street',
573
+ orderitem: 'id',
574
+ condition: pconditon
575
+ }
576
+ }, {resolveMsg: null, rejectMsg: '获取地址失败!'})
577
+ let redata = []
578
+ req.data.forEach((row, n) => {
579
+ redata[n] = {
580
+ label: row.f_street,
581
+ value: row.id,
582
+ data: row,
583
+ id: row.id
584
+ }
585
+ })
586
+ this.streetslist = redata
587
+ console.log("xxxxxxxxxxxxxx")
588
+ console.log(this.streetslist)
589
+ console.log("redataxxxxxxxx")
553
590
  },
554
- cancel () {
555
- this.bookAll = false
556
- this.bookList = []
557
- this.showModal = false
558
- this.$refs.paged.$refs.criteria.search()
591
+ // 初始化小区添加小区
592
+ async initareas (pconditon) {
593
+ // if(this.usertype){
594
+ // pconditon=pconditon+` and f_special='1' `
595
+ // }
596
+ this.areaslist = []
597
+ let HttpReset = new HttpResetClass()
598
+ let req = await HttpReset.load('POST', 'api/af-revenue/sql/address_singleTableOrderBy?pageNo=1&pageSize=9999999', {
599
+ data: {
600
+ items: '*',
601
+ tablename: 't_area',
602
+ orderitem: 'id',
603
+ condition: pconditon
604
+ }
605
+ }, {resolveMsg: null, rejectMsg: '获取地址失败!'})
606
+ let redata = []
607
+ req.data.forEach((row) => {
608
+ redata.push({
609
+ label: row.f_residential_area,
610
+ value: row.id,
611
+ data: row,
612
+ id: row.id
613
+ })
614
+ })
615
+ this.areaslist = redata
559
616
  },
560
- checkModel (row) {
561
- if (this.bookAll) {
562
- //tag)
563
- return true
564
- } else {
565
- // this.bookList = []
566
- if (this.bookList.findIndex(res => res === row.f_userinfo_id) !== -1) {
567
- return true
568
- } else {
569
- return false
617
+ //小区变化
618
+ areaChange(val){
619
+ console.log("小区变化",val)
620
+ // 选择小区后级联出省市区和街道
621
+ let selectArea // 选中的小区数据
622
+ for (let row of this.areaslist) {
623
+ if (val == row.value) {
624
+ selectArea = row.data
625
+ break
626
+ }
627
+ }
628
+ if (selectArea) {
629
+ this.model.f_street_id = selectArea.f_street_id
630
+ this.model.f_pcd_id = selectArea.f_pcd_id
631
+ this.model.f_community_id = selectArea.f_community_id
632
+ console.log( this.model.f_community_id)
633
+
634
+ this.initstreets(` f_filialeid = '${this.f_filialeids}' and id ='${selectArea.f_street_id}' `)
635
+ this.initpcds(` f_filialeid = '${this.f_filialeids}' and id ='${selectArea.f_pcd_id}' `)
636
+ if(selectArea.f_community_id){
637
+ this.initcommunity(` f_filialeid = '${this.f_filialeids}' and id ='${selectArea.f_community_id}' `)
570
638
  }
639
+ // this.model.f_slice_area = selectArea.f_slice_area
640
+ // 拼接地址
641
+ this.model.f_address = `${selectArea.f_street}${selectArea.f_community}${selectArea.f_residential_area}`
642
+ console.log( this.model.f_community_id)
571
643
  }
644
+ this.$nextTick(() => {
645
+ this.$resetValidation()
646
+ })
572
647
  },
573
- checkChange (row, e) {
574
- //tag
575
- if (e.target.checked) {
576
- this.bookList.push(row.f_userinfo_id)
577
- } else {
578
- this.bookList.splice(this.bookList.findIndex(res => res === row.f_userinfo_id), 1)
648
+ // 片区变化 f_area_code
649
+ async areasChange (val) {
650
+ console.log('街道变化', val)
651
+ if (this.streetslist[0]) {
652
+ var street = ''
653
+ this.streetslist.forEach((item) => {
654
+ if (item.id === val) {
655
+ street = item.label
656
+ }
657
+ })
658
+ // this.model.f_address = street
659
+ }
660
+ if (val) {
661
+ // 那就把[小区]重新组织一下
662
+ await this.initareas(` f_area_code ='${val}' `)
663
+ if (this.$refs.paged.$refs.criteria.model.f_residential_area_id) {
664
+ if (this.findbyid(this.areaslist, this.$refs.paged.$refs.criteria.model.f_residential_area_id)) {
665
+ let street_id = this.findbyid(this.areaslist,this.$refs.paged.$refs.criteria.model.f_residential_area_id).f_street_id
666
+ if (street_id != val) {
667
+ this.$refs.paged.$refs.criteria.model.f_residential_area_id = ''
668
+ }
669
+ } else {
670
+ this.$refs.paged.$refs.criteria.model.f_residential_area_id = ''
671
+ }
672
+ }
579
673
  }
580
- // //tag)
581
674
  },
582
- getRes (obj) {
583
- this.checkBook.f_orgid = obj.resids[0]
675
+ //街道变化
676
+ //初始化街道 添加小区
677
+ async initcommunity(pconditon){
678
+ this.communitylist = []
679
+ let HttpReset = new HttpResetClass()
680
+ let req = await HttpReset.load('POST', 'api/af-revenue/sql/address_singleTableOrderBy', {
681
+ data: {
682
+ items: '*',
683
+ tablename: 't_community',
684
+ orderitem: 'id',
685
+ condition: pconditon
686
+ }
687
+ }, {resolveMsg: null, rejectMsg: '获取地址失败!'})
688
+ let redata = []
689
+ req.data.forEach((row, n) => {
690
+ redata[n] = {
691
+ label: row.f_community_name,
692
+ value: row.id,
693
+ data:row,
694
+ id:row.id
695
+ }
696
+ })
697
+ this.communitylist=redata
584
698
  },
585
- getResm (obj) {
586
- this.$refs.paged.$refs.criteria.model.f_orgid = this.$login.convertToIn(obj.resids)
699
+ async streetChange(val){
700
+ if(val){
701
+ await this.initcommunity(` f_filialeid = '${this.f_filialeids}' and f_street_id ='${val}' `)
702
+ }
587
703
  },
588
- hidden () {
589
- this.criteriaShow = !this.criteriaShow
704
+ async communityChange(val){
705
+ console.log(val)
706
+ if(val){
707
+ await this.initareas(` f_filialeid = '${this.f_filialeids}' and f_community_id ='${val}' `)
708
+ }
709
+ }
710
+ },
711
+ computed: {
712
+ usergastype () {
713
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气类型')]
590
714
  },
591
- selfSearch (args) {
592
- this.isSearch = true
593
- this.bookAll = false
594
- this.bookList = []
595
-
596
- console.log("查询66666666666666666")
597
- this.$emit('book-condition',args.condition)
598
- // if (this.$refs.paged.$refs.criteria.model.f_orgid){
599
- // args.condition += `f_orgid in ${this.$refs.paged.$refs.criteria.model.f_orgid}`
600
- // }
601
- args.condition += ` and f_user_type = '${this.showtype}' `
602
- this.model.search(args.condition, args.model)
715
+ usertags () {
716
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户标签')]
603
717
  },
604
- freshCheckBook () {
605
- this.checkBooks = []
606
- new HttpResetClass().load('POST', `/rs/sql/safe_singleTable_OrderBy`, {
607
- data: {
608
- items: 'id,f_check_book_name,f_check_book_type',
609
- tablename: 't_check_book',
610
- condition: this.$refs.paged.$refs.criteria.model.f_orgid?`f_orgid in ${this.$refs.paged.$refs.criteria.model.f_orgid}`:'1=1',
611
- orderitem: 'id desc'
718
+ ischecked () {
719
+ return function (index, i) {
720
+ if (!this.radio[index]) {
721
+ return false
612
722
  }
613
- }, {resolveMsg: null, rejectMsg: null}).then(res => {
614
- this.checkBooks.push({label: '全部', value: ''})
615
- res.data.forEach(ress => {
616
- console.log("片区类型",ress)
617
- if(ress.f_check_book_type ==='用户'){
618
- this.checkBooks.push({
619
- label: ress.f_check_book_name,
620
- value: ress.id
621
- })
723
+ return this.radio[index][i]
724
+ }
725
+ },
726
+ smallareas () {
727
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('小区域')]
728
+ },
729
+ inputtores () {
730
+ // 获取抄表员
731
+ console.log('获取抄表员', this.$login.f)
732
+ let rs = []
733
+ if (this.$login.f.f_gasman.length > 0) {
734
+ for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
735
+ let temp = {
736
+ label: this.$login.f.f_gasman[i].name,
737
+ value: this.$login.f.f_gasman[i].name
622
738
  }
623
-
624
- })
625
- })
739
+ rs.push(temp)
740
+ }
741
+ }
742
+ this.inputtores2 = rs
743
+ return [ ...rs]
626
744
  }
627
745
  },
628
- beforeDestroy() {
629
- //tag
630
- bus.$off('fresh-user')
746
+ watch: {
747
+ async 'f_orgid'(){
748
+ this.meterbooks=[]
749
+ await this.meterbook()
750
+ this.$emit('childre',this.meterbooks)
751
+ },
752
+ batchMeterShow () {
753
+ if (this.batchMeterShow == false) {
754
+ // 将选的文件清空
755
+ this.$refs.file.$el.querySelector('input').value = ''
756
+ }
757
+ },
758
+ 'f_filialeid' (val) {
759
+ loadParamGem(this)
760
+ }
631
761
  },
632
- ready () {
633
- bus.$on('fresh-user',()=>{
634
- console.log("进入方法")
635
- this.bookAll = false
636
- this.bookList = []
637
- this.$refs.paged.$refs.criteria.search()
638
- })
639
- this.$refs.paged.$refs.criteria.model.f_is_checkbook = 'f_check_book_name is null'
640
- //tag
641
- // this.init=true
642
- this.freshCheckBook()
762
+ events: {
763
+ onFileUpload: function (file, res) {
764
+ // let URL = res.f_downloadpath.substring(res.f_downloadpath.lastIndexOf(":\\") + 2)
765
+ // res.f_downloadpath = "http://" + location.host + "/" + URL
766
+ // res.f_downloadpath.replace('\\','/')
767
+ this.$resetpost('api/af-revenue/logic/upLoadBookFile',
768
+ {data: {
769
+ condition: this.condition,
770
+ filepath: res.f_downloadpath
771
+ }
772
+ },
773
+ {resolveMsg: null, rejectMsg: '上传失败'}).then((res) => {
774
+ this.show = false
775
+ this.$showAlert(`导入成功`, 'success', 2000)
776
+ this.search()
777
+ })
778
+ }
643
779
  }
644
780
  }
645
781
  </script>
646
- <style scoped>
647
- /*.btn-group > .btn:first-child {*/
648
- /* margin-left: 0;*/
649
- /* width: 100%;*/
650
- /*}*/
782
+
783
+ <style lang="less">
784
+ #MbpeopleList {
785
+ tr {
786
+ th {
787
+ text-align: center;
788
+ }
789
+ td {
790
+ text-align: center;
791
+ }
792
+ }
793
+ }
651
794
  </style>