manage-client-xy 3.1.98 → 3.2.0
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.
- package/build/dev-server.js +7 -4
- package/package.json +1 -1
- package/src/components/sale/businessquery/BusinessManage.vue +3 -0
- package/src/components/sale/businessquery/TransferQuery.vue +86 -77
- package/src/components/sale/businessquery/cancelAccountQuery.vue +488 -0
- package/src/saleManage.js +3 -0
package/build/dev-server.js
CHANGED
|
@@ -19,8 +19,11 @@ var proxyTable = {
|
|
|
19
19
|
// '/rs/logic/exportfile': {
|
|
20
20
|
// target: 'http://127.0.0.1:9014/'
|
|
21
21
|
// },
|
|
22
|
-
'/rs/sql/
|
|
23
|
-
target:
|
|
22
|
+
'/rs/sql/cancelAccountQuery': {
|
|
23
|
+
target: 'http://127.0.0.1:9019/'
|
|
24
|
+
},
|
|
25
|
+
'/rs/sql/cancelAccountQuery/': {
|
|
26
|
+
target: 'http://127.0.0.1:9019/'
|
|
24
27
|
},
|
|
25
28
|
'/rs/sql/GMHgasQuery/': {
|
|
26
29
|
target: bendi
|
|
@@ -29,7 +32,7 @@ var proxyTable = {
|
|
|
29
32
|
target: fuwu
|
|
30
33
|
},
|
|
31
34
|
'/rs/sql': {
|
|
32
|
-
target:
|
|
35
|
+
target: fuwu
|
|
33
36
|
},
|
|
34
37
|
// 查找资源服务数据
|
|
35
38
|
'/rs/search': {
|
|
@@ -72,7 +75,7 @@ var proxyTable = {
|
|
|
72
75
|
target: fuwu
|
|
73
76
|
},
|
|
74
77
|
'/rs/report': {
|
|
75
|
-
target:
|
|
78
|
+
target: fuwu
|
|
76
79
|
},
|
|
77
80
|
'/rs/vue': {
|
|
78
81
|
target: fuwu
|
package/package.json
CHANGED
|
@@ -46,6 +46,9 @@
|
|
|
46
46
|
<tabs-manage header="开户查询">
|
|
47
47
|
<new-account-query v-if="show[13]" @deal-msg="dealMsg"></new-account-query>
|
|
48
48
|
</tabs-manage>
|
|
49
|
+
<tabs-manage header="销户查询">
|
|
50
|
+
<cancel-account-query v-if="show[13]" @deal-msg="dealMsg"></cancel-account-query>
|
|
51
|
+
</tabs-manage>
|
|
49
52
|
<tabs-manage header="通气统计">
|
|
50
53
|
<residential-query v-if="show[14]" @deal-msg="dealMsg"></residential-query>
|
|
51
54
|
</tabs-manage>
|
|
@@ -22,9 +22,9 @@
|
|
|
22
22
|
<datepicker id="startDate" placeholder="开始日期" style="width:60%"
|
|
23
23
|
v-model="model.startDate"
|
|
24
24
|
:value.sync="model.startDate"
|
|
25
|
-
:format="'yyyy-MM-dd'"
|
|
25
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
26
26
|
:show-reset-button="true"
|
|
27
|
-
condition="f_operate_date >= to_date('{}
|
|
27
|
+
condition="f_operate_date >= to_date('{}','yyyy-mm-dd hh24:mi:ss')">
|
|
28
28
|
</datepicker>
|
|
29
29
|
</div>
|
|
30
30
|
<div class="col-sm-2 form-group">
|
|
@@ -32,9 +32,9 @@
|
|
|
32
32
|
<datepicker id="endDate" placeholder="结束日期" style="width:60%"
|
|
33
33
|
v-model="model.endDate"
|
|
34
34
|
:value.sync="model.endDate"
|
|
35
|
-
:format="'yyyy-MM-dd'"
|
|
35
|
+
:format="'yyyy-MM-dd HH:mm:ss'"
|
|
36
36
|
:show-reset-button="true"
|
|
37
|
-
condition="f_operate_date <= to_date('{}
|
|
37
|
+
condition="f_operate_date <= to_date('{}','yyyy-mm-dd hh24:mi:ss')">
|
|
38
38
|
</datepicker>
|
|
39
39
|
</div>
|
|
40
40
|
<div class="span" style="float:right;">
|
|
@@ -223,82 +223,91 @@
|
|
|
223
223
|
</header>
|
|
224
224
|
<article class="modal-body" slot="modal-body">
|
|
225
225
|
<div style="min-height: 600px; overflow-y: auto; padding: 20px;">
|
|
226
|
-
<!--
|
|
227
|
-
<div style="display: flex;
|
|
228
|
-
<!--
|
|
229
|
-
<div
|
|
230
|
-
|
|
231
|
-
<div class="
|
|
232
|
-
<
|
|
233
|
-
<
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
<
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
<
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
<div style="flex: 1; border: 1px dashed #ccc; padding: 10px;">
|
|
246
|
-
<p>原用户材料图片</p>
|
|
247
|
-
<div style="display: flex; flex-wrap: wrap; gap: 10px;" v-if="imgList.length">
|
|
248
|
-
<!-- 使用 v-for 循环遍历图片列表 -->
|
|
249
|
-
<img-self
|
|
250
|
-
v-for="(index, img) in imgList"
|
|
251
|
-
:key="index"
|
|
252
|
-
:src="img.imgUrl"
|
|
253
|
-
:alt="'原用户材料图片 ' + (index + 1)"
|
|
254
|
-
:width="100" :height="100"
|
|
255
|
-
></img-self>
|
|
226
|
+
<!-- 上部:原用户信息、新用户信息、材料展示区 -->
|
|
227
|
+
<div style="display: flex; flex-direction: column; gap: 20px;">
|
|
228
|
+
<!-- 原用户信息和新用户信息 -->
|
|
229
|
+
<div>
|
|
230
|
+
<!-- 原用户信息 -->
|
|
231
|
+
<div class="row" style="margin-top:10px;">
|
|
232
|
+
<h5>原用户信息</h5>
|
|
233
|
+
<div class="col-sm-6 form-group">
|
|
234
|
+
<label class="font_normal_body">原用户名</label>
|
|
235
|
+
<input type="text" style="width:60%;" class="input_search" v-model="transferInfo.f_user_name" readonly="true" placeholder="原用户名">
|
|
236
|
+
</div>
|
|
237
|
+
<div class="col-sm-6 form-group">
|
|
238
|
+
<label class="font_normal_body">原用户手机号</label>
|
|
239
|
+
<input type="text" style="width:60%;" class="input_search" v-model="transferInfo.f_user_phone" readonly="true" placeholder="原用户手机号">
|
|
240
|
+
</div>
|
|
241
|
+
<div class="col-sm-6 form-group">
|
|
242
|
+
<label class="font_normal_body">原用户证件号</label>
|
|
243
|
+
<input type="text" style="width:60%;" class="input_search" v-model="transferInfo.f_idnumber" readonly="true" placeholder="原用户证件号">
|
|
244
|
+
</div>
|
|
256
245
|
</div>
|
|
257
|
-
|
|
258
|
-
|
|
246
|
+
|
|
247
|
+
<!-- 新用户信息 -->
|
|
248
|
+
<div class="row" style="margin-top:10px;">
|
|
249
|
+
<h5>新用户信息</h5>
|
|
250
|
+
<div class="col-sm-6">
|
|
251
|
+
<label class="font_normal_body">新用户名</label>
|
|
252
|
+
<input type="text" style="width:60%;" class="input_search" v-model="transferInfo.f_newuser_name" readonly="true" placeholder="新用户名">
|
|
253
|
+
</div>
|
|
254
|
+
<div class="col-sm-6 form-group">
|
|
255
|
+
<label class="font_normal_body">新用户手机号</label>
|
|
256
|
+
<input type="text" style="width:60%;" class="input_search" v-model="transferInfo.f_newuser_phone" readonly="true" placeholder="新用户手机号">
|
|
257
|
+
</div>
|
|
258
|
+
|
|
259
|
+
<div class="col-sm-6 form-group">
|
|
260
|
+
<label class="font_normal_body">新用户证件类型</label>
|
|
261
|
+
<input type="text" style="width:60%;" class="input_search" v-model="transferInfo.f_newcredentials" readonly="true" placeholder="新用户证类型">
|
|
262
|
+
</div>
|
|
263
|
+
<div class="col-sm-6 form-group">
|
|
264
|
+
<label class="font_normal_body">新用户证件号</label>
|
|
265
|
+
<input type="text" style="width:60%;" class="input_search" v-model="transferInfo.f_newidnumber" readonly="true" placeholder="新用户证件号">
|
|
266
|
+
</div>
|
|
259
267
|
</div>
|
|
260
268
|
</div>
|
|
261
|
-
</div>
|
|
262
269
|
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
<input type="text" style="width:100%;" class="input_search" v-model="transferInfo.f_newuser_name" readonly="true" placeholder="新用户名">
|
|
270
|
+
<!-- 材料展示区 -->
|
|
271
|
+
<div>
|
|
272
|
+
<div v-if="imgList.f_idimglist.length >0" class="col-sm-12 form-group" style="margin-top: 10px;padding: 10px">
|
|
273
|
+
<label class="col-sm-3 control-label text-left">原户主证件材料:</label>
|
|
274
|
+
<div v-for="row in imgList.f_idimglist" class="col-sm-3">
|
|
275
|
+
<img-self :src="row.imgUrl" alt="图片加载失败" :width="100" :height="100"></img-self>
|
|
276
|
+
</div>
|
|
271
277
|
</div>
|
|
272
|
-
<div class="col-sm-12 form-group
|
|
273
|
-
<label class="
|
|
274
|
-
<
|
|
278
|
+
<div v-if="imgList.f_houseimglist.length >0" class="col-sm-12 form-group" style="margin-top: 10px;padding: 10px">
|
|
279
|
+
<label class="col-sm-3 control-label text-left">原户主房屋材料:</label>
|
|
280
|
+
<div v-for="row in imgList.f_houseimglist" class="col-sm-3">
|
|
281
|
+
<img-self :src="row.imgUrl" alt="图片加载失败" :width="100" :height="100"></img-self>
|
|
282
|
+
</div>
|
|
275
283
|
</div>
|
|
276
|
-
<div class="col-sm-12 form-group
|
|
277
|
-
<label class="
|
|
278
|
-
<
|
|
284
|
+
<div v-if="newImgList.f_meterimglist.length >0" class="col-sm-12 form-group" style="margin-top: 10px;padding: 10px">
|
|
285
|
+
<label class="col-sm-3 control-label text-left">气表照片:</label>
|
|
286
|
+
<div v-for="row in newImgList.f_meterimglist" class="col-sm-3">
|
|
287
|
+
<img-self :src="row.imgUrl" alt="图片加载失败" :width="100" :height="100"></img-self>
|
|
288
|
+
</div>
|
|
279
289
|
</div>
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
<!-- 使用 v-for 循环遍历图片列表 -->
|
|
286
|
-
<img-self
|
|
287
|
-
v-for="(index,img) in newImgList"
|
|
288
|
-
:key="index"
|
|
289
|
-
:src="img.imgUrl"
|
|
290
|
-
:alt="'新用户材料图片 ' + (index + 1)"
|
|
291
|
-
:width="100" :height="100"
|
|
292
|
-
></img-self>
|
|
290
|
+
<div v-if="newImgList.f_newidimglist.length >0" class="col-sm-12 form-group" style="margin-top: 10px;padding: 10px">
|
|
291
|
+
<label class="col-sm-3 control-label text-left">新户主证件材料:</label>
|
|
292
|
+
<div v-for="row in newImgList.f_newidimglist" class="col-sm-3">
|
|
293
|
+
<img-self :src="row.imgUrl" alt="图片加载失败" :width="100" :height="100"></img-self>
|
|
294
|
+
</div>
|
|
293
295
|
</div>
|
|
294
|
-
<div v-
|
|
295
|
-
|
|
296
|
+
<div v-if="newImgList.f_newhouseimglist.length >0" class="col-sm-12 form-group" style="margin-top: 10px;padding: 10px">
|
|
297
|
+
<label class="col-sm-3 control-label text-left">新户主房屋材料:</label>
|
|
298
|
+
<div v-for="row in newImgList.f_newhouseimglist" class="col-sm-3">
|
|
299
|
+
<img-self :src="row.imgUrl" alt="图片加载失败" :width="100" :height="100"></img-self>
|
|
300
|
+
</div>
|
|
296
301
|
</div>
|
|
297
302
|
</div>
|
|
298
303
|
</div>
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
304
|
+
|
|
305
|
+
<!-- 下部:审核员备注 -->
|
|
306
|
+
<div style="margin-top: 20px;">
|
|
307
|
+
<div class="col-sm-12">
|
|
308
|
+
<label class="font_normal_body">审核员备注</label>
|
|
309
|
+
<input type="text" style="width:100%;" class="input_search" v-model="transferInfo.f_comments" readonly="true" placeholder="审核员备注">
|
|
310
|
+
</div>
|
|
302
311
|
</div>
|
|
303
312
|
</div>
|
|
304
313
|
</article>
|
|
@@ -314,8 +323,8 @@
|
|
|
314
323
|
import exportConfig from '../config/exportConfig'
|
|
315
324
|
|
|
316
325
|
let readySomething = async function (self) {
|
|
317
|
-
self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString()
|
|
318
|
-
self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString()
|
|
326
|
+
self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
|
|
327
|
+
self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
|
|
319
328
|
// await self.$refs.paged.$refs.cri.search()
|
|
320
329
|
await self.$MagLoadParams.loadParam()
|
|
321
330
|
|
|
@@ -356,8 +365,8 @@
|
|
|
356
365
|
sumsmodel: {},
|
|
357
366
|
handshow: false,
|
|
358
367
|
transferInfo: {},
|
|
359
|
-
newImgList:
|
|
360
|
-
imgList:
|
|
368
|
+
newImgList: {},
|
|
369
|
+
imgList: {}
|
|
361
370
|
}
|
|
362
371
|
},
|
|
363
372
|
ready() {
|
|
@@ -371,13 +380,13 @@
|
|
|
371
380
|
},
|
|
372
381
|
methods: {
|
|
373
382
|
handchange(val) {
|
|
374
|
-
this.imgList =
|
|
375
|
-
this.newImgList =
|
|
383
|
+
this.imgList = {}
|
|
384
|
+
this.newImgList = {}
|
|
376
385
|
if (val) {
|
|
377
386
|
console.log("开启弹窗")
|
|
378
387
|
this.transferInfo = val
|
|
379
|
-
this.imgList = this.transferInfo.f_imglist ? JSON.parse(this.transferInfo.f_imglist) :
|
|
380
|
-
this.newImgList = this.transferInfo.f_newimglist ? JSON.parse(this.transferInfo.f_newimglist) :
|
|
388
|
+
this.imgList = this.transferInfo.f_imglist ? JSON.parse(this.transferInfo.f_imglist) : {}
|
|
389
|
+
this.newImgList = this.transferInfo.f_newimglist ? JSON.parse(this.transferInfo.f_newimglist) : {}
|
|
381
390
|
} else {
|
|
382
391
|
console.log("返回置空")
|
|
383
392
|
this.transferInfo = {}
|
|
@@ -0,0 +1,488 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div id="unit" class="flex-row">
|
|
3
|
+
<div class="basic-main">
|
|
4
|
+
<div class="flex" v-if="!showinfo">
|
|
5
|
+
|
|
6
|
+
<criteria-paged :model="model" v-ref:paged @sort="sort">
|
|
7
|
+
<criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
|
|
8
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
|
|
9
|
+
<div class="row">
|
|
10
|
+
<div class="col-sm-2 form-group">
|
|
11
|
+
<label class="font_normal_body">客户编号</label>
|
|
12
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
|
|
13
|
+
condition="f_userinfo_code = '{}' " placeholder="客户编号">
|
|
14
|
+
</div>
|
|
15
|
+
<div class="col-sm-2 form-group">
|
|
16
|
+
<label for="startDate" class="font_normal_body">开始日期</label>
|
|
17
|
+
<datepicker id="startDate" placeholder="开始日期" style="width:60%"
|
|
18
|
+
v-model="model.startDate"
|
|
19
|
+
:value.sync="model.startDate"
|
|
20
|
+
:format="'yyyy-MM-dd'"
|
|
21
|
+
:show-reset-button="true"
|
|
22
|
+
condition="f_operate_date >= to_date('{} 00:00:00','yyyy-mm-dd hh24:mi:ss')">
|
|
23
|
+
</datepicker>
|
|
24
|
+
</div>
|
|
25
|
+
<div class="col-sm-2 form-group">
|
|
26
|
+
<label for="endDate" class="font_normal_body">结束日期</label>
|
|
27
|
+
<datepicker id="endDate" placeholder="结束日期" style="width:60%"
|
|
28
|
+
v-model="model.endDate"
|
|
29
|
+
:value.sync="model.endDate"
|
|
30
|
+
:format="'yyyy-MM-dd'"
|
|
31
|
+
:show-reset-button="true"
|
|
32
|
+
condition="f_operate_date <= to_date('{} 23:59:59','yyyy-mm-dd hh24:mi:ss')">
|
|
33
|
+
</datepicker>
|
|
34
|
+
</div>
|
|
35
|
+
<div class="col-sm-2 form-group">
|
|
36
|
+
<label class="font_normal_body">气表品牌</label>
|
|
37
|
+
<v-select :value.sync="model.f_meter_brand"
|
|
38
|
+
v-model="model.f_meter_brand"
|
|
39
|
+
:options='$parent.$parent.meterbrands' placeholder='请选择'
|
|
40
|
+
condition="f_meter_brand = '{}'"
|
|
41
|
+
close-on-select></v-select>
|
|
42
|
+
</div>
|
|
43
|
+
<div class="span" style="float:right;">
|
|
44
|
+
<button class="button_search button_spacing" @click="search()">查询</button>
|
|
45
|
+
<button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
|
|
46
|
+
<!--<button class="btn btn-default" @click="$parent.$parent.stamp()">打印</button>-->
|
|
47
|
+
|
|
48
|
+
<export-excel :data="$parent.$parent.getCondition"
|
|
49
|
+
:field="$parent.$parent.getfield"
|
|
50
|
+
sqlurl="rs/logic/exportfile" sql-name="newAccountQuery" template-name='开户查询导出'
|
|
51
|
+
:choose-col="true"></export-excel>
|
|
52
|
+
|
|
53
|
+
<div style="float: right" class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.hidden()"></div>
|
|
54
|
+
</div>
|
|
55
|
+
</div>
|
|
56
|
+
<div class="row" v-show="$parent.$parent.criteriaShow">
|
|
57
|
+
<div class="col-sm-2 form-group">
|
|
58
|
+
<label class="font_normal_body">用户分类</label>
|
|
59
|
+
<v-select :value.sync="model.f_user_type"
|
|
60
|
+
@change="$parent.$parent.userTypeChange"
|
|
61
|
+
:options='$parent.$parent.usertypes' placeholder='请选择' v-model="model.f_user_type"
|
|
62
|
+
condition="f_user_type = '{}'"
|
|
63
|
+
close-on-select></v-select>
|
|
64
|
+
</div>
|
|
65
|
+
<div class="col-sm-2 form-group">
|
|
66
|
+
<label class="font_normal_body">用户类型</label>
|
|
67
|
+
<v-select :value.sync="model.f_user_mold"
|
|
68
|
+
@change="$parent.$parent.userMoldChange"
|
|
69
|
+
:options='$parent.$parent.usermold' placeholder='请选择' v-model="model.f_user_mold"
|
|
70
|
+
close-on-select></v-select>
|
|
71
|
+
</div>
|
|
72
|
+
<div class="col-sm-2 form-group">
|
|
73
|
+
<label class="font_normal_body">用气性质</label>
|
|
74
|
+
<v-select :value.sync="model.f_gasproperties" v-model="model.f_gasproperties"
|
|
75
|
+
:options='$parent.$parent.gasproperties' placeholder='请选择'
|
|
76
|
+
condition="f_gasproperties = '{}'"
|
|
77
|
+
close-on-select></v-select>
|
|
78
|
+
</div>
|
|
79
|
+
<res-select-group style="col-sm-2 form-group" :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
|
|
80
|
+
<div class="col-sm-2 form-group">
|
|
81
|
+
<label class="font_normal_body">客户地址</label>
|
|
82
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_address"
|
|
83
|
+
condition="f_address like '%{}%'" placeholder='客户地址'>
|
|
84
|
+
</div>
|
|
85
|
+
<div class="col-sm-2 form-group">
|
|
86
|
+
<label class="font_normal_body">客户名称</label>
|
|
87
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
|
|
88
|
+
condition="f_user_name like '%{}%'" placeholder="客户名称">
|
|
89
|
+
</div>
|
|
90
|
+
<div class="col-sm-2 form-group">
|
|
91
|
+
<label for="f_area_id" class="font_normal_body">小区编码</label>
|
|
92
|
+
<input id="f_area_id" type="text" style="width:60%" class="input_search" v-model="model.f_area_id"
|
|
93
|
+
condition="f_area_id = '{}'" placeholder='小区编码'>
|
|
94
|
+
</div>
|
|
95
|
+
<div class="col-sm-2 form-group">
|
|
96
|
+
<label class="font_normal_body"> 小区 </label>
|
|
97
|
+
<v-select :value.sync="model.f_residential_area"
|
|
98
|
+
class="select_list select"
|
|
99
|
+
enter-push
|
|
100
|
+
multiple = "true"
|
|
101
|
+
v-model="model.f_residential_area"
|
|
102
|
+
style="width: 60%"
|
|
103
|
+
:options='$parent.$parent.residentialArea' placeholder='选择小区'
|
|
104
|
+
close-on-select>
|
|
105
|
+
</v-select>
|
|
106
|
+
</div>
|
|
107
|
+
<div class="col-sm-2 form-group">
|
|
108
|
+
<label class="font_normal_body">销户人</label>
|
|
109
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_operator"
|
|
110
|
+
condition="f_operator like '%{}%'" placeholder="销户人">
|
|
111
|
+
</div>
|
|
112
|
+
</div>
|
|
113
|
+
</div>
|
|
114
|
+
</criteria>
|
|
115
|
+
|
|
116
|
+
<data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
|
|
117
|
+
<template partial='head'>
|
|
118
|
+
<tr>
|
|
119
|
+
<th>
|
|
120
|
+
<nobr>客户编号</nobr>
|
|
121
|
+
</th>
|
|
122
|
+
<th>
|
|
123
|
+
<nobr>客户名称</nobr>
|
|
124
|
+
</th>
|
|
125
|
+
<th>
|
|
126
|
+
<data-order field="f_address" name="客户地址"></data-order>
|
|
127
|
+
</th>
|
|
128
|
+
<th>
|
|
129
|
+
<nobr>客户电话</nobr>
|
|
130
|
+
</th>
|
|
131
|
+
<th>
|
|
132
|
+
<nobr>身份证号</nobr>
|
|
133
|
+
</th>
|
|
134
|
+
<th>
|
|
135
|
+
<nobr>气价名称</nobr>
|
|
136
|
+
</th>
|
|
137
|
+
<th>
|
|
138
|
+
<nobr>销户时间</nobr>
|
|
139
|
+
</th>
|
|
140
|
+
<th>
|
|
141
|
+
<nobr>表号</nobr>
|
|
142
|
+
</th>
|
|
143
|
+
<th>
|
|
144
|
+
<nobr>置换员</nobr>
|
|
145
|
+
</th>
|
|
146
|
+
<th>
|
|
147
|
+
<nobr>通气时间</nobr>
|
|
148
|
+
</th>
|
|
149
|
+
<th>
|
|
150
|
+
<nobr>用气性质</nobr>
|
|
151
|
+
</th>
|
|
152
|
+
<th>
|
|
153
|
+
<nobr>累购气量</nobr>
|
|
154
|
+
</th>
|
|
155
|
+
<th>
|
|
156
|
+
<nobr>气表品牌</nobr>
|
|
157
|
+
</th>
|
|
158
|
+
<th>
|
|
159
|
+
<nobr>销户原因</nobr>
|
|
160
|
+
</th>
|
|
161
|
+
<th>
|
|
162
|
+
<nobr>销户人</nobr>
|
|
163
|
+
</th>
|
|
164
|
+
</tr>
|
|
165
|
+
</template>
|
|
166
|
+
<template partial='body'>
|
|
167
|
+
<td style="text-align: center;">
|
|
168
|
+
<span @click="$parent.$parent.$parent.showmsg(row)"><a>{{row.f_userinfo_code}}</a></span>
|
|
169
|
+
</td>
|
|
170
|
+
<td style="text-align: center;">
|
|
171
|
+
<nobr>{{row.f_user_name}}</nobr>
|
|
172
|
+
</td>
|
|
173
|
+
<td style="text-align: center;">
|
|
174
|
+
<nobr>{{row.f_address}}</nobr>
|
|
175
|
+
</td>
|
|
176
|
+
<td style="text-align: center;">
|
|
177
|
+
<nobr>{{row.f_user_phone}}</nobr>
|
|
178
|
+
</td>
|
|
179
|
+
<td style="text-align: center;">
|
|
180
|
+
<nobr>{{row.f_idnumber}}</nobr>
|
|
181
|
+
</td>
|
|
182
|
+
<td style="text-align: center;">
|
|
183
|
+
<nobr>{{row.f_price_name}}</nobr>
|
|
184
|
+
</td>
|
|
185
|
+
<td style="text-align: center;">
|
|
186
|
+
<nobr>{{row.f_operate_date}}</nobr>
|
|
187
|
+
</td>
|
|
188
|
+
<td style="text-align: center;">
|
|
189
|
+
<nobr>{{row.f_meternumber}}</nobr>
|
|
190
|
+
</td>
|
|
191
|
+
<td style="text-align: center;">
|
|
192
|
+
<nobr>{{row.f_gas_person}}</nobr>
|
|
193
|
+
</td>
|
|
194
|
+
<td style="text-align: center;">
|
|
195
|
+
<nobr>{{row.f_gas_date}}</nobr>
|
|
196
|
+
</td>
|
|
197
|
+
<td style="text-align: center;">
|
|
198
|
+
<nobr>{{row.f_gasproperties}}</nobr>
|
|
199
|
+
</td>
|
|
200
|
+
<td style="text-align: center;">
|
|
201
|
+
<nobr>{{row.f_total_gas}}</nobr>
|
|
202
|
+
</td>
|
|
203
|
+
<td style="text-align: center;">
|
|
204
|
+
<nobr>{{row.f_meter_brand}}</nobr>
|
|
205
|
+
</td>
|
|
206
|
+
<td style="text-align: center;">
|
|
207
|
+
<nobr>{{row.f_comments}}</nobr>
|
|
208
|
+
</td>
|
|
209
|
+
<td style="text-align: center;">
|
|
210
|
+
<nobr>{{row.f_operator}}</nobr>
|
|
211
|
+
</td>
|
|
212
|
+
</template>
|
|
213
|
+
<template partial='foot'></template>
|
|
214
|
+
</data-grid>
|
|
215
|
+
</criteria-paged>
|
|
216
|
+
</div>
|
|
217
|
+
<div v-if="showinfo">
|
|
218
|
+
<user-info-detail-manage :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage>
|
|
219
|
+
</div>
|
|
220
|
+
</div>
|
|
221
|
+
</div>
|
|
222
|
+
</template>
|
|
223
|
+
|
|
224
|
+
<script>
|
|
225
|
+
import {HttpResetClass, PagedList} from 'vue-client'
|
|
226
|
+
import defaultPrint from '../config/DefaultPrint'
|
|
227
|
+
import exportConfig from '../config/exportConfig'
|
|
228
|
+
import plugins from '../../../plugins/GetLoginInfoService'
|
|
229
|
+
|
|
230
|
+
let readySomething = async function (self) {
|
|
231
|
+
self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString()
|
|
232
|
+
self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString()
|
|
233
|
+
// await self.$refs.paged.$refs.cri.search()
|
|
234
|
+
await self.$MagLoadParams.loadParam()
|
|
235
|
+
self.initParams()
|
|
236
|
+
|
|
237
|
+
self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
|
|
238
|
+
}
|
|
239
|
+
export default {
|
|
240
|
+
title: '销户统计',
|
|
241
|
+
data() {
|
|
242
|
+
return {
|
|
243
|
+
data: {},
|
|
244
|
+
initres: {
|
|
245
|
+
org:[this.$login.f.orgid],
|
|
246
|
+
dep:[],
|
|
247
|
+
user:[],
|
|
248
|
+
},
|
|
249
|
+
gasproperties:[],
|
|
250
|
+
usermold:[],
|
|
251
|
+
orderFields: {
|
|
252
|
+
f_address: 'no'
|
|
253
|
+
},
|
|
254
|
+
orderDefault: "'f_operate_date desc'",
|
|
255
|
+
model: new PagedList('rs/sql/cancelAccountQuery', 20,{orderitem: "'f_operate_date desc'"}),
|
|
256
|
+
f_orgid: this.$login.f.orgid,
|
|
257
|
+
criteriaShow: false,
|
|
258
|
+
modelval: [],
|
|
259
|
+
printshow: false,
|
|
260
|
+
all: false,
|
|
261
|
+
fields: {},
|
|
262
|
+
thead: '',
|
|
263
|
+
tfoot: '',
|
|
264
|
+
orgCondtionStr: '(' + this.$login.f.orgid + ')',
|
|
265
|
+
// orgCondtionStr: ` and f_orgid = '${this.$login.f.orgid}'`,
|
|
266
|
+
meterbrands: [],
|
|
267
|
+
showinfo:false,
|
|
268
|
+
jurisdiction:this.$login.r,
|
|
269
|
+
rowdata:{},
|
|
270
|
+
//合计数据
|
|
271
|
+
sumsmodel: {},
|
|
272
|
+
residentialArea:[],
|
|
273
|
+
area:[]
|
|
274
|
+
}
|
|
275
|
+
},
|
|
276
|
+
ready() {
|
|
277
|
+
this.getaddress()
|
|
278
|
+
|
|
279
|
+
readySomething(this).then(() => {
|
|
280
|
+
this.$emit('ready')
|
|
281
|
+
}).catch((error) => {
|
|
282
|
+
this.$emit('error', error)
|
|
283
|
+
})
|
|
284
|
+
},
|
|
285
|
+
methods: {
|
|
286
|
+
userTypeChange () {
|
|
287
|
+
this.usermold=[]
|
|
288
|
+
this.f_gasproperties=[]
|
|
289
|
+
if(this.$refs.paged.$refs.cri.model !== null) {
|
|
290
|
+
this.$refs.paged.$refs.cri.model.f_gasproperties=''
|
|
291
|
+
this.$refs.paged.$refs.cri.model.f_user_mold=''
|
|
292
|
+
this.usermold = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
|
|
293
|
+
}
|
|
294
|
+
else{
|
|
295
|
+
this.usermold =[{label: '全部', value: ''}]
|
|
296
|
+
}
|
|
297
|
+
},
|
|
298
|
+
userMoldChange () {
|
|
299
|
+
this.gasproperties=[]
|
|
300
|
+
if(this.$refs.paged.$refs.cri.model !==null) {
|
|
301
|
+
this.$refs.paged.$refs.cri.model.f_gasproperties=''
|
|
302
|
+
if (this.$refs.paged.$refs.cri.model.f_user_mold[0] ==='居民'){
|
|
303
|
+
this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0] + this.$refs.paged.$refs.cri.model.f_user_mold[0])
|
|
304
|
+
return
|
|
305
|
+
}
|
|
306
|
+
this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_mold[0])
|
|
307
|
+
}
|
|
308
|
+
else{
|
|
309
|
+
this.gasproperties =[{label: '全部', value: ''}]
|
|
310
|
+
}
|
|
311
|
+
},
|
|
312
|
+
async getaddress(){
|
|
313
|
+
console.log('开始获取小区')
|
|
314
|
+
let HttpReset = new HttpResetClass()
|
|
315
|
+
var data = await HttpReset.load('POST', 'rs/sql/manage_getarealist', {
|
|
316
|
+
data: {
|
|
317
|
+
condition: '1=1'
|
|
318
|
+
}
|
|
319
|
+
}, {resolveMsg: null, rejectMsg: '获取小区失败!'})
|
|
320
|
+
console.log('小区',data)
|
|
321
|
+
let house = []
|
|
322
|
+
for (let row of data.data){
|
|
323
|
+
console.log('开始保存小区')
|
|
324
|
+
house.push({label: row.f_residential_area, value: row.f_residential_area})
|
|
325
|
+
}
|
|
326
|
+
this.residentialArea = house
|
|
327
|
+
},
|
|
328
|
+
cancel() {
|
|
329
|
+
this.showinfo = false
|
|
330
|
+
},
|
|
331
|
+
search() {
|
|
332
|
+
this.$refs.paged.$refs.cri.search()
|
|
333
|
+
},
|
|
334
|
+
getRes(obj,val) {
|
|
335
|
+
console.log(obj,"=====111===",val)
|
|
336
|
+
this.orgCondtionStr = obj
|
|
337
|
+
},
|
|
338
|
+
|
|
339
|
+
selfSearch(args) {
|
|
340
|
+
//小区查询条件
|
|
341
|
+
this.area = this.$refs.paged.$refs.cri.model.f_residential_area
|
|
342
|
+
console.log("=====小区model绑定====",this.area)
|
|
343
|
+
if(this.area.length !== 0){
|
|
344
|
+
let str = JSON.stringify(this.area)
|
|
345
|
+
str = str.replace(/"/g,`'`)
|
|
346
|
+
str = str.replace(/\[/g,``)
|
|
347
|
+
str = str.replace(/\]/g,``)
|
|
348
|
+
console.log("=====小区model22222222222绑定====",str)
|
|
349
|
+
//查询多个小区时条件
|
|
350
|
+
args.condition += ` and f_residential_area in ( ${str} )`
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
args.condition = `${args.condition}` + this.orgCondtionStr
|
|
354
|
+
this.model.search(args.condition, args.model)
|
|
355
|
+
},
|
|
356
|
+
showmsg(obj){
|
|
357
|
+
this.rowdata=obj
|
|
358
|
+
this.showinfo=true
|
|
359
|
+
},
|
|
360
|
+
initParams() {
|
|
361
|
+
// 初始化气表品牌
|
|
362
|
+
let brandArr = []
|
|
363
|
+
this.$MagGetSaleParam.getGasbrand().forEach((item) => {
|
|
364
|
+
let temp = {}
|
|
365
|
+
temp.label = item.label
|
|
366
|
+
temp.value = item.value.f_meter_brand
|
|
367
|
+
brandArr.push(temp)
|
|
368
|
+
})
|
|
369
|
+
this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
|
|
370
|
+
},
|
|
371
|
+
|
|
372
|
+
clear() {
|
|
373
|
+
Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
|
|
374
|
+
this.$refs.paged.$refs.cri.model[key] = ''
|
|
375
|
+
})
|
|
376
|
+
},
|
|
377
|
+
show() {
|
|
378
|
+
this.criteriaShow = true
|
|
379
|
+
},
|
|
380
|
+
hidden() {
|
|
381
|
+
this.criteriaShow = !this.criteriaShow
|
|
382
|
+
},
|
|
383
|
+
dealmsg(val) {
|
|
384
|
+
console.log('---------------dealmsg')
|
|
385
|
+
this.rowdata=val
|
|
386
|
+
this.show=true
|
|
387
|
+
val.model = this.model.model
|
|
388
|
+
this.$dispatch('deal-msg', val)
|
|
389
|
+
},
|
|
390
|
+
stamp() {
|
|
391
|
+
this.all = false
|
|
392
|
+
//默认选择要打印的列
|
|
393
|
+
this.modelval = defaultPrint.config
|
|
394
|
+
this.fields = this.getfield
|
|
395
|
+
console.log('所有打印字段', this.fields)
|
|
396
|
+
this.printshow = true
|
|
397
|
+
this.put()
|
|
398
|
+
},
|
|
399
|
+
put() {
|
|
400
|
+
// 对Modelval进行排序
|
|
401
|
+
this.sortModelval()
|
|
402
|
+
this.thead = `<tr><th colspan=${this.modelval.length}>补卡查询统计报表</th></tr><tr>`
|
|
403
|
+
for (let key of this.modelval) {
|
|
404
|
+
this.thead += '<th>' + this.fields[key] + '</th>'
|
|
405
|
+
}
|
|
406
|
+
this.thead += '</tr>'
|
|
407
|
+
},
|
|
408
|
+
print() {
|
|
409
|
+
this.$refs.print.PrintAsFile()
|
|
410
|
+
this.printshow = false
|
|
411
|
+
},
|
|
412
|
+
close() {
|
|
413
|
+
this.printshow = false
|
|
414
|
+
this.all = false
|
|
415
|
+
},
|
|
416
|
+
// 对选择的列进行排序
|
|
417
|
+
sortModelval() {
|
|
418
|
+
let sortModel = []
|
|
419
|
+
Object.keys(this.fields).forEach((key) => {
|
|
420
|
+
if (this.modelval.includes(key)) {
|
|
421
|
+
sortModel.push(key)
|
|
422
|
+
}
|
|
423
|
+
})
|
|
424
|
+
this.modelval = sortModel
|
|
425
|
+
console.log('选择的打印的字段', this.modelval)
|
|
426
|
+
},
|
|
427
|
+
async updateParams() {
|
|
428
|
+
await this.$MagLoadParams.loadParam(this.f_filialeid)
|
|
429
|
+
this.initParams()
|
|
430
|
+
},
|
|
431
|
+
sort (field, rule) {
|
|
432
|
+
// 将所有排序方式设为不排序,实现相互排斥
|
|
433
|
+
debugger
|
|
434
|
+
for (let key in this.orderFields) {
|
|
435
|
+
if (key === field) {
|
|
436
|
+
this.orderFields[key] = rule
|
|
437
|
+
} else {
|
|
438
|
+
this.orderFields[key] = 'no'
|
|
439
|
+
}
|
|
440
|
+
}
|
|
441
|
+
// 如果新规则不排序,还原为默认排序
|
|
442
|
+
if (rule === 'no') {
|
|
443
|
+
this.model.paramSource.orderitem = `'${this.orderDefault}'`
|
|
444
|
+
} else {
|
|
445
|
+
this.model.paramSource.orderitem = `'${field} ${rule}'`
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
this.search()
|
|
449
|
+
}
|
|
450
|
+
},
|
|
451
|
+
watch: {
|
|
452
|
+
'all'(val) {
|
|
453
|
+
if (val) {
|
|
454
|
+
this.modelval = this.bodyData
|
|
455
|
+
} else {
|
|
456
|
+
this.modelval = defaultPrint.config
|
|
457
|
+
this.put()
|
|
458
|
+
}
|
|
459
|
+
},
|
|
460
|
+
'modelval.length'() {
|
|
461
|
+
this.put()
|
|
462
|
+
}
|
|
463
|
+
},
|
|
464
|
+
computed: {
|
|
465
|
+
usertypes() {
|
|
466
|
+
return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('用户类型')]
|
|
467
|
+
},
|
|
468
|
+
authArr () {
|
|
469
|
+
return this.$login.r ? this.$login.r : []
|
|
470
|
+
},
|
|
471
|
+
getCondition () {
|
|
472
|
+
var con = ""
|
|
473
|
+
if (this.orgCondtionStr) {
|
|
474
|
+
con = `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr
|
|
475
|
+
}
|
|
476
|
+
else {
|
|
477
|
+
con = `${this.$refs.paged.$refs.cri.condition}and f_orgid in ('${this.$login.f.orgid}' )`
|
|
478
|
+
}
|
|
479
|
+
return {
|
|
480
|
+
condition: con
|
|
481
|
+
}
|
|
482
|
+
},
|
|
483
|
+
getfield() {
|
|
484
|
+
return exportConfig.NewAccountConfig
|
|
485
|
+
}
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
</script>
|
package/src/saleManage.js
CHANGED
|
@@ -104,6 +104,9 @@ export default function () {
|
|
|
104
104
|
Vue.component('new-account-query', (resolve) => {
|
|
105
105
|
require(['./components/sale/businessquery/NewAccountQuery'], resolve)
|
|
106
106
|
})
|
|
107
|
+
Vue.component('cancel-account-query', (resolve) => {
|
|
108
|
+
require(['./components/sale/businessquery/cancelAccountQuery'], resolve)
|
|
109
|
+
})
|
|
107
110
|
Vue.component('area-general-query', (resolve) => {
|
|
108
111
|
require(['./components/sale/businessquery/AreaGeneralQuery'], resolve)
|
|
109
112
|
})
|