sale-client 4.2.29 → 4.2.31
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/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
- package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/.gradle/buildOutputCleanup/cache.properties +1 -1
- package/package.json +1 -1
- package/src/components/webMeter/meterinfo/NewMeterList.vue +7 -0
- package/src/filiale/jinhong/RecordCancel.vue +340 -0
- package/src/filiale/jinhong/sale.js +2 -0
- package/src/filiale/meihekou/manualChargeCenter.vue +394 -394
- package/src/filiale/qingjian/FileUserFiles.vue +55 -2
- package/.gradle/8.5/checksums/checksums.lock +0 -0
- package/.gradle/8.5/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/.gradle/8.5/dependencies-accessors/gc.properties +0 -0
- package/.gradle/8.5/executionHistory/executionHistory.bin +0 -0
- package/.gradle/8.5/executionHistory/executionHistory.lock +0 -0
- package/.gradle/8.5/fileChanges/last-build.bin +0 -0
- package/.gradle/8.5/fileHashes/fileHashes.bin +0 -0
- package/.gradle/8.5/fileHashes/fileHashes.lock +0 -0
- package/.gradle/8.5/gc.properties +0 -0
|
Binary file
|
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
#
|
|
1
|
+
#Mon Jul 29 08:34:01 CST 2024
|
|
2
2
|
gradle.version=5.2.1
|
package/package.json
CHANGED
|
@@ -220,6 +220,9 @@
|
|
|
220
220
|
<th style="text-align:center">
|
|
221
221
|
<nobr>结算方式</nobr>
|
|
222
222
|
</th>
|
|
223
|
+
<th style="text-align:center">
|
|
224
|
+
<nobr>初始表底数</nobr>
|
|
225
|
+
</th>
|
|
223
226
|
<th style="text-align:center">
|
|
224
227
|
<nobr>气表底数</nobr>
|
|
225
228
|
</th>
|
|
@@ -315,6 +318,9 @@
|
|
|
315
318
|
<td style="text-align:center">
|
|
316
319
|
<nobr>{{ row.f_calculation }}</nobr>
|
|
317
320
|
</td>
|
|
321
|
+
<td style="text-align:center">
|
|
322
|
+
<nobr>{{ row.f_initial_base }}</nobr>
|
|
323
|
+
</td>
|
|
318
324
|
<td style="text-align:center">
|
|
319
325
|
<nobr>{{ row.f_meter_base }}</nobr>
|
|
320
326
|
</td>
|
|
@@ -488,6 +494,7 @@ export default {
|
|
|
488
494
|
'f_user_phone': '电话',
|
|
489
495
|
'f_meter_brand': '气表品牌',
|
|
490
496
|
'f_calculation': '结算方式',
|
|
497
|
+
'f_initial_base': '初始表底数',
|
|
491
498
|
'f_meter_base': '气表底数',
|
|
492
499
|
'f_total_fee': '累购金额',
|
|
493
500
|
'f_balance_amount': '表上余额',
|
|
@@ -0,0 +1,340 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto">
|
|
3
|
+
<modal :show.sync="show" v-ref:modal large backdrop="false">
|
|
4
|
+
<header slot="modal-header" class="modal-header" style="text-align: center">
|
|
5
|
+
<h4 class="modal-title">{{data.type}}撤销</h4>
|
|
6
|
+
</header>
|
|
7
|
+
<article slot="modal-body" class="modal-body">
|
|
8
|
+
<validator name='v'>
|
|
9
|
+
<form class="form-horizontal select-overspread">
|
|
10
|
+
<div class="form-group" v-if="config.hasBillManage">
|
|
11
|
+
<label class=" col-sm-2 control-label">发票撤销类型:</label>
|
|
12
|
+
<div class="col-sm-2">
|
|
13
|
+
<v-select v-model="f_cancel_type"
|
|
14
|
+
placeholder='请选择'
|
|
15
|
+
:value.sync="model.f_cancel_type"
|
|
16
|
+
:options='cancelTypes'
|
|
17
|
+
@change='cancelTypeChange'
|
|
18
|
+
:value-single="true"
|
|
19
|
+
close-on-select clear-button>
|
|
20
|
+
</v-select>
|
|
21
|
+
</div>
|
|
22
|
+
</div>
|
|
23
|
+
<div class="form-group" :class="[$v.f_cancel_reason.required ? 'has-error' : 'has-success']">
|
|
24
|
+
<label for="f_cancel_reason" class=" col-sm-2 control-label">撤销原因:</label>
|
|
25
|
+
<div class="col-sm-8">
|
|
26
|
+
<textarea class="form-control" v-model="model.f_cancel_reason" rows="3"
|
|
27
|
+
placeholder="请填写原因" v-validate:f_cancel_reason='{required: true}'></textarea>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
<div class="form-group" :class="[$v.payment.required ? 'has-error' : '']"
|
|
31
|
+
v-if="data.type ==='批量收费'||data.type ==='团体收费'||data.type ==='物联网收费'|| data.type === '机表收费' || data.type === '卡表收费'|| data.type === '超用收费' || data.type === '发卡售气'|| data.type === '其他收费'|| data.type === '垃圾费收费' ">
|
|
32
|
+
<label class="col-sm-2 font_normal_body" title="参数名称:付款方式">收款方式:</label>
|
|
33
|
+
<input type="text" v-show="false" v-model="$refs.payment.selectedItems"
|
|
34
|
+
v-validate:payment='{required: true }'>
|
|
35
|
+
<div class="col-sm-4">
|
|
36
|
+
<v-select v-model="f_payment"
|
|
37
|
+
placeholder='请选择'
|
|
38
|
+
:value.sync="model.f_payment"
|
|
39
|
+
:options='paytype' clear-button v-ref:payment></v-select></div>
|
|
40
|
+
</div>
|
|
41
|
+
<validate-bill v-if="hasValidateBill" :data="model" @validate-bill="validateBill"></validate-bill>
|
|
42
|
+
</form>
|
|
43
|
+
</validator>
|
|
44
|
+
</article>
|
|
45
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
46
|
+
<button class="btn btn-success" @click="confirm()" :disabled="!$v.valid">确认</button>
|
|
47
|
+
<button class="btn btn-default" @click="clean()">取消</button>
|
|
48
|
+
</footer>
|
|
49
|
+
</modal>
|
|
50
|
+
<correct-bill :show="print" :bill-config='config' :bill-data='billData'
|
|
51
|
+
@printok="printok" @toggle="printCancel" :data='printModel' v-ref:printbill ></correct-bill>
|
|
52
|
+
</div>
|
|
53
|
+
</template>
|
|
54
|
+
|
|
55
|
+
<script>
|
|
56
|
+
import Vue from "vue";
|
|
57
|
+
|
|
58
|
+
let postGen = async function (self, name) {
|
|
59
|
+
let url = 'api/af-revenue/logic/' + name
|
|
60
|
+
|
|
61
|
+
// 获取冲正后的记录
|
|
62
|
+
let res = await self.$CancelService.cancel(url, self.model, self.data)
|
|
63
|
+
console.log('冲正后的记录。。', res, self.model)
|
|
64
|
+
|
|
65
|
+
// 判断需不需要判断冲正发票(发票管理)
|
|
66
|
+
if (false) {
|
|
67
|
+
if (self.model.f_cancel_type === 'newBill') {
|
|
68
|
+
// 显示发票信息,
|
|
69
|
+
self.printModel.id = res.data.record
|
|
70
|
+
self.printModel.f_type = res.data.type
|
|
71
|
+
self.printModel.f_use_type = self.model.f_use_type
|
|
72
|
+
self.billData.url = self.getBillUrl(self.data.type)
|
|
73
|
+
self.print = true
|
|
74
|
+
} else if (self.model.f_cancel_type === 'abort') {
|
|
75
|
+
await self.$CommonService.correctPaperBill(res.data.record, res.data.type, null, null, 'abort')
|
|
76
|
+
self.$dispatch('cancel-success')
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
// 看看要不要给发票冲掉
|
|
81
|
+
// const getEticket = await self.$resetpost('api/af-revenue/sql/singleTable', {
|
|
82
|
+
// data: {
|
|
83
|
+
// tablename: 't_ticketrelated',
|
|
84
|
+
// condition: `f_sell_id = '${res.data.record}' and f_business_type = '${res.data.type}' and f_related_state = '有效'`
|
|
85
|
+
// }
|
|
86
|
+
// }, {resolveMsg: null, rejectMsg: '获取发票信息失败!!'})
|
|
87
|
+
// console.log('获取发票信息', getEticket)
|
|
88
|
+
//
|
|
89
|
+
// if (getEticket.length > 0) {
|
|
90
|
+
// const params = {
|
|
91
|
+
// eticket_id: getEticket[0].f_eticket_id,
|
|
92
|
+
// f_invoice_type: 1
|
|
93
|
+
// }
|
|
94
|
+
// await self.$resetpost('invoice/rs/logic/getInvoice', {data: params}, {resolveMsg: null, rejectMsg: '发票冲红失败!!!'})
|
|
95
|
+
// }
|
|
96
|
+
console.log('准备刷新了!。。', res, self.model)
|
|
97
|
+
self.$dispatch('cancel-success')
|
|
98
|
+
|
|
99
|
+
// 判断需不需要冲正电子票
|
|
100
|
+
// if (self.isNeedEticket(getRecord.data, self.data.type)) {
|
|
101
|
+
// console.log('冲正打票,', getRecord.data.id, self.data.type)
|
|
102
|
+
// let getEticket = await self.$resetpost('api/af-revenue/sql/singleTable', {
|
|
103
|
+
// data: {
|
|
104
|
+
// tablename: 't_eticket',
|
|
105
|
+
// condition: `f_sell_id = '${getRecord.data.id}' and f_type = '${self.data.type}'`
|
|
106
|
+
// }
|
|
107
|
+
// }, {resolveMsg: null, rejectMsg: '获取电子票明细失败!!'})
|
|
108
|
+
// console.log('获取电子票信息', getEticket)
|
|
109
|
+
// if (getEticket.data.length > 0) {
|
|
110
|
+
// await self.$CommonService.correctEticket(getRecord.data.id, self.data.type)
|
|
111
|
+
// }
|
|
112
|
+
// }
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
let readyGen = async function (self) {
|
|
116
|
+
await self.$getConfig(self, 'RecordCancel')
|
|
117
|
+
console.log('冲正业务config', self.config)
|
|
118
|
+
// 验证是否是卡表,如果是卡表提示卡表需要读卡撤销
|
|
119
|
+
console.log('卡看看有没有是卡表的标识', self.data)
|
|
120
|
+
if (self.data.type !== '气损收费') {
|
|
121
|
+
// 查询获取表状态
|
|
122
|
+
let res = await self.$resetpost('api/af-revenue/sql/sale_getUserfilesDetail', {
|
|
123
|
+
data: {
|
|
124
|
+
condition: `f_userfiles_id = '${self.data.f_userfiles_id}'`
|
|
125
|
+
}
|
|
126
|
+
}, {resolveMsg: null, rejectMsg: '获取客户信息失败'})
|
|
127
|
+
if (res.data[0].f_meter_type) {
|
|
128
|
+
if (res.data[0].f_meter_type.includes('卡表') && self.data.type === '换表补气') {
|
|
129
|
+
self.$showAlert(`您这是${res.data[0].f_meter_type}客户,撤销需要进行读卡撤销。`, 'warning', 5000)
|
|
130
|
+
self.$dispatch('cancel')
|
|
131
|
+
}
|
|
132
|
+
if (res.data[0].f_meter_type.includes('机表') && self.data.type === '换表补气') {
|
|
133
|
+
self.$showAlert(`您这是${res.data[0].f_meter_type}客户,暂不支持撤销。`, 'warning', 5000)
|
|
134
|
+
self.$dispatch('cancel')
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
if (res.data[0].f_meter_type.includes('物联网表') && (self.data.type === '' || self.data.type === '气表清零')) {
|
|
138
|
+
self.$showAlert(`您这是${res.data[0].f_meter_type}客户,暂不支持撤销。`, 'warning', 5000)
|
|
139
|
+
self.$dispatch('cancel')
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
// 获取原来收费记录使用的发票类型
|
|
143
|
+
let param = {
|
|
144
|
+
id: self.data.id,
|
|
145
|
+
type: self.data.type
|
|
146
|
+
}
|
|
147
|
+
let oldUseType = await self.$resetpost('api/af-revenue/logic/sale_getOldUseType', {data: param}, {resolveMsg: null, rejectMsg: '获取原始票据信息出错!!'})
|
|
148
|
+
console.log('获取原始票据信息。。。', oldUseType)
|
|
149
|
+
if (self.config.hasBillManage && self.config.cancelType === 'newBill' && oldUseType.data.billtype) {
|
|
150
|
+
self.model.f_use_type = oldUseType.data.f_use_type
|
|
151
|
+
self.model.f_bill_type = [oldUseType.data.billtype]
|
|
152
|
+
self.hasValidateBill = self.config.hasBillManage
|
|
153
|
+
}
|
|
154
|
+
self.model.f_cancel_type = self.config.cancelType
|
|
155
|
+
if (self.data.type === '物联网收费' || self.data.type === '机表收费' || self.data.type === '卡表收费' || self.data.type === '超用收费' || self.data.type === '发卡售气') {
|
|
156
|
+
let getWebHand = await self.$SqlService.singleTable('t_sellinggas', `id = '${self.data.id}'`)
|
|
157
|
+
console.log('-----a--a-a-a-a-a-', getWebHand)
|
|
158
|
+
self.model.f_payment = [getWebHand.data[0].f_payment]
|
|
159
|
+
}
|
|
160
|
+
if (self.data.type === '其他收费') {
|
|
161
|
+
let getWebHand = await self.$SqlService.singleTable('t_othercharge', `id = '${self.data.id}'`)
|
|
162
|
+
console.log('-----a--a-a-a-a-a-', getWebHand)
|
|
163
|
+
self.model.f_payment = [getWebHand.data[0].f_payment]
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
export default {
|
|
169
|
+
props: ['show', 'data'],
|
|
170
|
+
title: '操作撤销',
|
|
171
|
+
data () {
|
|
172
|
+
return {
|
|
173
|
+
config: {
|
|
174
|
+
hasPrint: true,
|
|
175
|
+
hasBillManage: true, // 默认不启用发票管理
|
|
176
|
+
cancelType: 'newBill'
|
|
177
|
+
},
|
|
178
|
+
model: {
|
|
179
|
+
f_cancel_type: '',
|
|
180
|
+
f_cancel_reason: '',
|
|
181
|
+
f_cancel_name: this.$login.f.name,
|
|
182
|
+
f_operator: this.$login.f.name,
|
|
183
|
+
f_operatorid: this.$login.f.id,
|
|
184
|
+
f_orgid: this.$login.f.orgid,
|
|
185
|
+
f_orgname: this.$login.f.orgs,
|
|
186
|
+
f_depid: this.$login.f.depids,
|
|
187
|
+
f_depname: this.$login.f.deps,
|
|
188
|
+
record_id: ''
|
|
189
|
+
},
|
|
190
|
+
|
|
191
|
+
// 发票信息
|
|
192
|
+
printModel: {},
|
|
193
|
+
print: false,
|
|
194
|
+
paytype: this.$appdata.getParam('付款方式'),
|
|
195
|
+
billData: {
|
|
196
|
+
url: '',
|
|
197
|
+
bill: ''
|
|
198
|
+
},
|
|
199
|
+
// 启用发票管理需要对票号进行验证
|
|
200
|
+
hasValidateBill: false,
|
|
201
|
+
validateOk: false
|
|
202
|
+
}
|
|
203
|
+
},
|
|
204
|
+
ready () {
|
|
205
|
+
readyGen(this)
|
|
206
|
+
},
|
|
207
|
+
methods: {
|
|
208
|
+
confirm () {
|
|
209
|
+
// 整理数据
|
|
210
|
+
let name = this.sortdata()
|
|
211
|
+
// 撤销操作请求
|
|
212
|
+
postGen(this, name)
|
|
213
|
+
},
|
|
214
|
+
clean () {
|
|
215
|
+
this.$dispatch('cancel', this.model)
|
|
216
|
+
},
|
|
217
|
+
// 判断type类型 整理数据
|
|
218
|
+
sortdata () {
|
|
219
|
+
this.model.record_id = this.data.id
|
|
220
|
+
let type = this.data.type
|
|
221
|
+
let name
|
|
222
|
+
// 根据type数据 选择调用的Logic
|
|
223
|
+
if (type === '过户') {
|
|
224
|
+
name = 'transferCancel'
|
|
225
|
+
} else if (type === '换新表' || type === '气表清零') {
|
|
226
|
+
name = 'changemeterCancel'
|
|
227
|
+
} else if (type === '机表收费') {
|
|
228
|
+
name = 'machineChargeCancelPay'
|
|
229
|
+
} else if (type === '物联网收费' || type === '物联网开户' || type === '卡表赠气' || type === '物联网赠费' || type === '卡表赠费' || type === '物联网赠气') {
|
|
230
|
+
name = 'iotMeterChargeCancel'
|
|
231
|
+
} else if (type === '开通') {
|
|
232
|
+
name = 'iotOpenCancel'
|
|
233
|
+
} else if (type === '卡表超用') {
|
|
234
|
+
name = 'cardOverCancel'
|
|
235
|
+
} else if (type === '超用收费') {
|
|
236
|
+
name = 'overuseCancel'
|
|
237
|
+
} else if (type === '其他收费') {
|
|
238
|
+
name = 'otherFeeRollback'
|
|
239
|
+
} else if (type === '维修收费') {
|
|
240
|
+
name = 'otherFeeRollback'
|
|
241
|
+
} else if (type === '补卡') {
|
|
242
|
+
name = 'replaceCardCancel'
|
|
243
|
+
} else if (type === '换表补气') {
|
|
244
|
+
name = 'iotChangeAddGasCancel'
|
|
245
|
+
} else if (type === '调价补费' || type === '调价退费') {
|
|
246
|
+
name = 'compensationCancel'
|
|
247
|
+
} else if (type === '调价预存') {
|
|
248
|
+
name = 'compensationPreCancel'
|
|
249
|
+
} else if (type === '预存缴费') {
|
|
250
|
+
name = 'depositChargeCancel'
|
|
251
|
+
} else if (type === '拆表') {
|
|
252
|
+
name = 'cancelCB'
|
|
253
|
+
} else if (type === '迁表') {
|
|
254
|
+
name = 'cancelmovemeter'
|
|
255
|
+
} else if (type === '气费减免') {
|
|
256
|
+
name = 'machineChargeCancelPay'
|
|
257
|
+
} else if (type === '气损收费') {
|
|
258
|
+
name = 'gasLossCancel'
|
|
259
|
+
} else if (type === '卡表收费') {
|
|
260
|
+
name = 'noWriteCardCancel'
|
|
261
|
+
} else if (type === '其他收费欠费登记') {
|
|
262
|
+
name = 'otherchargenopayCancel'
|
|
263
|
+
} else if (type === '批量收费' || type === '团体收费') {
|
|
264
|
+
name = 'batchPaymentCancel'
|
|
265
|
+
} else if (type === '垃圾费收费') {
|
|
266
|
+
name = 'garbageChargesCancel'
|
|
267
|
+
} else if (type === '加成气费收费') {
|
|
268
|
+
name = 'gasChargeCancel'
|
|
269
|
+
} else {
|
|
270
|
+
return
|
|
271
|
+
}
|
|
272
|
+
return name
|
|
273
|
+
},
|
|
274
|
+
getBillUrl (type) {
|
|
275
|
+
let name = ''
|
|
276
|
+
// 根据type数据 选择调用的Logic
|
|
277
|
+
if (type === '过户') {
|
|
278
|
+
name = 'api/af-revenue/report/transfer_bill'
|
|
279
|
+
} else if (type === '换表') {
|
|
280
|
+
console.log('看看row..', this.row)
|
|
281
|
+
name = 'api/af-revenue/report/change_meter'
|
|
282
|
+
} else if (type === '机表收费') {
|
|
283
|
+
name = 'api/af-revenue/report/machine_bill'
|
|
284
|
+
} else if (type === '物联网收费') {
|
|
285
|
+
name = 'api/af-revenue/report/pre_sell'
|
|
286
|
+
} else if (type === '超用收费') {
|
|
287
|
+
name = 'api/af-revenue/report/overuse_bill'
|
|
288
|
+
} else if (type === '其他收费') {
|
|
289
|
+
name = 'api/af-revenue/report/otherCharge_bill'
|
|
290
|
+
} else if (type === '补卡') {
|
|
291
|
+
name = 'api/af-revenue/report/replace_sell'
|
|
292
|
+
}
|
|
293
|
+
return name
|
|
294
|
+
},
|
|
295
|
+
isNeedEticket (record, type) {
|
|
296
|
+
// TODO 需要其他类型再继续加
|
|
297
|
+
if (type === '补卡') {
|
|
298
|
+
// 判断卡费是否大于零
|
|
299
|
+
if (record.f_cardfees > 0) {
|
|
300
|
+
return true
|
|
301
|
+
}
|
|
302
|
+
} else if (type === '其他收费') {
|
|
303
|
+
if (record.f_collection > 0) {
|
|
304
|
+
return true
|
|
305
|
+
}
|
|
306
|
+
} else if (type === '超用收费') {
|
|
307
|
+
if (record.f_collection > 0) {
|
|
308
|
+
return true
|
|
309
|
+
}
|
|
310
|
+
} else if (type === '物联网表收费') {
|
|
311
|
+
if (record.f_collection > 0) {
|
|
312
|
+
return true
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
return false
|
|
316
|
+
},
|
|
317
|
+
validateBill (val) {
|
|
318
|
+
this.validateOk = !val.isOk
|
|
319
|
+
this.billData.bill = val.bill
|
|
320
|
+
},
|
|
321
|
+
printok () {
|
|
322
|
+
this.$dispatch('cancel-success')
|
|
323
|
+
},
|
|
324
|
+
printCancel () {
|
|
325
|
+
this.$dispatch('cancel')
|
|
326
|
+
},
|
|
327
|
+
cancelTypeChange () {
|
|
328
|
+
console.log('撤销类型。。', this.model)
|
|
329
|
+
if (this.model.f_cancel_type) {
|
|
330
|
+
this.hasValidateBill = this.model.f_cancel_type === 'newBill'
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
},
|
|
334
|
+
computed: {
|
|
335
|
+
cancelTypes () {
|
|
336
|
+
return [{label: '使用新票号', value: 'newBill'}, {label: '旧发票作废', value: 'abort'}]
|
|
337
|
+
}
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
</script>
|
|
@@ -54,4 +54,6 @@ export default function () {
|
|
|
54
54
|
Vue.component('card-list', (resolve) => { require(['./CardList'], resolve) })
|
|
55
55
|
// 机表抄表
|
|
56
56
|
Vue.component('machine-hand', (resolve) => { require(['./machineHand'], resolve) })
|
|
57
|
+
// 操作记录撤销
|
|
58
|
+
Vue.component('record-cancel', (resolve) => { require(['./RecordCancel'], resolve) })
|
|
57
59
|
}
|