sale-client 3.6.42 → 3.6.43
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 +3 -0
- package/package.json +3 -3
- package/src/components/chargeNew/SendBook.vue +107 -87
- package/src/components/common/userinfo_detail/UserBaseInfoNew.vue +11 -2
- package/src/components/common/userinfo_detail/UserInfoDetailManageNew.vue +2 -2
- package/src/components/revenue/comprehen/Bill/EticketV4/CustQueryEticket.vue +314 -0
- package/src/components/revenue/comprehen/Bill/EticketV4/EticketManage.vue +3 -0
- package/src/components/revenue/comprehen/ComprehenOperation/OffGasAddGas/OffGasAddGas.vue +98 -5
- package/src/components/revenue/comprehen/ComprehenOperation/OtherGas/OtherGas.vue +105 -5
- package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/ChangeMeter.vue +1054 -950
- package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/ResetMeter.vue +137 -43
- package/src/filiale/qianneng/MbpeopleList.vue +520 -477
- package/src/filiale/shexian/FilesManage/MeterinfoTest.vue +2 -2
- package/src/filiale/shexian/revenue/newchangemeter/ChangeMeter.vue +1089 -0
- package/src/filiale/shexian/revenue/newchangemeter/ResetMeter.vue +1081 -0
- package/src/filiale/shexian/sale.js +25 -21
- package/src/filiale/tongchuan/paperaudit.vue +245 -0
- package/src/filiale/tongchuan/sale.js +2 -0
- package/src/main.js +1 -2
- package/src/sale.js +2 -0
package/build/dev-server.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sale-client",
|
|
3
|
-
"version": "3.6.
|
|
3
|
+
"version": "3.6.43",
|
|
4
4
|
"description": "收费模块前台组件",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -89,9 +89,9 @@
|
|
|
89
89
|
"sinon-chai": "^2.8.0",
|
|
90
90
|
"style": "0.0.3",
|
|
91
91
|
"style-loader": "^0.20.3",
|
|
92
|
-
"system-clients": "3.
|
|
92
|
+
"system-clients": "3.0.59-jingwei",
|
|
93
93
|
"url-loader": "^0.5.7",
|
|
94
|
-
"vue-client": "1.24.
|
|
94
|
+
"vue-client": "1.24.72",
|
|
95
95
|
"vue-clipboard2": "0.3.1",
|
|
96
96
|
"vue-hot-reload-api": "^1.2.0",
|
|
97
97
|
"vue-html-loader": "^1.0.0",
|
|
@@ -1,87 +1,107 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="auto">
|
|
3
|
-
<validator name='v'>
|
|
4
|
-
<form novalidate class="form-horizontal">
|
|
5
|
-
<div class="row" style="margin-top:10px;">
|
|
6
|
-
<div class="col-sm-4 form-group" :class="[$v.f_book_no.required ? 'has-error' : '']">
|
|
7
|
-
<label class=" font_normal_body">折  号</label>
|
|
8
|
-
<input style="width:60%" v-validate:f_book_no='{required: true }' type="text" v-model="model.f_book_no">
|
|
9
|
-
</div>
|
|
10
|
-
</div>
|
|
11
|
-
</form>
|
|
12
|
-
<book-bill :show="print" :url="'rs/report/book_bill'" :data='bookData' @toggle="close" @printok="printok" v-ref:bookbill></book-bill>
|
|
13
|
-
<div style="text-align:right;height:auto;margin-top:30px;margin-right:50px;">
|
|
14
|
-
<button class="button_search btn-gn" @click="confirm()" :disabled='!$v.valid'>确认</button>
|
|
15
|
-
<button class="button_clear btn-gn" @click="clean()" >取消</button>
|
|
16
|
-
</div>
|
|
17
|
-
</validator>
|
|
18
|
-
</div>
|
|
19
|
-
<upload :blodid="row.f_userinfo_id" isremark="true" fusetype="发折"></upload>
|
|
20
|
-
</template>
|
|
21
|
-
<script>
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
}
|
|
61
|
-
this
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto">
|
|
3
|
+
<validator name='v'>
|
|
4
|
+
<form novalidate class="form-horizontal">
|
|
5
|
+
<div class="row" style="margin-top:10px;">
|
|
6
|
+
<div class="col-sm-4 form-group" :class="[$v.f_book_no.required ? 'has-error' : '']">
|
|
7
|
+
<label class=" font_normal_body">折  号</label>
|
|
8
|
+
<input style="width:60%" v-validate:f_book_no='{required: true }' type="text" v-model="model.f_book_no">
|
|
9
|
+
</div>
|
|
10
|
+
</div>
|
|
11
|
+
</form>
|
|
12
|
+
<book-bill :show="print" :url="'rs/report/book_bill'" :data='bookData' @toggle="close" @printok="printok" v-ref:bookbill></book-bill>
|
|
13
|
+
<div style="text-align:right;height:auto;margin-top:30px;margin-right:50px;">
|
|
14
|
+
<button class="button_search btn-gn" @click="confirm()" :disabled='!$v.valid'>确认</button>
|
|
15
|
+
<button class="button_clear btn-gn" @click="clean()" >取消</button>
|
|
16
|
+
</div>
|
|
17
|
+
</validator>
|
|
18
|
+
</div>
|
|
19
|
+
<upload :blodid="row.f_userinfo_id" isremark="true" fusetype="发折"></upload>
|
|
20
|
+
</template>
|
|
21
|
+
<script>
|
|
22
|
+
export default {
|
|
23
|
+
title: '补卡管理',
|
|
24
|
+
data () {
|
|
25
|
+
return {
|
|
26
|
+
model: {
|
|
27
|
+
f_book_no: ''
|
|
28
|
+
},
|
|
29
|
+
config: {
|
|
30
|
+
sendCTCard: false
|
|
31
|
+
},
|
|
32
|
+
print: false,
|
|
33
|
+
bookData: {}
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
props: ['row', 'cardData'],
|
|
37
|
+
ready () {
|
|
38
|
+
this.$getConfig(this, 'SendBook')
|
|
39
|
+
},
|
|
40
|
+
methods: {
|
|
41
|
+
async confirm () {
|
|
42
|
+
if (this.config.sendCTCard && this.$appdata.getSingleValue('磁条卡读卡间隔')) {
|
|
43
|
+
this.$showAlert('请刷折', 'warning', 50000)
|
|
44
|
+
// 如果配置了参数 则发送发折时写磁条卡请求
|
|
45
|
+
try {
|
|
46
|
+
let params = {
|
|
47
|
+
kh: this.row.f_userinfo_code
|
|
48
|
+
}
|
|
49
|
+
let cardRes = await this.$resetpost('http://127.0.0.1:8003/WriteCard_HEC', params, {
|
|
50
|
+
resolveMsg: null,
|
|
51
|
+
rejectMsg: '开户发折服务错误'
|
|
52
|
+
})
|
|
53
|
+
if (cardRes.data.Err || cardRes.data.Exception) {
|
|
54
|
+
throw new Error(`卡服务错误:${cardRes.data.Err}${cardRes.data.Exception},请联系开发人员处理!!`)
|
|
55
|
+
}
|
|
56
|
+
await this.$closeAlert()
|
|
57
|
+
} catch (e) {
|
|
58
|
+
await this.$closeAlert()
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
await this.$dispatch('no-button')
|
|
62
|
+
this.bookData = {
|
|
63
|
+
f_userinfo_id: this.row.f_userinfo_id,
|
|
64
|
+
f_book_no: this.model.f_book_no,
|
|
65
|
+
f_zzhh: -1,
|
|
66
|
+
content: {
|
|
67
|
+
f_userinfo_code: `'${this.row.f_userinfo_code}'`,
|
|
68
|
+
f_user_name: `'${this.row.f_user_type == '民用' ? this.row.f_user_name : ''}'`,
|
|
69
|
+
f_unit_name: `'${this.row.f_user_type == '非民用' ? this.row.f_user_name : ''}'`,
|
|
70
|
+
f_address: `'${this.row.f_address}'`,
|
|
71
|
+
f_meter_style: `'${this.row.f_meter_style}'`,
|
|
72
|
+
f_meter_brand: `'${this.row.f_meter_brand}'`,
|
|
73
|
+
f_meternumber: `'${this.row.f_meternumber}'`,
|
|
74
|
+
f_idnumber: `'${this.row.f_idnumber}'`,
|
|
75
|
+
f_aroundmeter: `'${this.row.f_aroundmeter}'`,
|
|
76
|
+
f_user_phone: `'${this.row.f_user_phone}'`,
|
|
77
|
+
f_meter_base: `'${this.row.f_meter_base}'`,
|
|
78
|
+
f_operate_date: `'${this.$login.toStandardDateString()}'`
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
this.print = true
|
|
82
|
+
},
|
|
83
|
+
clean () {
|
|
84
|
+
this.$dispatch('refresh')
|
|
85
|
+
},
|
|
86
|
+
close () {
|
|
87
|
+
this.print = false
|
|
88
|
+
this.clean()
|
|
89
|
+
},
|
|
90
|
+
async printok () {
|
|
91
|
+
let data = {
|
|
92
|
+
f_userinfo_id: this.row.f_userinfo_id,
|
|
93
|
+
f_book_no: this.model.f_book_no,
|
|
94
|
+
f_send_date: this.$login.toStandardTimeString(),
|
|
95
|
+
f_operator: this.$login.f.name,
|
|
96
|
+
f_operatorid: this.$login.f.id,
|
|
97
|
+
f_orgid: this.$login.f.orgid,
|
|
98
|
+
f_orgname: this.$login.f.orgs,
|
|
99
|
+
f_depid: this.$login.f.depids,
|
|
100
|
+
f_depname: this.$login.f.deps
|
|
101
|
+
}
|
|
102
|
+
await this.$resetpost('rs/entity/t_send_book', data, {resolveMsg: null, rejectMsg: null})
|
|
103
|
+
this.$dispatch('success')
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
</script>
|
|
@@ -155,7 +155,7 @@
|
|
|
155
155
|
</div>
|
|
156
156
|
<div class="auto" style="float: right;">
|
|
157
157
|
<button class="button_clear " @click="cancelmain()" >返回</button>
|
|
158
|
-
<button class="button_search" type="button" @click="goChargeManage">去收费</button>
|
|
158
|
+
<button class="button_search" v-show="buttonshow" type="button" @click="goChargeManage">去收费</button>
|
|
159
159
|
<button v-if="row.f_meter_brand.includes('西美')&&row.f_meter_type.includes('物联网表')"
|
|
160
160
|
class="button_search" type="button" @click="clearBarrier">清除障碍</button>
|
|
161
161
|
<button v-if="row.f_meter_type.includes('物联网表')"
|
|
@@ -252,7 +252,16 @@
|
|
|
252
252
|
import Vue from 'vue'
|
|
253
253
|
export default {
|
|
254
254
|
title: '基本信息',
|
|
255
|
-
props:
|
|
255
|
+
props: {
|
|
256
|
+
row: {
|
|
257
|
+
type: Object,
|
|
258
|
+
default: undefined
|
|
259
|
+
},
|
|
260
|
+
buttonshow: {
|
|
261
|
+
type: Boolean,
|
|
262
|
+
default: true
|
|
263
|
+
}
|
|
264
|
+
},
|
|
256
265
|
data () {
|
|
257
266
|
return {
|
|
258
267
|
criteriaShow: false,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="binary flex" >
|
|
3
3
|
<div class="row binary-left flex" style="width:99%;height:98%;margin-bottom:0px">
|
|
4
|
-
<div class="auto"><user-base-info-new :row="row" @cancel-main="cancel" @cancel-re="cancelRe"></user-base-info-new></div>
|
|
4
|
+
<div class="auto"><user-base-info-new :row="row" :buttonshow="buttonshow" @cancel-main="cancel" @cancel-re="cancelRe"></user-base-info-new></div>
|
|
5
5
|
<saletabbut v-if="row" v-ref:list style="height:72%;margin-top: 1%;overflow-y: scroll">
|
|
6
6
|
<saletab header="流水查询" v-if="permission('流水查询')">
|
|
7
7
|
<record-query-user :row="row"></record-query-user>
|
|
@@ -117,7 +117,7 @@ import ChangeRecord from './ic_detail/ChangeRecord'
|
|
|
117
117
|
import DeveiceRecord from './ic_detail/DeveiceRecord'
|
|
118
118
|
export default {
|
|
119
119
|
title: '用户详细信息',
|
|
120
|
-
props: ['f_userfiles_id', 'f_userinfo_id', 'f_userinfo_code', 'parentname'],
|
|
120
|
+
props: ['f_userfiles_id', 'f_userinfo_id', 'f_userinfo_code', 'parentname', 'buttonshow'],
|
|
121
121
|
components: {
|
|
122
122
|
PriceAdjustmentQueryUser,
|
|
123
123
|
PriceChangeQueryUser,
|
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto basic-main" style="height:95%">
|
|
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-2 form-group">
|
|
8
|
+
<label class="font_normal_body">组织机构</label>
|
|
9
|
+
<res-select restype='organization'
|
|
10
|
+
@res-select="$parent.$parent.getorg"
|
|
11
|
+
is-mul="false"
|
|
12
|
+
:initresid='$parent.$parent.curorgid'>
|
|
13
|
+
</res-select>
|
|
14
|
+
</div>
|
|
15
|
+
<div class="form-group col-sm-2">
|
|
16
|
+
<label class="font_normal_body">客户编号</label>
|
|
17
|
+
<input type="text" class="form-control" v-model="model.f_userinfo_code" style="width:60%"
|
|
18
|
+
condition="f_userinfo_code = '{}' " placeholder="客户编号"
|
|
19
|
+
>
|
|
20
|
+
</div>
|
|
21
|
+
<div class="form-group col-sm-2">
|
|
22
|
+
<label class="font_normal_body">用户姓名</label>
|
|
23
|
+
<input type="text" class="form-control" v-model="model.f_user_name" style="width:60%"
|
|
24
|
+
condition="f_user_name = '{}'" placeholder="用户姓名"
|
|
25
|
+
>
|
|
26
|
+
</div>
|
|
27
|
+
<div style="float: right">
|
|
28
|
+
<button class="button_search" @click="search()">查 询</button>
|
|
29
|
+
<button class="button_search" @click="$parent.$parent.open_eTicket()">开票</button>
|
|
30
|
+
<div
|
|
31
|
+
:class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
|
|
32
|
+
@click="$parent.$parent.criteriaShow=!$parent.$parent.criteriaShow"
|
|
33
|
+
class="button_spacing"
|
|
34
|
+
style="float: right"></div>
|
|
35
|
+
</div>
|
|
36
|
+
</div>
|
|
37
|
+
<div class="row" v-show="$parent.$parent.criteriaShow">
|
|
38
|
+
<div class="form-group col-sm-2" >
|
|
39
|
+
<label class="font_normal_body">业务类型</label>
|
|
40
|
+
<v-select id="f_charge_type"
|
|
41
|
+
style="width:60%"
|
|
42
|
+
v-model="model.f_type"
|
|
43
|
+
placeholder='业务类型'
|
|
44
|
+
condition="f_type ='{}'"
|
|
45
|
+
:value.sync="model.f_type"
|
|
46
|
+
:options='$parent.$parent.chargetypes'
|
|
47
|
+
close-on-select clear-button>
|
|
48
|
+
</v-select>
|
|
49
|
+
</div>
|
|
50
|
+
<div class="form-group col-sm-2">
|
|
51
|
+
<label for="startDate" class="font_normal_body">开始日期</label>
|
|
52
|
+
<datepicker id="startDate" placeholder="开始日期"
|
|
53
|
+
v-model="model.startDate"
|
|
54
|
+
:value.sync="model.startDate"
|
|
55
|
+
:disabled-days-of-Week="[]"
|
|
56
|
+
condition="f_operate_date >='{}'"
|
|
57
|
+
style="width:60%"
|
|
58
|
+
>
|
|
59
|
+
</datepicker>
|
|
60
|
+
</div>
|
|
61
|
+
<div class="form-group col-sm-2">
|
|
62
|
+
<label for="endDate" class="font_normal_body">结束日期</label>
|
|
63
|
+
<datepicker id="endDate" placeholder="结束日期"
|
|
64
|
+
v-model="model.endDate"
|
|
65
|
+
:value.sync="model.endDate"
|
|
66
|
+
:disabled-days-of-Week="[]"
|
|
67
|
+
condition="f_operate_date <='{}'"
|
|
68
|
+
style="width:60%"
|
|
69
|
+
>
|
|
70
|
+
</datepicker>
|
|
71
|
+
</div>
|
|
72
|
+
</div>
|
|
73
|
+
</div>
|
|
74
|
+
</criteria>
|
|
75
|
+
<data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
|
|
76
|
+
<template partial='head'>
|
|
77
|
+
<tr>
|
|
78
|
+
<th>序号</th>
|
|
79
|
+
<th>客户编号</th>
|
|
80
|
+
<th>用户姓名</th>
|
|
81
|
+
<th>用户地址</th>
|
|
82
|
+
<th>气量</th>
|
|
83
|
+
<th>应交金额</th>
|
|
84
|
+
<th>实收金额</th>
|
|
85
|
+
<th>收费类型</th>
|
|
86
|
+
<th>收费时间</th>
|
|
87
|
+
<th>操作</th>
|
|
88
|
+
</tr>
|
|
89
|
+
</template>
|
|
90
|
+
<template partial='body' >
|
|
91
|
+
<td style="text-align:center">{{$index+1}}</td>
|
|
92
|
+
<td style="text-align:center">{{row.f_userinfo_code}}</td>
|
|
93
|
+
<td style="text-align:center">{{row.f_user_name}}</td>
|
|
94
|
+
<td style="text-align:center">{{row.f_address}}</td>
|
|
95
|
+
<td style="text-align:center">{{row.f_pregas}}</td>
|
|
96
|
+
<td style="text-align:center">{{row.f_preamount}}</td>
|
|
97
|
+
<td style="text-align:center">{{row.f_collection}}</td>
|
|
98
|
+
<td style="text-align:center">{{row.f_type}}</td>
|
|
99
|
+
<td style="text-align:center">{{row.f_operate_date}}</td>
|
|
100
|
+
<td>
|
|
101
|
+
<button class="btn btn-link" @click="$parent.$parent.$parent.kp(row)">开具发票
|
|
102
|
+
</button>
|
|
103
|
+
</td>
|
|
104
|
+
</template>
|
|
105
|
+
<template partial='foot'></template>
|
|
106
|
+
</data-grid>
|
|
107
|
+
</criteria-paged>
|
|
108
|
+
</div>
|
|
109
|
+
<modal :show.sync="eticket_msg" v-ref:modal large backdrop="false" :width="900">
|
|
110
|
+
<header slot="modal-header" class="modal-header">
|
|
111
|
+
<button type="button" class="close" @click="closeEticket"><span>×</span></button>
|
|
112
|
+
<h4 class="modal-title">发票信息</h4>
|
|
113
|
+
</header>
|
|
114
|
+
<article slot="modal-body" class="modal-body">
|
|
115
|
+
<div class="auto select-overspread form-horizontal">
|
|
116
|
+
<div class="row auto">
|
|
117
|
+
<div class="col-sm-6 form-group form-input-group" :class="[!row.f_paper_name ? 'has-error' : '']">
|
|
118
|
+
<label class="control-label">开票名称:</label>
|
|
119
|
+
<input class="form-control col-sm-2"
|
|
120
|
+
v-model="row.f_paper_name" placeholder="开票名称">
|
|
121
|
+
</div>
|
|
122
|
+
<div class="col-sm-6 form-group form-input-group">
|
|
123
|
+
<nobr class="col-sm-4"><label class="control-label">是否征税:</label></nobr>
|
|
124
|
+
<v-select v-model="invoice_is_pax"
|
|
125
|
+
placeholder='请选择'
|
|
126
|
+
:value.sync="invoice_is_pax"
|
|
127
|
+
close-on-select
|
|
128
|
+
:width="60"
|
|
129
|
+
:disabled="disabled"
|
|
130
|
+
:value-single="true"
|
|
131
|
+
:search="false"
|
|
132
|
+
:options='is_pax' clear-button>
|
|
133
|
+
</v-select>
|
|
134
|
+
</div>
|
|
135
|
+
<div class="col-sm-12 form-group form-input-group">
|
|
136
|
+
<label class="control-label">开户行及账号:</label>
|
|
137
|
+
<input class="form-control col-sm-2"
|
|
138
|
+
v-model="row.f_paper_account" placeholder="购方开户行及账号">
|
|
139
|
+
</div>
|
|
140
|
+
<div class="col-sm-12 form-group form-input-group" :class="[!row.f_taxpayer_id ? 'has-error' : '']">
|
|
141
|
+
<label class="control-label">纳税人识别号:</label>
|
|
142
|
+
<input class="form-control col-sm-2"
|
|
143
|
+
v-model="row.f_taxpayer_id" placeholder="纳税人识别号">
|
|
144
|
+
</div>
|
|
145
|
+
<div class="col-sm-12 form-group form-input-group" :class="[!row.f_address_phone ? 'has-error' : '']">
|
|
146
|
+
<label class="control-label">开票地址电话:</label>
|
|
147
|
+
<input class="form-control col-sm-2"
|
|
148
|
+
v-model="row.f_address_phone" placeholder="开票地址">
|
|
149
|
+
</div>
|
|
150
|
+
</div>
|
|
151
|
+
</div>
|
|
152
|
+
</article>
|
|
153
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
154
|
+
<button type="button" class="btn button_search"
|
|
155
|
+
:disabled="!(row.f_taxpayer_id&&row.f_paper_name&&row.f_address_phone)"
|
|
156
|
+
@click='confirm'>确认收费
|
|
157
|
+
</button>
|
|
158
|
+
</footer>
|
|
159
|
+
</modal>
|
|
160
|
+
<ticket-print :show="eticket_show" @toggle="eticket_toggle" v-ref:eticketbill></ticket-print>
|
|
161
|
+
</template>
|
|
162
|
+
|
|
163
|
+
<script>
|
|
164
|
+
/**
|
|
165
|
+
*发票冲红管理
|
|
166
|
+
*/
|
|
167
|
+
import {HttpResetClass, PagedList} from 'vue-client'
|
|
168
|
+
import Vue from 'vue'
|
|
169
|
+
export default {
|
|
170
|
+
title: '结算开票',
|
|
171
|
+
data () {
|
|
172
|
+
return {
|
|
173
|
+
criteriaShow: false,
|
|
174
|
+
f_filialeids: Vue.$login.f.orgids,
|
|
175
|
+
model: new PagedList('rs/sql/openSellelent', 50, {}),
|
|
176
|
+
f_outlets: Vue.$login.f.f_parentname,
|
|
177
|
+
f_filiale: Vue.$login.f.f_fengongsi,
|
|
178
|
+
f_operator: Vue.$login.f.name,
|
|
179
|
+
f_orgstr: Vue.$login.f.orgpathstr,
|
|
180
|
+
invoice_is_pax: '征税',
|
|
181
|
+
is_pax: [{label: '征税', value: '征税'}, {label: '不征税', value: '不征税'}],
|
|
182
|
+
selecteds: [],
|
|
183
|
+
eticket_show: false,
|
|
184
|
+
eticket_msg: false,
|
|
185
|
+
invoice_show_gas: '否',
|
|
186
|
+
show_gas: [{label: '是', value: '是'}, {label: '否', value: '否'}],
|
|
187
|
+
row: {},
|
|
188
|
+
disabled: false,
|
|
189
|
+
mid: [{label: '全部', value: ''}, {label: '是', value: ' > 0 '}, {label: '否', value: ' is null'}]
|
|
190
|
+
}
|
|
191
|
+
},
|
|
192
|
+
ready () {
|
|
193
|
+
this.$refs.paged.$refs.cri.model.startDate = this.$login.toStandardDateString() + ' 00:00:00'
|
|
194
|
+
this.$refs.paged.$refs.cri.model.endDate = this.$login.toStandardDateString() + ' 23:59:59'
|
|
195
|
+
},
|
|
196
|
+
methods: {
|
|
197
|
+
async kp (row) {
|
|
198
|
+
let HttpReset = new HttpResetClass()
|
|
199
|
+
let _row = await HttpReset.load('POST', 'rs/sql/sale_getUser', {
|
|
200
|
+
data: {
|
|
201
|
+
orderitem: 'f_userinfo_code',
|
|
202
|
+
condition: `f_userinfo_code = '${row.f_userinfo_code}'`
|
|
203
|
+
}
|
|
204
|
+
}, {resolveMsg: null, rejectMsg: '获取地址失败!'})
|
|
205
|
+
this.row = _row.data[0]
|
|
206
|
+
this.row.id = row.id
|
|
207
|
+
this.invoice_show_gas = this.row.f_collection_type == '按气量' ? '是' : '否'
|
|
208
|
+
if (!this.row.f_taxpayer_id) {
|
|
209
|
+
this.row.f_taxpayer_id = this.row.f_idnumber
|
|
210
|
+
}
|
|
211
|
+
if (!this.row.f_paper_name) {
|
|
212
|
+
this.row.f_paper_name = this.row.f_user_name
|
|
213
|
+
}
|
|
214
|
+
if (!this.row.f_address_phone) {
|
|
215
|
+
this.row.f_address_phone = this.row.f_address + ' ' + this.row.f_user_phone
|
|
216
|
+
}
|
|
217
|
+
if (!this.row.f_email) {
|
|
218
|
+
this.row.f_email = this.row.f_email
|
|
219
|
+
}
|
|
220
|
+
this.eticket_msg = true
|
|
221
|
+
},
|
|
222
|
+
closeEticket () {
|
|
223
|
+
this.eticket_msg = false
|
|
224
|
+
this.disabled = false
|
|
225
|
+
},
|
|
226
|
+
getorg (val) {
|
|
227
|
+
this.f_orgid = this.$login.convertToIn(val)
|
|
228
|
+
this.f_filialeids = val[0]
|
|
229
|
+
},
|
|
230
|
+
cancel () {
|
|
231
|
+
this.show = false
|
|
232
|
+
this.info = {}
|
|
233
|
+
},
|
|
234
|
+
async open_eTicket () {
|
|
235
|
+
if (this.selecteds.length > 1) {
|
|
236
|
+
this.$showAlert('选中条数大于一条,请重新修改!!', 'warning', 2000)
|
|
237
|
+
return
|
|
238
|
+
}
|
|
239
|
+
let HttpReset = new HttpResetClass()
|
|
240
|
+
let row = await HttpReset.load('POST', 'rs/sql/sale_getUser', {
|
|
241
|
+
data: {
|
|
242
|
+
orderitem: 'f_userinfo_code',
|
|
243
|
+
condition: `f_userinfo_code = '${[...new Set(this.selecteds.map(item => item.f_userinfo_code))][0]}'`
|
|
244
|
+
}
|
|
245
|
+
}, {resolveMsg: null, rejectMsg: '获取地址失败!'})
|
|
246
|
+
this.row = row.data[0]
|
|
247
|
+
this.invoice_show_gas = this.row.f_collection_type = '按气量' ? '是' : '否'
|
|
248
|
+
if (!this.row.f_taxpayer_id) {
|
|
249
|
+
this.row.f_taxpayer_id = this.row.f_idnumber
|
|
250
|
+
}
|
|
251
|
+
if (!this.row.f_paper_name) {
|
|
252
|
+
this.row.f_paper_name = this.row.f_user_name
|
|
253
|
+
}
|
|
254
|
+
if (!this.row.f_address_phone) {
|
|
255
|
+
this.row.f_address_phone = this.row.f_address + ' ' + this.row.f_user_phone
|
|
256
|
+
}
|
|
257
|
+
if (this.selecteds.map(item => item.f_type).toString() == '其他收费') {
|
|
258
|
+
this.disabled = true
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
this.eticket_msg = true
|
|
262
|
+
},
|
|
263
|
+
confirm () {
|
|
264
|
+
this.eticket_msg = false
|
|
265
|
+
this.disabled = false
|
|
266
|
+
this.eticket_show = true
|
|
267
|
+
if (this.selecteds.map(item => item.f_type).toString() == '其他收费' || this.selecteds.map(item => item.f_type).toString() == '卡表收费' || this.selecteds.map(item => item.f_type).toString() == '发卡售气') {
|
|
268
|
+
this.invoice_show_gas = '是'
|
|
269
|
+
}
|
|
270
|
+
this.$refs.eticketbill.openETicket(this.selecteds.map(item => item.id), this.row, this.invoice_show_gas, this.invoice_is_pax, this.selecteds.map(item => item.f_type).toString())
|
|
271
|
+
},
|
|
272
|
+
eticket_toggle () {
|
|
273
|
+
this.eticket_show = false
|
|
274
|
+
this.search()
|
|
275
|
+
},
|
|
276
|
+
async selfSearch (args) {
|
|
277
|
+
if (!this.f_orgid) {
|
|
278
|
+
this.getorg([this.$login.f.orgid])
|
|
279
|
+
}
|
|
280
|
+
args.condition = ` f_orgid='${this.f_filialeids}' and ${args.condition}`
|
|
281
|
+
|
|
282
|
+
await this.model.search(args.condition, this.model)
|
|
283
|
+
this.addOrRemove(true)
|
|
284
|
+
},
|
|
285
|
+
search () {
|
|
286
|
+
this.$refs.paged.$refs.cri.search()
|
|
287
|
+
this.$dispatch('refresh')
|
|
288
|
+
},
|
|
289
|
+
addOrRemove (is) {
|
|
290
|
+
this.selecteds = []
|
|
291
|
+
if (!is) { // 添加本页所有数据到ids中
|
|
292
|
+
this.model.rows.forEach((row) => {
|
|
293
|
+
this.selecteds.push(row)
|
|
294
|
+
})
|
|
295
|
+
this.selectAll = true
|
|
296
|
+
} else { // 从ids中取消所有的数据
|
|
297
|
+
this.selecteds = []
|
|
298
|
+
this.selectAll = false
|
|
299
|
+
}
|
|
300
|
+
console.log('selectdde', this.selecteds)
|
|
301
|
+
}
|
|
302
|
+
},
|
|
303
|
+
computed: {
|
|
304
|
+
chargetypes () {
|
|
305
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('收费类型')]
|
|
306
|
+
}
|
|
307
|
+
},
|
|
308
|
+
watch: {
|
|
309
|
+
selecteds () {
|
|
310
|
+
console.log('框框的长度', this.selecteds.length)
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
</script>
|