sale-client 3.4.182 → 3.4.183
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 +2 -2
- package/src/components/charge/business/ChangeSendCard.vue +23 -23
- package/src/components/charge/business/OtherChargeNew.vue +141 -33
- package/src/components/common/userinfo_detail/ic_detail/FillGasQueryUser.vue +1 -1
- package/src/components/revenue/base/leftview/meterinfodetail.vue +225 -220
- package/src/components/revenue/comprehen/Message/AllUserNew.vue +1 -1
- package/src/components/revenue/comprehen/Message/MessageList.vue +18 -1
- package/src/components/revenue/machineHandManage/machineHandAudit.vue +1 -0
- package/src/filiale/qianneng/CardList.vue +14 -2
- package/src/filiale/qianneng/MessageList.vue +632 -0
- package/src/filiale/qianneng/OtherChargeNew.vue +6 -6
- package/src/filiale/qianneng/sale.js +4 -2
- package/src/main.js +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sale-client",
|
|
3
|
-
"version": "3.4.
|
|
3
|
+
"version": "3.4.183",
|
|
4
4
|
"description": "收费模块前台组件",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
"style-loader": "^0.20.3",
|
|
88
88
|
"system-clients": "3.2.0-2",
|
|
89
89
|
"url-loader": "^0.5.7",
|
|
90
|
-
"vue-client": "1.24.
|
|
90
|
+
"vue-client": "1.24.51",
|
|
91
91
|
"vue-clipboard2": "0.3.1",
|
|
92
92
|
"vue-hot-reload-api": "^1.2.0",
|
|
93
93
|
"vue-html-loader": "^1.0.0",
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="auto">
|
|
3
|
-
<card-change-fill v-if="row.f_meter_type.includes('卡表')
|
|
4
|
-
<iot-change-fill v-if="row.f_meter_type.includes('物联网表')&& row.f_open_type !=='发卡开户'" :row.sync="row"></iot-change-fill>
|
|
5
|
-
<machine-change-fill v-if="row.f_meter_type.includes('机表')" :row.sync="row"></machine-change-fill>
|
|
6
|
-
</div>
|
|
7
|
-
</template>
|
|
8
|
-
<script>
|
|
9
|
-
import IotChangeFill from './IOT/IotChangeFill'
|
|
10
|
-
import CardChangeFill from './CardChangeFill'
|
|
11
|
-
import MachineChangeFill from './machine/MachineChangeFill'
|
|
12
|
-
|
|
13
|
-
export default {
|
|
14
|
-
components: {CardChangeFill, IotChangeFill, MachineChangeFill},
|
|
15
|
-
title: '换表补气',
|
|
16
|
-
data () {
|
|
17
|
-
return {
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
props: ['row']
|
|
22
|
-
}
|
|
23
|
-
</script>
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto">
|
|
3
|
+
<card-change-fill v-if="row.f_meter_type.includes('卡表')||(row.f_meter_type.includes('物联网表') && row.f_open_type ==='发卡开户')" :row.sync="row"></card-change-fill>
|
|
4
|
+
<iot-change-fill v-if="row.f_meter_type.includes('物联网表')&& row.f_open_type !=='发卡开户'" :row.sync="row"></iot-change-fill>
|
|
5
|
+
<machine-change-fill v-if="row.f_meter_type.includes('机表')" :row.sync="row"></machine-change-fill>
|
|
6
|
+
</div>
|
|
7
|
+
</template>
|
|
8
|
+
<script>
|
|
9
|
+
import IotChangeFill from './IOT/IotChangeFill'
|
|
10
|
+
import CardChangeFill from './CardChangeFill'
|
|
11
|
+
import MachineChangeFill from './machine/MachineChangeFill'
|
|
12
|
+
|
|
13
|
+
export default {
|
|
14
|
+
components: {CardChangeFill, IotChangeFill, MachineChangeFill},
|
|
15
|
+
title: '换表补气',
|
|
16
|
+
data () {
|
|
17
|
+
return {
|
|
18
|
+
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
props: ['row']
|
|
22
|
+
}
|
|
23
|
+
</script>
|
|
@@ -3,35 +3,62 @@
|
|
|
3
3
|
<div class="span" style="overflow-y: auto;min-height: 500px;">
|
|
4
4
|
<validator name='v'>
|
|
5
5
|
<form novalidate class="form-horizontal">
|
|
6
|
-
<div style="margin-top:10px;"
|
|
6
|
+
<!-- <div class="row" style="margin-top:10px;">-->
|
|
7
|
+
<!-- -->
|
|
8
|
+
<!-- </div>-->
|
|
9
|
+
<div style="margin-top:10px;" v-for="(index, row) in model.otherdetail">
|
|
7
10
|
<div class="row">
|
|
8
|
-
<div class="col-sm-4" :class="{'has-success':row.
|
|
9
|
-
<label for="
|
|
10
|
-
<v-select id="
|
|
11
|
-
width="70%"
|
|
11
|
+
<div class="col-sm-4" :class="{'has-success':row.f_brand_spec,'select-error':!row.f_brand_spec}">
|
|
12
|
+
<label for="f_brand_spec" class="font_normal_body " title="参数名称:品名及规格">收费类型</label>
|
|
13
|
+
<v-select id="f_brand_spec"
|
|
12
14
|
placeholder='请选择'
|
|
13
|
-
v-model="row.
|
|
14
|
-
:value.sync="row.
|
|
15
|
-
:options='brandspec'
|
|
15
|
+
v-model="row.f_brand_spec"
|
|
16
|
+
:value.sync="row.f_brand_spec"
|
|
17
|
+
:options='brandspec'
|
|
18
|
+
@change="setTypename"
|
|
16
19
|
close-on-select clear-button>
|
|
17
20
|
</v-select>
|
|
18
21
|
</div>
|
|
22
|
+
<div class="col-sm-4" :class="{'has-success':row.f_typename,'has-error':!row.f_typename}">
|
|
23
|
+
<label for="f_typename" class=" font_normal_body"> 品名规格</label>
|
|
24
|
+
<v-select
|
|
25
|
+
style="width: 100px"
|
|
26
|
+
v-model="row.f_typename"
|
|
27
|
+
placeholder='请选择'
|
|
28
|
+
:value.sync="row.f_typename"
|
|
29
|
+
:options='gettypename'
|
|
30
|
+
@change="setTypenumber"
|
|
31
|
+
close-on-select clear-button>
|
|
32
|
+
</v-select>
|
|
33
|
+
</div>
|
|
34
|
+
<div class="col-sm-4" :class="{'has-success':row.f_typenumber,'has-error':!row.f_typenumber}">
|
|
35
|
+
<label for="f_typenumber" class=" font_normal_body"> 型 号</label>
|
|
36
|
+
<v-select
|
|
37
|
+
style="width: 100px"
|
|
38
|
+
v-model="row.f_typenumber"
|
|
39
|
+
placeholder='请选择'
|
|
40
|
+
:value.sync="row.f_typenumber"
|
|
41
|
+
:options='gettypenumber'
|
|
42
|
+
@change="setTypeprice(index)"
|
|
43
|
+
close-on-select clear-button>
|
|
44
|
+
</v-select>
|
|
45
|
+
</div>
|
|
19
46
|
</div>
|
|
20
|
-
<div class="row"
|
|
21
|
-
<div class="col-sm-4" :class="{'has-success':row.
|
|
47
|
+
<div class="row">
|
|
48
|
+
<div class="col-sm-4" :class="{'has-success':row.f_unitprice,'has-error':!row.f_unitprice}">
|
|
22
49
|
<label style="" for="f_unitprice" class=" font_normal_body">*单 价</label>
|
|
23
50
|
<input class="input_search" style="width:60%" type="number" min="1" @blur.prevent="getcollection()"
|
|
24
51
|
v-validate:f_unitprice='{required: true, dctest: [0, ">" ] }'
|
|
25
|
-
v-model="row.
|
|
26
|
-
:value.sync="row.
|
|
27
|
-
placeholder="单价" v-next-el='sl'
|
|
52
|
+
v-model="row.f_unitprice"
|
|
53
|
+
:value.sync="row.f_unitprice"
|
|
54
|
+
placeholder="单价" v-next-el='sl'>
|
|
28
55
|
</div>
|
|
29
|
-
<div class="col-sm-4" :class="{'has-success':row.
|
|
56
|
+
<div class="col-sm-4" :class="{'has-success':row.f_number,'has-error':!row.f_number}">
|
|
30
57
|
<label style="" for="f_number" class="font_normal_body">*数 量</label>
|
|
31
58
|
<input class="input_search" style="width:60%" type="number" min='1' @blur.prevent="getcollection()"
|
|
32
59
|
v-validate:f_number='{required: true, dctest: [0, ">" ] }'
|
|
33
|
-
v-model="row.
|
|
34
|
-
:value.sync="row.
|
|
60
|
+
v-model="row.f_number"
|
|
61
|
+
:value.sync="row.f_number"
|
|
35
62
|
placeholder="数量" v-next-el='sk' v-el:sl>
|
|
36
63
|
</div>
|
|
37
64
|
<div style="padding-top:10px">
|
|
@@ -40,6 +67,31 @@
|
|
|
40
67
|
<button type="button" class="glyphicon glyphicon-plus btn-success" @click.stop="addadetail()"></button>
|
|
41
68
|
</div>
|
|
42
69
|
</div>
|
|
70
|
+
<!-- <div class="row" style="margin-top:10px;" v-if="row.f_brand_spec[0]=='其他费用'">-->
|
|
71
|
+
<!-- <div class="col-sm-4" :class="[$v.f_fee_type.required ? 'has-error' : 'has-success']">-->
|
|
72
|
+
<!-- <input v-validate:f_fee_type='{required: true}' v-model="row.f_fee_type" v-show="false"/>-->
|
|
73
|
+
<!-- <label for="f_fee_type" class="font_normal_body ">其他收费类型</label>-->
|
|
74
|
+
<!-- <v-select id="f_fee_type"-->
|
|
75
|
+
<!-- v-model="row.f_fee_type"-->
|
|
76
|
+
<!-- placeholder='请选择'-->
|
|
77
|
+
<!-- :value.sync="row.f_fee_type"-->
|
|
78
|
+
<!-- :options='feetype'-->
|
|
79
|
+
<!-- close-on-select clear-button>-->
|
|
80
|
+
<!-- </v-select>-->
|
|
81
|
+
<!-- </div>-->
|
|
82
|
+
|
|
83
|
+
<!-- <div class="col-sm-4">-->
|
|
84
|
+
<!-- <label for="f_fee_time" class="font_normal_body">本次购买时间</label>-->
|
|
85
|
+
<!-- <v-select id="f_fee_time"-->
|
|
86
|
+
<!-- v-model="row.f_fee_time"-->
|
|
87
|
+
<!-- placeholder='请选择'-->
|
|
88
|
+
<!-- :value.sync="row.f_fee_time"-->
|
|
89
|
+
<!-- :options='feetime'-->
|
|
90
|
+
<!-- close-on-select clear-button>-->
|
|
91
|
+
<!-- </v-select>-->
|
|
92
|
+
<!-- </div>-->
|
|
93
|
+
<!-- </div>-->
|
|
94
|
+
|
|
43
95
|
</div>
|
|
44
96
|
|
|
45
97
|
|
|
@@ -217,6 +269,26 @@ let otherChargeGen = async function (self, parameter) {
|
|
|
217
269
|
localeSustainMoney = (localeSustainMoney - 0) + (self.model.f_collection - 0)
|
|
218
270
|
window.localStorage.setItem('sustainMoney', localeSustainMoney)
|
|
219
271
|
}
|
|
272
|
+
// // 转燃气改装工程单
|
|
273
|
+
// if (self.config.modificationList && parameter) {
|
|
274
|
+
// let printSheet = {
|
|
275
|
+
// f_userinfo_id: self.row.f_userinfo_id,
|
|
276
|
+
// f_charge_id: resid.data,
|
|
277
|
+
// f_state: '有效',
|
|
278
|
+
// f_print_state: '未打印',
|
|
279
|
+
// f_type: '改装单',
|
|
280
|
+
// f_orgid: self.$login.f.orgid ? self.$login.f.orgid : '',
|
|
281
|
+
// f_orgname: self.$login.f.orgs ? self.$login.f.orgs : '',
|
|
282
|
+
// f_depid: self.$login.f.depids ? self.$login.f.depids : '',
|
|
283
|
+
// f_depname: self.$login.f.deps ? self.$login.f.deps : '',
|
|
284
|
+
// f_operator: self.$login.f.name,
|
|
285
|
+
// f_operatorid: self.$login.f.id
|
|
286
|
+
// }
|
|
287
|
+
// await self.$resetpost('rs/logic/savePrintSheet', {data: {printData: printSheet}}, {
|
|
288
|
+
// resolveMsg: '',
|
|
289
|
+
// rejectMsg: '转单失败, 请重试'
|
|
290
|
+
// })
|
|
291
|
+
// }
|
|
220
292
|
if (self.config.hasPrint && !self.$login.r.includes('不打印发票')) {
|
|
221
293
|
if (self.model.f_print[0] != '电子发票') {
|
|
222
294
|
if (self.config.hasBillManage) {
|
|
@@ -251,12 +323,13 @@ let asyncOtherCharge = async function (self) {
|
|
|
251
323
|
await self.$getConfig(self, 'OtherCharge')
|
|
252
324
|
self.model.f_print = self.config.printType instanceof Array ? self.config.printType : [self.config.printType]
|
|
253
325
|
self.model.f_payment = [self.config.payment]
|
|
254
|
-
self.model.otherdetail[0].
|
|
326
|
+
self.model.otherdetail[0].f_brand_spec = [self.config.brandspec]
|
|
255
327
|
self.model.f_service_person = [self.config.services]
|
|
256
328
|
|
|
257
329
|
self.model.f_use_type = self.config.billType
|
|
258
330
|
self.model.f_bill_type = self.model.f_print
|
|
259
331
|
self.hasValidateBill = self.config.hasBillManage
|
|
332
|
+
self.setTypename(self.model.f_brand_spec[0])
|
|
260
333
|
}
|
|
261
334
|
export default {
|
|
262
335
|
title: '其他收费',
|
|
@@ -286,7 +359,7 @@ export default {
|
|
|
286
359
|
t_userfees: '',
|
|
287
360
|
f_fee_type: [],
|
|
288
361
|
f_fee_time: ['12'],
|
|
289
|
-
otherdetail: [{}]
|
|
362
|
+
otherdetail: [{f_brand_spec: ['材料费'], f_unitprice: '', f_number: ''}]
|
|
290
363
|
},
|
|
291
364
|
eticket_msg: false,
|
|
292
365
|
eticket_show: false,
|
|
@@ -302,7 +375,10 @@ export default {
|
|
|
302
375
|
// 启用发票管理需要对票号进行验证
|
|
303
376
|
hasValidateBill: false,
|
|
304
377
|
validateOk: false,
|
|
305
|
-
|
|
378
|
+
f_typenumber: '',
|
|
379
|
+
typeNameList: [],
|
|
380
|
+
typenumberList: [],
|
|
381
|
+
brandspec: this.$appdata.getParam('品名及规格'),
|
|
306
382
|
printstyle: this.$appdata.getParam('打印格式'),
|
|
307
383
|
paytype: this.$appdata.getParam('付款方式'),
|
|
308
384
|
feetype: this.$appdata.getParam('其他费用'),
|
|
@@ -313,7 +389,6 @@ export default {
|
|
|
313
389
|
props: ['row'],
|
|
314
390
|
ready () {
|
|
315
391
|
// this.model.f_unitprice = this.$appdata.getSingleValue('置换气费')
|
|
316
|
-
this.setbrandspec()
|
|
317
392
|
asyncOtherCharge(this)
|
|
318
393
|
},
|
|
319
394
|
watch: {
|
|
@@ -324,10 +399,13 @@ export default {
|
|
|
324
399
|
}
|
|
325
400
|
},
|
|
326
401
|
methods: {
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
402
|
+
setTypeprice (val) {
|
|
403
|
+
if (val && this.model.otherdetail[val] && this.model.otherdetail[val].f_typenumber) {
|
|
404
|
+
let unitprice = this.$appdata.getSingleValue(this.model.otherdetail[val].f_typenumber)
|
|
405
|
+
if (unitprice !== undefined) {
|
|
406
|
+
this.model.otherdetail[val].f_unitprice = unitprice
|
|
407
|
+
}
|
|
408
|
+
}
|
|
331
409
|
},
|
|
332
410
|
async createQianfei () {
|
|
333
411
|
let data = {
|
|
@@ -340,11 +418,14 @@ export default {
|
|
|
340
418
|
f_address: this.row.f_address,
|
|
341
419
|
f_user_type: this.row.f_user_type,
|
|
342
420
|
f_gasproperties: this.row.f_gasproperties,
|
|
421
|
+
// f_number: model.f_number,
|
|
422
|
+
// f_unitprice: model.f_unitprice,
|
|
343
423
|
f_collection: this.model.f_collection,
|
|
344
424
|
f_comments: this.model.f_comments,
|
|
345
425
|
f_payment: this.model.f_payment[0],
|
|
346
426
|
f_voucher_number: this.model.f_voucher_number,
|
|
347
427
|
f_bill_style: this.model.f_print[0],
|
|
428
|
+
// f_brand_spec: model.f_brand_spec[0],
|
|
348
429
|
f_userinfo_id: this.row.f_userinfo_id,
|
|
349
430
|
f_service_person: this.model.f_service_person[0],
|
|
350
431
|
f_operat_type: '其他收费欠费登记',
|
|
@@ -395,6 +476,29 @@ export default {
|
|
|
395
476
|
this.eticket_show = false
|
|
396
477
|
this.$dispatch('success')
|
|
397
478
|
},
|
|
479
|
+
async setTypename (val) {
|
|
480
|
+
this.f_typenumber = ''
|
|
481
|
+
this.f_unitprice = ''
|
|
482
|
+
this.typeNameList = this.$appdata.getParam(val)
|
|
483
|
+
let self = this
|
|
484
|
+
if (val == '开卡费') {
|
|
485
|
+
if (this.$appdata.getSingleValue('开卡费')) {
|
|
486
|
+
let money = this.$appdata.getSingleValue('开卡费')
|
|
487
|
+
await this.model.otherdetail.forEach(function (item) {
|
|
488
|
+
self.isflag = false
|
|
489
|
+
if (item.f_brand_spec[0] == '开卡费') {
|
|
490
|
+
item.f_unitprice = money
|
|
491
|
+
item.f_number = 1
|
|
492
|
+
self.isflag = true
|
|
493
|
+
}
|
|
494
|
+
})
|
|
495
|
+
this.getcollection()
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
},
|
|
499
|
+
setTypenumber (val) {
|
|
500
|
+
this.typenumberList = this.$appdata.getParam(val)
|
|
501
|
+
},
|
|
398
502
|
async confirm (parameter) {
|
|
399
503
|
let res = await this.$showMessage(`确定对客户${this.row.f_user_name}进行其他收费吗?`, ['confirm', 'cancel'])
|
|
400
504
|
if (res != 'confirm') return
|
|
@@ -425,9 +529,9 @@ export default {
|
|
|
425
529
|
let money = 0
|
|
426
530
|
let flag = true
|
|
427
531
|
this.model.otherdetail.forEach((item) => {
|
|
428
|
-
if (!item.
|
|
429
|
-
if (item.
|
|
430
|
-
money += ((item.
|
|
532
|
+
if (!item.f_number || item.f_number == '0') flag = false
|
|
533
|
+
if (item.f_unitprice && item.f_number) {
|
|
534
|
+
money += ((item.f_unitprice - 0) * (item.f_number - 0)) - 0
|
|
431
535
|
}
|
|
432
536
|
})
|
|
433
537
|
if (money != 0) {
|
|
@@ -436,7 +540,8 @@ export default {
|
|
|
436
540
|
if (!flag) this.model.f_collection = ''
|
|
437
541
|
},
|
|
438
542
|
addadetail () {
|
|
439
|
-
this.model.otherdetail.
|
|
543
|
+
this.$set(`model.otherdetail[${this.model.otherdetail.length}]`, {f_brand_spec: ['材料费'], f_unitprice: '', f_number: ''})
|
|
544
|
+
console.log(JSON.stringify(this.model.otherdetail))
|
|
440
545
|
},
|
|
441
546
|
delthisdetail (index) {
|
|
442
547
|
if (this.model.otherdetail.length > 1) {
|
|
@@ -460,11 +565,8 @@ export default {
|
|
|
460
565
|
if (this.isflag) {
|
|
461
566
|
if (this.model.f_collection && this.model.f_collection != '') {
|
|
462
567
|
let collection = (parseFloat(this.model.f_collection - 0)).toFixed(2)
|
|
463
|
-
if (collection > 0)
|
|
464
|
-
|
|
465
|
-
} else {
|
|
466
|
-
return !this.$v.valid
|
|
467
|
-
}
|
|
568
|
+
if (collection > 0) return !this.isflag
|
|
569
|
+
else return !this.$v.valid
|
|
468
570
|
} else {
|
|
469
571
|
return !this.$v.valid
|
|
470
572
|
}
|
|
@@ -483,6 +585,12 @@ export default {
|
|
|
483
585
|
console.log('this.$login.r:', this.$login.r)
|
|
484
586
|
console.log('this.$login.r.includes:', this.$login.r.includes('收费综合导出权限'))
|
|
485
587
|
return this.$login.r ? this.$login.r : []
|
|
588
|
+
},
|
|
589
|
+
gettypename () {
|
|
590
|
+
return this.typeNameList
|
|
591
|
+
},
|
|
592
|
+
gettypenumber () {
|
|
593
|
+
return this.typenumberList
|
|
486
594
|
}
|
|
487
595
|
}
|
|
488
596
|
}
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
<td style="text-align: center;"><nobr>{{row.f_pregas}}</nobr></td>
|
|
60
60
|
<td style="text-align: center;"><nobr>{{row.f_preamount}}</nobr></td>
|
|
61
61
|
<td style="text-align: center;"><nobr>{{row.f_type }}</nobr></td>
|
|
62
|
-
<td style="text-align: center;"><nobr>{{row.
|
|
62
|
+
<td style="text-align: center;"><nobr>{{row.f_comments}}</nobr></td>
|
|
63
63
|
<td style="text-align: center;"><nobr>{{row.f_operator}}</nobr></td>
|
|
64
64
|
<td style="text-align: center;"><nobr>{{row.f_operate_date}}</nobr></td>
|
|
65
65
|
</tr>
|