sale-client 3.5.289 → 3.5.291
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 +4 -1
- package/package.json +3 -3
- package/src/components/charge/gasloss/gasLossManage.vue +0 -3
- package/src/components/charge/gasloss/gasLossOperate.vue +157 -135
- package/src/components/revenue/base/rightview/carddetail/BlacklistDetail.vue +2 -5
- package/src/filiale/qianneng/eticket/EticketPrint.vue +9 -8
- package/src/filiale/qianneng/eticket/EticketRecordList.vue +8 -1
- package/src/filiale/shanxian/FileUserAddress.vue +11 -4
- package/src/filiale/shanxian/UserDeviceInfoTest.vue +16 -5
- package/src/filiale/xiangyun/IOTRefund.vue +11 -8
- package/src/main.js +1 -1
package/build/dev-server.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
var path = require('path')
|
|
2
|
-
const [localUrl, serverRul] = ['
|
|
2
|
+
const [localUrl, serverRul] = ['https://qnjtkf.cn:7400/#', 'https://qnjtkf.cn:7400/#']
|
|
3
3
|
var merge = require('webpack-merge')
|
|
4
4
|
var baseConfig = require('./webpack.dev.conf')
|
|
5
5
|
var devConfig = {
|
|
@@ -20,6 +20,9 @@ var devConfig = {
|
|
|
20
20
|
'/rs/file': {
|
|
21
21
|
target: serverRul
|
|
22
22
|
},
|
|
23
|
+
'/invoice': {
|
|
24
|
+
target: serverRul
|
|
25
|
+
},
|
|
23
26
|
// 查找资源服务数据
|
|
24
27
|
'/rs/search': {
|
|
25
28
|
target: serverRul
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sale-client",
|
|
3
|
-
"version": "3.5.
|
|
3
|
+
"version": "3.5.291",
|
|
4
4
|
"description": "收费模块前台组件",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"karma-sourcemap-loader": "^0.3.7",
|
|
75
75
|
"karma-spec-reporter": "0.0.31",
|
|
76
76
|
"karma-webpack": "^2.0.2",
|
|
77
|
-
"ldap-clients": "3.0.
|
|
77
|
+
"ldap-clients": "3.0.48",
|
|
78
78
|
"less": "^2.7.3",
|
|
79
79
|
"manage-client": "3.1.8-88",
|
|
80
80
|
"mkdirp": "^0.5.1",
|
|
@@ -89,7 +89,7 @@
|
|
|
89
89
|
"sinon-chai": "^2.8.0",
|
|
90
90
|
"style": "0.0.3",
|
|
91
91
|
"style-loader": "^0.20.3",
|
|
92
|
-
"system-clients": "3.2.
|
|
92
|
+
"system-clients": "3.2.55",
|
|
93
93
|
"url-loader": "^0.5.7",
|
|
94
94
|
"vue-client": "1.24.79",
|
|
95
95
|
"vue-clipboard2": "0.3.1",
|
|
@@ -14,7 +14,6 @@
|
|
|
14
14
|
</template>
|
|
15
15
|
|
|
16
16
|
<script>
|
|
17
|
-
import {HttpResetClass} from 'vue-client'
|
|
18
17
|
export default {
|
|
19
18
|
title: '气损收费',
|
|
20
19
|
name: 'gasLossManage',
|
|
@@ -22,8 +21,6 @@
|
|
|
22
21
|
return {
|
|
23
22
|
showupload: false,
|
|
24
23
|
showAddMssage: false,
|
|
25
|
-
|
|
26
|
-
|
|
27
24
|
showItem: false
|
|
28
25
|
}
|
|
29
26
|
},
|
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
<div style="height:550px;overflow-y: auto;">
|
|
8
8
|
<div style="margin-top:10px;" class="auto row" v-for="row in model.gaslossdetail">
|
|
9
9
|
<div class="panel panel-primary datapanel" style="background-color: #f4f6f8">
|
|
10
|
-
<!-- <div class="auto row">-->
|
|
11
10
|
<div class="col-sm-4 form-group" :class="{'has-success':row.f_type,'has-error':!row.f_type}">
|
|
12
11
|
<label for="f_brand_spec" class="font_normal_body" title="参数名称:气损分类">气损分类</label>
|
|
13
12
|
<input v-show="false" v-model="row.f_type" v-validate:f_type='{required: true }'>
|
|
@@ -50,107 +49,89 @@
|
|
|
50
49
|
<button type="button" class="glyphicon glyphicon-minus btn-danger" @click.stop="delthisdetail($index)"></button>
|
|
51
50
|
<button type="button" class="glyphicon glyphicon-plus btn-success" @click.stop="addadetail()"></button>
|
|
52
51
|
</div>
|
|
53
|
-
<!-- </div>-->
|
|
54
52
|
</div>
|
|
55
53
|
</div>
|
|
56
54
|
</div>
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
<div class="col-sm-4 form-group" :class="{'has-success':model.f_charge_person,'has-error':!model.f_charge_person}">
|
|
67
|
-
<label class=" font_normal_body"> 缴 费 人 </label>
|
|
68
|
-
<input class="input_search" style="width:60%"
|
|
69
|
-
v-validate:f_charge_person='{required: true }'
|
|
70
|
-
v-model="model.f_charge_person"
|
|
71
|
-
placeholder="缴费人">
|
|
72
|
-
</div>
|
|
73
|
-
<div class="col-sm-4 form-group" :class="{'has-success':model.f_charge_phone,'has-error':!model.f_charge_phone}">
|
|
74
|
-
<label class=" font_normal_body"> 联系电话</label>
|
|
75
|
-
<input class="input_search" style="width:60%"
|
|
76
|
-
v-validate:f_charge_phone='{required: true }'
|
|
77
|
-
v-model="model.f_charge_phone"
|
|
78
|
-
placeholder="联系电话">
|
|
79
|
-
</div>
|
|
80
|
-
<div class="col-sm-12 form-group" :class="{'has-success':model.f_charge_address,'has-error':!model.f_charge_address}">
|
|
81
|
-
<label class=" font_normal_body">缴费人地址</label>
|
|
82
|
-
<input class="input_search" style="width:89%"
|
|
83
|
-
v-validate:f_charge_address='{required: true }'
|
|
84
|
-
v-model="model.f_charge_address"
|
|
85
|
-
placeholder="缴费人地址">
|
|
86
|
-
</div>
|
|
87
|
-
<div class="col-sm-4 form-group">
|
|
88
|
-
<label for="f_paytype" class="font_normal_body" title="参数名称:付款方式"> 收款方式</label>
|
|
89
|
-
<v-select id="f_payment"
|
|
90
|
-
v-model="f_payment"
|
|
91
|
-
placeholder='请选择'
|
|
92
|
-
:value.sync="model.f_payment"
|
|
93
|
-
:value-single="true"
|
|
94
|
-
:options='paytype'
|
|
95
|
-
close-on-select clear-button>
|
|
96
|
-
</v-select>
|
|
97
|
-
</div>
|
|
98
|
-
<div class="col-sm-4 form-group">
|
|
99
|
-
<label for="f_print" class="font_normal_body"> 打印格式</label>
|
|
100
|
-
<v-select id="print"
|
|
101
|
-
v-model="model.f_print"
|
|
102
|
-
placeholder='请选择'
|
|
103
|
-
:value.sync="model.f_print"
|
|
104
|
-
:options='printstyle'
|
|
105
|
-
:value-single="true"
|
|
106
|
-
close-on-select clear-button>
|
|
107
|
-
</v-select>
|
|
108
|
-
</div>
|
|
109
|
-
<div class="col-sm-4 auto">
|
|
110
|
-
<label for="f_collection" style="text-align:right;"><font size="6px" style="font-weight:bold;color:darkred">收 款:{{model.f_collection}}</font></label>
|
|
111
|
-
</div>
|
|
112
|
-
<div class="col-sm-9 form-group">
|
|
113
|
-
<label class=" font_normal_body"> 备  注</label>
|
|
114
|
-
<input class="input_search" style="width:70%"
|
|
115
|
-
v-model="model.f_comments"
|
|
116
|
-
placeholder="备注">
|
|
117
|
-
</div>
|
|
118
|
-
<div style="text-align:right;height: 25%;">
|
|
119
|
-
<button class="button_search btn-gn" type="button" @click="confirm()" :disabled='!$v.valid || validateOk'>确认</button>
|
|
120
|
-
<button class="button_clear btn-gn" type="button" @click="clean()">取消</button>
|
|
121
|
-
</div>
|
|
122
|
-
</div>
|
|
123
|
-
|
|
124
|
-
<!-- <payment-code-button :clickable="!$v.valid || validateOk"-->
|
|
125
|
-
<!-- :payment.sync="model.f_payment" :payment-data="paytype"-->
|
|
126
|
-
<!-- @confirm-payment="confirm()">-->
|
|
127
|
-
<!-- </payment-code-button>-->
|
|
128
|
-
|
|
129
|
-
|
|
55
|
+
</div>
|
|
56
|
+
<div class=" panel panel-primary datapanel" style="height:260px">
|
|
57
|
+
<div class="row">
|
|
58
|
+
<div class="col-sm-4 form-group">
|
|
59
|
+
<label class=" font_normal_body"> 客户编号</label>
|
|
60
|
+
<input class="input_search" style="width:60%"
|
|
61
|
+
v-model="model.f_userinfo_code"
|
|
62
|
+
@blur="codeChange()"
|
|
63
|
+
placeholder="客户编号">
|
|
130
64
|
</div>
|
|
131
|
-
|
|
132
|
-
|
|
65
|
+
<div class="col-sm-4 form-group" :class="{'has-success':model.f_charge_person,'has-error':!model.f_charge_person}">
|
|
66
|
+
<label class=" font_normal_body"> 缴 费 人 </label>
|
|
67
|
+
<input class="input_search" style="width:60%"
|
|
68
|
+
v-validate:f_charge_person='{required: true }'
|
|
69
|
+
v-model="model.f_charge_person"
|
|
70
|
+
placeholder="缴费人">
|
|
71
|
+
</div>
|
|
72
|
+
<div class="col-sm-4 form-group" :class="{'has-success':model.f_charge_phone,'has-error':!model.f_charge_phone}">
|
|
73
|
+
<label class=" font_normal_body"> 联系电话</label>
|
|
74
|
+
<input class="input_search" style="width:60%"
|
|
75
|
+
v-validate:f_charge_phone='{required: true }'
|
|
76
|
+
v-model="model.f_charge_phone"
|
|
77
|
+
placeholder="联系电话">
|
|
78
|
+
</div>
|
|
79
|
+
<div class="col-sm-12 form-group" :class="{'has-success':model.f_charge_address,'has-error':!model.f_charge_address}">
|
|
80
|
+
<label class=" font_normal_body">缴费人地址</label>
|
|
81
|
+
<input class="input_search" style="width:89%"
|
|
82
|
+
v-validate:f_charge_address='{required: true }'
|
|
83
|
+
v-model="model.f_charge_address"
|
|
84
|
+
placeholder="缴费人地址">
|
|
85
|
+
</div>
|
|
86
|
+
<div class="col-sm-4 form-group">
|
|
87
|
+
<label for="f_paytype" class="font_normal_body" title="参数名称:付款方式"> 收款方式</label>
|
|
88
|
+
<v-select id="f_payment"
|
|
89
|
+
v-model="f_payment"
|
|
90
|
+
placeholder='请选择'
|
|
91
|
+
:value.sync="model.f_payment"
|
|
92
|
+
:value-single="true"
|
|
93
|
+
:options='paytype'
|
|
94
|
+
close-on-select clear-button>
|
|
95
|
+
</v-select>
|
|
96
|
+
</div>
|
|
97
|
+
<div class="col-sm-4 form-group">
|
|
98
|
+
<label for="f_print" class="font_normal_body"> 打印格式</label>
|
|
99
|
+
<v-select id="print"
|
|
100
|
+
v-model="model.f_print"
|
|
101
|
+
placeholder='请选择'
|
|
102
|
+
:value.sync="model.f_print"
|
|
103
|
+
:options='printstyle'
|
|
104
|
+
:value-single="true"
|
|
105
|
+
close-on-select clear-button>
|
|
106
|
+
</v-select>
|
|
107
|
+
</div>
|
|
108
|
+
<div class="col-sm-4 auto">
|
|
109
|
+
<label for="f_collection" style="text-align:right;"><font size="6px" style="font-weight:bold;color:darkred">收 款:{{model.f_collection}}</font></label>
|
|
110
|
+
</div>
|
|
111
|
+
<div class="col-sm-9 form-group">
|
|
112
|
+
<label class=" font_normal_body"> 备  注</label>
|
|
113
|
+
<input class="input_search" style="width:70%"
|
|
114
|
+
v-model="model.f_comments"
|
|
115
|
+
placeholder="备注">
|
|
116
|
+
</div>
|
|
117
|
+
<div style="text-align:right;height: 25%;">
|
|
118
|
+
<button class="button_search btn-gn" type="button" @click="checkInvoiceMsg()" :disabled='!$v.valid || validateOk'>确认</button>
|
|
119
|
+
<button class="button_clear btn-gn" type="button" @click="clean()">取消</button>
|
|
120
|
+
</div>
|
|
121
|
+
</div>
|
|
122
|
+
</div>
|
|
133
123
|
</form>
|
|
134
124
|
<validate-bill v-if="hasValidateBill" :data="model" @validate-bill="validateBill"></validate-bill>
|
|
135
125
|
<print-bill :show="print" :data='model' :bill-config='config' :bill-data='billData' v-on:toggle="close" @printok="printok" v-ref:printbill></print-bill>
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
126
|
+
<ticket-print :show="eticket_show" @toggle="eticket_toggle" v-ref:eticketbill></ticket-print>
|
|
127
|
+
<eticket-modal :show="eticket_msg" @close-modal-show="eticket_msg = false" :row="model" @confirm="confirm"></eticket-modal>
|
|
139
128
|
</validator>
|
|
140
|
-
|
|
141
129
|
</div>
|
|
142
|
-
|
|
143
130
|
<payment-code v-ref:paymentcode :payment="model.f_payment" :money="model.f_collection"></payment-code>
|
|
144
|
-
|
|
145
131
|
</div>
|
|
146
|
-
<!-- <div class="auto">-->
|
|
147
|
-
<!-- <upload isremark="true" fusetype="气损收费"></upload>-->
|
|
148
|
-
<!-- </div>-->
|
|
149
132
|
</template>
|
|
150
133
|
|
|
151
|
-
|
|
152
134
|
<script>
|
|
153
|
-
|
|
154
135
|
import {HttpResetClass} from 'vue-client'
|
|
155
136
|
import Vue from 'vue'
|
|
156
137
|
|
|
@@ -158,35 +139,28 @@
|
|
|
158
139
|
try {
|
|
159
140
|
// 加入扫码盒付款码支付流水号
|
|
160
141
|
self.model.f_serial_id = self.$refs.paymentcode.paymentCodeReturnData.f_out_trade_no
|
|
161
|
-
|
|
162
|
-
self.model.f_bill_style=self.model.f_print
|
|
142
|
+
self.model.f_bill_style = self.model.f_print
|
|
163
143
|
let http = new HttpResetClass()
|
|
164
|
-
self.model.f_describe
|
|
144
|
+
self.model.f_describe = `${Vue.$login.f.name}对${self.model.f_charge_person}进行气损收费`
|
|
165
145
|
let resid = await http.load('POST', 'rs/logic/gasLoss', self.model, {resolveMsg: '气损收费成功', rejectMsg: '气损收费失败'})
|
|
166
146
|
console.log('f_print:', resid)
|
|
167
|
-
if (
|
|
168
|
-
if (self.
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
self.print = true
|
|
177
|
-
}
|
|
178
|
-
} else if (self.model.f_print === '国税发票') {
|
|
179
|
-
// TODO
|
|
180
|
-
self.clean()
|
|
181
|
-
self.$dispatch('refresh')
|
|
182
|
-
} else if (self.model.f_print === '电子发票') {
|
|
183
|
-
self.$CommonService.openEticket(resid, '其他费用')
|
|
184
|
-
self.clean()
|
|
185
|
-
self.$dispatch('refresh')
|
|
147
|
+
if (self.model.f_print !== '电子发票') {
|
|
148
|
+
if (self.config.hasBillManage) {
|
|
149
|
+
self.model.id = resid.data
|
|
150
|
+
self.model.f_bill_type = '其他费用'
|
|
151
|
+
self.model.f_bill_style = self.model.f_print[0]
|
|
152
|
+
self.print = true
|
|
153
|
+
} else {
|
|
154
|
+
self.model.id = resid.data
|
|
155
|
+
self.print = true
|
|
186
156
|
}
|
|
187
|
-
} else {
|
|
157
|
+
} else if (self.model.f_print === '国税发票') {
|
|
158
|
+
// TODO
|
|
188
159
|
self.clean()
|
|
189
160
|
self.$dispatch('refresh')
|
|
161
|
+
} else if (self.model.f_print === '电子发票') {
|
|
162
|
+
self.eticket_show = true
|
|
163
|
+
await self.$refs.eticketbill.openETicket([resid.data], self.model, '气损收费')
|
|
190
164
|
}
|
|
191
165
|
} catch (error) {
|
|
192
166
|
self.$showAlert(error, 'danger', 0)
|
|
@@ -195,9 +169,9 @@
|
|
|
195
169
|
}
|
|
196
170
|
|
|
197
171
|
let asyncGasLoss = async function (self) {
|
|
198
|
-
try{
|
|
172
|
+
try {
|
|
199
173
|
await self.$getConfig(self, 'gasLossCharge')
|
|
200
|
-
} catch(error){
|
|
174
|
+
} catch (error) {
|
|
201
175
|
console.log('无配置文件')
|
|
202
176
|
}
|
|
203
177
|
self.model.f_print = self.config.printType
|
|
@@ -219,10 +193,13 @@
|
|
|
219
193
|
payment: '现金缴费', // 付款方式
|
|
220
194
|
f_type: '', // 气损分类
|
|
221
195
|
f_loss_type: '' // 气损类型
|
|
222
|
-
|
|
223
196
|
},
|
|
197
|
+
eticket_msg: false,
|
|
198
|
+
eticket_show: false,
|
|
199
|
+
invoice_is_pax: '征税',
|
|
200
|
+
is_pax: [{label: '征税', value: '征税'}, {label: '不征税', value: '不征税'}],
|
|
224
201
|
model: {
|
|
225
|
-
f_userinfo_id:null,
|
|
202
|
+
f_userinfo_id: null,
|
|
226
203
|
f_collection: 0,
|
|
227
204
|
f_payment: '',
|
|
228
205
|
f_bill_style: '',
|
|
@@ -239,7 +216,15 @@
|
|
|
239
216
|
f_depname: Vue.$login.f.deps,
|
|
240
217
|
f_operat_type: '气损收费',
|
|
241
218
|
f_print: '',
|
|
242
|
-
gaslossdetail:[{}]
|
|
219
|
+
gaslossdetail: [{}],
|
|
220
|
+
f_user_name: '',
|
|
221
|
+
f_user_phone: '',
|
|
222
|
+
f_address: '',
|
|
223
|
+
f_paper_name: '',
|
|
224
|
+
f_paper_account: '',
|
|
225
|
+
f_idnumber: '',
|
|
226
|
+
f_taxpayer_id: '',
|
|
227
|
+
f_address_phone: ''
|
|
243
228
|
},
|
|
244
229
|
print: false,
|
|
245
230
|
taxprint: false,
|
|
@@ -263,36 +248,64 @@
|
|
|
263
248
|
},
|
|
264
249
|
|
|
265
250
|
methods: {
|
|
266
|
-
|
|
267
|
-
if(this.model.
|
|
251
|
+
checkInvoiceMsg () {
|
|
252
|
+
if (this.model.f_print === '电子发票') {
|
|
253
|
+
if (!this.model.f_taxpayer_id) {
|
|
254
|
+
this.model.f_taxpayer_id = this.model.f_idnumber
|
|
255
|
+
}
|
|
256
|
+
if (!this.model.f_paper_name) {
|
|
257
|
+
this.model.f_paper_name = this.model.f_user_name
|
|
258
|
+
}
|
|
259
|
+
if (!this.model.f_address_phone) {
|
|
260
|
+
this.model.f_address_phone = this.model.f_address + ' ' + this.model.f_user_phone
|
|
261
|
+
}
|
|
262
|
+
this.eticket_msg = true
|
|
263
|
+
} else {
|
|
264
|
+
this.confirm()
|
|
265
|
+
}
|
|
266
|
+
},
|
|
267
|
+
eticket_toggle () {
|
|
268
|
+
this.eticket_show = false
|
|
269
|
+
this.$dispatch('success')
|
|
270
|
+
},
|
|
271
|
+
async codeChange () {
|
|
272
|
+
this.model.f_userinfo_code = this.model.f_userinfo_code.trim()
|
|
273
|
+
if (this.model.f_userinfo_code) {
|
|
268
274
|
let http = new HttpResetClass()
|
|
269
275
|
let res = await http.load('POST', 'rs/sql/singleTable_OrderBy', {
|
|
270
276
|
data: {
|
|
271
|
-
items: 'u.f_userinfo_id,u.f_user_name,u.f_user_phone,a.f_address',
|
|
277
|
+
items: 'u.f_userinfo_id,u.f_user_name,u.f_user_phone,a.f_address,u.f_paper_name,u.f_paper_account,u.f_idnumber,u.f_taxpayer_id,u.f_address_phone',
|
|
272
278
|
tablename: 't_userinfo u left join t_user_address a on u.f_userinfo_id = a.f_userinfo_id',
|
|
273
279
|
condition: `u.f_userinfo_code = '${this.model.f_userinfo_code}' and u.f_user_state = '正常'`,
|
|
274
280
|
orderitem: 'u.f_userinfo_id desc'
|
|
275
281
|
}
|
|
276
282
|
}, {resolveMsg: null, rejectMsg: '获取用户信息失败'})
|
|
277
|
-
if(res.data.length==0){
|
|
278
|
-
this.$showAlert('该客户编号不存在,请重新输入','warning',3000)
|
|
279
|
-
this.model.f_userinfo_code=null
|
|
280
|
-
}else{
|
|
281
|
-
this.model.f_userinfo_id=res.data[0].f_userinfo_id
|
|
282
|
-
this.model.f_charge_person=res.data[0].f_user_name
|
|
283
|
-
this.model.f_charge_phone=res.data[0].f_user_phone
|
|
284
|
-
this.model.f_charge_address=res.data[0].f_address
|
|
283
|
+
if (res.data.length == 0) {
|
|
284
|
+
this.$showAlert('该客户编号不存在,请重新输入', 'warning', 3000)
|
|
285
|
+
this.model.f_userinfo_code = null
|
|
286
|
+
} else {
|
|
287
|
+
this.model.f_userinfo_id = res.data[0].f_userinfo_id
|
|
288
|
+
this.model.f_charge_person = res.data[0].f_user_name
|
|
289
|
+
this.model.f_charge_phone = res.data[0].f_user_phone
|
|
290
|
+
this.model.f_charge_address = res.data[0].f_address
|
|
291
|
+
this.model.f_user_name = res.data[0].f_user_name
|
|
292
|
+
this.model.f_user_phone = res.data[0].f_user_phone
|
|
293
|
+
this.model.f_address = res.data[0].f_address
|
|
294
|
+
this.model.f_paper_name = res.data[0].f_paper_name
|
|
295
|
+
this.model.f_paper_account = res.data[0].f_paper_account
|
|
296
|
+
this.model.f_idnumber = res.data[0].f_idnumber
|
|
297
|
+
this.model.f_taxpayer_id = res.data[0].f_taxpayer_id
|
|
298
|
+
this.model.f_address_phone = res.data[0].f_address_phone
|
|
285
299
|
}
|
|
286
|
-
|
|
287
300
|
}
|
|
288
301
|
},
|
|
289
|
-
async clean(){
|
|
302
|
+
async clean () {
|
|
290
303
|
this.model = {}
|
|
291
304
|
await this.$nextTick()
|
|
292
|
-
this.model={
|
|
305
|
+
this.model = {
|
|
306
|
+
f_userinfo_id: null,
|
|
293
307
|
f_collection: 0,
|
|
294
|
-
f_payment:
|
|
295
|
-
f_print: this.config.printType,
|
|
308
|
+
f_payment: '',
|
|
296
309
|
f_bill_style: '',
|
|
297
310
|
f_comments: '',
|
|
298
311
|
f_charge_person: '',
|
|
@@ -306,16 +319,25 @@
|
|
|
306
319
|
f_depid: Vue.$login.f.depids,
|
|
307
320
|
f_depname: Vue.$login.f.deps,
|
|
308
321
|
f_operat_type: '气损收费',
|
|
309
|
-
|
|
322
|
+
f_print: '',
|
|
323
|
+
gaslossdetail: [{}],
|
|
324
|
+
f_user_name: '',
|
|
325
|
+
f_user_phone: '',
|
|
326
|
+
f_address: '',
|
|
327
|
+
f_paper_name: '',
|
|
328
|
+
f_paper_account: '',
|
|
329
|
+
f_idnumber: '',
|
|
330
|
+
f_taxpayer_id: '',
|
|
331
|
+
f_address_phone: ''
|
|
310
332
|
}
|
|
311
333
|
},
|
|
312
334
|
async confirm () {
|
|
335
|
+
this.eticket_msg = false
|
|
313
336
|
// // 先调用付款码支付组件流程
|
|
314
337
|
let ss = await this.$refs.paymentcode.flowPath()
|
|
315
338
|
this.$refs.paymentcode.paymentCodeShow = false
|
|
316
339
|
console.log('付款码操作返回', ss)
|
|
317
340
|
if (!ss.result) return
|
|
318
|
-
|
|
319
341
|
gasLossGen(this)
|
|
320
342
|
},
|
|
321
343
|
close () {
|
|
@@ -350,7 +372,7 @@
|
|
|
350
372
|
this.model.gaslossdetail.splice(index, 1)
|
|
351
373
|
this.getcollection()
|
|
352
374
|
}
|
|
353
|
-
}
|
|
375
|
+
}
|
|
354
376
|
},
|
|
355
377
|
computed: {
|
|
356
378
|
}
|
|
@@ -43,12 +43,9 @@ export default {
|
|
|
43
43
|
}
|
|
44
44
|
},
|
|
45
45
|
ready () {
|
|
46
|
-
let sql = '
|
|
46
|
+
let sql = 'getBlack'
|
|
47
47
|
let condition = {
|
|
48
|
-
|
|
49
|
-
tablename: 't_userinfo',
|
|
50
|
-
condition: ' f_userinfo_id = ' + this.data.f_userinfo_id,
|
|
51
|
-
orderitem: 'f_userinfo_id'
|
|
48
|
+
condition: ' tr.id = ' + this.data.id
|
|
52
49
|
}
|
|
53
50
|
this.$info(`加载数据中..., sql:${sql}`)
|
|
54
51
|
this.$refs.pv.load('rs/logic/getOneData', {data: {sql: sql, params: condition}}).then((a) => {
|
|
@@ -45,6 +45,7 @@ export default {
|
|
|
45
45
|
id: obj.f_eticket_id,
|
|
46
46
|
f_bill_code: obj.f_bill_code ? obj.f_bill_code : undefined,
|
|
47
47
|
f_bill_number: obj.f_bill_number ? obj.f_bill_number : undefined,
|
|
48
|
+
f_fpqqlsh: obj.fpqqlsh ? obj.fpqqlsh : undefined,
|
|
48
49
|
f_jym: obj.f_jym ? obj.f_jym : undefined,
|
|
49
50
|
f_bill_url: obj.f_bill_url ? obj.f_bill_url : undefined,
|
|
50
51
|
f_red_url: obj.f_red_url ? obj.f_red_url : undefined,
|
|
@@ -132,12 +133,11 @@ export default {
|
|
|
132
133
|
id: ticket_id,
|
|
133
134
|
f_bill_code: req.fpDm,
|
|
134
135
|
f_bill_number: req.fpHm,
|
|
135
|
-
f_bill_url: req.
|
|
136
|
-
|
|
137
|
-
f_sign_result: req.sharecode,
|
|
136
|
+
f_bill_url: req.shareurl.replace('/s/', `/s/downloadPdf?pwd=${req.sharecode}&authCode=`).replace('\\', ''),
|
|
137
|
+
f_sign_result: req.msg,
|
|
138
138
|
f_bill_state: req.status
|
|
139
139
|
}
|
|
140
|
-
this.eticket_src = '
|
|
140
|
+
this.eticket_src = req.shareurl.replace('/s/', `/s/downloadPdf?pwd=${req.sharecode}&authCode=`).replace('\\', '')
|
|
141
141
|
} else if (req.status === '开票中') {
|
|
142
142
|
model = {
|
|
143
143
|
id: ticket_id,
|
|
@@ -202,6 +202,7 @@ export default {
|
|
|
202
202
|
f_eticket_id: ticket_id,
|
|
203
203
|
f_bill_code: req.fpDm,
|
|
204
204
|
f_bill_number: req.fpHm,
|
|
205
|
+
fpqqlsh: req.fpqqlsh,
|
|
205
206
|
f_bill_url: req.shareurl.replace('/s/', `/s/downloadPdf?pwd=${req.sharecode}&authCode=`).replace('\\', ''),
|
|
206
207
|
f_sign_result: req.msg,
|
|
207
208
|
f_bill_state: req.status
|
|
@@ -304,12 +305,12 @@ export default {
|
|
|
304
305
|
f_eticket_id: ticket_id,
|
|
305
306
|
f_bill_code: req.fpDm,
|
|
306
307
|
f_bill_number: req.fpHm,
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
f_sign_result: req.
|
|
308
|
+
fpqqlsh: req.fpqqlsh,
|
|
309
|
+
f_bill_url: req.shareurl.replace('/s/', `/s/downloadPdf?pwd=${req.sharecode}&authCode=`).replace('\\', ''),
|
|
310
|
+
f_sign_result: req.msg,
|
|
310
311
|
f_bill_state: req.status
|
|
311
312
|
})
|
|
312
|
-
this.eticket_src =
|
|
313
|
+
this.eticket_src = req.shareurl.replace('/s/', `/s/downloadPdf?pwd=${req.sharecode}&authCode=`).replace('\\', '')
|
|
313
314
|
} else if (req && req.status !== '开票中') {
|
|
314
315
|
clearInterval(interval)
|
|
315
316
|
// TODO 失败后保存发票详情
|
|
@@ -135,7 +135,7 @@
|
|
|
135
135
|
</th>
|
|
136
136
|
<th style="text-align:center">
|
|
137
137
|
<template v-if="row.f_invoice_source !== '外部录入'">
|
|
138
|
-
<button class="btn btn-link" v-if="row.f_bill_state==='开票成功'"
|
|
138
|
+
<button class="btn btn-link" v-if="row.f_bill_state==='开票成功' && row.f_tax_money > 0"
|
|
139
139
|
@click="$parent.$parent.$parent.fp_ch(row)">发票冲红
|
|
140
140
|
</button>
|
|
141
141
|
<button class="btn btn-link" v-if="row.f_bill_state==='待开票'"
|
|
@@ -144,6 +144,9 @@
|
|
|
144
144
|
<button class="btn btn-link" v-if="row.f_bill_state==='开票失败'"
|
|
145
145
|
@click="$parent.$parent.$parent.kp(row)">重新开票
|
|
146
146
|
</button>
|
|
147
|
+
<button class="btn btn-link" v-if="row.f_bill_state==='冲红失败'"
|
|
148
|
+
@click="$parent.$parent.$parent.kp(row)">重新冲红
|
|
149
|
+
</button>
|
|
147
150
|
<button class="btn btn-link" v-if="['查询失败','等待查询'].includes(row.f_bill_state)"
|
|
148
151
|
@click="$parent.$parent.$parent.fp_search(row)">电票查询
|
|
149
152
|
</button>
|
|
@@ -252,6 +255,10 @@ export default {
|
|
|
252
255
|
this.eticket_show = true
|
|
253
256
|
this.$refs.eticketbill.openEticketGen(row.id)
|
|
254
257
|
},
|
|
258
|
+
ch (row) {
|
|
259
|
+
this.eticket_show = true
|
|
260
|
+
this.$refs.eticketbill.rushRedInvoice(row.id)
|
|
261
|
+
},
|
|
255
262
|
eticket_toggle () {
|
|
256
263
|
this.eticket_show = false
|
|
257
264
|
this.show = false
|
|
@@ -73,23 +73,30 @@
|
|
|
73
73
|
close-on-select v-ref:slice>
|
|
74
74
|
</v-select>
|
|
75
75
|
</div>
|
|
76
|
-
<div v-if="!usertype" class="col-sm-6 form-group "
|
|
76
|
+
<div v-if="!usertype" class="col-sm-6 form-group "
|
|
77
|
+
:class="[$v.f_building.required ? 'has-error' : 'has-success']">
|
|
77
78
|
<label for="f_address" class="font_normal_body">楼  号</label>
|
|
78
79
|
<input type="text" style="width:40%" v-model="model.f_building" class="input_search"
|
|
80
|
+
v-validate:f_building='{required: true }'
|
|
79
81
|
placeholder="楼号"/>
|
|
80
82
|
<input type="text" style="width:20%" v-model="model.f_building_suffix" class="input_search"
|
|
81
83
|
/>
|
|
82
84
|
|
|
83
85
|
</div>
|
|
84
|
-
<div v-if="!usertype" class="col-sm-6 form-group "
|
|
86
|
+
<div v-if="!usertype" class="col-sm-6 form-group "
|
|
87
|
+
:class="[$v.f_unit.required ? 'has-error' : 'has-success']">
|
|
85
88
|
<label for="f_address" class="font_normal_body">单  元</label>
|
|
86
|
-
<input type="text" style="width:40%" v-model="model.f_unit" class="input_search"
|
|
89
|
+
<input type="text" style="width:40%" v-model="model.f_unit" class="input_search"
|
|
90
|
+
v-validate:f_unit='{required: true }'
|
|
91
|
+
placeholder="单元"/>
|
|
87
92
|
<input type="text" style="width:20%" v-model="model.f_unit_suffix" class="input_search"
|
|
88
93
|
/>
|
|
89
94
|
</div>
|
|
90
|
-
<div v-if="!usertype" class="col-sm-6 form-group "
|
|
95
|
+
<div v-if="!usertype" class="col-sm-6 form-group "
|
|
96
|
+
:class="[$v.f_floor.required ? 'has-error' : 'has-success']">
|
|
91
97
|
<label for="f_address" class="font_normal_body">楼  层</label>
|
|
92
98
|
<input type="text" style="width:40%" v-model="model.f_floor" class="input_search"
|
|
99
|
+
v-validate:f_floor='{required: true }'
|
|
93
100
|
placeholder="楼层" />
|
|
94
101
|
<input type="text" style="width:20%" v-model="model.f_floor_suffix" class="input_search"
|
|
95
102
|
/>
|
|
@@ -156,6 +156,14 @@
|
|
|
156
156
|
:options='row.pipetypes' placeholder='管道类型' :value-single="true"
|
|
157
157
|
close-on-select></v-select>
|
|
158
158
|
</div>
|
|
159
|
+
<div class="col-sm-6 form-group" style="padding-right: 5px;" title="参数名称:[连接方式]">
|
|
160
|
+
<label class="font_normal_body">连接方式</label>
|
|
161
|
+
<v-select :value.sync="row.f_pipe_way" v-model="row.f_pipe_way"
|
|
162
|
+
:options='row.pipeways' placeholder='连接方式' :value-single="true"
|
|
163
|
+
close-on-select></v-select>
|
|
164
|
+
</div>
|
|
165
|
+
</div>
|
|
166
|
+
<div class="row auto" style="margin-left: 10px;">
|
|
159
167
|
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
160
168
|
<label class="font_normal_body" title="连接管安装日期">安装日期</label>
|
|
161
169
|
<datepicker placeholder="连接管安装日期" style="width: 60%"
|
|
@@ -165,8 +173,6 @@
|
|
|
165
173
|
:format="'yyyy-MM-dd HH:mm:ss'">
|
|
166
174
|
</datepicker>
|
|
167
175
|
</div>
|
|
168
|
-
</div>
|
|
169
|
-
<div class="row auto" style="margin-left: 10px;">
|
|
170
176
|
<div class="col-sm-6 form-group" style="padding-right: 5px;" v-if="pipeShow">
|
|
171
177
|
<label class="font_normal_body" title="连接管到期日期">到期日期</label>
|
|
172
178
|
<datepicker placeholder="连接管到期日期" style="width: 60%"
|
|
@@ -175,21 +181,22 @@
|
|
|
175
181
|
:format="'yyyy-MM-dd HH:mm:ss'">
|
|
176
182
|
</datepicker>
|
|
177
183
|
</div>
|
|
184
|
+
</div>
|
|
185
|
+
<div class="row auto" style="margin-left: 10px;">
|
|
178
186
|
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
179
187
|
<label class="font_normal_body">使用年限</label>
|
|
180
188
|
<input type="number" class="input_search" style="width: 60%" v-model="row.f_service_liferg"
|
|
181
189
|
:value.sync="row.f_service_liferg"
|
|
182
190
|
:onchange="pipeExpireDate($index)" >
|
|
183
191
|
</div>
|
|
184
|
-
|
|
185
|
-
</div>
|
|
186
|
-
<div class="row auto" style="margin-left: 10px;">
|
|
187
192
|
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
188
193
|
<label class="font_normal_body"> 米 数</label>
|
|
189
194
|
<input type="text" class="input_search" style="width:60%" v-model="row.f_pipe_length"
|
|
190
195
|
:value.sync="row.f_pipe_length"
|
|
191
196
|
placeholder='米数'>
|
|
192
197
|
</div>
|
|
198
|
+
</div>
|
|
199
|
+
<div class="row auto" style="margin-left: 10px;">
|
|
193
200
|
<div class="col-sm-6 form-group" style="padding-right: 5px;">
|
|
194
201
|
<label class="font_normal_body"> 材 质</label>
|
|
195
202
|
<input type="text" class="input_search" style="width:60%" v-model="row.f_pipe_material"
|
|
@@ -225,6 +232,7 @@
|
|
|
225
232
|
<th style="text-align: center">设备品牌</th>
|
|
226
233
|
<th style="text-align: center">设备型号</th>
|
|
227
234
|
<th style="text-align: center">管道类型</th>
|
|
235
|
+
<th style="text-align: center">连接方式</th>
|
|
228
236
|
<th style="text-align: center">管道米数</th>
|
|
229
237
|
<th style="text-align: center">安装人</th>
|
|
230
238
|
<th style="text-align: center">安装方式</th>
|
|
@@ -242,6 +250,7 @@
|
|
|
242
250
|
<td style="text-align: center">{{row.f_brand}}</td>
|
|
243
251
|
<td style="text-align: center">{{row.f_devices_model}}</td>
|
|
244
252
|
<td style="text-align: center">{{row.f_pipe_type}}</td>
|
|
253
|
+
<td style="text-align: center">{{row.f_pipe_way}}</td>
|
|
245
254
|
<td style="text-align: center">{{row.f_pipe_length}}</td>
|
|
246
255
|
<td style="text-align:center">{{row.f_input_person}}</td>
|
|
247
256
|
<td style="text-align:center">{{row.f_install_type}}</td>
|
|
@@ -285,6 +294,7 @@ export default {
|
|
|
285
294
|
devicetypes: this.$appdata.getParam('设备类型'),
|
|
286
295
|
devicebrands: [],
|
|
287
296
|
pipetypes:[],
|
|
297
|
+
pipeways: this.$appdata.getParam('连接方式'),
|
|
288
298
|
pipetypeparams: this.$appdata.getParam('管道类型'),
|
|
289
299
|
WatchPurchases: this.$appdata.getParam('购买方式'),
|
|
290
300
|
installperson: this.$appdata.getParam('安装人'),
|
|
@@ -404,6 +414,7 @@ export default {
|
|
|
404
414
|
f_input_date: this.$login.toStandardTimeString(),
|
|
405
415
|
devicetypes: this.$appdata.getParam('设备类型'),
|
|
406
416
|
pipetypes:[],
|
|
417
|
+
pipeways: this.$appdata.getParam('连接方式'),
|
|
407
418
|
devicebrands:[]
|
|
408
419
|
})
|
|
409
420
|
},
|
|
@@ -172,17 +172,20 @@
|
|
|
172
172
|
}
|
|
173
173
|
console.log('退费传参', param)
|
|
174
174
|
let res = await this.$resetpost('rs/logic/iotRefund', {data: param}, {warnMsg: `确定要对用户${this.data.f_user_name}进行退费吗?`, resolveMsg: '退费成功!!', rejectMsg: '退费失败!!请重试!!'}).then((res) => {
|
|
175
|
-
if (this.config.
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
175
|
+
if (this.config.hasPrint) {
|
|
176
|
+
if (this.config.hasBillManage) {
|
|
177
|
+
// 启用发票管理,获取票据管理中的票号并存储记录
|
|
178
|
+
this.data.id = res.data.id
|
|
179
|
+
this.data.f_bill_type = '退费'
|
|
180
|
+
this.print = true
|
|
181
|
+
} else {
|
|
182
|
+
this.data.id = res.data.id
|
|
183
|
+
this.print = true
|
|
184
|
+
}
|
|
180
185
|
} else {
|
|
181
|
-
this
|
|
182
|
-
this.print = true
|
|
186
|
+
this.$dispatch('success')
|
|
183
187
|
}
|
|
184
188
|
})
|
|
185
|
-
this.$dispatch('success')
|
|
186
189
|
},
|
|
187
190
|
changeChoose () {
|
|
188
191
|
this.$dispatch('changeChoose')
|
package/src/main.js
CHANGED
|
@@ -3,7 +3,7 @@ import all from 'vue-client/src/all'
|
|
|
3
3
|
import App from './App'
|
|
4
4
|
import system from 'system-clients/src/system'
|
|
5
5
|
import sale from './sale'
|
|
6
|
-
import wenxi from './filiale/
|
|
6
|
+
import wenxi from './filiale/qianneng/sale'
|
|
7
7
|
// import FilialeSale from './filiale/yuansheng/sale'
|
|
8
8
|
import address from 'address-client/src/address'
|
|
9
9
|
import ldap from 'ldap-clients/src/ldap'
|