sale-client 3.5.26 → 3.5.27
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/package.json +1 -1
- package/src/components/FilesManage/FileUserFiles.vue +4 -4
- package/src/components/FilesManage/MeterinfoTest.vue +13 -2
- package/src/components/FilesManage/UserEssentialInfoTest.vue +7 -0
- package/src/components/charge/ChargeOper.vue +3 -1
- package/src/components/revenue/base/rightview/CardList.vue +6 -6
- package/src/components/revenue/base/rightview/carddetail/GarbageDetail.vue +59 -0
- package/src/components/revenue/comprehen/ComprehenOperation/BankPayment/BankPaymentConstrast.vue +286 -0
- package/src/components/revenue/comprehen/ComprehenOperation/BankPayment/BankPaymentnew.vue +52 -0
- package/src/components/revenue/comprehen/common/ImportExcel.vue +9 -6
- package/src/components/webMeter/MeterManage/WebMeterBatchOperationValve.vue +8 -0
- package/src/filiale/dongguan/components/FilesManage/FileUserFiles.vue +4 -4
- package/src/filiale/dongguan/components/common/userinfo_detail/UserBaseInfoNew.vue +52 -1
- package/src/filiale/kelai/GarbageCharge.vue +205 -0
- package/src/filiale/kelai/UserfilesList.vue +293 -0
- package/src/filiale/kelai/sale.js +5 -2
- package/src/main.js +1 -1
- package/src/sale.js +4 -0
package/package.json
CHANGED
|
@@ -58,8 +58,6 @@
|
|
|
58
58
|
<button @click="$parent.$parent.importFile" class="button_export button_spacing"
|
|
59
59
|
style="float: right" v-if="false">导入
|
|
60
60
|
</button>
|
|
61
|
-
<button class="button_search button_spacing" style="width: 90px" @click="$parent.$parent.downloadFiles()">模板下载
|
|
62
|
-
</button>
|
|
63
61
|
<!-- <button class="button_search" style="width: 90px" @click=" $parent.$parent.selectaddress()">选择地址</button>-->
|
|
64
62
|
<button @click="$parent.$parent.xiaohu()"
|
|
65
63
|
class="button_delete button_spacing"
|
|
@@ -407,9 +405,11 @@
|
|
|
407
405
|
<footer slot="modal-footer" class="modal-footer">
|
|
408
406
|
</footer>
|
|
409
407
|
</modal>
|
|
410
|
-
<modal :show.sync="batchMeterShow" width="
|
|
408
|
+
<modal :show.sync="batchMeterShow" width="570px" title="文件导入" v-ref:modal large backdrop="false">
|
|
411
409
|
<article slot="modal-body" class="modal-body">
|
|
412
|
-
<file-upload class="my-file-uploader" name="useraddressUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
|
|
410
|
+
<file-upload class="my-file-uploader col-sm-9" name="useraddressUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
|
|
411
|
+
<button class="button_clear btn-gn" style="margin-top: 10px;background-color: #6aa6e2;" @click="downloadFiles()">模板下载
|
|
412
|
+
</button>
|
|
413
413
|
</article>
|
|
414
414
|
<footer slot="modal-footer" class="modal-footer">
|
|
415
415
|
</footer>
|
|
@@ -185,7 +185,7 @@
|
|
|
185
185
|
</div>
|
|
186
186
|
<div class="col-sm-4 form-group">
|
|
187
187
|
<label class="font_normal_body">表具使用年限</label>
|
|
188
|
-
<input type="number" class="input_search" style="width:60%" v-model="
|
|
188
|
+
<input type="number" class="input_search" style="width:60%" v-model="row.f_use_limit"
|
|
189
189
|
placeholder='表具使用年限' >
|
|
190
190
|
</div>
|
|
191
191
|
<div class="col-sm-4 form-group">
|
|
@@ -794,8 +794,19 @@
|
|
|
794
794
|
} else {
|
|
795
795
|
this.ratioshow = false
|
|
796
796
|
}
|
|
797
|
+
},
|
|
798
|
+
'row.f_gas_date' (val) {
|
|
799
|
+
if (!this.row.f_use_limit) {
|
|
800
|
+
this.row.f_use_limit = this.$appdata.getSingleValue('使用年限')
|
|
801
|
+
}
|
|
802
|
+
if (!this.row.f_scrap_date && this.row.f_gas_date) {
|
|
803
|
+
if (this.row.f_use_limit !== undefined) {
|
|
804
|
+
let date = new Date(this.row.f_gas_date)
|
|
805
|
+
let year = date.getFullYear() + (this.row.f_use_limit / 1)
|
|
806
|
+
this.row.f_scrap_date = year + this.row.f_gas_date.slice(4)
|
|
807
|
+
}
|
|
808
|
+
}
|
|
797
809
|
}
|
|
798
|
-
|
|
799
810
|
},
|
|
800
811
|
computed: {
|
|
801
812
|
|
|
@@ -106,6 +106,13 @@
|
|
|
106
106
|
<input type="text" v-model="baseinfo.base.f_zuhu_phone" class="input_search" style="width:60%"
|
|
107
107
|
placeholder="租户电话">
|
|
108
108
|
</div>
|
|
109
|
+
</div>
|
|
110
|
+
<div class="row">
|
|
111
|
+
<div style="" class="col-sm-8 form-group">
|
|
112
|
+
<label for="f_zuhu_idnumber" class="font_normal_body">租户身份证</label>
|
|
113
|
+
<input type="text" v-model="baseinfo.base.f_zuhu_idnumber" class="input_search" style="width:80%"
|
|
114
|
+
placeholder="租户身份证">
|
|
115
|
+
</div>
|
|
109
116
|
<div style="" class="col-sm-4 form-group">
|
|
110
117
|
<label for="f_is_mgq" class="font_normal_body "> 付款类型</label>
|
|
111
118
|
<v-select id="f_is_mgq" :value.sync="baseinfo.base.f_cost_type" v-model="baseinfo.base.f_cost_type"
|
|
@@ -49,7 +49,9 @@
|
|
|
49
49
|
} else {
|
|
50
50
|
self.temp = []
|
|
51
51
|
for (let i = 0; i < getBtns.length; i++) {
|
|
52
|
-
|
|
52
|
+
// 不需要权限的按钮
|
|
53
|
+
let noInclude = getBtns[i].name === '垃圾费收费'
|
|
54
|
+
if (noInclude || self.$login.r.includes(getBtns[i].name)) {
|
|
53
55
|
// 进行权限验证
|
|
54
56
|
self.temp.push(getBtns[i])
|
|
55
57
|
}
|
|
@@ -116,8 +116,7 @@
|
|
|
116
116
|
<transfermanage-detail :data="row" v-if="row.type === '过户'"></transfermanage-detail>
|
|
117
117
|
<othercharge-detail :data="row" v-if="row.type === '其他收费欠费登记'||row.type === '其他收费'||row.type === '维修收费'"></othercharge-detail>
|
|
118
118
|
<inputtorchange-detail :data="row" v-if="row.type === '抄表员变更'"></inputtorchange-detail>
|
|
119
|
-
<offgasaddgas-detail :data="row"
|
|
120
|
-
v-if=" row.type === '换表补气' ||row.type === '其他补气' || row.type === '清零补气' || row.type === '掉气补气'||row.type==='物联网补费'||row.type==='物联网扣费'||row.type==='机表补费'||row.type==='机表扣费'||row.type==='物联网补气'||row.type==='物联网扣气' " ></offgasaddgas-detail>
|
|
119
|
+
<offgasaddgas-detail :data="row" v-if=" row.type === '换表补气' ||row.type === '其他补气' || row.type === '清零补气' || row.type === '掉气补气'||row.type==='物联网补费'||row.type==='物联网扣费'||row.type==='机表补费'||row.type==='机表扣费'||row.type==='物联网补气'||row.type==='物联网扣气' " ></offgasaddgas-detail>
|
|
121
120
|
<iotopen-detail :data="row" v-if="row.type === '开通'"></iotopen-detail>
|
|
122
121
|
<iotmetercenter-detail :data="row" v-if="row.type === '物联网收费' || row.type === '物联网开户' || row.type === '调价退费' || row.type === '调价补费'||row.type === '退押金' "></iotmetercenter-detail>
|
|
123
122
|
<overuserchange-detail :data="row" v-if="row.type === '超用收费'"></overuserchange-detail>
|
|
@@ -134,10 +133,8 @@
|
|
|
134
133
|
<autoaccounts-cancel-detail :data="row" v-if="row.type === '自动下账撤销'"></autoaccounts-cancel-detail>
|
|
135
134
|
<transfermanage-cancel-detail :data="row" v-if="row.type === '过户撤销'"></transfermanage-cancel-detail>
|
|
136
135
|
<cardmetercenter-cancel-detail :data="row" v-if="row.type === '卡表收费撤销'"></cardmetercenter-cancel-detail>
|
|
137
|
-
<machinemetercenter-cancel-detail :data="row"
|
|
138
|
-
|
|
139
|
-
<machinemetercenter-cancel-detail :data="row"
|
|
140
|
-
v-if="row.type == '预存缴费撤销'"></machinemetercenter-cancel-detail>
|
|
136
|
+
<machinemetercenter-cancel-detail :data="row" v-if="row.type === '机表收费撤销'"></machinemetercenter-cancel-detail>
|
|
137
|
+
<machinemetercenter-cancel-detail :data="row" v-if="row.type == '预存缴费撤销'"></machinemetercenter-cancel-detail>
|
|
141
138
|
<othercharge-cancel-detail :data="row" v-if="row.type === '其他收费撤销'"></othercharge-cancel-detail>
|
|
142
139
|
<replacecardmanage-cancel-detail :data="row" v-if="row.type === '补卡撤销'"></replacecardmanage-cancel-detail>
|
|
143
140
|
<iotmetercenter-cancel-detail :data="row" v-if="row.type === '物联网收费撤销'"></iotmetercenter-cancel-detail>
|
|
@@ -148,6 +145,7 @@
|
|
|
148
145
|
<advance-delivery-detail :data="row" v-if="row.type ==='卡表预交' "></advance-delivery-detail>
|
|
149
146
|
<machinemetercenter-detail :data="row" v-if="row.type === '预存缴费'||row.type == '调价预存'"></machinemetercenter-detail>
|
|
150
147
|
<gasloss-detail :data="row" v-if="row.type === '气损收费' || row.type === '气损收费撤销'"></gasloss-detail>
|
|
148
|
+
<garbage-detail :data="row" v-if="row.type === '垃圾费收费'"></garbage-detail>
|
|
151
149
|
</div>
|
|
152
150
|
<div style="margin-top: 8px;background: #FFF;" v-if="!$parent.$parent.$parent.isSelected(row)">
|
|
153
151
|
<span>{{row.f_describe}}</span>
|
|
@@ -462,6 +460,8 @@
|
|
|
462
460
|
} else {
|
|
463
461
|
name = 'rs/report/iot_sell'
|
|
464
462
|
}
|
|
463
|
+
} else if (type === '垃圾费收费') {
|
|
464
|
+
name = 'rs/report/garbageChargeReport'
|
|
465
465
|
}
|
|
466
466
|
return name
|
|
467
467
|
},
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto">
|
|
3
|
+
<partial-view v-ref:pv>
|
|
4
|
+
<div class="row">
|
|
5
|
+
<label class = "col-sm-4">开始日期:</label>
|
|
6
|
+
<span class = "col-sm-8" style="text-align:left">{{model.min_hand_date}}</span>
|
|
7
|
+
</div>
|
|
8
|
+
<div class="row">
|
|
9
|
+
<label class = "col-sm-4">结束日期:</label>
|
|
10
|
+
<span class = "col-sm-8" style="text-align:left">{{model.max_hand_date}}</span>
|
|
11
|
+
</div>
|
|
12
|
+
<div class="row">
|
|
13
|
+
<label class = "col-sm-4">缴费月数:</label>
|
|
14
|
+
<span class = "col-sm-8" style="text-align:left">{{model.month}}</span>
|
|
15
|
+
</div>
|
|
16
|
+
<div class="row">
|
|
17
|
+
<label class = "col-sm-4">总金额:</label>
|
|
18
|
+
<span class = "col-sm-8" style="text-align:left">{{model.money}}</span>
|
|
19
|
+
</div>
|
|
20
|
+
<div class="row">
|
|
21
|
+
<label class = "col-sm-4">操作人:</label>
|
|
22
|
+
<span class = "col-sm-8" style="text-align:left">{{data.f_operator}}</span>
|
|
23
|
+
</div>
|
|
24
|
+
<div class="row">
|
|
25
|
+
<label class = "col-sm-4">操作时间:</label>
|
|
26
|
+
<span class = "col-sm-8" style="text-align:left">{{data.f_operate_date}}</span>
|
|
27
|
+
</div>
|
|
28
|
+
</partial-view>
|
|
29
|
+
</div>
|
|
30
|
+
</template>
|
|
31
|
+
|
|
32
|
+
<script>
|
|
33
|
+
export default {
|
|
34
|
+
title: '垃圾费收费详情',
|
|
35
|
+
props: ['data'],
|
|
36
|
+
data () {
|
|
37
|
+
return {
|
|
38
|
+
model: {}
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
ready () {
|
|
42
|
+
let sql = 'garbageDetail'
|
|
43
|
+
let condition = {
|
|
44
|
+
recordId: this.data.id
|
|
45
|
+
}
|
|
46
|
+
this.$info(`加载数据中..., sql:${sql}`)
|
|
47
|
+
this.$refs.pv.load('rs/logic/getOneData', {data: {sql: sql, params: condition}}).then((a) => {
|
|
48
|
+
this.$info(`成功获取到数据!, data:${JSON.stringify(a.data)}`)
|
|
49
|
+
this.model = a.data
|
|
50
|
+
}).catch((error) => {
|
|
51
|
+
if (error.status) {
|
|
52
|
+
this.$warn(`加载数据出错, ${JSON.stringify(error)}`)
|
|
53
|
+
return
|
|
54
|
+
}
|
|
55
|
+
throw error
|
|
56
|
+
})
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
</script>
|
package/src/components/revenue/comprehen/ComprehenOperation/BankPayment/BankPaymentConstrast.vue
ADDED
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="basic-main" style="height: 98%">
|
|
3
|
+
<div class="flex">
|
|
4
|
+
<criteria-paged :model="model" v-ref:paged>
|
|
5
|
+
<criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
|
|
6
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
|
|
7
|
+
<div class="row">
|
|
8
|
+
<div class="col-sm-2 form-group">
|
|
9
|
+
<label for="f_payment" class="font_normal_body">付款方式:</label>
|
|
10
|
+
<v-select id="f_payment"
|
|
11
|
+
v-model="model.f_payment"
|
|
12
|
+
placeholder='付款方式'
|
|
13
|
+
:value-single="true"
|
|
14
|
+
condition="f_payment='{}' "
|
|
15
|
+
:value.sync="model.f_payment"
|
|
16
|
+
:options='$parent.$parent.payment'
|
|
17
|
+
close-on-select ></v-select>
|
|
18
|
+
</div>
|
|
19
|
+
<div class="col-sm-2 form-group">
|
|
20
|
+
<label for="f_bank_name" class="font_normal_body">银行名称:</label>
|
|
21
|
+
<v-select id="f_bank_name"
|
|
22
|
+
v-model="model.f_bank_name"
|
|
23
|
+
placeholder='银行名称'
|
|
24
|
+
:value-single="true"
|
|
25
|
+
condition="f_bank_name= '{}' "
|
|
26
|
+
:value.sync="model.f_bank_name"
|
|
27
|
+
:options='$parent.$parent.bankname'
|
|
28
|
+
close-on-select ></v-select>
|
|
29
|
+
</div>
|
|
30
|
+
<div class="col-sm-2 form-group">
|
|
31
|
+
<label for="startDate" class="font_normal_body">开始日期:</label>
|
|
32
|
+
<datepicker id="startDate" placeholder="开始日期"
|
|
33
|
+
v-model="model.startDate" style="width: 60%"
|
|
34
|
+
:value.sync="model.startDate"
|
|
35
|
+
:disabled-days-of-Week="[]"
|
|
36
|
+
:format="'yyyy-MM-dd'"
|
|
37
|
+
:show-reset-button="reset">
|
|
38
|
+
</datepicker>
|
|
39
|
+
</div>
|
|
40
|
+
<div class="col-sm-2 form-group">
|
|
41
|
+
<label for="endDate" class="font_normal_body">结束日期:</label>
|
|
42
|
+
<datepicker id="endDate" placeholder="结束日期"
|
|
43
|
+
v-model="model.endDate" style="width: 60%"
|
|
44
|
+
:value.sync="model.endDate"
|
|
45
|
+
:disabled-days-of-Week="[]"
|
|
46
|
+
:format="'yyyy-MM-dd'"
|
|
47
|
+
:show-reset-button="reset">
|
|
48
|
+
</datepicker>
|
|
49
|
+
</div>
|
|
50
|
+
<div class="span" style="float:right;">
|
|
51
|
+
<button class="button_search button_spacing width-60" @click="search()" v-el:cx>查询</button>
|
|
52
|
+
<export-excel :data="$parent.$parent.getCondition"
|
|
53
|
+
:field="$parent.$parent.getfield"
|
|
54
|
+
:footer="$parent.$parent.footer"
|
|
55
|
+
:header="$parent.$parent.other"
|
|
56
|
+
sqlurl="rs/logic/saleExport" progress="saleGetExportProgress" sql-name="bankPaymentSummary"
|
|
57
|
+
template-name='银行对账汇总信息' :choose-col="true"></export-excel>
|
|
58
|
+
</div>
|
|
59
|
+
</div>
|
|
60
|
+
</div>
|
|
61
|
+
</criteria>
|
|
62
|
+
<data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
|
|
63
|
+
<template partial='head'>
|
|
64
|
+
<tr>
|
|
65
|
+
<th>序号</th>
|
|
66
|
+
<th>付款方式</th>
|
|
67
|
+
<th>银行名称</th>
|
|
68
|
+
<th>银行总金额</th>
|
|
69
|
+
<th>燃气总金额</th>
|
|
70
|
+
<th>差额</th>
|
|
71
|
+
<th style="white-space: nowrap;">交易日期</th>
|
|
72
|
+
</tr>
|
|
73
|
+
</template>
|
|
74
|
+
<template partial='body'>
|
|
75
|
+
<td style="text-align: center;">
|
|
76
|
+
<nobr>{{$index+1}}</nobr>
|
|
77
|
+
</td>
|
|
78
|
+
<td style="text-align: center;">
|
|
79
|
+
<nobr>{{row.f_payment}}</nobr>
|
|
80
|
+
</td>
|
|
81
|
+
<td style="text-align: center;">
|
|
82
|
+
<nobr>{{row.f_bank_name}}</nobr>
|
|
83
|
+
</td>
|
|
84
|
+
<td style="text-align: center;">
|
|
85
|
+
<nobr>{{row.f_total_charge}}</nobr>
|
|
86
|
+
</td>
|
|
87
|
+
<td style="text-align: center;">
|
|
88
|
+
<nobr>{{row.f_collection}}</nobr>
|
|
89
|
+
</td>
|
|
90
|
+
<td style="text-align: center;">
|
|
91
|
+
<nobr>{{((row.f_total_charge-0) - (row.f_collection-0)).toFixed(2)}}</nobr>
|
|
92
|
+
</td>
|
|
93
|
+
<td style="text-align: center;">
|
|
94
|
+
<nobr>{{row.f_trade_date}}</nobr>
|
|
95
|
+
</td>
|
|
96
|
+
</template>
|
|
97
|
+
</data-grid>
|
|
98
|
+
</criteria-paged>
|
|
99
|
+
<table class="table-hover">
|
|
100
|
+
<tr style="position: relative" class="table-bordered">
|
|
101
|
+
<td
|
|
102
|
+
style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
|
|
103
|
+
汇总信息
|
|
104
|
+
</td>
|
|
105
|
+
<td
|
|
106
|
+
style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
|
|
107
|
+
银行金额汇总: {{sumsmodel.f_total_charge}}
|
|
108
|
+
</td>
|
|
109
|
+
<td
|
|
110
|
+
style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
|
|
111
|
+
收费系统金额汇总: {{sumsmodel.f_collection}}
|
|
112
|
+
</td>
|
|
113
|
+
<td
|
|
114
|
+
style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
|
|
115
|
+
差额汇总: {{((sumsmodel.f_total_charge -0) - (sumsmodel.f_collection -0)).toFixed(2)}}
|
|
116
|
+
</td>
|
|
117
|
+
</tr>
|
|
118
|
+
</table>
|
|
119
|
+
</div>
|
|
120
|
+
</div>
|
|
121
|
+
</template>
|
|
122
|
+
<script>
|
|
123
|
+
import {PagedList} from 'vue-client'
|
|
124
|
+
|
|
125
|
+
let readyGen = async function (self) {
|
|
126
|
+
self.getfield = self.config.excelHeaders
|
|
127
|
+
self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString()
|
|
128
|
+
self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString()
|
|
129
|
+
|
|
130
|
+
self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
export default {
|
|
134
|
+
title: '银行对账',
|
|
135
|
+
data () {
|
|
136
|
+
return {
|
|
137
|
+
model: new PagedList('rs/sql/bankPaymentSummary', 20,
|
|
138
|
+
{f_payment: 'this.model.f_payment', f_bank_name: 'this.model.f_bank_name', startDate: 'this.model.startDate', endDate: 'this.model.endDate'}, {f_total_charge: '', f_collection: ''}),
|
|
139
|
+
config: {
|
|
140
|
+
// 导出列要和查询列相同
|
|
141
|
+
excelHeaders: {
|
|
142
|
+
'f_payment': '银行名称',
|
|
143
|
+
'f_bank_name': '银行名称',
|
|
144
|
+
'f_total_charge': '银行金额',
|
|
145
|
+
'f_collection': '收费系统金额',
|
|
146
|
+
'f_trade_date': '交易日期'
|
|
147
|
+
}
|
|
148
|
+
},
|
|
149
|
+
criteriaShow: false,
|
|
150
|
+
getfield: {},
|
|
151
|
+
condition2: '',
|
|
152
|
+
depresid: [],
|
|
153
|
+
userresid: [],
|
|
154
|
+
f_orgid: this.$login.f.orgid,
|
|
155
|
+
f_depid: this.$login.f.depids,
|
|
156
|
+
f_operatorid: this.$login.f.id,
|
|
157
|
+
operatorid: [],
|
|
158
|
+
depid: [],
|
|
159
|
+
orgname: '',
|
|
160
|
+
other: [],
|
|
161
|
+
footer: [],
|
|
162
|
+
// 合计数据
|
|
163
|
+
sumsmodel: {},
|
|
164
|
+
msg: [],
|
|
165
|
+
// 公司下拉
|
|
166
|
+
curorgid: [this.$login.f.orgid]
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
props: [],
|
|
170
|
+
ready () {
|
|
171
|
+
readyGen(this)
|
|
172
|
+
},
|
|
173
|
+
methods: {
|
|
174
|
+
hidden () {
|
|
175
|
+
this.criteriaShow = !this.criteriaShow
|
|
176
|
+
},
|
|
177
|
+
getRes (obj) {
|
|
178
|
+
this.orgname = obj.res[0]
|
|
179
|
+
this.depresid = obj.resids
|
|
180
|
+
this.f_orgid = obj.resids
|
|
181
|
+
console.log('-----------------obj', obj)
|
|
182
|
+
},
|
|
183
|
+
getdep (obj, val) {
|
|
184
|
+
this.depname = val[0]
|
|
185
|
+
this.userresid = obj
|
|
186
|
+
this.f_depid = obj
|
|
187
|
+
},
|
|
188
|
+
getuser (obj, val) {
|
|
189
|
+
this.operatorname = val[0]
|
|
190
|
+
this.f_operatorid = obj
|
|
191
|
+
},
|
|
192
|
+
dealmsg (val) {
|
|
193
|
+
val.model = this.model.model
|
|
194
|
+
this.$dispatch('deal-msg', val)
|
|
195
|
+
},
|
|
196
|
+
getotherfooter () {
|
|
197
|
+
// this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
|
|
198
|
+
// this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
|
|
199
|
+
this.other = []
|
|
200
|
+
this.footer = []
|
|
201
|
+
// let exportdata = this.getCondition;
|
|
202
|
+
let otherInData = []
|
|
203
|
+
otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`)
|
|
204
|
+
let footerData = [], exportfield = this.getfield
|
|
205
|
+
footerData.push('合计')
|
|
206
|
+
let self = this
|
|
207
|
+
for (var field in self.sumsmodel) {
|
|
208
|
+
footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`)
|
|
209
|
+
}
|
|
210
|
+
this.footer.push(footerData)
|
|
211
|
+
this.other.push(otherInData)
|
|
212
|
+
},
|
|
213
|
+
getorg (val) {
|
|
214
|
+
this.f_orgid = this.$login.convertToIn(val)
|
|
215
|
+
this.depresid = val
|
|
216
|
+
this.f_filialeid = val[0]
|
|
217
|
+
console.log('yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy', val)
|
|
218
|
+
},
|
|
219
|
+
search () {
|
|
220
|
+
this.$refs.paged.$refs.cri.search()
|
|
221
|
+
},
|
|
222
|
+
selfSearch (args) {
|
|
223
|
+
|
|
224
|
+
this.model.params.startDate = this.$refs.paged.$refs.cri.model.startDate
|
|
225
|
+
this.model.params.endDate = this.$refs.paged.$refs.cri.model.endDate
|
|
226
|
+
this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
|
|
227
|
+
this.model.params.f_payment = this.model.f_payment
|
|
228
|
+
this.model.params.f_bank_name = this.model.f_bank_name
|
|
229
|
+
this.condition2 = args.condition
|
|
230
|
+
this.model.search(args.condition, args.model)
|
|
231
|
+
},
|
|
232
|
+
modify (row) {
|
|
233
|
+
console.log('返回数据1', row)
|
|
234
|
+
this.$showMessage('确认重置支付状态么?', ['confirm', 'cancel']).then((res) => {
|
|
235
|
+
if (res === 'confirm') {
|
|
236
|
+
let data = {
|
|
237
|
+
f_transaction_id: row.f_transaction_id
|
|
238
|
+
}
|
|
239
|
+
this.$resetpost('rs/logic/weChatMeter', data, {resolveMsg: null, rejectMsg: '重置出错!!!'}).then((res) => {
|
|
240
|
+
console.log('返回数据3', res)
|
|
241
|
+
this.$refs.paged.$refs.cri.search()
|
|
242
|
+
this.$showAlert(`重置成功!`, 'success', 4000)
|
|
243
|
+
// this.search()
|
|
244
|
+
}).catch((error) => {
|
|
245
|
+
console.log('重置异常', res)
|
|
246
|
+
})
|
|
247
|
+
}
|
|
248
|
+
})
|
|
249
|
+
}
|
|
250
|
+
},
|
|
251
|
+
computed: {
|
|
252
|
+
getCondition () {
|
|
253
|
+
return {
|
|
254
|
+
f_payment: this.$refs.paged.$refs.cri.model.f_payment,
|
|
255
|
+
f_bank_name: this.$refs.paged.$refs.cri.model.f_bank_name,
|
|
256
|
+
startDate: this.$refs.paged.$refs.cri.model.startDate,
|
|
257
|
+
endDate: this.$refs.paged.$refs.cri.model.endDate,
|
|
258
|
+
condition: this.condition2
|
|
259
|
+
}
|
|
260
|
+
},
|
|
261
|
+
payment () {
|
|
262
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('银行付款方式')]
|
|
263
|
+
},
|
|
264
|
+
bankname () {
|
|
265
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('银行名称')]
|
|
266
|
+
},
|
|
267
|
+
chargeType () {
|
|
268
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('微信收费类型')]
|
|
269
|
+
},
|
|
270
|
+
operator () {
|
|
271
|
+
return this.$getParams('操作员查询用', [{label: '全部', value: ''}])
|
|
272
|
+
},
|
|
273
|
+
network () {
|
|
274
|
+
return this.$getParams('网点查询用', [{label: '全部', value: ''}])
|
|
275
|
+
}
|
|
276
|
+
},
|
|
277
|
+
watch: {
|
|
278
|
+
sumsmodel: {
|
|
279
|
+
handler: function (val) {
|
|
280
|
+
this.getotherfooter()
|
|
281
|
+
},
|
|
282
|
+
deep: true
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
</script>
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<tab-button v-ref:list>
|
|
3
|
+
<tabs header="银行对账汇总">
|
|
4
|
+
<bank-payment-constrast @deal-msg="dealMsg"></bank-payment-constrast>
|
|
5
|
+
</tabs>
|
|
6
|
+
<tabs header="银行对账明细">
|
|
7
|
+
<bank-payment @deal-msg="dealMsg"></bank-payment>
|
|
8
|
+
</tabs>
|
|
9
|
+
</tab-button>
|
|
10
|
+
</template>
|
|
11
|
+
<script>
|
|
12
|
+
import TabButton from './../../../comprehen/common/TabButton'
|
|
13
|
+
import Tabs from './../../../comprehen/common/Tabs'
|
|
14
|
+
import BankPayment from './BankPayment'
|
|
15
|
+
import BankPaymentConstrast from "./BankPaymentConstrast";
|
|
16
|
+
|
|
17
|
+
export default {
|
|
18
|
+
title : '银行对账',
|
|
19
|
+
data () {
|
|
20
|
+
return {// 页面开关
|
|
21
|
+
f_start_date: '',
|
|
22
|
+
f_end_date: '',
|
|
23
|
+
listpage: true,
|
|
24
|
+
width: {
|
|
25
|
+
left: '100%',
|
|
26
|
+
right: '0%'
|
|
27
|
+
},
|
|
28
|
+
// searchNumber:'',
|
|
29
|
+
rowData: {},
|
|
30
|
+
show: [true]
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
components: {BankPaymentConstrast, Tabs, TabButton, BankPayment},
|
|
34
|
+
ready () {
|
|
35
|
+
console.log(this.$refs.list)
|
|
36
|
+
console.log('银行对账')
|
|
37
|
+
},
|
|
38
|
+
methods: {
|
|
39
|
+
cancel (obj) {
|
|
40
|
+
this.listpage = true
|
|
41
|
+
},
|
|
42
|
+
dealMsg (obj) {
|
|
43
|
+
this.rowData = obj
|
|
44
|
+
this.listpage = false
|
|
45
|
+
console.log(obj.model)
|
|
46
|
+
this.f_start_date = obj.model.startDate
|
|
47
|
+
this.f_end_date = obj.model.endDate
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
</script>
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<button class="button_search button_spacing" style="width: 90px" @click.prevent="createInfoForFile()">{{ btnName }}
|
|
3
3
|
</button>
|
|
4
|
-
<
|
|
5
|
-
</button>
|
|
6
|
-
<modal :show.sync="batchShow" width="500px" title="文件导入" v-ref:modal backdrop="false">
|
|
4
|
+
<modal :show.sync="batchShow" width="570px" title="文件导入" v-ref:modal backdrop="false">
|
|
7
5
|
<article slot="modal-body" class="modal-body">
|
|
8
|
-
<file-upload class="my-file-uploader" name="chargePriceUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
|
|
6
|
+
<file-upload class="my-file-uploader col-sm-9" name="chargePriceUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
|
|
7
|
+
<button class="button_clear btn-gn" style="margin-top: 10px;background-color: #6aa6e2;" @click.prevent="downloadFiles()">{{templateBtnName}}
|
|
8
|
+
</button>
|
|
9
9
|
</article>
|
|
10
10
|
<footer slot="modal-footer" class="modal-footer">
|
|
11
11
|
</footer>
|
|
@@ -53,7 +53,6 @@ export default {
|
|
|
53
53
|
methods: {
|
|
54
54
|
downloadFiles () {
|
|
55
55
|
let downurl = 'rs/downloadfile/file?filename=' + this.templateName
|
|
56
|
-
debugger
|
|
57
56
|
this.$resetget(downurl, {}).then(res => {
|
|
58
57
|
var link = document.createElement('a')
|
|
59
58
|
link.target = '_blank'
|
|
@@ -105,7 +104,11 @@ export default {
|
|
|
105
104
|
{data: param}, {timeout: 10 * 60 * 1000}).then((res) => {
|
|
106
105
|
if (res.data) {
|
|
107
106
|
console.log(res.data.totalsum)
|
|
108
|
-
|
|
107
|
+
if (res.data.errorMsg) {
|
|
108
|
+
self.$showMessage(`${res.data.errorMsg}` + this.alertMessage)
|
|
109
|
+
} else {
|
|
110
|
+
self.$showMessage(`本次上传共上传${res.data.totalsum}条数据, 成功${res.data.successnum}条,失败${res.data.errorsum}条` + this.alertMessage)
|
|
111
|
+
}
|
|
109
112
|
self.iswork = false
|
|
110
113
|
}
|
|
111
114
|
})
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
<div class="row">
|
|
9
9
|
<res-select-group :initres="$parent.$parent.initres" :show-component="['company','department','operator','slicearea']" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
|
|
10
10
|
<div class="span" style="float:right">
|
|
11
|
+
<import-excel v-if="$parent.$parent.batchImport === '批量开关阀导入'" template-name="批量开关阀导入Excel模板" logic-name="importBatchValue" import-json="importBatchValue.json"></import-excel>
|
|
11
12
|
<button class="button_search button_spacing" @click="search()" v-el:cba>查询</button>
|
|
12
13
|
<button class="button_clear button_spacing" @click="$parent.$parent.clearmsg">清空</button>
|
|
13
14
|
<label class="font_normal_body" v-if="!$parent.$parent.excelTable">超过十万条限制导出</label>
|
|
@@ -350,6 +351,7 @@ import {HttpResetClass} from 'vue-client'
|
|
|
350
351
|
isShowUserException: false,
|
|
351
352
|
val1: '',
|
|
352
353
|
f_beizhu: '',
|
|
354
|
+
batchImport: '',
|
|
353
355
|
Gasusertype: [],
|
|
354
356
|
Gasproperties: [],
|
|
355
357
|
metermodel: [],
|
|
@@ -405,6 +407,7 @@ import {HttpResetClass} from 'vue-client'
|
|
|
405
407
|
this.$refs.paged.$refs.criteria.search()
|
|
406
408
|
// 初始化气表品牌下拉框
|
|
407
409
|
readyGen(this)
|
|
410
|
+
this.getAuthority()
|
|
408
411
|
},
|
|
409
412
|
events: {
|
|
410
413
|
'dblclick' (row) {
|
|
@@ -413,6 +416,11 @@ import {HttpResetClass} from 'vue-client'
|
|
|
413
416
|
}
|
|
414
417
|
},
|
|
415
418
|
methods: {
|
|
419
|
+
getAuthority () {
|
|
420
|
+
if (this.$login.r.find(value => value == '批量开关阀导入')) {
|
|
421
|
+
this.batchImport = '批量开关阀导入'
|
|
422
|
+
}
|
|
423
|
+
},
|
|
416
424
|
research () {
|
|
417
425
|
this.selectRow = null
|
|
418
426
|
this.$refs.paged.$refs.criteria.search()
|
|
@@ -58,8 +58,6 @@
|
|
|
58
58
|
<button @click="$parent.$parent.importFile" class="button_export button_spacing"
|
|
59
59
|
style="float: right" v-if="false">导入
|
|
60
60
|
</button>
|
|
61
|
-
<button class="button_search button_spacing" style="width: 90px" @click="$parent.$parent.downloadFiles()">模板下载
|
|
62
|
-
</button>
|
|
63
61
|
<!-- <button class="button_search" style="width: 90px" @click=" $parent.$parent.selectaddress()">选择地址</button>-->
|
|
64
62
|
<button @click="$parent.$parent.xiaohu()"
|
|
65
63
|
class="button_delete button_spacing"
|
|
@@ -410,9 +408,11 @@
|
|
|
410
408
|
<footer slot="modal-footer" class="modal-footer">
|
|
411
409
|
</footer>
|
|
412
410
|
</modal>
|
|
413
|
-
<modal :show.sync="batchMeterShow" width="
|
|
411
|
+
<modal :show.sync="batchMeterShow" width="570px" title="文件导入" v-ref:modal large backdrop="false">
|
|
414
412
|
<article slot="modal-body" class="modal-body">
|
|
415
|
-
<file-upload class="my-file-uploader" name="useraddressUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
|
|
413
|
+
<file-upload class="my-file-uploader col-sm-9" name="useraddressUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
|
|
414
|
+
<button class="button_clear btn-gn" style="margin-top: 10px;background-color: #6aa6e2;" @click="downloadFiles()">模板下载
|
|
415
|
+
</button>
|
|
416
416
|
</article>
|
|
417
417
|
<footer slot="modal-footer" class="modal-footer">
|
|
418
418
|
</footer>
|
|
@@ -154,8 +154,10 @@
|
|
|
154
154
|
<button class="button_search" type="button" @click="goChargeManage">去收费</button>
|
|
155
155
|
<button v-if="row.f_meter_brand.includes('西美')&&row.f_meter_type.includes('物联网表')"
|
|
156
156
|
class="button_search" type="button" @click="clearBarrier">清除障碍</button>
|
|
157
|
-
<button v-if="row.f_meter_type.includes('物联网表')"
|
|
157
|
+
<button v-if="row.f_meter_type.includes('物联网表') && row.f_user_state !== '正常'"
|
|
158
158
|
class="button_search" type="button" @click="openUser">开户</button>
|
|
159
|
+
<button v-if="row.f_meter_type.includes('物联网表') && row.f_user_state == '正常'"
|
|
160
|
+
class="button_search" type="button" @click="cancelUserTitle">销户</button>
|
|
159
161
|
<button v-if="row.f_meter_type.includes('物联网表')"
|
|
160
162
|
class="button_search" type="button" @click="valvecontrol">开关阀</button>
|
|
161
163
|
<button v-if="row.f_meter_type.includes('物联网表')"
|
|
@@ -240,12 +242,29 @@
|
|
|
240
242
|
<button type="button" class="btn btn-info btn-ln fr" @click='valveoperate(false)'>关阀</button>
|
|
241
243
|
</footer>
|
|
242
244
|
</modal>
|
|
245
|
+
<!-- 销户-->
|
|
246
|
+
<modal :show.sync="cancelUserShow">
|
|
247
|
+
<header slot="modal-header" class="modal-header">
|
|
248
|
+
<button type="button" class="close" @click="close()"><span>×</span></button>
|
|
249
|
+
<h4 class="modal-title" align="center">销户管理</h4>
|
|
250
|
+
</header>
|
|
251
|
+
<article slot="modal-body" class="modal-body">
|
|
252
|
+
<div class="form-group " style="padding-left: 8px">
|
|
253
|
+
<label class=" font_normal_body">销户原因</label>
|
|
254
|
+
<input class="input_search" style="width:80%" v-model="f_reason" rows="3" placeholder="请填写原因">
|
|
255
|
+
</div>
|
|
256
|
+
</article>
|
|
257
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
258
|
+
<button type="button" class="button_search btn-ln fr" @click='cancelUser()'>销户</button>
|
|
259
|
+
</footer>
|
|
260
|
+
</modal>
|
|
243
261
|
</div>
|
|
244
262
|
</template>
|
|
245
263
|
|
|
246
264
|
<script>
|
|
247
265
|
import {HttpResetClass} from 'vue-client'
|
|
248
266
|
import Vue from 'vue'
|
|
267
|
+
import {CancelToken as res} from "axios";
|
|
249
268
|
export default {
|
|
250
269
|
title: '基本信息',
|
|
251
270
|
props: ['row'],
|
|
@@ -256,6 +275,8 @@
|
|
|
256
275
|
valveLimit: false,
|
|
257
276
|
// 开关阀操作原因
|
|
258
277
|
operateReason: '',
|
|
278
|
+
cancelUserShow: false,
|
|
279
|
+
f_reason: '',
|
|
259
280
|
valve: false
|
|
260
281
|
}
|
|
261
282
|
},
|
|
@@ -265,6 +286,34 @@
|
|
|
265
286
|
this.valveLimit = this.$login.r.includes('开关阀权限')
|
|
266
287
|
},
|
|
267
288
|
methods: {
|
|
289
|
+
// 销户弹窗显示
|
|
290
|
+
cancelUserTitle () {
|
|
291
|
+
this.cancelUserShow = true
|
|
292
|
+
},
|
|
293
|
+
// 销户
|
|
294
|
+
async cancelUser () {
|
|
295
|
+
let http = new HttpResetClass()
|
|
296
|
+
let res = await http.load('POST', 'rs/logic/cancelUser', {
|
|
297
|
+
data: {
|
|
298
|
+
f_userfiles_id: this.row.f_userfiles_id,
|
|
299
|
+
f_operator: this.$login.f.name,
|
|
300
|
+
f_reason: this.f_reason,
|
|
301
|
+
f_operatorid: this.$login.f.id,
|
|
302
|
+
f_orgid: this.$login.f.orgid,
|
|
303
|
+
f_orgname: this.$login.f.orgs,
|
|
304
|
+
f_depid: this.$login.f.depids,
|
|
305
|
+
f_depname: this.$login.f.deps
|
|
306
|
+
}
|
|
307
|
+
}, {resolveMsg: null, rejectMsg: null}
|
|
308
|
+
)
|
|
309
|
+
if (res.data.reason.includes('操作成功')) {
|
|
310
|
+
this.$showAlert(`${res.data.reason}`, 'success', 2000)
|
|
311
|
+
} else {
|
|
312
|
+
this.$showAlert(`${res.data.reason}`, 'warning', 2000)
|
|
313
|
+
}
|
|
314
|
+
this.close()
|
|
315
|
+
},
|
|
316
|
+
|
|
268
317
|
// 发送请求去数据
|
|
269
318
|
async getDevice () {
|
|
270
319
|
if (this.row) {
|
|
@@ -355,7 +404,9 @@
|
|
|
355
404
|
},
|
|
356
405
|
close () {
|
|
357
406
|
this.valve = false
|
|
407
|
+
this.cancelUserShow = false
|
|
358
408
|
this.operateReason = ''
|
|
409
|
+
this.f_reason = ''
|
|
359
410
|
},
|
|
360
411
|
// 开关阀操作
|
|
361
412
|
async valveoperate (oper) {
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto" id="GarbageCharge">
|
|
3
|
+
<validator name='v'>
|
|
4
|
+
<form novalidate class="form-horizontal">
|
|
5
|
+
<div class="row">
|
|
6
|
+
<div class="col-sm-4 form-group" :class="[$v.payment.required ? 'select-error' : '']">
|
|
7
|
+
<label class="font_normal_body" title="参数名称:付款方式">收款方式</label>
|
|
8
|
+
<input type="text" v-show="false" v-model="$refs.payment.selectedItems"
|
|
9
|
+
v-validate:payment='{required: true }'>
|
|
10
|
+
<v-select v-model="f_payment"
|
|
11
|
+
placeholder='请选择'
|
|
12
|
+
style="width:60%"
|
|
13
|
+
:value.sync="model.f_payment"
|
|
14
|
+
:options='paytype'
|
|
15
|
+
v-ref:payment
|
|
16
|
+
close-on-select clear-button>
|
|
17
|
+
</v-select>
|
|
18
|
+
</div>
|
|
19
|
+
<div class="col-sm-4 form-group">
|
|
20
|
+
<label for="f_print" class="font_normal_body">打印格式</label>
|
|
21
|
+
<v-select id="print"
|
|
22
|
+
v-model="f_print"
|
|
23
|
+
style="width:60%"
|
|
24
|
+
placeholder='请选择'
|
|
25
|
+
:value.sync="model.f_print"
|
|
26
|
+
:options='printstyle'
|
|
27
|
+
close-on-select clear-button>
|
|
28
|
+
</v-select>
|
|
29
|
+
</div>
|
|
30
|
+
<div class="col-sm-4 form-group">
|
|
31
|
+
<label class="font_normal_body">总 欠 费</label>
|
|
32
|
+
<input class="input_search" style="width:60%" type="number" v-model="money" placeholder="总欠费" disabled>
|
|
33
|
+
</div>
|
|
34
|
+
</div>
|
|
35
|
+
<div class="row">
|
|
36
|
+
<div class="panel panel-info auto">
|
|
37
|
+
<div class="panel-body">
|
|
38
|
+
<data-grid :model="list" partial='list' class="list_area table_sy" v-ref:grid>
|
|
39
|
+
<template partial='head'>
|
|
40
|
+
<tr>
|
|
41
|
+
<th><nobr>序号</nobr></th>
|
|
42
|
+
<th><nobr>欠费月份</nobr></th>
|
|
43
|
+
<th><nobr>金额</nobr></th>
|
|
44
|
+
</tr>
|
|
45
|
+
</template>
|
|
46
|
+
<template partial='body'>
|
|
47
|
+
<tr>
|
|
48
|
+
<td>{{$index + 1}}</td>
|
|
49
|
+
<td>{{row.f_hand_date}}</td>
|
|
50
|
+
<td>{{row.f_money}}</td>
|
|
51
|
+
</tr>
|
|
52
|
+
</template>
|
|
53
|
+
</data-grid>
|
|
54
|
+
</div>
|
|
55
|
+
</div>
|
|
56
|
+
</div>
|
|
57
|
+
</form>
|
|
58
|
+
<div style="text-align:right;">
|
|
59
|
+
<button class="button_search btn-gn" @click="confirm()" :disabled='!$v.valid'>确认</button>
|
|
60
|
+
<button class="button_clear btn-gn" @click="clean()">取消</button>
|
|
61
|
+
</div>
|
|
62
|
+
</validator>
|
|
63
|
+
<validate-bill v-if="hasValidateBill" :data="model" @validate-bill="validateBill"></validate-bill>
|
|
64
|
+
<print-bill :show="print" :bill-config='config' :bill-data='billData' v-on:toggle="clean" @printok="printok"
|
|
65
|
+
:data='printModel' v-ref:printbill></print-bill>
|
|
66
|
+
</div>
|
|
67
|
+
<!-- <upload :blodid="data.f_userinfo_id" isremark="true" fusetype="退费管理"></upload>-->
|
|
68
|
+
</template>
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
<script>
|
|
72
|
+
let readyGen = async function (self) {
|
|
73
|
+
await self.$getConfig(self, 'GarbageCharge')
|
|
74
|
+
// 默认打印格式
|
|
75
|
+
self.model.f_print = self.config.printType instanceof Array ? self.config.printType : [self.config.printType]
|
|
76
|
+
self.model.f_payment = [self.config.payment]
|
|
77
|
+
|
|
78
|
+
self.model.f_use_type = self.config.billType
|
|
79
|
+
self.model.f_bill_type = self.model.f_print
|
|
80
|
+
self.hasValidateBill = self.config.hasBillManage
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
export default {
|
|
84
|
+
title: '垃圾费收费',
|
|
85
|
+
data () {
|
|
86
|
+
return {
|
|
87
|
+
config: {
|
|
88
|
+
showupload: false, // 默认不上传附件
|
|
89
|
+
hasPrint: false, // 默认打票
|
|
90
|
+
hasBillManage: false, // 默认不启用发票管理
|
|
91
|
+
overBalance: false, // 为true时退费金额可以大于余额
|
|
92
|
+
printType: '普通收据', // 收据/电子票/专用发票/国税发票
|
|
93
|
+
payment: '现金缴费',
|
|
94
|
+
billType: '燃气费'
|
|
95
|
+
},
|
|
96
|
+
model: {
|
|
97
|
+
f_refund_fee: '',
|
|
98
|
+
f_refund_gas: '',
|
|
99
|
+
f_comments: '',
|
|
100
|
+
f_payment: '',
|
|
101
|
+
f_print: '',
|
|
102
|
+
f_price: 0
|
|
103
|
+
},
|
|
104
|
+
blodid: '',
|
|
105
|
+
hasValidateBill: false,
|
|
106
|
+
validateOk: false,
|
|
107
|
+
|
|
108
|
+
printModel: {},
|
|
109
|
+
print: false,
|
|
110
|
+
billUrl: '',
|
|
111
|
+
billData: {
|
|
112
|
+
url: 'rs/report/refund_sell',
|
|
113
|
+
bill: ''
|
|
114
|
+
},
|
|
115
|
+
// 下拉框值
|
|
116
|
+
paytype: this.$appdata.getParam('付款方式'),
|
|
117
|
+
printstyle: this.$appdata.getParam('打印格式'),
|
|
118
|
+
list: {data: []},
|
|
119
|
+
money: 0
|
|
120
|
+
}
|
|
121
|
+
},
|
|
122
|
+
props: ['row'],
|
|
123
|
+
ready () {
|
|
124
|
+
readyGen(this)
|
|
125
|
+
this.getList()
|
|
126
|
+
},
|
|
127
|
+
methods: {
|
|
128
|
+
async getList () {
|
|
129
|
+
let res = await this.$resetpost('rs/logic/queryGarbageCharges', {f_userfiles_id: this.row.f_userfiles_id}, {resolveMsg: null,rejectMsg: '查询垃圾费异常'})
|
|
130
|
+
this.list.data = res.data.list
|
|
131
|
+
this.money = res.data.money
|
|
132
|
+
},
|
|
133
|
+
async confirm () {
|
|
134
|
+
if (this.money <= 0) {
|
|
135
|
+
this.$showMessage('收费金额不能小于等于0')
|
|
136
|
+
return
|
|
137
|
+
}
|
|
138
|
+
let param = {
|
|
139
|
+
f_userfiles_id: this.row.f_userfiles_id,
|
|
140
|
+
money: this.money,
|
|
141
|
+
number: this.list.data.length,
|
|
142
|
+
f_operator: this.$login.f.name,
|
|
143
|
+
f_operatorid: this.$login.f.id,
|
|
144
|
+
f_orgid: this.$login.f.orgid,
|
|
145
|
+
f_orgname: this.$login.f.orgs,
|
|
146
|
+
f_depid: this.$login.f.depids,
|
|
147
|
+
f_depname: this.$login.f.deps
|
|
148
|
+
}
|
|
149
|
+
console.log('垃圾费收费', param)
|
|
150
|
+
let res = await this.$resetpost('rs/logic/garbageCharges', {data: param}, {warnMsg: `确定要对用户${this.row.f_user_name}进行垃圾费收费吗?`, resolveMsg: '收费成功!!', rejectMsg: '收费失败!!请重试!!'})
|
|
151
|
+
console.log('垃圾费收费', res)
|
|
152
|
+
if (this.config.hasPrint) {
|
|
153
|
+
if (this.model.f_print.indexOf('电子发票') == -1) {
|
|
154
|
+
console.log('this.config.hasBillManage', this.config.hasBillManage)
|
|
155
|
+
if (this.config.hasBillManage) {
|
|
156
|
+
// 启用发票管理,获取票据管理中的票号并存储记录
|
|
157
|
+
this.printModel.id = res.data.id
|
|
158
|
+
this.printModel.f_bill_type = '退费'
|
|
159
|
+
this.printModel.f_bill_style = this.model.f_print[0]
|
|
160
|
+
// this.billUrl = 'rs/report/refund_sell'
|
|
161
|
+
this.print = true
|
|
162
|
+
} else {
|
|
163
|
+
this.printModel.id = res.data.id
|
|
164
|
+
// this.billUrl = 'rs/report/refund_sell'
|
|
165
|
+
this.print = true
|
|
166
|
+
}
|
|
167
|
+
} else if (this.config.printType === '国税发票') {
|
|
168
|
+
// TODO
|
|
169
|
+
this.$dispatch('success')
|
|
170
|
+
} else if (this.config.printType === '电子发票') {
|
|
171
|
+
// TODO
|
|
172
|
+
this.$dispatch('success')
|
|
173
|
+
}
|
|
174
|
+
} else {
|
|
175
|
+
this.$dispatch('success')
|
|
176
|
+
}
|
|
177
|
+
},
|
|
178
|
+
clean () {
|
|
179
|
+
this.$dispatch('refresh')
|
|
180
|
+
},
|
|
181
|
+
printok () {
|
|
182
|
+
this.$dispatch('success')
|
|
183
|
+
},
|
|
184
|
+
validateBill (val) {
|
|
185
|
+
this.validateOk = !val.isOk
|
|
186
|
+
this.billData.bill = val.bill
|
|
187
|
+
}
|
|
188
|
+
},
|
|
189
|
+
watch: {
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
</script>
|
|
193
|
+
<style lang="less">
|
|
194
|
+
#GarbageCharge {
|
|
195
|
+
tr {
|
|
196
|
+
th {
|
|
197
|
+
text-align: center;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
td {
|
|
201
|
+
text-align: center;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
</style>
|
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div id='UserfilesList' 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 = '{}'" 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='用户姓名'>
|
|
16
|
+
</div>
|
|
17
|
+
|
|
18
|
+
<div class="form-group button-range" style="float: right">
|
|
19
|
+
<button class="button_search button_spacing" @click="$parent.$parent.addUser(true)" v-if="$parent.$parent.f_civill_id">添加用户</button>
|
|
20
|
+
<button class="button_search button_spacing" @click="$parent.$parent.removeUser(true)" v-if="$parent.$parent.f_civill_id">解除关系</button>
|
|
21
|
+
<button class="button_search button_spacing" @click="search()">查询</button>
|
|
22
|
+
<button class="button_clear button_spacing" @click="clear">清空</button>
|
|
23
|
+
<div style="float: right" class="button_spacing"
|
|
24
|
+
:class="{'button_shrink_top': criteriaShow,'button_shrink_bottom': !criteriaShow}"
|
|
25
|
+
@click="criteriaShow = !criteriaShow"></div>
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
<div class="row" v-show="criteriaShow">
|
|
29
|
+
<div class="form-group col-sm-3">
|
|
30
|
+
<label class="font_normal_body">用户电话</label>
|
|
31
|
+
<input type="text" class="form-control" v-model="model.f_user_phone" placeholder='用户电话'
|
|
32
|
+
condition="f_user_phone like '%{}%'" v-next-el='yhxm' style="width: 60%"
|
|
33
|
+
>
|
|
34
|
+
</div>
|
|
35
|
+
<div class="form-group col-sm-3">
|
|
36
|
+
<label class="font_normal_body">客户类型</label>
|
|
37
|
+
<v-select :options='$parent.$parent.user_type' :value.sync="model.f_user_type"
|
|
38
|
+
close-on-select condition="f_user_type='{}'"
|
|
39
|
+
placeholder='用户类型' v-model="model.f_user_type"></v-select>
|
|
40
|
+
</div>
|
|
41
|
+
<div class="form-group col-sm-3">
|
|
42
|
+
<label class="font_normal_body">客户状态</label>
|
|
43
|
+
<v-select :options='$parent.$parent.user_state' :value.sync="model.f_user_state"
|
|
44
|
+
close-on-select condition="f_user_state = '{}'"
|
|
45
|
+
placeholder='客户状态' v-model="model.f_user_state"></v-select>
|
|
46
|
+
</div>
|
|
47
|
+
<div class="col-sm-3 form-group">
|
|
48
|
+
<label class="font_normal_body">抄 表 员 </label>
|
|
49
|
+
<v-select :value.sync="model.f_inputtor" v-model='model.f_inputtor'
|
|
50
|
+
style="width:60%"
|
|
51
|
+
:multiple="true"
|
|
52
|
+
condition="f_inputtor in {}"
|
|
53
|
+
:options='$parent.$parent.inputtores' placeholder='抄表员'
|
|
54
|
+
close-on-select
|
|
55
|
+
v-el:cc></v-select>
|
|
56
|
+
</div>
|
|
57
|
+
<div class="form-group col-sm-3">
|
|
58
|
+
<label class="font_normal_body">用气性质</label>
|
|
59
|
+
<v-select :options='$parent.$parent.gasproperties' :value.sync="model.f_gasproperties"
|
|
60
|
+
close-on-select condition="f_gasproperties='{}'"
|
|
61
|
+
placeholder='用气性质' v-model="model.f_gasproperties"></v-select>
|
|
62
|
+
</div>
|
|
63
|
+
<div class="form-group col-sm-3">
|
|
64
|
+
<label class="font_normal_body">气表类型</label>
|
|
65
|
+
<v-select :options='$parent.$parent.meter_classify' :value.sync="model.f_meter_classify"
|
|
66
|
+
close-on-select condition="f_meter_classify='{}'" value-single
|
|
67
|
+
placeholder='气表类型' v-model="model.f_meter_classify"></v-select>
|
|
68
|
+
</div>
|
|
69
|
+
<div class="col-sm-3 form-group">
|
|
70
|
+
<label class="font_normal_body">气表品牌</label>
|
|
71
|
+
<v-select :value.sync="model.f_meter_brand" multiple
|
|
72
|
+
v-model="model.f_meter_brand"
|
|
73
|
+
:options='$parent.$parent.meterbrands' placeholder='请选择'
|
|
74
|
+
condition="f_meter_brand in {}"
|
|
75
|
+
close-on-select></v-select>
|
|
76
|
+
</div>
|
|
77
|
+
<div class="col-sm-3 form-group">
|
|
78
|
+
<label class="font_normal_body">小 区 </label>
|
|
79
|
+
<input type="text" class="input_search" v-model="model.f_residential_area" style="width: 60%"
|
|
80
|
+
condition=" f_residential_area like '{}%'" placeholder="输入小区">
|
|
81
|
+
</div>
|
|
82
|
+
<div class="form-group col-sm-3">
|
|
83
|
+
<label class="font_normal_body">客户地址</label>
|
|
84
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_address"
|
|
85
|
+
condition="f_address like '%{}%'" placeholder='客户地址'>
|
|
86
|
+
</div>
|
|
87
|
+
<div class="col-sm-3 form-group">
|
|
88
|
+
<label class="font_normal_body">楼 号 </label>
|
|
89
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_building"
|
|
90
|
+
condition="f_building = '{}'" placeholder='楼号'>
|
|
91
|
+
</div>
|
|
92
|
+
</div>
|
|
93
|
+
</div>
|
|
94
|
+
</criteria>
|
|
95
|
+
<data-grid :optional="true" class="list_area table_sy" :model="model" partial='list' v-ref:grid>
|
|
96
|
+
<template partial='head'>
|
|
97
|
+
<th>
|
|
98
|
+
<nobr>序号</nobr>
|
|
99
|
+
</th>
|
|
100
|
+
<th>
|
|
101
|
+
<nobr>客户编号</nobr>
|
|
102
|
+
</th>
|
|
103
|
+
<th>
|
|
104
|
+
<nobr>客户名称</nobr>
|
|
105
|
+
</th>
|
|
106
|
+
<th>
|
|
107
|
+
<nobr>客户状态</nobr>
|
|
108
|
+
</th>
|
|
109
|
+
<th>
|
|
110
|
+
<nobr>客户地址</nobr>
|
|
111
|
+
</th>
|
|
112
|
+
<th>
|
|
113
|
+
<nobr>表号</nobr>
|
|
114
|
+
</th>
|
|
115
|
+
<th>
|
|
116
|
+
<nobr>表底数</nobr>
|
|
117
|
+
</th>
|
|
118
|
+
</template>
|
|
119
|
+
<template partial='body'>
|
|
120
|
+
<td>{{ $index + 1 }}</td>
|
|
121
|
+
<td>{{ row.f_userinfo_code }}</td>
|
|
122
|
+
<td>{{ row.f_user_name }}</td>
|
|
123
|
+
<td>{{ row.f_user_state }}</td>
|
|
124
|
+
<td>{{ row.f_address }}</td>
|
|
125
|
+
<td>{{ row.f_meternumber }}</td>
|
|
126
|
+
<td>{{ row.f_meter_base }}</td>
|
|
127
|
+
</template>
|
|
128
|
+
</data-grid>
|
|
129
|
+
</criteria-paged>
|
|
130
|
+
<modal v-if="addmeterinfoshow" :show="addmeterinfoshow" width="80%" v-ref:modal :backdrop="false">
|
|
131
|
+
<header slot="modal-header" class="modal-header">
|
|
132
|
+
<span class="glyphicon glyphicon-remove closebtn" @click="addUser(false)"></span>
|
|
133
|
+
</header>
|
|
134
|
+
<article slot="modal-body" class="modal-body" style="height: 700px">
|
|
135
|
+
<userfiles-list :f_filialeids.sync="f_filialeids" v-ref:userlist></userfiles-list>
|
|
136
|
+
</article>
|
|
137
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
138
|
+
<button type="button" class="btn btn-default" @click='addUser(false)'>取消</button>
|
|
139
|
+
<button type="button" class="btn btn-primary" @click='confirmAddUser()'>确认</button>
|
|
140
|
+
</footer>
|
|
141
|
+
</modal>
|
|
142
|
+
</div>
|
|
143
|
+
</template>
|
|
144
|
+
|
|
145
|
+
<script>
|
|
146
|
+
import {PagedList} from 'vue-client'
|
|
147
|
+
|
|
148
|
+
export default {
|
|
149
|
+
name: 'UserfilesList',
|
|
150
|
+
data () {
|
|
151
|
+
return {
|
|
152
|
+
model: new PagedList('rs/sql/ncmeterQuery', 20),
|
|
153
|
+
f_orgid: '',
|
|
154
|
+
gasproperties: this.$appdata.getParam('用气性质') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')] : [],
|
|
155
|
+
user_type: this.$appdata.getParam('用户类型') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')] : [],
|
|
156
|
+
meter_classify: [{label: '机表', value: '机表'}],
|
|
157
|
+
user_state: [{label: '正常', value: '正常'}],
|
|
158
|
+
meterbrands: [],
|
|
159
|
+
addmeterinfoshow: false
|
|
160
|
+
}
|
|
161
|
+
},
|
|
162
|
+
props: {
|
|
163
|
+
f_filialeids: {
|
|
164
|
+
type: String
|
|
165
|
+
},
|
|
166
|
+
// 团缴主键
|
|
167
|
+
f_civill_id: {
|
|
168
|
+
type: Number
|
|
169
|
+
}
|
|
170
|
+
},
|
|
171
|
+
ready () {
|
|
172
|
+
// this.$refs.paged.$refs.cri.model.f_meter_classify = '机表'
|
|
173
|
+
this.$refs.paged.$refs.cri.model.f_user_state = '正常'
|
|
174
|
+
this.loadParamGem()
|
|
175
|
+
},
|
|
176
|
+
methods: {
|
|
177
|
+
async loadParamGem () {
|
|
178
|
+
await this.$LoadParams.loadParam()
|
|
179
|
+
await this.initAdjustables()
|
|
180
|
+
await this.$refs.paged.$refs.cri.search()
|
|
181
|
+
},
|
|
182
|
+
async initAdjustables () {
|
|
183
|
+
// 初始化气表品牌
|
|
184
|
+
let brandArr = []
|
|
185
|
+
this.$GetSaleParam.getGasbrand().forEach((item) => {
|
|
186
|
+
let temp1 = {}
|
|
187
|
+
temp1.label = item.label
|
|
188
|
+
temp1.value = item.value.f_meter_brand
|
|
189
|
+
brandArr.push(temp1)
|
|
190
|
+
})
|
|
191
|
+
this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
|
|
192
|
+
},
|
|
193
|
+
selfSearch (args) {
|
|
194
|
+
if (!this.f_orgid) {
|
|
195
|
+
this.getorg([this.f_filialeids])
|
|
196
|
+
}
|
|
197
|
+
if (this.f_civill_id) {
|
|
198
|
+
args.condition = `${args.condition} and f_civill_id = ${this.f_civill_id}`
|
|
199
|
+
} else {
|
|
200
|
+
args.condition = `${args.condition} and (f_civill_id is null or f_civill_id = '')`
|
|
201
|
+
}
|
|
202
|
+
args.condition = `${args.condition} and f_orgid in ${this.f_orgid}`
|
|
203
|
+
this.model.search(args.condition, args.model)
|
|
204
|
+
this.$refs.paged.$refs.grid.selectInit()
|
|
205
|
+
},
|
|
206
|
+
getorg (val) {
|
|
207
|
+
this.f_orgid = this.$login.convertToIn(val)
|
|
208
|
+
},
|
|
209
|
+
addUser (flag) {
|
|
210
|
+
this.addmeterinfoshow = flag
|
|
211
|
+
},
|
|
212
|
+
async confirmAddUser () {
|
|
213
|
+
let dataArr = this.$refs.userlist.$refs.paged.$refs.grid.getRowData()
|
|
214
|
+
if (dataArr.length == 0) {
|
|
215
|
+
this.$showMessage(`当前未选中任何用户, 请核实!!!`)
|
|
216
|
+
return
|
|
217
|
+
}
|
|
218
|
+
let res = await this.$showMessage(`当前选中${dataArr.length}条用户, 确认建立团缴关系吗?`, ['confirm', 'cancel'])
|
|
219
|
+
if (res == 'confirm') {
|
|
220
|
+
let ids = []
|
|
221
|
+
for (let row of dataArr) {
|
|
222
|
+
ids.push(row.f_userfiles_id)
|
|
223
|
+
}
|
|
224
|
+
ids = this.$login.convertToIn(ids)
|
|
225
|
+
let param = {
|
|
226
|
+
ids: ids,
|
|
227
|
+
f_civill_id: this.f_civill_id
|
|
228
|
+
}
|
|
229
|
+
await this.$resetpost('rs/logic/updateCivill', param, {resolveMsg: '建立团缴关系成功', rejectMsg: '建立团缴关系失败!!!'})
|
|
230
|
+
this.addUser(false)
|
|
231
|
+
this.$refs.paged.$refs.cri.search()
|
|
232
|
+
}
|
|
233
|
+
},
|
|
234
|
+
async removeUser () {
|
|
235
|
+
let dataArr = this.$refs.paged.$refs.grid.getRowData()
|
|
236
|
+
if (dataArr.length == 0) {
|
|
237
|
+
this.$showMessage(`当前未选中任何用户, 请核实!!!`)
|
|
238
|
+
return
|
|
239
|
+
}
|
|
240
|
+
let res = await this.$showMessage(`当前选中${dataArr.length}条用户, 确认解除团缴关系吗?`, ['confirm', 'cancel'])
|
|
241
|
+
if (res == 'confirm') {
|
|
242
|
+
let ids = []
|
|
243
|
+
for (let row of dataArr) {
|
|
244
|
+
ids.push(row.f_userfiles_id)
|
|
245
|
+
}
|
|
246
|
+
ids = this.$login.convertToIn(ids)
|
|
247
|
+
let param = {
|
|
248
|
+
ids: ids
|
|
249
|
+
}
|
|
250
|
+
await this.$resetpost('rs/logic/updateCivill', param, {resolveMsg: '解除团缴关系成功', rejectMsg: '解除团缴关系失败!!!'})
|
|
251
|
+
this.$refs.paged.$refs.cri.search()
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
},
|
|
255
|
+
computed: {
|
|
256
|
+
inputtores () {
|
|
257
|
+
// 获取抄表员
|
|
258
|
+
console.log('获取抄表员', this.$login.f)
|
|
259
|
+
let rs = []
|
|
260
|
+
if (this.$login.f.f_gasman.length > 0) {
|
|
261
|
+
for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
|
|
262
|
+
let temp = {
|
|
263
|
+
label: this.$login.f.f_gasman[i].name,
|
|
264
|
+
value: this.$login.f.f_gasman[i].name
|
|
265
|
+
}
|
|
266
|
+
rs.push(temp)
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
this.inputtores2 = rs
|
|
270
|
+
return [...rs]
|
|
271
|
+
}
|
|
272
|
+
},
|
|
273
|
+
watch: {
|
|
274
|
+
'f_civill_id' () {
|
|
275
|
+
this.$refs.paged.$refs.cri.search()
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
</script>
|
|
280
|
+
|
|
281
|
+
<style lang="less">
|
|
282
|
+
#UserfilesList {
|
|
283
|
+
tr {
|
|
284
|
+
th {
|
|
285
|
+
text-align: center;
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
td {
|
|
289
|
+
text-align: center;
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
</style>
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
// 分公司特殊组件页面注册
|
|
2
|
-
|
|
3
2
|
let specialComp = {
|
|
4
|
-
'file-meter-info': (resolve) => { require(['./MeterinfoTest'], resolve) }
|
|
3
|
+
'file-meter-info': (resolve) => { require(['./MeterinfoTest'], resolve) },
|
|
4
|
+
// 团缴管理添加用的列表弹窗
|
|
5
|
+
'userfiles-list': (resolve) => { require(['./UserfilesList'], resolve) },
|
|
6
|
+
// 垃圾收费
|
|
7
|
+
'garbage-charge': (resolve) => { require(['./GarbageCharge'], resolve) }
|
|
5
8
|
}
|
|
6
9
|
exports.specialComp = specialComp
|
package/src/main.js
CHANGED
package/src/sale.js
CHANGED
|
@@ -61,7 +61,9 @@ export default function (filiale) {
|
|
|
61
61
|
// 综合业务 --综合操作
|
|
62
62
|
// Vue.component('comprehen-search', (resolve) => { require(['./components/revenue/comprehen/ComprehenOperation/ComprehenSearch'], resolve) })
|
|
63
63
|
// 综合业务 --银行对账
|
|
64
|
+
Vue.component('bank-payment-new', (resolve) => { require(['./components/revenue/comprehen/ComprehenOperation/BankPayment/BankPaymentnew'], resolve) })
|
|
64
65
|
Vue.component('bank-payment', (resolve) => { require(['./components/revenue/comprehen/ComprehenOperation/BankPayment/BankPayment'], resolve) })
|
|
66
|
+
Vue.component('bank-payment-constrast', (resolve) => { require(['./components/revenue/comprehen/ComprehenOperation/BankPayment/BankPaymentConstrast'], resolve) })
|
|
65
67
|
// 综合业务 --订单明细
|
|
66
68
|
Vue.component('order-detail', (resolve) => { require(['./components/revenue/comprehen/ComprehenOperation/OrderDetails/OrderDetails'], resolve) })
|
|
67
69
|
// 综合业务 --T+财务软件
|
|
@@ -471,6 +473,8 @@ export default function (filiale) {
|
|
|
471
473
|
Vue.component('return-money-detail', (resolve) => { require(['./components/revenue/base/rightview/carddetail/ReturnMoney'], resolve) })
|
|
472
474
|
// 气损收费详情小组件
|
|
473
475
|
Vue.component('gasloss-detail', (resolve) => { require(['./components/revenue/base/rightview/carddetail/GasLossDetail'], resolve) })
|
|
476
|
+
// 垃圾费收费详情小组件
|
|
477
|
+
Vue.component('garbage-detail', (resolve) => { require(['./components/revenue/base/rightview/carddetail/GarbageDetail'], resolve) })
|
|
474
478
|
|
|
475
479
|
/** **************************换表相关组件***************************/
|
|
476
480
|
// 换新表
|