sale-client 3.6.238 → 3.6.239
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/UserMeterInfoTest.vue +9 -2
- package/src/filiale/lixianV3/machineHand.vue +51 -47
- package/src/filiale/shanxian/UserDeviceInfoTest.vue +13 -8
- package/src/filiale/tongchuan/bill/CustQueryEticketQueryV4.vue +334 -0
- package/src/filiale/tongchuan/bill/EticketOpenCard.vue +310 -0
- package/src/filiale/tongchuan/bill/EticketOpenJBPage.vue +341 -0
- package/src/filiale/tongchuan/bill/EticketOpenPage.vue +333 -0
- package/src/filiale/tongchuan/bill/EticketPrint.vue +1 -0
- package/src/filiale/tongchuan/sale.js +8 -0
package/package.json
CHANGED
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
<!-- <span class="glyphicon glyphicon-plus"></span>-->
|
|
20
20
|
<!-- <!–<img :src="imgmeter" alt="图片加载失败" class="img-rounded" style="width: 50px;margin:10px;">–>-->
|
|
21
21
|
<!-- </div>-->
|
|
22
|
-
<file-user-device-info :devicesinfo.sync="devicesinfo" :show_devices.sync="show_devices"
|
|
22
|
+
<file-user-device-info :devicesinfo.sync="devicesinfo" v-if="show_devices" :show_devices.sync="show_devices" :devicesinfonew.sync="devicesinfo"
|
|
23
23
|
:f_input_person="f_input_person" :userinfoid='data.baseinfo.base.f_userinfo_id'></file-user-device-info>
|
|
24
24
|
</div>
|
|
25
25
|
</template>
|
|
@@ -109,11 +109,18 @@ export default {
|
|
|
109
109
|
|
|
110
110
|
showDevices (index, row) {
|
|
111
111
|
this.devicesinfo = []
|
|
112
|
-
this.show_devices = true
|
|
113
112
|
this.devicesinfo = row.devicesinfo
|
|
114
113
|
if (row.f_install_person[0]) {
|
|
115
114
|
this.f_input_person = row.f_install_person[0]
|
|
116
115
|
}
|
|
116
|
+
this.devicesinfo.forEach((row) => {
|
|
117
|
+
row.devicetypes = this.$appdata.getParam('设备类型')
|
|
118
|
+
row.pipetypes = []
|
|
119
|
+
row.pipeways = this.$appdata.getParam('连接方式')
|
|
120
|
+
row.devicebrands = [{label:'全部', value: '全部'}]
|
|
121
|
+
})
|
|
122
|
+
console.log('shebei', this.devicesinfo)
|
|
123
|
+
this.show_devices = true
|
|
117
124
|
console.log('查看设备信息', this.devicesinfo)
|
|
118
125
|
},
|
|
119
126
|
showFire (index, row) {
|
|
@@ -281,9 +281,9 @@
|
|
|
281
281
|
<th>
|
|
282
282
|
<nobr>上期结余</nobr>
|
|
283
283
|
</th>
|
|
284
|
-
<th
|
|
285
|
-
<nobr>实际结余</nobr
|
|
286
|
-
</th
|
|
284
|
+
<!-- <th>-->
|
|
285
|
+
<!-- <nobr>实际结余</nobr>-->
|
|
286
|
+
<!-- </th>-->
|
|
287
287
|
<th>
|
|
288
288
|
<nobr>表号</nobr>
|
|
289
289
|
</th>
|
|
@@ -307,6 +307,9 @@
|
|
|
307
307
|
<th>
|
|
308
308
|
<nobr>应交金额</nobr>
|
|
309
309
|
</th>
|
|
310
|
+
<th>
|
|
311
|
+
<nobr>总欠费金额</nobr>
|
|
312
|
+
</th>
|
|
310
313
|
<th>
|
|
311
314
|
<nobr>抄表结果状态</nobr>
|
|
312
315
|
</th>
|
|
@@ -379,7 +382,7 @@
|
|
|
379
382
|
<!--<td>{{row.f_room}}</td>-->
|
|
380
383
|
<td>{{row.belongmonth}}</td>
|
|
381
384
|
<td style="text-align: center;">{{row.f_balance}}</td>
|
|
382
|
-
|
|
385
|
+
<!-- <td style="text-align: center;" >{{row.owefee}}</td>-->
|
|
383
386
|
|
|
384
387
|
<td>{{row.f_meternumber}}</td>
|
|
385
388
|
<td>{{row.f_user_phone}}</td>
|
|
@@ -416,7 +419,7 @@
|
|
|
416
419
|
</div>
|
|
417
420
|
</td>
|
|
418
421
|
<td style="text-align: center;">{{row.f_oughtfee}}</td>
|
|
419
|
-
|
|
422
|
+
<td style="text-align: center;">{{row.f_all_oughtfee}}</td>
|
|
420
423
|
<td>
|
|
421
424
|
<div class="form-group" style="margin-bottom:0px;display: contents;" :class="{
|
|
422
425
|
'has-success has-feedback': !row.error,
|
|
@@ -435,6 +438,7 @@
|
|
|
435
438
|
</div>
|
|
436
439
|
</td>
|
|
437
440
|
<td style="text-align: center;">{{row.f_whether_pay}}</td>
|
|
441
|
+
|
|
438
442
|
<td>{{row.f_last_input_date}}</td>
|
|
439
443
|
<td>{{row.f_hand_date}}</td>
|
|
440
444
|
<td>
|
|
@@ -830,49 +834,49 @@ export default {
|
|
|
830
834
|
}),
|
|
831
835
|
config: {
|
|
832
836
|
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
837
|
+
// 导出列要和查询列相同
|
|
838
|
+
excelHeaders: {
|
|
839
|
+
'f_user_id': '表编号',
|
|
840
|
+
'f_meternumber': '表号',
|
|
841
|
+
'f_inputtor': '抄表员',
|
|
842
|
+
'f_balance': '上期结余',
|
|
843
|
+
'f_last_input_date': '上次抄表',
|
|
844
|
+
'f_hand_date': '下发时间',
|
|
845
|
+
'f_input_date': '抄表日期',
|
|
846
|
+
'f_userinfo_code': '客户编号',
|
|
847
|
+
'f_address': '客户地址',
|
|
848
|
+
'f_residential_area': '小区名称',
|
|
849
|
+
'f_user_name': '客户姓名',
|
|
850
|
+
'f_last_tablebase': '上期底数',
|
|
851
|
+
'f_tablebase': '本期指数',
|
|
852
|
+
'f_oughtfee': '应交金额',
|
|
853
|
+
'f_oughtamount': '应交气量',
|
|
854
|
+
'f_whether_pay': '是否缴费',
|
|
855
|
+
'f_all_oughtfee': '总欠费金额',
|
|
856
|
+
'f_book_name': '抄表册',
|
|
857
|
+
'f_meter_book_sort': '册内排序',
|
|
858
|
+
'f_input_person': '录入人员',
|
|
859
|
+
'f_operator': '下发人员',
|
|
860
|
+
'f_meter_classify': '气表分类',
|
|
861
|
+
'f_meter_style': '气表型号',
|
|
862
|
+
'f_accounts_state': '下账标识',
|
|
863
|
+
'f_user_phone': '客户电话',
|
|
864
|
+
'f_adjustable_id': '表箱号'
|
|
865
|
+
},
|
|
866
|
+
examine: true,
|
|
867
|
+
customCal: false
|
|
861
868
|
},
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
reason: ''
|
|
874
|
-
},
|
|
875
|
-
auditState: [{label: '全部', value: ''}, {label: '未抄表', value: '未抄表'}, {label: '待审核', value: '待审核'}, {label: '已抄表', value: '已抄表'}],
|
|
869
|
+
meter_state: false, // 是否显示计划下发按钮
|
|
870
|
+
downModel: {
|
|
871
|
+
downDate: Vue.$login.toStandardTimeString(),
|
|
872
|
+
downWay: 'downWithUserfiles',
|
|
873
|
+
downInputtor: []
|
|
874
|
+
},
|
|
875
|
+
inputtorModel: {
|
|
876
|
+
inputtor: [],
|
|
877
|
+
reason: ''
|
|
878
|
+
},
|
|
879
|
+
auditState: [{label: '全部', value: ''}, {label: '未抄表', value: '未抄表'}, {label: '待审核', value: '待审核'}, {label: '已抄表', value: '已抄表'}],
|
|
876
880
|
|
|
877
881
|
plans: [], // 记录当前行是否被勾选
|
|
878
882
|
all: false, // 是否全选
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
</header>
|
|
7
7
|
<article slot="modal-body" class="modal-body" style="height: auto" v-show="!showTable">
|
|
8
8
|
<div class="flex-row flex-deviceinfo">
|
|
9
|
-
<div class="flex-row flex-two-info panel panel-default" v-for="row in devicesinfo">
|
|
9
|
+
<div class="flex-row flex-two-info panel panel-default" v-for="(index,row) in devicesinfo">
|
|
10
10
|
<avatar-upload :img-src.sync="row.img.content" :filename.sync="row.img.filename"></avatar-upload>
|
|
11
11
|
<form class="form-horizontal select-overspread " style="flex: 1;">
|
|
12
12
|
<div style="margin-top: 2%">
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
<div class="col-sm-6 form-group" style="padding-right: 5px;" :class="[!row.f_brand && (row.f_devices_type == '燃气壁挂炉' || row.f_devices_type == '燃气热水器') ? 'has-error' : '']">
|
|
32
32
|
<label class="font_normal_body">设备品牌</label>
|
|
33
33
|
<v-select :value.sync="row.f_brand" v-model="row.f_brand"
|
|
34
|
-
:options='
|
|
34
|
+
:options='devicebrands[index]' placeholder='设备品牌' :value-single="true"
|
|
35
35
|
close-on-select></v-select>
|
|
36
36
|
</div>
|
|
37
37
|
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
<datepicker placeholder="生产日期" style="width: 60%"
|
|
95
95
|
v-model="row.f_make_date"
|
|
96
96
|
:value.sync="row.f_make_date"
|
|
97
|
-
:onchange="expireDate(
|
|
97
|
+
:onchange="expireDate(index)"
|
|
98
98
|
:format="'yyyy-MM-dd HH:mm:ss'">
|
|
99
99
|
</datepicker>
|
|
100
100
|
</div>
|
|
@@ -102,7 +102,7 @@
|
|
|
102
102
|
<label class="font_normal_body">使用年限</label>
|
|
103
103
|
<input type="number" class="input_search" style="width: 60%" v-model="row.f_service_life"
|
|
104
104
|
:value.sync="row.f_service_life"
|
|
105
|
-
:onchange="expireDate(
|
|
105
|
+
:onchange="expireDate(index)" >
|
|
106
106
|
</div>
|
|
107
107
|
</div>
|
|
108
108
|
<div class="row auto" style="margin-left: 10px;">
|
|
@@ -152,7 +152,7 @@
|
|
|
152
152
|
<label class="font_normal_body">管道类型</label>
|
|
153
153
|
<v-select :value.sync="row.f_pipe_type" v-model="row.f_pipe_type"
|
|
154
154
|
@change="changepipetpye(row)"
|
|
155
|
-
:options='
|
|
155
|
+
:options='pipetypes[index]' placeholder='管道类型' :value-single="true"
|
|
156
156
|
close-on-select></v-select>
|
|
157
157
|
</div>
|
|
158
158
|
<div class="col-sm-6 form-group" style="padding-right: 5px;" title="参数名称:[连接方式]">
|
|
@@ -168,7 +168,7 @@
|
|
|
168
168
|
<datepicker placeholder="连接管安装日期" style="width: 60%"
|
|
169
169
|
v-model="row.f_pipeinstall_date"
|
|
170
170
|
:value.sync="row.f_pipeinstall_date"
|
|
171
|
-
:onchange="pipeExpireDate(
|
|
171
|
+
:onchange="pipeExpireDate(index)"
|
|
172
172
|
:format="'yyyy-MM-dd HH:mm:ss'">
|
|
173
173
|
</datepicker>
|
|
174
174
|
</div>
|
|
@@ -186,7 +186,7 @@
|
|
|
186
186
|
<label class="font_normal_body">使用年限</label>
|
|
187
187
|
<input type="number" class="input_search" style="width: 60%" v-model="row.f_service_liferg"
|
|
188
188
|
:value.sync="row.f_service_liferg"
|
|
189
|
-
:onchange="pipeExpireDate(
|
|
189
|
+
:onchange="pipeExpireDate(index)" >
|
|
190
190
|
</div>
|
|
191
191
|
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
192
192
|
<label class="font_normal_body"> 米 数</label>
|
|
@@ -296,6 +296,7 @@ export default {
|
|
|
296
296
|
devicetypes: this.$appdata.getParam('设备类型'),
|
|
297
297
|
devicebrands: [],
|
|
298
298
|
pipetypes:[],
|
|
299
|
+
devicesinfo: [],
|
|
299
300
|
pipeways: this.$appdata.getParam('连接方式'),
|
|
300
301
|
pipetypeparams: this.$appdata.getParam('管道类型'),
|
|
301
302
|
WatchPurchases: this.$appdata.getParam('购买方式'),
|
|
@@ -324,6 +325,9 @@ export default {
|
|
|
324
325
|
default: undefined
|
|
325
326
|
}
|
|
326
327
|
},
|
|
328
|
+
ready () {
|
|
329
|
+
console.log('设备信息,,,,', this.devicesinfo)
|
|
330
|
+
},
|
|
327
331
|
computed: {
|
|
328
332
|
},
|
|
329
333
|
methods: {
|
|
@@ -340,6 +344,7 @@ export default {
|
|
|
340
344
|
//品牌根据类型转换
|
|
341
345
|
if (this.devicesinfo[index].f_devices_type !== '' && this.devicesinfo[index].f_devices_type !== null) {
|
|
342
346
|
row.devicebrands = this.$appdata.getParam(this.devicesinfo[index].f_devices_type)
|
|
347
|
+
this.$set(`devicebrands[${index}]`,row.devicebrands )
|
|
343
348
|
if (row.f_devices_type === '燃气计量装置'){
|
|
344
349
|
row.pipetypes.push(
|
|
345
350
|
{label: '燃气连接管', value: '燃气连接管'}
|
|
@@ -352,6 +357,7 @@ export default {
|
|
|
352
357
|
)
|
|
353
358
|
}
|
|
354
359
|
}
|
|
360
|
+
this.$set(`pipetypes[${index}]`,row.pipetypes )
|
|
355
361
|
console.log("筛选之后",row.pipetypes)
|
|
356
362
|
}
|
|
357
363
|
},
|
|
@@ -379,7 +385,6 @@ export default {
|
|
|
379
385
|
}
|
|
380
386
|
},
|
|
381
387
|
pipeExpireDate (index) {
|
|
382
|
-
debugger
|
|
383
388
|
if (this.devicesinfo[index].f_pipeinstall_date === '' || this.devicesinfo[index].f_pipeinstall_date === undefined ||
|
|
384
389
|
this.devicesinfo[index].f_service_liferg === 0 || this.devicesinfo[index].f_service_liferg === undefined) {
|
|
385
390
|
|
|
@@ -0,0 +1,334 @@
|
|
|
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="eticket_msg = false"><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
|
+
:value-single="true"
|
|
130
|
+
:search="false"
|
|
131
|
+
:options='is_pax' clear-button>
|
|
132
|
+
</v-select>
|
|
133
|
+
</div>
|
|
134
|
+
<div class="col-sm-6 form-group form-input-group">
|
|
135
|
+
<label for="f_print" class="font_normal_body">打印格式</label>
|
|
136
|
+
<v-select id="print"
|
|
137
|
+
v-model="f_print"
|
|
138
|
+
placeholder='请选择'
|
|
139
|
+
:multiple="false"
|
|
140
|
+
:value.sync="row.f_print"
|
|
141
|
+
:options='printstyle'
|
|
142
|
+
close-on-select clear-button v-ref:printstyle>
|
|
143
|
+
</v-select>
|
|
144
|
+
</div>
|
|
145
|
+
<div class="col-sm-12 form-group form-input-group">
|
|
146
|
+
<label class="control-label">开户行及账号:</label>
|
|
147
|
+
<input class="form-control col-sm-2"
|
|
148
|
+
v-model="row.f_paper_account" placeholder="购方开户行及账号">
|
|
149
|
+
</div>
|
|
150
|
+
<div class="col-sm-12 form-group form-input-group" >
|
|
151
|
+
<label class="control-label">纳税人识别号:</label>
|
|
152
|
+
<input class="form-control col-sm-2"
|
|
153
|
+
v-model="row.f_taxpayer_id" placeholder="纳税人识别号">
|
|
154
|
+
</div>
|
|
155
|
+
<div class="col-sm-12 form-group form-input-group" :class="[!row.f_address_phone ? 'has-error' : '']">
|
|
156
|
+
<label class="control-label">开票地址电话:</label>
|
|
157
|
+
<input class="form-control col-sm-2"
|
|
158
|
+
v-model="row.f_address_phone" placeholder="开票地址">
|
|
159
|
+
</div>
|
|
160
|
+
<div class="col-sm-12 form-group form-input-group">
|
|
161
|
+
<label class="control-label">邮箱推送:</label>
|
|
162
|
+
<input class="form-control col-sm-2"
|
|
163
|
+
v-model="row.f_email" placeholder="邮箱推送">
|
|
164
|
+
</div>
|
|
165
|
+
<div class="col-sm-12 form-group form-input-group">
|
|
166
|
+
<label class="control-label">备注:</label>
|
|
167
|
+
<input class="form-control col-sm-2"
|
|
168
|
+
v-model="row.f_remarks" placeholder="备注">
|
|
169
|
+
</div>
|
|
170
|
+
</div>
|
|
171
|
+
</div>
|
|
172
|
+
</article>
|
|
173
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
174
|
+
<button type="button" class="btn button_search"
|
|
175
|
+
:disabled="!(row.f_paper_name&&row.f_address_phone)"
|
|
176
|
+
@click='confirm'>确认收费
|
|
177
|
+
</button>
|
|
178
|
+
</footer>
|
|
179
|
+
</modal>
|
|
180
|
+
<ticket-print :show="eticket_show" @toggle="eticket_toggle" v-ref:eticketbill></ticket-print>
|
|
181
|
+
</template>
|
|
182
|
+
|
|
183
|
+
<script>
|
|
184
|
+
/**
|
|
185
|
+
*发票冲红管理
|
|
186
|
+
*/
|
|
187
|
+
import {HttpResetClass, PagedList} from 'vue-client'
|
|
188
|
+
import Vue from 'vue'
|
|
189
|
+
export default {
|
|
190
|
+
title: '结算开票',
|
|
191
|
+
data () {
|
|
192
|
+
return {
|
|
193
|
+
criteriaShow: false,
|
|
194
|
+
f_filialeids: Vue.$login.f.orgids,
|
|
195
|
+
model: new PagedList('rs/sql/openSellelent', 50, {}),
|
|
196
|
+
f_outlets: Vue.$login.f.f_parentname,
|
|
197
|
+
f_filiale: Vue.$login.f.f_fengongsi,
|
|
198
|
+
f_operator: Vue.$login.f.name,
|
|
199
|
+
f_orgstr: Vue.$login.f.orgpathstr,
|
|
200
|
+
invoice_is_pax: '征税',
|
|
201
|
+
is_pax: [{label: '征税', value: '征税'}, {label: '不征税', value: '不征税'}],
|
|
202
|
+
selecteds: [],
|
|
203
|
+
eticket_show: false,
|
|
204
|
+
eticket_msg: false,
|
|
205
|
+
invoice_show_gas: '否',
|
|
206
|
+
show_gas: [{label: '是', value: '是'}, {label: '否', value: '否'}],
|
|
207
|
+
row: {},
|
|
208
|
+
disabled: false,
|
|
209
|
+
printstyle: this.$appdata.getParam('打印电子格式') ? this.$appdata.getParam('打印电子格式') : [{label: '电子发票', value: '电子发票'}],
|
|
210
|
+
mid: [{label: '全部', value: ''}, {label: '是', value: ' > 0 '}, {label: '否', value: ' is null'}]
|
|
211
|
+
}
|
|
212
|
+
},
|
|
213
|
+
ready () {
|
|
214
|
+
this.$refs.paged.$refs.cri.model.startDate = this.$login.toStandardDateString() + ' 00:00:00'
|
|
215
|
+
this.$refs.paged.$refs.cri.model.endDate = this.$login.toStandardDateString() + ' 23:59:59'
|
|
216
|
+
},
|
|
217
|
+
methods: {
|
|
218
|
+
async kp (row) {
|
|
219
|
+
let HttpReset = new HttpResetClass()
|
|
220
|
+
let _row = await HttpReset.load('POST', 'rs/sql/sale_getUser', {
|
|
221
|
+
data: {
|
|
222
|
+
orderitem: 'f_userinfo_code',
|
|
223
|
+
condition: `f_userinfo_code = '${row.f_userinfo_code}'`
|
|
224
|
+
}
|
|
225
|
+
}, {resolveMsg: null, rejectMsg: '获取地址失败!'})
|
|
226
|
+
this.row = _row.data[0]
|
|
227
|
+
this.row.id = row.id
|
|
228
|
+
this.row.f_type = row.f_type
|
|
229
|
+
this.invoice_show_gas = this.row.f_collection_type == '按气量' ? '是' : '否'
|
|
230
|
+
if (!this.row.f_taxpayer_id) {
|
|
231
|
+
this.row.f_taxpayer_id = this.row.f_idnumber
|
|
232
|
+
}
|
|
233
|
+
if (!this.row.f_paper_name) {
|
|
234
|
+
this.row.f_paper_name = this.row.f_user_name
|
|
235
|
+
}
|
|
236
|
+
if (!this.row.f_address_phone) {
|
|
237
|
+
this.row.f_address_phone = this.row.f_address + ' ' + this.row.f_user_phone
|
|
238
|
+
}
|
|
239
|
+
if (!this.row.f_email) {
|
|
240
|
+
this.row.f_email = this.row.f_email
|
|
241
|
+
}
|
|
242
|
+
this.eticket_msg = true
|
|
243
|
+
},
|
|
244
|
+
closeEticket () {
|
|
245
|
+
this.eticket_msg = false
|
|
246
|
+
this.disabled = false
|
|
247
|
+
},
|
|
248
|
+
getorg (val) {
|
|
249
|
+
this.f_orgid = this.$login.convertToIn(val)
|
|
250
|
+
this.f_filialeids = val[0]
|
|
251
|
+
},
|
|
252
|
+
cancel () {
|
|
253
|
+
this.show = false
|
|
254
|
+
this.info = {}
|
|
255
|
+
},
|
|
256
|
+
async open_eTicket () {
|
|
257
|
+
if (this.selecteds.length > 1) {
|
|
258
|
+
this.$showAlert('选中条数大于一条,请重新修改!!', 'warning', 2000)
|
|
259
|
+
return
|
|
260
|
+
}
|
|
261
|
+
let HttpReset = new HttpResetClass()
|
|
262
|
+
let row = await HttpReset.load('POST', 'rs/sql/sale_getUser', {
|
|
263
|
+
data: {
|
|
264
|
+
orderitem: 'f_userinfo_code',
|
|
265
|
+
condition: `f_userinfo_code = '${[...new Set(this.selecteds.map(item => item.f_userinfo_code))][0]}'`
|
|
266
|
+
}
|
|
267
|
+
}, {resolveMsg: null, rejectMsg: '获取地址失败!'})
|
|
268
|
+
this.row = row.data[0]
|
|
269
|
+
this.invoice_show_gas = this.row.f_collection_type = '按气量' ? '是' : '否'
|
|
270
|
+
if (!this.row.f_taxpayer_id) {
|
|
271
|
+
this.row.f_taxpayer_id = this.row.f_idnumber
|
|
272
|
+
}
|
|
273
|
+
if (!this.row.f_paper_name) {
|
|
274
|
+
this.row.f_paper_name = this.row.f_user_name
|
|
275
|
+
}
|
|
276
|
+
if (!this.row.f_address_phone) {
|
|
277
|
+
this.row.f_address_phone = this.row.f_address + ' ' + this.row.f_user_phone
|
|
278
|
+
}
|
|
279
|
+
if (this.selecteds.map(item => item.f_type).toString() == '其他收费') {
|
|
280
|
+
this.disabled = true
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
this.eticket_msg = true
|
|
284
|
+
},
|
|
285
|
+
confirm () {
|
|
286
|
+
this.row.f_print = this.row.f_print[0]
|
|
287
|
+
this.eticket_msg = false
|
|
288
|
+
this.disabled = false
|
|
289
|
+
this.eticket_show = true
|
|
290
|
+
this.$refs.eticketbill.openETicket(this.row.id, this.row, this.row.f_type)
|
|
291
|
+
},
|
|
292
|
+
eticket_toggle () {
|
|
293
|
+
this.eticket_show = false
|
|
294
|
+
this.search()
|
|
295
|
+
},
|
|
296
|
+
async selfSearch (args) {
|
|
297
|
+
if (!this.f_orgid) {
|
|
298
|
+
this.getorg([this.$login.f.orgid])
|
|
299
|
+
}
|
|
300
|
+
args.condition = ` f_orgid='${this.f_filialeids}' and ${args.condition}`
|
|
301
|
+
|
|
302
|
+
await this.model.search(args.condition, this.model)
|
|
303
|
+
this.addOrRemove(true)
|
|
304
|
+
},
|
|
305
|
+
search () {
|
|
306
|
+
this.$refs.paged.$refs.cri.search()
|
|
307
|
+
this.$dispatch('refresh')
|
|
308
|
+
},
|
|
309
|
+
addOrRemove (is) {
|
|
310
|
+
this.selecteds = []
|
|
311
|
+
if (!is) { // 添加本页所有数据到ids中
|
|
312
|
+
this.model.rows.forEach((row) => {
|
|
313
|
+
this.selecteds.push(row)
|
|
314
|
+
})
|
|
315
|
+
this.selectAll = true
|
|
316
|
+
} else { // 从ids中取消所有的数据
|
|
317
|
+
this.selecteds = []
|
|
318
|
+
this.selectAll = false
|
|
319
|
+
}
|
|
320
|
+
console.log('selectdde', this.selecteds)
|
|
321
|
+
}
|
|
322
|
+
},
|
|
323
|
+
computed: {
|
|
324
|
+
chargetypes () {
|
|
325
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('收费类型')]
|
|
326
|
+
}
|
|
327
|
+
},
|
|
328
|
+
watch: {
|
|
329
|
+
selecteds () {
|
|
330
|
+
console.log('框框的长度', this.selecteds.length)
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
</script>
|