sale-client 3.6.214 → 3.6.215
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/FileUserAddress.vue +31 -0
- package/src/components/revenue/comprehen/Bill/Eticket/EticketOpenPage.vue +1 -1
- package/src/filiale/tongchuan/EticketOpenJBPage.vue +1 -1
- package/src/filiale/tongchuan/IOTMeterCenter.vue +1 -1
- package/src/filiale/tongchuan/bill/CustQueryEticket.vue +1 -1
- package/src/filiale/tongchuan/bill/EticketModal.vue +1 -1
- package/src/filiale/tongchuan/bill/EticketPrint.vue +1 -1
- package/src/filiale/yuncheng/gasmove.vue +260 -0
- package/src/filiale/yuncheng/sale.js +2 -0
package/package.json
CHANGED
|
@@ -73,6 +73,15 @@
|
|
|
73
73
|
close-on-select v-ref:slice>
|
|
74
74
|
</v-select>
|
|
75
75
|
</div>
|
|
76
|
+
<div class="col-sm-6 form-group " v-if="!usertype">
|
|
77
|
+
<label class="font_normal_body">地区类型</label>
|
|
78
|
+
<v-select
|
|
79
|
+
:value.sync="model.f_iscity" :value-single="true"
|
|
80
|
+
:options='iscity' placeholder='请选择'
|
|
81
|
+
@change="changecity"
|
|
82
|
+
close-on-select>
|
|
83
|
+
</v-select>
|
|
84
|
+
</div>
|
|
76
85
|
<div v-if="!usertype" class="col-sm-6 form-group ">
|
|
77
86
|
<label for="f_address" class="font_normal_body">楼  号</label>
|
|
78
87
|
<input type="text" style="width:40%" v-model="model.f_building" class="input_search"
|
|
@@ -299,6 +308,7 @@
|
|
|
299
308
|
f_floor_suffix: '层',
|
|
300
309
|
f_room_suffix: '室'
|
|
301
310
|
},
|
|
311
|
+
iscity:[{label:'市区',value:'市区'},{label:'乡镇',value:'乡镇'},{label:'全部',value:''}],
|
|
302
312
|
model: {
|
|
303
313
|
f_pcd_id: '',
|
|
304
314
|
f_street_id: '',
|
|
@@ -350,6 +360,27 @@
|
|
|
350
360
|
getAreaConfig(this)
|
|
351
361
|
},
|
|
352
362
|
methods: {
|
|
363
|
+
async changecity(){
|
|
364
|
+
this.areaslist = []
|
|
365
|
+
// this.model.f_residential_area_id = null
|
|
366
|
+
// this.model.f_residential_area = null
|
|
367
|
+
let condition = `isnull(f_iscity,'') = isnull('${this.model.f_iscity}','') and a.f_orgid = '${this.$login.f.orgid}'`
|
|
368
|
+
let req = await this.$resetpost('rs/sql/address_getresidential', {
|
|
369
|
+
data: {
|
|
370
|
+
condition: condition
|
|
371
|
+
}
|
|
372
|
+
}, {resolveMsg: null, rejectMsg: '获取地址失败!'})
|
|
373
|
+
let redata = []
|
|
374
|
+
req.data.forEach((row) => {
|
|
375
|
+
redata.push({
|
|
376
|
+
label: row.f_residential_area,
|
|
377
|
+
value: row.id,
|
|
378
|
+
data: row,
|
|
379
|
+
id: row.id
|
|
380
|
+
})
|
|
381
|
+
})
|
|
382
|
+
this.areaslist=redata
|
|
383
|
+
},
|
|
353
384
|
async initdata () {
|
|
354
385
|
this.model.f_address_state = '未通气'
|
|
355
386
|
this.initAreas(this.f_filialeids)
|
|
@@ -151,7 +151,7 @@
|
|
|
151
151
|
<div class="col-sm-12 form-group form-input-group" :class="[!row.f_buy_phone ? 'has-error' : '']">
|
|
152
152
|
<label class="control-label">开票电话:</label>
|
|
153
153
|
<input class="form-control col-sm-2"
|
|
154
|
-
v-model="row.f_buy_phone" placeholder="
|
|
154
|
+
v-model="row.f_buy_phone" placeholder="开票电话">
|
|
155
155
|
</div>
|
|
156
156
|
<div class="col-sm-12 form-group form-input-group">
|
|
157
157
|
<label class="control-label">邮箱推送:</label>
|
|
@@ -162,7 +162,7 @@
|
|
|
162
162
|
<div class="col-sm-12 form-group form-input-group" :class="[!row.f_buy_phone ? 'has-error' : '']">
|
|
163
163
|
<label class="control-label">开票电话:</label>
|
|
164
164
|
<input class="form-control col-sm-2"
|
|
165
|
-
v-model="row.f_buy_phone" placeholder="
|
|
165
|
+
v-model="row.f_buy_phone" placeholder="开票电话">
|
|
166
166
|
</div>
|
|
167
167
|
<div class="col-sm-12 form-group form-input-group">
|
|
168
168
|
<label class="control-label">邮箱推送:</label>
|
|
@@ -233,7 +233,7 @@
|
|
|
233
233
|
<div class="col-sm-12 form-group form-input-group" :class="[!row.f_buy_phone ? 'has-error' : '']">
|
|
234
234
|
<label class="control-label">开票电话:</label>
|
|
235
235
|
<input class="form-control col-sm-2"
|
|
236
|
-
v-model="row.f_buy_phone" placeholder="
|
|
236
|
+
v-model="row.f_buy_phone" placeholder="开票电话">
|
|
237
237
|
</div>
|
|
238
238
|
<div class="col-sm-12 form-group form-input-group">
|
|
239
239
|
<label class="control-label">邮箱推送:</label>
|
|
@@ -207,7 +207,7 @@
|
|
|
207
207
|
<label class="control-label">开票电话:</label>
|
|
208
208
|
<input class="form-control col-sm-2"
|
|
209
209
|
:disabled="diytick"
|
|
210
|
-
v-model="row.f_buy_phone" placeholder="
|
|
210
|
+
v-model="row.f_buy_phone" placeholder="开票电话">
|
|
211
211
|
</div>
|
|
212
212
|
<div class="col-sm-12 form-group form-input-group">
|
|
213
213
|
<label class="control-label">邮箱推送:</label>
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
<div class="col-sm-12 form-group form-input-group" :class="[!row.f_buy_phone ? 'has-error' : '']">
|
|
44
44
|
<label class="control-label">开票电话:</label>
|
|
45
45
|
<input class="form-control col-sm-2"
|
|
46
|
-
v-model="row.f_buy_phone" placeholder="
|
|
46
|
+
v-model="row.f_buy_phone" placeholder="开票电话">
|
|
47
47
|
</div>
|
|
48
48
|
<div class="col-sm-12 form-group form-input-group">
|
|
49
49
|
<label class="control-label">邮箱推送:</label>
|
|
@@ -0,0 +1,260 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto">
|
|
3
|
+
<validator name='v'>
|
|
4
|
+
<form novalidate class="form-horizontal">
|
|
5
|
+
<div class="row">
|
|
6
|
+
<div class="col-sm-4 form-group">
|
|
7
|
+
<label class="font_normal_body">用户编号</label>
|
|
8
|
+
<input class="input_search" style="width:60%" type="text" placeholder='目标用户编号'
|
|
9
|
+
v-model="model.f_userinfo_code" @blur="getuser(model.f_userinfo_code)">
|
|
10
|
+
</div>
|
|
11
|
+
<div class="col-sm-4 form-group" >
|
|
12
|
+
<label for="f_user_name" class="font_normal_body">用户姓名</label>
|
|
13
|
+
<input class="input_search" style="width:60%" type="text" placeholder='目标用户姓名'
|
|
14
|
+
v-model="model.f_user_name" readonly >
|
|
15
|
+
</div>
|
|
16
|
+
|
|
17
|
+
<div class="col-sm-4 form-group" >
|
|
18
|
+
<label class="font_normal_body">气表类型</label>
|
|
19
|
+
<input class="input_search" style="width:60%" type="text" placeholder='目标用户气表类型'
|
|
20
|
+
v-model="model.f_meter_type" readonly >
|
|
21
|
+
</div>
|
|
22
|
+
</div>
|
|
23
|
+
<div class="row">
|
|
24
|
+
|
|
25
|
+
<div class="col-sm-4 form-group" v-if="row.f_meter_type =='机表'" >
|
|
26
|
+
<label class="font_normal_body">当前余额</label>
|
|
27
|
+
<input class="input_search" style="width:60%" type="text" placeholder='当前余额'
|
|
28
|
+
v-model="row.f_balance" readonly >
|
|
29
|
+
</div>
|
|
30
|
+
<div class="col-sm-4 form-group" v-if="row.f_meter_type =='物联网表'" >
|
|
31
|
+
<label class="font_normal_body">当前余额</label>
|
|
32
|
+
<input class="input_search" style="width:60%" type="text" placeholder='当前余额'
|
|
33
|
+
v-model="row.f_balance_amount" readonly >
|
|
34
|
+
</div>
|
|
35
|
+
<div class="col-sm-4 form-group" v-if="row.f_meter_type == '气量卡表' || row.f_meter_type == '金额卡表'"
|
|
36
|
+
:class="[$v.f_meter_base.required || $v.f_meter_base.dctest ? 'has-error' : 'has-success']">
|
|
37
|
+
<label class="font_normal_body">当前底数</label>
|
|
38
|
+
<input class="input_search" style="width:60%" type="text" placeholder='当前表已用气量'
|
|
39
|
+
@blur="meterBaseChange()"
|
|
40
|
+
v-validate:f_meter_base='{required: true}' v-model="model.f_meter_base" >
|
|
41
|
+
</div>
|
|
42
|
+
<div class="col-sm-4 form-group" v-if="model.f_meter_type!='' && model.f_meter_type!='气量卡表'"
|
|
43
|
+
:class="[$v.f_move_fee.required || $v.f_move_fee.dctest ? 'has-error' : 'has-success']">
|
|
44
|
+
<label class="font_normal_body">转气金额</label>
|
|
45
|
+
<input class="input_search" style="width:60%" type="number" v-model="model.f_move_fee"
|
|
46
|
+
@blur="preamount()"
|
|
47
|
+
v-validate:f_move_fee='{required: true}' placeholder="转气金额">
|
|
48
|
+
</div>
|
|
49
|
+
<div class="col-sm-4 form-group" v-if="model.f_meter_type!='' && model.f_meter_type=='气量卡表'"
|
|
50
|
+
:class="[$v.f_move_fee.required || $v.f_move_fee.dctest ? 'has-error' : 'has-success']">
|
|
51
|
+
<label class="font_normal_body">转气金额</label>
|
|
52
|
+
<input class="input_search" style="width:60%" type="number" v-model="model.f_move_fee"
|
|
53
|
+
|
|
54
|
+
v-validate:f_move_fee='{required: true}' placeholder="转气金额">
|
|
55
|
+
</div>
|
|
56
|
+
<div class="col-sm-4 form-group" v-if="model.f_meter_type!='' && model.f_meter_type=='气量卡表'"
|
|
57
|
+
:class="[$v.f_move_gas.required || $v.f_move_gas.dctest ? 'has-error' : 'has-success']">
|
|
58
|
+
<label class="font_normal_body">转气气量</label>
|
|
59
|
+
<input class="input_search" style="width:60%" type="number" v-model="model.f_move_gas"
|
|
60
|
+
@blur="pregas()"
|
|
61
|
+
v-validate:f_move_gas='{required: true}' placeholder="转气气量">
|
|
62
|
+
</div>
|
|
63
|
+
<div class="col-sm-4 form-group" v-if="model.f_meter_type!='' && model.f_meter_type!='气量卡表'"
|
|
64
|
+
:class="[$v.f_move_gas.required || $v.f_move_gas.dctest ? 'has-error' : 'has-success']">
|
|
65
|
+
<label class="font_normal_body">转气气量</label>
|
|
66
|
+
<input class="input_search" style="width:60%" type="number" v-model="model.f_move_gas"
|
|
67
|
+
v-validate:f_move_gas='{required: true}' placeholder="转气气量">
|
|
68
|
+
</div>
|
|
69
|
+
</div>
|
|
70
|
+
|
|
71
|
+
<div class="row">
|
|
72
|
+
<div class="col-sm-8">
|
|
73
|
+
<label for="f_paper_account" class="font_normal_body "> 备注 </label>
|
|
74
|
+
<input class="input_search" style="width:80%" v-model="model.f_comments">
|
|
75
|
+
</div>
|
|
76
|
+
|
|
77
|
+
</div>
|
|
78
|
+
</form>
|
|
79
|
+
<div style="text-align:right;">
|
|
80
|
+
<button class="button_search btn-gn" @click="confirm()" :disabled='!$v.valid'>确认</button>
|
|
81
|
+
<button class="button_clear btn-gn" @click="clean()">取消</button>
|
|
82
|
+
</div>
|
|
83
|
+
</validator>
|
|
84
|
+
<upload :blodid="row.f_userinfo_id" v-if="config.showupload" :businessid="randomBusinessId" isremark="true" fusetype="转气"></upload>
|
|
85
|
+
<!--<print-bill :show="print" :bill-manager='config.hasBillManage' v-ref:printbill :bill-url='billUrl' v-on:toggle="clean" @printok="printok" :data='printModel'></print-bill>-->
|
|
86
|
+
</div>
|
|
87
|
+
</template>
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
<script>
|
|
91
|
+
let preamountGen = async function (self) {
|
|
92
|
+
let calFee = self.model.f_move_fee
|
|
93
|
+
let getGas = await self.$CommonService.feeCalculate(self.model, calFee)
|
|
94
|
+
if (getGas.data.gas) {
|
|
95
|
+
self.model.f_move_gas = (getGas.data.gas - 0).toFixed(2)
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
let pregasGen = async function (self) {
|
|
99
|
+
self.model.f_move_gas = (self.model.f_move_gas - 0).toFixed(2)
|
|
100
|
+
self.model.f_reverse = self.model.f_move_gas
|
|
101
|
+
let getAmount = await self.$CommonService.gasCalculate(self.model, self.model.f_move_gas)
|
|
102
|
+
self.model.f_move_fee = getAmount.data.chargenum
|
|
103
|
+
}
|
|
104
|
+
export default {
|
|
105
|
+
title: '转气',
|
|
106
|
+
data () {
|
|
107
|
+
return {
|
|
108
|
+
model: {
|
|
109
|
+
f_refund_fee: '',
|
|
110
|
+
f_comments: '',
|
|
111
|
+
f_meter_type: '',
|
|
112
|
+
f_user_name: '',
|
|
113
|
+
f_userfiles_id: '',
|
|
114
|
+
f_move_fee: 0,
|
|
115
|
+
f_move_gas: 0
|
|
116
|
+
},
|
|
117
|
+
config: {
|
|
118
|
+
showupload: true // 默认显示附件上传组件
|
|
119
|
+
},
|
|
120
|
+
blodid: '',
|
|
121
|
+
randomBusinessId: '',
|
|
122
|
+
hasValidateBill: false,
|
|
123
|
+
validateOk: false,
|
|
124
|
+
|
|
125
|
+
printModel: {},
|
|
126
|
+
print: false,
|
|
127
|
+
billUrl: '',
|
|
128
|
+
billData: {
|
|
129
|
+
url: 'rs/report/refund_sell',
|
|
130
|
+
bill: ''
|
|
131
|
+
},
|
|
132
|
+
|
|
133
|
+
// 下拉框值
|
|
134
|
+
paytype: this.$appdata.getParam('付款方式'),
|
|
135
|
+
printstyle: this.$appdata.getParam('打印格式')
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
props: ['row'],
|
|
139
|
+
ready () {
|
|
140
|
+
this.getRandomId()
|
|
141
|
+
},
|
|
142
|
+
methods: {
|
|
143
|
+
getRandomId () {
|
|
144
|
+
this.randomBusinessId = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
|
|
145
|
+
let res = Math.random() * 16 | 0
|
|
146
|
+
let v = c == 'x' ? res : (res & 0x3 | 0x8)
|
|
147
|
+
return v.toString(16)
|
|
148
|
+
})
|
|
149
|
+
},
|
|
150
|
+
meterBaseChange () {
|
|
151
|
+
if (this.model.f_meter_base && this.model.f_meter_base > 0 && this.model.f_meter_base <= this.row.f_total_gas) {
|
|
152
|
+
this.model.f_move_gas = (this.row.f_total_gas - this.model.f_meter_base).toFixed(2)
|
|
153
|
+
}
|
|
154
|
+
if (this.model.f_meter_base > this.row.f_total_gas) {
|
|
155
|
+
this.$showAlert('转气底数不能大于总购气量', 'warning', 1500)
|
|
156
|
+
this.model.f_meter_base = ''
|
|
157
|
+
return
|
|
158
|
+
}
|
|
159
|
+
if (this.model.f_move_gas && this.model.f_move_gas > 0) {
|
|
160
|
+
try {
|
|
161
|
+
pregasGen(this)
|
|
162
|
+
} catch (error) {
|
|
163
|
+
this.$showAlert(`划价错误,错误类型:${error}`, 'danger', 0)
|
|
164
|
+
}
|
|
165
|
+
} else {
|
|
166
|
+
this.model.f_move_gas = 0
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
preamount () {
|
|
170
|
+
try {
|
|
171
|
+
preamountGen(this)
|
|
172
|
+
} catch (error) {
|
|
173
|
+
this.$showAlert(`发卡售气划价错误,错误类型:${error}`, 'danger', 0)
|
|
174
|
+
}
|
|
175
|
+
},
|
|
176
|
+
pregas () {
|
|
177
|
+
if (this.model.f_move_gas && this.model.f_move_gas > 0) {
|
|
178
|
+
try {
|
|
179
|
+
pregasGen(this)
|
|
180
|
+
} catch (error) {
|
|
181
|
+
this.$showAlert(`划价错误,错误类型:${error}`, 'danger', 0)
|
|
182
|
+
}
|
|
183
|
+
} else {
|
|
184
|
+
this.model.f_move_gas = 0
|
|
185
|
+
}
|
|
186
|
+
},
|
|
187
|
+
async getuser (val) {
|
|
188
|
+
if (val == this.row.f_userinfo_code) {
|
|
189
|
+
this.$showAlert('不能给自己转气', 'warning', 1500)
|
|
190
|
+
return
|
|
191
|
+
}
|
|
192
|
+
let res = await this.$resetpost('rs/sql/sale_getUser',
|
|
193
|
+
{data: {condition: `i.f_userinfo_code='${val}' and i.f_orgid='${this.$login.f.orgid}'`}}, {resolveMsg: null, rejectMsg: null})
|
|
194
|
+
console.log(res.data)
|
|
195
|
+
if (res.data.length > 0) {
|
|
196
|
+
this.model.f_user_name = res.data[0].f_user_name
|
|
197
|
+
this.model.f_meter_type = res.data[0].f_meter_type
|
|
198
|
+
this.model.f_userfiles_id = res.data[0].f_userfiles_id
|
|
199
|
+
} else {
|
|
200
|
+
this.$showAlert('输入的用户编号不正确', 'warning', 1500)
|
|
201
|
+
}
|
|
202
|
+
},
|
|
203
|
+
async confirm () {
|
|
204
|
+
if (this.model.f_move_fee <= 0) {
|
|
205
|
+
this.$showAlert('转气金额和气量不能为0或小于0', 'warning', 1500)
|
|
206
|
+
return
|
|
207
|
+
}
|
|
208
|
+
if (this.row.f_meter_type == '机表' && this.row.f_balance < this.model.f_move_fee) {
|
|
209
|
+
this.$showAlert('转气金额不能大于余额', 'warning', 1500)
|
|
210
|
+
return
|
|
211
|
+
}
|
|
212
|
+
if (this.row.f_meter_type == '物联网表' && this.row.f_balance_amount < this.model.f_move_fee) {
|
|
213
|
+
this.$showAlert('转气金额不能大于余额', 'warning', 1500)
|
|
214
|
+
return
|
|
215
|
+
}
|
|
216
|
+
if (!this.model.f_meter_type) {
|
|
217
|
+
this.$showAlert('请先输入目标用户信息', 'warning', 1500)
|
|
218
|
+
return
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
let param = {
|
|
222
|
+
f_user_id: this.row.f_user_id,
|
|
223
|
+
f_userfiles_id: this.row.f_userfiles_id,
|
|
224
|
+
userfilesid: this.model.f_userfiles_id,
|
|
225
|
+
version: this.row.version,
|
|
226
|
+
f_move_fee: this.model.f_move_fee,
|
|
227
|
+
f_meter_base: this.model.f_meter_base,
|
|
228
|
+
f_move_gas: this.model.f_move_gas,
|
|
229
|
+
f_comments: this.model.f_comments,
|
|
230
|
+
f_billing: this.row.f_billing,
|
|
231
|
+
f_userinfo_code: this.model.f_userinfo_code,
|
|
232
|
+
f_price_id: this.row.f_price_id,
|
|
233
|
+
f_orgid: this.$login.f.orgid,
|
|
234
|
+
f_stairprice_id: this.row.f_stairprice_id,
|
|
235
|
+
operInfo: {
|
|
236
|
+
f_operator: this.$login.f.name,
|
|
237
|
+
f_operatorid: this.$login.f.id,
|
|
238
|
+
f_orgid: this.$login.f.orgid,
|
|
239
|
+
f_orgname: this.$login.f.orgs,
|
|
240
|
+
f_depid: this.$login.f.depids,
|
|
241
|
+
f_depname: this.$login.f.deps
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
let res = await this.$resetpost('rs/logic/movegas', {data: param}, {warnMsg: `确定要进行转气吗?`, resolveMsg: '转气成功!!', rejectMsg: '转气失败!!请重试!!'})
|
|
246
|
+
this.$dispatch('success')
|
|
247
|
+
},
|
|
248
|
+
clean () {
|
|
249
|
+
this.$dispatch('refresh')
|
|
250
|
+
},
|
|
251
|
+
printok () {
|
|
252
|
+
this.$dispatch('success')
|
|
253
|
+
},
|
|
254
|
+
validateBill (val) {
|
|
255
|
+
this.validateOk = !val.isOk
|
|
256
|
+
this.billData.bill = val.bill
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
</script>
|
|
@@ -30,4 +30,6 @@ export default function () {
|
|
|
30
30
|
Vue.component('card-list', (resolve) => { require(['./CardList'], resolve) })
|
|
31
31
|
// 机表抄表审核
|
|
32
32
|
Vue.component('machine-hand-audit', (resolve) => { require(['./machineHandAudit'], resolve) })
|
|
33
|
+
// 转气
|
|
34
|
+
Vue.component('gas-move', (resolve) => { require(['./gasmove'], resolve) })
|
|
33
35
|
}
|