sale-client 3.6.258 → 3.6.260-test
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/common/userinfo_detail/UserInfoDetailManageNew.vue +8 -2
- package/src/components/common/userinfo_detail/ic_detail/contractSigningList.vue +117 -0
- package/src/components/revenue/Common/EticketModal.vue +4 -4
- package/src/components/revenue/Common/EticketPrint.vue +1 -0
- package/src/components/revenue/HandManager/meterbookEntry.vue +1 -2
- package/src/components/revenue/comprehen/Bill/EticketV4/CustQueryEticket.vue +2 -1
- package/src/components/revenue/comprehen/Bill/EticketV4/EticketManage.vue +12 -5
- package/src/filiale/haile/FilesManage/MeterinfoTest.vue +2 -2
- package/src/filiale/haile/leftview/Userinfo.vue +12 -0
- package/src/filiale/jingyang/charge/ChargeList.vue +962 -0
- package/src/filiale/jingyang/charge/ChargeModal.vue +108 -0
- package/src/filiale/jingyang/sale.js +4 -0
- package/src/filiale/meihekou/MbpeopleList.vue +563 -0
- package/src/filiale/meihekou/sale.js +1 -0
- package/src/filiale/tongchuan/EticketManage.vue +3 -3
- package/src/filiale/yangchun/Overdue/OverdueSetList.vue +274 -274
- package/src/main.js +2 -2
- package/src/plugins/FileManageService.js +1 -0
- package/src/sale.js +1 -0
- package/.gradle/5.2.1/fileChanges/last-build.bin +0 -0
- package/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
- package/.gradle/5.2.1/gc.properties +0 -0
- package/.gradle/7.4/checksums/checksums.lock +0 -0
- package/.gradle/7.4/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/.gradle/7.4/dependencies-accessors/gc.properties +0 -0
- package/.gradle/7.4/executionHistory/executionHistory.bin +0 -0
- package/.gradle/7.4/executionHistory/executionHistory.lock +0 -0
- package/.gradle/7.4/fileChanges/last-build.bin +0 -0
- package/.gradle/7.4/fileHashes/fileHashes.bin +0 -0
- package/.gradle/7.4/fileHashes/fileHashes.lock +0 -0
- package/.gradle/7.4/gc.properties +0 -0
- package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/.gradle/buildOutputCleanup/cache.properties +0 -2
- package/.gradle/file-system.probe +0 -0
- package/.gradle/vcs-1/gc.properties +0 -0
package/package.json
CHANGED
|
@@ -84,6 +84,9 @@
|
|
|
84
84
|
<saletab header="用户设备查询" v-if="permission('用户设备查看')">
|
|
85
85
|
<user-device-query :row="row" v-if="show == '用户设备查询'" @deal-msg="dealMsg"></user-device-query>
|
|
86
86
|
</saletab>
|
|
87
|
+
<saletab header="合同查看" v-if="permission('合同查看')">
|
|
88
|
+
<contract-signing-list :row="row" v-if="show == '合同查看'" @deal-msg="dealMsg"></contract-signing-list>
|
|
89
|
+
</saletab>
|
|
87
90
|
</saletabbut>
|
|
88
91
|
</div>
|
|
89
92
|
</div>
|
|
@@ -108,6 +111,7 @@
|
|
|
108
111
|
import WebChargeQueryUser from './ic_detail/WebChargeQueryUser'
|
|
109
112
|
import WebHandQueryUser from './ic_detail/WebHandQueryUser'
|
|
110
113
|
import UserDeviceQuery from './ic_detail/UserDeviceQuery'
|
|
114
|
+
import contractSigningList from './ic_detail/contractSigningList'
|
|
111
115
|
|
|
112
116
|
// 导入物联网相关查询
|
|
113
117
|
import QueryInstruct from './iot_detail/QueryInstruct'
|
|
@@ -115,10 +119,11 @@
|
|
|
115
119
|
import WatchCollection from './iot_detail/WatchCollection'
|
|
116
120
|
import WatchWarning from './iot_detail/WatchWarning'
|
|
117
121
|
import PriceChangeQueryUser from './ic_detail/PriceChangeQueryUser'
|
|
118
|
-
import ChangeRecord from './ic_detail/ChangeRecord'
|
|
122
|
+
import ChangeRecord from './ic_detail/ChangeRecord'
|
|
119
123
|
import PriceAdjustmentQueryUser from './ic_detail/PriceAdjustmentQueryUser'
|
|
120
124
|
import MeterParam from './ic_detail/MeterParam'
|
|
121
125
|
import DeveiceRecord from './ic_detail/DeveiceRecord'
|
|
126
|
+
|
|
122
127
|
export default {
|
|
123
128
|
title: '用户详细信息',
|
|
124
129
|
props: ['f_userfiles_id', 'f_userinfo_id', 'f_userinfo_code', 'parentname', 'buttonshow'],
|
|
@@ -147,7 +152,8 @@ export default {
|
|
|
147
152
|
MeterParam,
|
|
148
153
|
DeveiceRecord,
|
|
149
154
|
MachineRecordQuery,
|
|
150
|
-
UserDeviceQuery
|
|
155
|
+
UserDeviceQuery,
|
|
156
|
+
contractSigningList
|
|
151
157
|
},
|
|
152
158
|
data () {
|
|
153
159
|
return {
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
<template >
|
|
2
|
+
<div class="flex" style="justify-content: space-between;">
|
|
3
|
+
<div @keyup.enter="search" style="">
|
|
4
|
+
<criteria-paged :model="model" v-ref:paged>
|
|
5
|
+
<criteria @condition-changed='$parent.search' partial='criteria' v-ref:criteria>
|
|
6
|
+
<div class="form-horizontal select-overspread container-fluid auto" novalidate partial>
|
|
7
|
+
<div class="row">
|
|
8
|
+
<div class="col-sm-2 form-group">
|
|
9
|
+
<label class="font_normal_body">开始时间</label>
|
|
10
|
+
<datepicker placeholder='开始时间' style="width:60%"
|
|
11
|
+
v-model="model.startTime"
|
|
12
|
+
:value.sync="model.startTime"
|
|
13
|
+
:format="'yyyy-MM-dd'"
|
|
14
|
+
:show-reset-button="true"
|
|
15
|
+
condition="f_signature_date >= '{} 00:00:00'">
|
|
16
|
+
</datepicker>
|
|
17
|
+
</div>
|
|
18
|
+
<div class="col-sm-2 form-group" >
|
|
19
|
+
<label class="font_normal_body">结束日期</label>
|
|
20
|
+
<datepicker placeholder='结束日期' style="width:60%"
|
|
21
|
+
v-model="model.endTime"
|
|
22
|
+
:value.sync="model.endTime"
|
|
23
|
+
:format="'yyyy-MM-dd'"
|
|
24
|
+
:show-reset-button="true"
|
|
25
|
+
condition="f_signature_date <= '{} 23:59:59'">
|
|
26
|
+
</datepicker>
|
|
27
|
+
</div>
|
|
28
|
+
|
|
29
|
+
<div style="float: right">
|
|
30
|
+
<button @click="search()" class="button_search" style="margin-right: 10px" v-el:cba>查询</button>
|
|
31
|
+
</div>
|
|
32
|
+
</div>
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
</div>
|
|
36
|
+
|
|
37
|
+
</criteria>
|
|
38
|
+
<data-grid :model="model" class="list_area table_sy" class="list_area table_sy" partial='list' 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
|
+
<th><nobr>合同名称</nobr></th>
|
|
45
|
+
<th><nobr>合同签订状态</nobr></th>
|
|
46
|
+
<th><nobr>合同签订时间</nobr></th>
|
|
47
|
+
<th><nobr>合同签订人</nobr></th>
|
|
48
|
+
<th><nobr>操  作</nobr></th>
|
|
49
|
+
</tr>
|
|
50
|
+
</template>
|
|
51
|
+
<template partial='body' partial='list' v-ref:grid>
|
|
52
|
+
<tr >
|
|
53
|
+
<td style="text-align:center">{{ row.f_userinfo_code }}</td>
|
|
54
|
+
<td style="text-align:center">{{ row.f_user_name }}</td>
|
|
55
|
+
<td style="text-align:center">{{ row.f_address }}</td>
|
|
56
|
+
<td style="text-align:center">{{ row.f_contract_name }}</td>
|
|
57
|
+
<td style="text-align:center">{{ row.f_signature_state }}</td>
|
|
58
|
+
<td style="text-align:center">{{ row.f_signature_date }}</td>
|
|
59
|
+
<td style="text-align:center">{{ row.f_user_name_not }}</td>
|
|
60
|
+
<td style="text-align:center"><button type="button" name="button" class="btn btn-link" @click="$parent.$parent.$parent.showExplain(row)">合同预览</button></td>
|
|
61
|
+
</tr>
|
|
62
|
+
</template>
|
|
63
|
+
<template partial='foot'></template>
|
|
64
|
+
</data-grid>
|
|
65
|
+
</criteria-paged>
|
|
66
|
+
</div>
|
|
67
|
+
<modal v-if="explainShow" :show.sync="explainShow" :title="titleL" style="height: 1000px" :width="1000" v-ref:model backdrop="false">
|
|
68
|
+
<article slot="modal-body" class="modal-body">
|
|
69
|
+
<iframe id="myIframe" :src="pdfPath" style="width: 100%;height: 500px"></iframe>
|
|
70
|
+
</article>
|
|
71
|
+
<div slot="modal-footer" class="modal-footer">
|
|
72
|
+
<button type="button" class="btn btn-default" @click="printPDF">打印</button>
|
|
73
|
+
<button type="button" class="btn btn-default" @click="close()">关闭</button>
|
|
74
|
+
</div>
|
|
75
|
+
</modal>
|
|
76
|
+
</div>
|
|
77
|
+
|
|
78
|
+
</template>
|
|
79
|
+
|
|
80
|
+
<script>
|
|
81
|
+
import {PagedList} from 'vue-client'
|
|
82
|
+
export default {
|
|
83
|
+
title: '合同查看',
|
|
84
|
+
data () {
|
|
85
|
+
return {
|
|
86
|
+
condition: `f_userinfo_id = '${this.row.f_userinfo_id}'`,
|
|
87
|
+
model: new PagedList('rs/sql/getContractSigin', 20, {}),
|
|
88
|
+
explainShow: false,
|
|
89
|
+
pdfPath: null,
|
|
90
|
+
prPdf: null,
|
|
91
|
+
titleL: null
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
props: ['row'],
|
|
95
|
+
ready () {
|
|
96
|
+
this.$refs.paged.$refs.criteria.search()
|
|
97
|
+
},
|
|
98
|
+
methods: {
|
|
99
|
+
printPDF () {
|
|
100
|
+
window.open(this.prPdf, '_blank')
|
|
101
|
+
},
|
|
102
|
+
async search () {
|
|
103
|
+
this.condition = `f_userinfo_id = '${this.row.f_userinfo_id}'`
|
|
104
|
+
this.model.search(this.condition, this.model)
|
|
105
|
+
},
|
|
106
|
+
showExplain (row) {
|
|
107
|
+
this.pdfPath = row.f_visit_url + '#toolbar=0'
|
|
108
|
+
this.prPdf = row.f_visit_url
|
|
109
|
+
this.titleL = row.f_contract_name
|
|
110
|
+
this.explainShow = true
|
|
111
|
+
}
|
|
112
|
+
},
|
|
113
|
+
computed: {
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
</script>
|
|
117
|
+
|
|
@@ -13,13 +13,13 @@
|
|
|
13
13
|
<input class="form-control col-sm-2"
|
|
14
14
|
v-model="row.f_paper_name" placeholder="开票名称">
|
|
15
15
|
</div>
|
|
16
|
-
<div class="col-sm-6 form-group form-input-group">
|
|
16
|
+
<div class="col-sm-6 form-group form-input-group" :class="[ row.invoice_is_pax.length < 1 ? 'has-error' : '']">
|
|
17
17
|
<nobr class="col-sm-4"><label class="control-label">是否征税:</label></nobr>
|
|
18
18
|
<v-select v-model="row.invoice_is_pax"
|
|
19
19
|
placeholder='请选择'
|
|
20
20
|
:value.sync="row.invoice_is_pax"
|
|
21
21
|
close-on-select
|
|
22
|
-
:width="60"
|
|
22
|
+
:width="60"
|
|
23
23
|
:value-single="true"
|
|
24
24
|
:search="false"
|
|
25
25
|
:options='is_pax' clear-button>
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
</article>
|
|
57
57
|
<footer slot="modal-footer" class="modal-footer">
|
|
58
58
|
<button type="button" class="btn button_search"
|
|
59
|
-
:disabled="!(row.f_paper_name&&row.f_address_phone&&row.f_taxpayer_id.length>=16 && row.f_taxpayer_id.length<=18)"
|
|
59
|
+
:disabled="!(row.f_paper_name&&row.f_address_phone&&row.f_taxpayer_id.length>=16 && row.f_taxpayer_id.length<=18&&row.invoice_is_pax.length >0)"
|
|
60
60
|
@click='confirm'>确认收费
|
|
61
61
|
</button>
|
|
62
62
|
</footer>
|
|
@@ -85,7 +85,7 @@ export default {
|
|
|
85
85
|
},
|
|
86
86
|
watch: {
|
|
87
87
|
'row'(){
|
|
88
|
-
this.row.invoice_is_pax=
|
|
88
|
+
this.row.invoice_is_pax = '征税'
|
|
89
89
|
}
|
|
90
90
|
},
|
|
91
91
|
events: {}
|
|
@@ -73,6 +73,7 @@ export default {
|
|
|
73
73
|
let result = await axios.post('/invoice/rs/logic/getInvoice', Object.assign({
|
|
74
74
|
id,
|
|
75
75
|
f_charge_type,
|
|
76
|
+
isTax: model.invoice_is_pax === '征税' ? '1' : '0',
|
|
76
77
|
bill_type: model.f_print ? model.f_print : null,
|
|
77
78
|
f_paper_name: model.f_paper_name,
|
|
78
79
|
f_taxpayer_id: model.f_taxpayer_id,
|
|
@@ -10,13 +10,12 @@
|
|
|
10
10
|
</template>
|
|
11
11
|
|
|
12
12
|
<script>
|
|
13
|
-
import MbpeopleList from './MbpeopleList'
|
|
14
13
|
import AddTobook from './AddTobook'
|
|
15
14
|
import {HttpResetClass} from 'vue-client'
|
|
16
15
|
|
|
17
16
|
export default {
|
|
18
17
|
name: 'meterbookEntry',
|
|
19
|
-
components: {AddTobook
|
|
18
|
+
components: {AddTobook},
|
|
20
19
|
title: '添加用户到抄表册',
|
|
21
20
|
data () {
|
|
22
21
|
return {
|
|
@@ -167,7 +167,7 @@
|
|
|
167
167
|
<footer slot="modal-footer" class="modal-footer">
|
|
168
168
|
<button type="button" class="btn button_search"
|
|
169
169
|
:disabled="!(row.f_paper_name&&row.f_address_phone)"
|
|
170
|
-
@click='confirm'
|
|
170
|
+
@click='confirm'>确认开票
|
|
171
171
|
</button>
|
|
172
172
|
</footer>
|
|
173
173
|
</modal>
|
|
@@ -278,6 +278,7 @@
|
|
|
278
278
|
},
|
|
279
279
|
confirm () {
|
|
280
280
|
this.row.f_print = this.row.f_print[0]
|
|
281
|
+
this.row.invoice_is_pax = this.invoice_is_pax
|
|
281
282
|
this.eticket_msg = false
|
|
282
283
|
this.disabled = false
|
|
283
284
|
this.eticket_show = true
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<tab-button v-ref:list>
|
|
3
|
-
<tabs header="开票记录">
|
|
3
|
+
<tabs header="开票记录" v-if="permission('开票记录查询')">
|
|
4
4
|
<e-ticket-record-list-query-v4></e-ticket-record-list-query-v4>
|
|
5
5
|
</tabs>
|
|
6
|
-
<tabs header="物联网表结算">
|
|
6
|
+
<tabs header="物联网表结算" v-if="permission('物联网表结算开票')">
|
|
7
7
|
<e-ticket-open-iot-query-v4></e-ticket-open-iot-query-v4>
|
|
8
8
|
</tabs>
|
|
9
|
-
<tabs header="卡表结算">
|
|
9
|
+
<tabs header="卡表结算" v-if="permission('卡表结算开票')">
|
|
10
10
|
<e-ticket-open-card-query-v4></e-ticket-open-card-query-v4>
|
|
11
11
|
</tabs>
|
|
12
|
-
<tabs header="机表抄表结算">
|
|
12
|
+
<tabs header="机表抄表结算" v-if="permission('机表抄表结算开票')">
|
|
13
13
|
<e-ticket-open-hand-query-v4></e-ticket-open-hand-query-v4>
|
|
14
14
|
</tabs>
|
|
15
|
-
<tabs header="自定义开票">
|
|
15
|
+
<tabs header="自定义开票" v-if="permission('自定义开票')">
|
|
16
16
|
<cust-query-eticket-query-v4></cust-query-eticket-query-v4>
|
|
17
17
|
</tabs>
|
|
18
18
|
</tab-button>
|
|
@@ -41,6 +41,13 @@ export default {
|
|
|
41
41
|
},
|
|
42
42
|
ready () {},
|
|
43
43
|
methods: {
|
|
44
|
+
permission (name) {
|
|
45
|
+
if (!this.$login.r.find(value => value == name)) {
|
|
46
|
+
return false
|
|
47
|
+
} else {
|
|
48
|
+
return true
|
|
49
|
+
}
|
|
50
|
+
},
|
|
44
51
|
cancel (obj) {
|
|
45
52
|
this.listpage = true
|
|
46
53
|
},
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
<input type="text" class="input_search" style="width:60%" v-show="false" v-model="$refs.brand.selectedItems"
|
|
12
12
|
v-validate:brand='{required: true }'>
|
|
13
13
|
<v-select :value.sync="row.gasbrand" :options='meterbrands' placeholder='气表品牌' close-on-select
|
|
14
|
-
search @change='brandChange' v-model='row.gasbrand' :disabled="curuser.f_user_state != '预备'" v-ref:brand></v-select>
|
|
14
|
+
search @change='brandChange' v-model='row.gasbrand' :disabled="curuser.f_user_state != '预备' && row.f_meter_classify != '机表'" v-ref:brand></v-select>
|
|
15
15
|
</div>
|
|
16
16
|
<div class="col-sm-4 form-group" :class="[$m.model.required ? 'has-error' : '']">
|
|
17
17
|
<label for="gasmodel" class="font_normal_body">气表型号</label>
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
v-validate:model='{required: true }'>
|
|
20
20
|
<v-select :value.sync="row.gasmodel" :options='row.gasbrand[0].gasmodel' placeholder='气表型号'
|
|
21
21
|
close-on-select
|
|
22
|
-
v-model='row.gasmodel' :disabled="row.gasbrand.length === 0 || curuser.f_user_state != '预备'" v-ref:model></v-select>
|
|
22
|
+
v-model='row.gasmodel' :disabled="(row.gasbrand.length === 0 || curuser.f_user_state != '预备') && row.f_meter_classify != '机表'" v-ref:model></v-select>
|
|
23
23
|
</div>
|
|
24
24
|
|
|
25
25
|
<div class="col-sm-4 form-group" v-if="isiot" :class="[$m.f_meternumber.required ? 'has-error' : '']">
|
|
@@ -83,6 +83,18 @@
|
|
|
83
83
|
<label class="col-sm-5">旧客户编号</label>
|
|
84
84
|
<span class="col-sm-7">{{ data ? data.f_olduserinfo_code : dafault.f_userinfo_code }}</span>
|
|
85
85
|
</div>
|
|
86
|
+
<div class="row" v-if="data.f_meter_type.includes('物联网')">
|
|
87
|
+
<label class="col-sm-5">开关阀状态</label>
|
|
88
|
+
<span class="col-sm-7">{{ data ? data.f_valve_state : '' }}</span>
|
|
89
|
+
</div>
|
|
90
|
+
<div class="row" v-if="data.f_meter_type.includes('机表')">
|
|
91
|
+
<label class="col-sm-5">开关阀状态</label>
|
|
92
|
+
<span class="col-sm-7">{{ data ? data.f_bqf_state : '' }}</span>
|
|
93
|
+
</div>
|
|
94
|
+
<div class="row" v-if="!data.f_meter_type.includes('卡表')">
|
|
95
|
+
<label class="col-sm-5">开关阀原因</label>
|
|
96
|
+
<span class="col-sm-7">{{ data ? data.f_off_valve_reason : '' }}</span>
|
|
97
|
+
</div>
|
|
86
98
|
<modal v-if="showselectncuserinfo" :show.sync="showselectncuserinfo" width="40%" title="修正客户电话号码"
|
|
87
99
|
v-ref:modal large backdrop="false">
|
|
88
100
|
<article slot="modal-body" class="modal-body">
|