sale-client 4.2.4 → 4.2.5
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/.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/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/.gradle/buildOutputCleanup/cache.properties +2 -0
- package/.gradle/vcs-1/gc.properties +0 -0
- package/build/dev-server.js +1 -1
- package/package.json +1 -1
- package/src/components/FilesManage/addressts/FileUserFilests.vue +671 -0
- package/src/components/FilesManage/ncUserinfoList.vue +315 -0
- package/src/components/SellGasCharge/MeterCharge/CardDataRewrite.vue +107 -0
- package/src/components/SendCard/SendCardData.vue +208 -0
- package/src/components/accounts/accountAdd.vue +276 -0
- package/src/components/accounts/accountsList.vue +183 -0
- package/src/components/accounts/accountsManage.vue +87 -0
- package/src/components/common/chargeinfo/chargeinfo.vue +55 -0
- package/src/components/common/userinfo_detail/config/exportConfig.js +85 -0
- package/src/components/ncarchives/ncArchivesAdd.vue +468 -0
- package/src/components/ncarchives/ncArchivesList.vue +159 -0
- package/src/components/ncarchives/ncUserfilesList.vue +373 -0
- package/src/components/ncarchives/ncarchivesmanage.vue +80 -0
- package/src/components/revenue/IOTArrears/arrears.vue +323 -0
- package/src/components/revenue/IOTArrears/iotRechargeAudit.vue +369 -0
- package/src/components/revenue/base/rightview/carddetail/cardiotfeeChangeDetail.vue +59 -0
- package/src/components/revenue/base/rightview/carddetail/reduceChangeDetail.vue +59 -0
- package/src/components/revenue/comprehen/ComprehenOperation/BatchChange/BatchCancellationts.vue +73 -0
- package/src/components/revenue/comprehen/ComprehenOperation/BatchChange/BatchEnablets.vue +73 -0
- package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/ReduceAddGas.vue +199 -0
- package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icdeductionManage.vue +24 -0
- package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icdeductionYSManage.vue +24 -0
- package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icfeeDeduction.vue +185 -0
- package/src/components/revenue/comprehen/ComprehenOperation/IcFeeDeduction/icfeeYSDeduction.vue +185 -0
- package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/ChangeFlowMeter.vue +356 -0
- package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/CorrectionMeter.vue +148 -0
- package/src/components/revenue/comprehen/SpecialUser/BlackList/BlackUserList.vue +136 -0
- package/src/components/revenue/recordMainten/sellinggas/AddWarehousemain.vue +65 -0
- package/src/components/revenue/recordMainten/sellinggas/MeterOperateAdd.vue +483 -0
- package/src/components/revenue/recordMainten/sellinggas/MeterOperatemain.vue +279 -0
- package/src/components/revenue/recordMainten/sellinggas/MeterOperatemainImport.vue +265 -0
- package/src/components/thirdapply/thirdAdd.vue +289 -0
- package/src/components/thirdapply/thirdList.vue +162 -0
- package/src/components/thirdapply/thirdManage.vue +74 -0
- package/src/components/webMeter/InstructQuery.vue +414 -0
- package/src/components/webMeter/ParamSet/ParamSet.vue +556 -0
- package/src/components/webMeter/ParamSet/ParamSetForm.vue +296 -0
- package/src/components/webMeter/WebUserHand.vue +483 -0
- package/src/components/webMeter/instructionView/NewQueryInstruct.vue +509 -0
- package/src/components/webMeter/instructionView/NewQueryInstructMain.vue +48 -0
- package/src/components/webMeter/webManage/NewMeterList.vue +461 -0
- package/src/filiale/jinhuang/WebHand.vue +1026 -1026
- package/src/filiale/yuncheng/industryDown.vue +3 -3
- package/src/main.js +1 -1
- package/src/plugins/FileManageServicets.js +214 -0
- package/src/plugins/GetImg.js +53 -0
package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/ChangeFlowMeter.vue
ADDED
|
@@ -0,0 +1,356 @@
|
|
|
1
|
+
<template xmlns="http://www.w3.org/1999/html">
|
|
2
|
+
<div class="auto" style="overflow:auto;">
|
|
3
|
+
<validator name='v'>
|
|
4
|
+
<form novalidate class="form-horizontal" style="height:500px;">
|
|
5
|
+
<div class="row auto" >
|
|
6
|
+
<div class="col-sm-4 form-group">
|
|
7
|
+
<label for="f_type" class=" font_normal_body">换 表 类 型</label>
|
|
8
|
+
<v-select id="f_type"
|
|
9
|
+
v-model="model.f_type"
|
|
10
|
+
placeholder='请选择'
|
|
11
|
+
:value-single="true"
|
|
12
|
+
:value.sync="model.f_type"
|
|
13
|
+
:options='replacewatchtype'
|
|
14
|
+
close-on-select clear-button>
|
|
15
|
+
</v-select>
|
|
16
|
+
</div>
|
|
17
|
+
<div class="col-sm-4 form-group">
|
|
18
|
+
<label for="f_change_operator" class=" font_normal_body">换流量计人</label>
|
|
19
|
+
<input class="input_search" style="width:60%" type="text" v-model="model.f_change_operator" placeholder="换流量计人">
|
|
20
|
+
</div>
|
|
21
|
+
|
|
22
|
+
<div class="col-sm-4 form-group" :class="[$v.f_using_base_old.required || $v.f_using_base_old.dctest ? 'has-error' : 'has-success']">
|
|
23
|
+
<label for="f_remanent_gas" class=" font_normal_body">旧流量计底数</label>
|
|
24
|
+
<input class="input_search" style="width:60%" type="number"
|
|
25
|
+
v-model="model.f_using_base_old"
|
|
26
|
+
placeholder="旧流量计底数"
|
|
27
|
+
v-validate:f_using_base_old='{required: true, dctest: [-1, ">" ] }'
|
|
28
|
+
@blur="pregasChange()">
|
|
29
|
+
</div>
|
|
30
|
+
</div>
|
|
31
|
+
<div class="row auto" >
|
|
32
|
+
<div class="col-sm-4 form-group" :class="[$v.meternumber.required ? 'has-error' : '']">
|
|
33
|
+
<label for="f_meternumber" class="font_normal_body">新 表 号 </label>
|
|
34
|
+
<input type="text" class="input_search" style="width:60%" class="input_search"
|
|
35
|
+
v-model="model.f_meternumber" v-validate:meternumber='{required: true }' placeholder='表号' >
|
|
36
|
+
</div>
|
|
37
|
+
<div class="col-sm-4 form-group" :class="[$v.flowmeternumber.required ? 'has-error' : '']">
|
|
38
|
+
<label for="f_flowmeternumber" class="font_normal_body">新流量计表号</label>
|
|
39
|
+
<input type="text" class="input_search" style="width:57%" class="input_search"
|
|
40
|
+
v-model="model.f_flowmeternumber" v-validate:flowmeternumber='{required: true }' placeholder='新流量计表号' >
|
|
41
|
+
</div>
|
|
42
|
+
<div class="col-sm-4 form-group" :class="[$v.f_meter_base.required ? 'has-error' : '']">
|
|
43
|
+
<label for="f_meter_base" class="font_normal_body">新流量计底数</label>
|
|
44
|
+
<input type="number" class="input_search" style="width:60%" class="input_search" v-validate:f_meter_base='{required: true }' v-model="model.f_meter_base" placeholder='新流量计底数' >
|
|
45
|
+
</div>
|
|
46
|
+
<div class="col-sm-4 form-group">
|
|
47
|
+
<label for="f_metertitles" class="font_normal_body">新 表 封 号</label>
|
|
48
|
+
<input type="text" class="input_search" style="width:60%" class="input_search" v-model="model.f_metertitles" placeholder='表封号'>
|
|
49
|
+
</div>
|
|
50
|
+
|
|
51
|
+
</div>
|
|
52
|
+
<div class="row auto" >
|
|
53
|
+
|
|
54
|
+
<!--<div class="col-sm-4 form-group">-->
|
|
55
|
+
<!--<label for="f_changemeter_fee" class=" font_normal_body">换表金额</label>-->
|
|
56
|
+
<!--<input class="input_search" style="width:60%" type="number" v-model="model.f_changemeter_fee" placeholder="换表金额">-->
|
|
57
|
+
<!--</div>-->
|
|
58
|
+
<!--<div class="col-sm-4 form-group">-->
|
|
59
|
+
<!--<label for="f_paytype" class=" font_normal_body">付款方式</label>-->
|
|
60
|
+
<!--<v-select id="f_payment"-->
|
|
61
|
+
<!--v-model="f_payment"-->
|
|
62
|
+
<!--placeholder='请选择'-->
|
|
63
|
+
<!--:value-single="true"-->
|
|
64
|
+
<!--:value.sync="model.f_payment"-->
|
|
65
|
+
<!--:options='paytype'-->
|
|
66
|
+
<!--close-on-select clear-button></v-select>-->
|
|
67
|
+
<!--</div>-->
|
|
68
|
+
<!--<div class="col-sm-4" v-if="accountmust0 && useaccountflag && model.f_payment!='现金缴费'" :class="[$v.f_payment_accounts_id.required ? 'has-error' : 'has-success']">-->
|
|
69
|
+
<!--<label for="f_payment_accounts_id" class=" font_normal_body">收款账号</label>-->
|
|
70
|
+
<!--<input type="text" v-show="false" v-model="model.f_payment_accounts_id"-->
|
|
71
|
+
<!--v-validate:f_payment_accounts_id='{required: true }'>-->
|
|
72
|
+
<!--<v-select :value.sync="model.f_payment_accounts_id" :value-single="true"-->
|
|
73
|
+
<!--:options='paymentaccountoptions' placeholder='收款账号'-->
|
|
74
|
+
<!--close-on-select></v-select>-->
|
|
75
|
+
<!--</div>-->
|
|
76
|
+
<div class="row auto">
|
|
77
|
+
<div class="col-sm-4 form-group">
|
|
78
|
+
<label for="f_error" class="font_normal_body">换流量计原因</label>
|
|
79
|
+
<v-select id="f_error"
|
|
80
|
+
v-model="model.f_error"
|
|
81
|
+
placeholder='请选择'
|
|
82
|
+
:multiple="mulPrint"
|
|
83
|
+
:value.sync="model.f_error"
|
|
84
|
+
:options='errortype'
|
|
85
|
+
close-on-select clear-button></v-select>
|
|
86
|
+
</div>
|
|
87
|
+
</div>
|
|
88
|
+
<!--<div class="col-sm-12 form-group">-->
|
|
89
|
+
<!--<label for="f_othereason" class="font_normal_body">换表原因</label>-->
|
|
90
|
+
<!--<input class="input_search" style="width:87%" v-model="model.f_othereason" placeholder="请填写换表原因"/>-->
|
|
91
|
+
<!--</div>-->
|
|
92
|
+
<!--</div>-->
|
|
93
|
+
<div class="row auto" >
|
|
94
|
+
<div class="col-sm-12">
|
|
95
|
+
<label class="font_normal_body ">备 注</label>
|
|
96
|
+
<textarea class="input_textarea" rows="3" style="width:87%;" v-model="model.f_comments"></textarea>
|
|
97
|
+
</div>
|
|
98
|
+
</div>
|
|
99
|
+
<div style="text-align:right;height:auto;">
|
|
100
|
+
<button class="button_search" type="button" @click="confirm()" :disabled="!$v.valid"
|
|
101
|
+
>确认
|
|
102
|
+
</button>
|
|
103
|
+
<button class="button_clear" type="button" @click="clean()" >取消
|
|
104
|
+
</button>
|
|
105
|
+
</div>
|
|
106
|
+
<!--<div style="height: auto;width: 100%">-->
|
|
107
|
+
<!--<div style="height: 10%">-->
|
|
108
|
+
<!--<img style="margin-top: -5px" src="../../../../../../static/images/lefticon/矩形1183.png">-->
|
|
109
|
+
<!--<a style="font-size: 16px;font-weight: 500;color: #333;text-decoration: none;">附件信息</a> <a style="color: #999999"></a>-->
|
|
110
|
+
<!--</div>-->
|
|
111
|
+
<!--<upload :blodid="row.f_userinfo_id" isremark="true" fusetype="换表"></upload>-->
|
|
112
|
+
</div>
|
|
113
|
+
</form>
|
|
114
|
+
</validator>
|
|
115
|
+
</div>
|
|
116
|
+
<upload :blodid="blodid" v-if="config.showupload" isremark="true" fusetype="换流量计"></upload>
|
|
117
|
+
</template>
|
|
118
|
+
<script>
|
|
119
|
+
/**
|
|
120
|
+
*换表管理
|
|
121
|
+
*组合界面,加载机表,物联网表,气量卡表,金额卡表旧表信息,以及控制显示换新表信息
|
|
122
|
+
*/
|
|
123
|
+
import { HttpResetClass } from 'vue-client'
|
|
124
|
+
let getPrice = async function (self) {
|
|
125
|
+
await self.$getConfig(self, 'ChargeMeterflow')
|
|
126
|
+
//self.isGas = (self.row.f_collection_type == '按气量')
|
|
127
|
+
|
|
128
|
+
//let http = new HttpResetClass()
|
|
129
|
+
//let param = {
|
|
130
|
+
// tablename: 't_detailprice',
|
|
131
|
+
// condition: `f_price_name = '1' and f_stairprice_id = '${self.row.f_stairprice_id}'`
|
|
132
|
+
//}
|
|
133
|
+
//let res = await http.load('POST', 'rs/sql/saleSingleTable', {
|
|
134
|
+
// data: param
|
|
135
|
+
//}, {
|
|
136
|
+
// resolveMsg: null,
|
|
137
|
+
// rejectMsg: '获取一阶单价!!'
|
|
138
|
+
//})
|
|
139
|
+
//if(res.data.length>0){
|
|
140
|
+
// self.model.f_remanent_price=res.data[0].f_pric;
|
|
141
|
+
//}
|
|
142
|
+
//self.initData()
|
|
143
|
+
}
|
|
144
|
+
export default {
|
|
145
|
+
title: '换流量计',
|
|
146
|
+
data () {
|
|
147
|
+
return {
|
|
148
|
+
model: {
|
|
149
|
+
//旧表底数
|
|
150
|
+
f_using_base_old: '',
|
|
151
|
+
//换表补气量
|
|
152
|
+
f_remanent_gas: 0,
|
|
153
|
+
//换表补气单价
|
|
154
|
+
f_remanent_price: 0,
|
|
155
|
+
f_remanent_money: 0,
|
|
156
|
+
f_type: '换流量计',
|
|
157
|
+
f_comments: '',
|
|
158
|
+
f_meternumber:'',
|
|
159
|
+
f_othereason: '',
|
|
160
|
+
f_payment: '现金缴费',
|
|
161
|
+
f_print: '普通收据',
|
|
162
|
+
f_error:'',
|
|
163
|
+
f_state:'有效',
|
|
164
|
+
f_changemeter_date: this.$login.toStandardTimeString()
|
|
165
|
+
},
|
|
166
|
+
meterinfo: false,
|
|
167
|
+
|
|
168
|
+
// 控制气量和金额的转换显示
|
|
169
|
+
changeType: '',
|
|
170
|
+
config: {
|
|
171
|
+
showupload:true, //
|
|
172
|
+
dispatch: false //是否派工
|
|
173
|
+
},
|
|
174
|
+
// 控制气量金额的编辑
|
|
175
|
+
isGas: false,
|
|
176
|
+
blodid: '',
|
|
177
|
+
replacewatchtype: [{label:"换流量计",value:"换流量计"}],
|
|
178
|
+
reason: this.$appdata.getParam('换表原因') ? this.$appdata.getParam('换表原因') : [],
|
|
179
|
+
paytype: this.$appdata.getParam('付款方式'),
|
|
180
|
+
errortype:[{label: '请选择', value: ''}, ...this.$appdata.getParam('错误类型')],
|
|
181
|
+
printstyle: this.$appdata.getParam('打印格式'),
|
|
182
|
+
accountmust0:true,
|
|
183
|
+
useaccountflag:false, //是否可以输入账号
|
|
184
|
+
paymentaccountoptions:[],
|
|
185
|
+
}
|
|
186
|
+
},
|
|
187
|
+
props: ['row'],
|
|
188
|
+
ready () {
|
|
189
|
+
this.blodid = this.row.f_userinfo_id;
|
|
190
|
+
if(this.row.f_meternumber!=null){
|
|
191
|
+
this.model.f_meternumber = this.row.f_meternumber;
|
|
192
|
+
}
|
|
193
|
+
getPrice(this)
|
|
194
|
+
},
|
|
195
|
+
methods: {
|
|
196
|
+
//返回
|
|
197
|
+
clean() {
|
|
198
|
+
this.$dispatch('success', '换流量计', this.row)
|
|
199
|
+
},
|
|
200
|
+
async confirm() {
|
|
201
|
+
await this.$showMessage(`是否已经上传图片?`, ['confirm', 'cancel']).then((res) => {
|
|
202
|
+
if (res === 'confirm') {
|
|
203
|
+
this.saveobj();
|
|
204
|
+
}
|
|
205
|
+
})
|
|
206
|
+
},
|
|
207
|
+
async saveobj() {
|
|
208
|
+
|
|
209
|
+
try {
|
|
210
|
+
this.model.f_operator=this.$login.f.name
|
|
211
|
+
this.model.f_operatorid=this.$login.f.id
|
|
212
|
+
this.model.f_orgid=this.$login.f.orgid
|
|
213
|
+
this.model.f_orgname=this.$login.f.orgs
|
|
214
|
+
this.model.f_depid=this.$login.f.depids
|
|
215
|
+
this.model.f_depname=this.$login.f.deps
|
|
216
|
+
this.model.f_zoneid = this.$login.f.zoneid
|
|
217
|
+
this.model.f_zones = this.$login.f.zones
|
|
218
|
+
this.model.f_error = this.model.f_error.toString()
|
|
219
|
+
|
|
220
|
+
//备注+=错误类型
|
|
221
|
+
//this.model.f_comments = this.model.f_comments+" "+this.model.f_error
|
|
222
|
+
let data={
|
|
223
|
+
model:this.model,
|
|
224
|
+
old:this.row,
|
|
225
|
+
}
|
|
226
|
+
let meterinfo = await this.$resetpost('rs/logic/changeflowmeter', data, {
|
|
227
|
+
resolveMsg: null,
|
|
228
|
+
rejectMsg: '换流量计失败!!!'
|
|
229
|
+
});
|
|
230
|
+
this.$showAlert('换流量计成功','success',2000);
|
|
231
|
+
this.row.f_userfiles_id=meterinfo.data.new_userfiles_id
|
|
232
|
+
this.$dispatch('success')
|
|
233
|
+
} catch (error) {
|
|
234
|
+
console.log('抛出的错误。。', error)
|
|
235
|
+
this.$showAlert(error, 'danger', 2000)
|
|
236
|
+
this.$dispatch('refresh')
|
|
237
|
+
}
|
|
238
|
+
},
|
|
239
|
+
pregasChange () {
|
|
240
|
+
// 每种表对应的计算方式都不一样
|
|
241
|
+
this.model.f_using_base_old = (this.model.f_using_base_old-0).toFixed(1);
|
|
242
|
+
if (this.row.f_meter_type == '气量卡表') {
|
|
243
|
+
this.calGasCardRemanent()
|
|
244
|
+
} else if (this.row.f_meter_type == '金额卡表') {
|
|
245
|
+
// this.$showAlert('金额卡表换表尚在开发中,敬请期待!!', 'warning', 5000)
|
|
246
|
+
// this.$dispatch('refresh')
|
|
247
|
+
this.calMoneyCardRemanent()
|
|
248
|
+
}
|
|
249
|
+
},
|
|
250
|
+
getnewmoney(){
|
|
251
|
+
if(this.model.f_remanent_gas== null || this.model.f_remanent_gas<0){
|
|
252
|
+
this.model.f_remanent_gas=0;
|
|
253
|
+
}
|
|
254
|
+
if(this.model.f_remanent_gas!= null){
|
|
255
|
+
this.model.f_remanent_money = ( (this.model.f_remanent_gas-0)*(this.model.f_remanent_price-0)).toFixed(4);
|
|
256
|
+
}
|
|
257
|
+
},
|
|
258
|
+
initData () {
|
|
259
|
+
if (this.row.f_meter_type == '物联网表') {
|
|
260
|
+
// 判断是否需要结算
|
|
261
|
+
if (this.row.f_collection_type == '按气量') {
|
|
262
|
+
this.calGasIOTRemanent()
|
|
263
|
+
} else {
|
|
264
|
+
this.calMoneyIOTRemanent()
|
|
265
|
+
}
|
|
266
|
+
} else if (this.row.f_meter_type == '机表'){
|
|
267
|
+
this.validateOwe()
|
|
268
|
+
} else {
|
|
269
|
+
this.pregasChange()
|
|
270
|
+
}
|
|
271
|
+
},
|
|
272
|
+
|
|
273
|
+
calGasCardRemanent() {
|
|
274
|
+
//拿到旧表底数 和【累计购气量+初始底数】比较 这里剩余气量如果是清零补气的就不加,如果是换表补气的就加
|
|
275
|
+
let param = this.row.f_total_gas + this.row.f_initial_base
|
|
276
|
+
|
|
277
|
+
if (this.row.f_remanent_type == 1) {
|
|
278
|
+
param += this.row.f_remanent_gas
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
// if(this.model.f_using_base_old > param){
|
|
282
|
+
// this.$showAlert('该表可能存在超用,请核实输入后进行换表操作!!', 'warning', 5000)
|
|
283
|
+
// this.$dispatch('refresh')
|
|
284
|
+
// }
|
|
285
|
+
if(this.model.f_remanent_price > 0){
|
|
286
|
+
this.model.f_remanent_gas = (param - (this.model.f_using_base_old-0)).toFixed(4)
|
|
287
|
+
}
|
|
288
|
+
},
|
|
289
|
+
|
|
290
|
+
calMoneyCardRemanent () {
|
|
291
|
+
if (!this.model.f_remanent_money) {
|
|
292
|
+
this.model.f_remanent_money = ''
|
|
293
|
+
}
|
|
294
|
+
},
|
|
295
|
+
|
|
296
|
+
calGasIOTRemanent () {
|
|
297
|
+
this.model.f_remanent_gas = (this.row.f_balance_gas - 0)
|
|
298
|
+
if (this.row.f_remanent_type == 1) {
|
|
299
|
+
this.model.f_remanent_gas += (this.row.f_remanent_gas - 0)
|
|
300
|
+
}
|
|
301
|
+
},
|
|
302
|
+
calMoneyIOTRemanent () {
|
|
303
|
+
this.model.f_remanent_money = (this.row.f_balance_amount - 0).toFixed(4)
|
|
304
|
+
if (this.row.f_remanent_type == 1) {
|
|
305
|
+
if (this.row.f_remanent_gas > 0) {
|
|
306
|
+
this.model.f_remanent_money = (this.model.f_remanent_money - 0) + ((this.row.f_remanent_gas - 0) * (this.row.f_remanent_price - 0)).toFixed(4)
|
|
307
|
+
} else if (this.row.f_remanent_money > 0) {
|
|
308
|
+
this.model.f_remanent_money = (this.model.f_remanent_money - 0) + (this.row.f_remanent_money - 0)
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
},
|
|
312
|
+
|
|
313
|
+
gasModelChange (val) {
|
|
314
|
+
console.log('新表信息', val)
|
|
315
|
+
if (val.length > 0) {
|
|
316
|
+
// 新气表信息已选
|
|
317
|
+
let oldMeter = {
|
|
318
|
+
f_meter_type: this.row.f_meter_type,
|
|
319
|
+
f_collection_type: this.row.f_collection_type
|
|
320
|
+
}
|
|
321
|
+
let newMeter = {
|
|
322
|
+
f_meter_type: val[0].f_meter_type,
|
|
323
|
+
f_collection_type: val[0].f_collection_type
|
|
324
|
+
}
|
|
325
|
+
let res = this.$ChangeMeter.changeMeter(oldMeter, newMeter, this.row)
|
|
326
|
+
console.log('看看新旧表的转换结果', res)
|
|
327
|
+
this.changeType = res.name
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
},
|
|
331
|
+
|
|
332
|
+
remanentChange () {
|
|
333
|
+
// 气量转金额 或者 金额转气量的时候对气量和金额不做限制, 可以修改, 但是只变单价
|
|
334
|
+
this.model.f_remanent_price = ((this.model.f_remanent_money)/(this.model.f_remanent_gas)).toFixed(4)
|
|
335
|
+
},
|
|
336
|
+
|
|
337
|
+
async validateOwe () {
|
|
338
|
+
let http =new HttpResetClass()
|
|
339
|
+
let books =await http.load('POST','rs/sql/singleTable_OrderBy',{
|
|
340
|
+
data: {
|
|
341
|
+
items: 'f_whether_pay',
|
|
342
|
+
tablename: 't_handplan',
|
|
343
|
+
condition: ` f_userfiles_id = '${this.row.f_userfiles_id}' and f_hand_state = '有效'`,
|
|
344
|
+
orderitem: ' id '
|
|
345
|
+
}
|
|
346
|
+
},{resolveMsg: null, rejectMsg: null}
|
|
347
|
+
)
|
|
348
|
+
// 如果是机表验证是否有欠费
|
|
349
|
+
if ((this.row.f_balance - 0) <0 || books.data[0].f_whether_pay === '否') {
|
|
350
|
+
this.$showAlert('该表有欠费,请到机表缴费界面进行缴费', 'warning', 3000)
|
|
351
|
+
this.$dispatch('button-specifies', {name:'机表收费', value: 'machine-charge'}, this.row)
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
},
|
|
355
|
+
}
|
|
356
|
+
</script>
|
package/src/components/revenue/comprehen/ComprehenOperation/newchangemeter/CorrectionMeter.vue
ADDED
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
<template xmlns="http://www.w3.org/1999/html">
|
|
2
|
+
<div class="auto" style="overflow:auto;">
|
|
3
|
+
<validator name='v'>
|
|
4
|
+
<form novalidate class="form-horizontal" style="height:500px;">
|
|
5
|
+
<div class="row auto" >
|
|
6
|
+
<div class="col-sm-4 form-group">
|
|
7
|
+
<label for="f_change_operator" class=" font_normal_body">更 正 人</label>
|
|
8
|
+
<input class="input_search" style="width:60%" type="text" v-model="metermessage.f_change_operator" placeholder="更正人">
|
|
9
|
+
</div>
|
|
10
|
+
<div class="col-sm-4 form-group">
|
|
11
|
+
<label for="f_meter_type" class="font_normal_body">新表类型</label>
|
|
12
|
+
<input type="text" class="input_search" style="width: 60%" v-show="false" v-model="metermessage.f_meter_type" v-validate:metertype='{required: true }'>
|
|
13
|
+
<v-select :value.sync="metermessage.f_meter_type"
|
|
14
|
+
v-model="metermessage.f_meter_type"
|
|
15
|
+
:options='meterType' placeholder='新表类型'
|
|
16
|
+
close-on-select v-ref:metertype style="width: 60%"></v-select>
|
|
17
|
+
</div>
|
|
18
|
+
|
|
19
|
+
<div class="col-sm-4 form-group" :class="[$v.brand.required ? 'has-error' : '']">
|
|
20
|
+
<label for="gasbrand" class="font_normal_body">新表品牌</label>
|
|
21
|
+
<input type="text" class="input_search" style="width:60%" v-show="false" v-model="metermessage.gasbrand" v-validate:brand='{required: true }'>
|
|
22
|
+
<v-select :value.sync="metermessage.gasbrand" :options='getMeterBrands(metermessage.f_meter_type)' placeholder='新表品牌' close-on-select
|
|
23
|
+
search v-model='metermessage.gasbrand' v-ref:brand></v-select>
|
|
24
|
+
</div>
|
|
25
|
+
<div class="col-sm-4 form-group" :class="[$v.model.required ? 'has-error' : '']">
|
|
26
|
+
<label for="gasmodel" class="font_normal_body">新表型号</label>
|
|
27
|
+
<input type="text" class="input_search" style="width:60%" v-show="false" v-model="metermessage.gasmodel" v-validate:model='{required: true }'>
|
|
28
|
+
<v-select :value.sync="metermessage.gasmodel" :options='metermessage.gasbrand[0] ? metermessage.gasbrand[0].gasmodel : [] ' placeholder='新表型号' close-on-select
|
|
29
|
+
v-model='metermessage.gasmodel' :disabled= 'metermessage.gasbrand.length === 0 ' v-ref:model></v-select>
|
|
30
|
+
</div>
|
|
31
|
+
|
|
32
|
+
</div>
|
|
33
|
+
<div class="row auto" >
|
|
34
|
+
<div class="row auto" >
|
|
35
|
+
<div class="col-sm-12">
|
|
36
|
+
<label class="font_normal_body ">备 注</label>
|
|
37
|
+
<textarea class="input_textarea" rows="3" style="width:87%;" v-model="metermessage.f_comments"></textarea>
|
|
38
|
+
</div>
|
|
39
|
+
</div>
|
|
40
|
+
<div style="text-align:right;height:auto;">
|
|
41
|
+
<button class="button_search" type="button" @click="confirm()" :disabled="!$v.valid">确认</button>
|
|
42
|
+
<button class="button_clear" type="button" @click="clean()" >取消</button>
|
|
43
|
+
</div>
|
|
44
|
+
</div>
|
|
45
|
+
<div class="row auto">
|
|
46
|
+
<div class="alert alert-warning" role="alert" style="color:darkred">
|
|
47
|
+
<dl>
|
|
48
|
+
<dt style="font-size:18px;line-height: 30px;"><span class="glyphicon glyphicon-alert"></span> 更正注意::</dt>
|
|
49
|
+
<dd style="line-height:30px;"> 1. 本次更正只影响当前表具的表品牌和表类型!</dd>
|
|
50
|
+
<dd style="line-height:30px;"> 2. 请在确认表具是否需要更新,本次更新不涉及补气等操作!</dd>
|
|
51
|
+
</dl>
|
|
52
|
+
</div>
|
|
53
|
+
</div>
|
|
54
|
+
</form>
|
|
55
|
+
</validator>
|
|
56
|
+
|
|
57
|
+
</div>
|
|
58
|
+
<upload :blodid="blodid" v-if="config.showupload" isremark="true" fusetype="更正表品牌"></upload>
|
|
59
|
+
</template>
|
|
60
|
+
<script>
|
|
61
|
+
|
|
62
|
+
import { HttpResetClass } from 'vue-client'
|
|
63
|
+
let getbrand = function(self){
|
|
64
|
+
self.meterbrands = self.$GetSaleParam.getGasbrand();
|
|
65
|
+
}
|
|
66
|
+
export default {
|
|
67
|
+
title: '更正表品牌',
|
|
68
|
+
data () {
|
|
69
|
+
return {
|
|
70
|
+
metermessage: {
|
|
71
|
+
f_meter_type: '气量卡表',
|
|
72
|
+
gasbrand: [],
|
|
73
|
+
gasmodel: [],
|
|
74
|
+
f_comments:'',
|
|
75
|
+
f_change_operator: this.$login.f.name
|
|
76
|
+
},
|
|
77
|
+
meterType: [{label:'气量卡表',value:'气量卡表'}],
|
|
78
|
+
meterinfo: false,
|
|
79
|
+
// 控制气量和金额的转换显示
|
|
80
|
+
changeType: '',
|
|
81
|
+
config: {
|
|
82
|
+
showupload:false, //
|
|
83
|
+
dispatch: false //是否派工
|
|
84
|
+
},
|
|
85
|
+
blodid: '',
|
|
86
|
+
errortype:[{label: '请选择', value: ''}, ...this.$appdata.getParam('错误类型')],
|
|
87
|
+
meterbrands:[],
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
props: ['row'],
|
|
91
|
+
ready () {
|
|
92
|
+
this.blodid = this.row.f_userinfo_id;
|
|
93
|
+
getbrand(this);
|
|
94
|
+
},
|
|
95
|
+
methods: {
|
|
96
|
+
getMeterBrands (meterType) {
|
|
97
|
+
let res = []
|
|
98
|
+
if (meterType.length > 0) {
|
|
99
|
+
this.meterbrands.forEach((item) => {
|
|
100
|
+
if (item.value.f_meter_type === meterType[0]) {
|
|
101
|
+
res.push(item)
|
|
102
|
+
}
|
|
103
|
+
})
|
|
104
|
+
}
|
|
105
|
+
return res
|
|
106
|
+
},
|
|
107
|
+
//返回
|
|
108
|
+
clean() {
|
|
109
|
+
this.$dispatch('success', '换流量计', this.row)
|
|
110
|
+
},
|
|
111
|
+
async confirm() {
|
|
112
|
+
this.$showMessage("是否对当前用户进行更新表品牌操作",['confirm','cancel']).then(res=>{
|
|
113
|
+
if(res == 'confirm'){
|
|
114
|
+
this.saveobj();
|
|
115
|
+
}
|
|
116
|
+
})
|
|
117
|
+
|
|
118
|
+
},
|
|
119
|
+
async saveobj() {
|
|
120
|
+
try {
|
|
121
|
+
this.metermessage.f_operator=this.$login.f.name
|
|
122
|
+
this.metermessage.f_operatorid=this.$login.f.id
|
|
123
|
+
this.metermessage.f_orgid=this.$login.f.orgid
|
|
124
|
+
this.metermessage.f_orgname=this.$login.f.orgs
|
|
125
|
+
this.metermessage.f_depid=this.$login.f.depids
|
|
126
|
+
this.metermessage.f_depname=this.$login.f.deps
|
|
127
|
+
this.metermessage.f_zoneid = this.$login.f.zoneid
|
|
128
|
+
this.metermessage.f_zones = this.$login.f.zones
|
|
129
|
+
let data={
|
|
130
|
+
model:this.metermessage,
|
|
131
|
+
old:this.row,
|
|
132
|
+
}
|
|
133
|
+
let meterinfo = await this.$resetpost('rs/logic/correctionmeter', data, {
|
|
134
|
+
resolveMsg: null,
|
|
135
|
+
rejectMsg: '更正气表品牌失败!!!'
|
|
136
|
+
});
|
|
137
|
+
this.$showAlert('更正气表品牌成功','success',2000);
|
|
138
|
+
this.row.f_userfiles_id=meterinfo.data.new_userfiles_id
|
|
139
|
+
this.$dispatch('success')
|
|
140
|
+
} catch (error) {
|
|
141
|
+
console.log('抛出的错误。。', error)
|
|
142
|
+
this.$showAlert(error, 'danger', 2000)
|
|
143
|
+
this.$dispatch('refresh')
|
|
144
|
+
}
|
|
145
|
+
},
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
</script>
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div @keyup.enter="search" class="flex-auto" style="flex:1;">
|
|
3
|
+
<criteria-paged :model="model" v-ref:paged>
|
|
4
|
+
<criteria @condition-changed='$parent.selfSearch' partial='criteria' v-ref:cri>
|
|
5
|
+
<div class="form-horizontal select-overspread container-fluid auto" novalidate partial>
|
|
6
|
+
<div class="row">
|
|
7
|
+
<div :class="$parent.$parent.style" >
|
|
8
|
+
<label class="font_normal_body">公  司</label>
|
|
9
|
+
<res-select
|
|
10
|
+
:initresid='$parent.$parent.curorgid'
|
|
11
|
+
@res-select="$parent.$parent.getorg"
|
|
12
|
+
is-mul="false"
|
|
13
|
+
restype='organization'
|
|
14
|
+
>
|
|
15
|
+
</res-select>
|
|
16
|
+
</div>
|
|
17
|
+
<div :class="$parent.$parent.style">
|
|
18
|
+
<label class="font_normal_body">用户编号</label>
|
|
19
|
+
<input class="input_search" condition="f_userinfo_code like '{}%'" placeholder="用户编号" style="width:60%"
|
|
20
|
+
style="width: 90px"
|
|
21
|
+
type="text" v-model="model.ename"
|
|
22
|
+
/>
|
|
23
|
+
</div>
|
|
24
|
+
<div :class="$parent.$parent.style">
|
|
25
|
+
<label class="font_normal_body">用户姓名</label>
|
|
26
|
+
<input class="input_search" condition="f_user_name like '%{}%'" placeholder="用户姓名" style="width:60%" style="width: 90px"
|
|
27
|
+
type="text" v-model="model.name"
|
|
28
|
+
/>
|
|
29
|
+
</div>
|
|
30
|
+
<div :class="$parent.$parent.style" v-if="!$parent.$parent.downshow&&!$parent.$parent.$parent.isdetail">
|
|
31
|
+
<label class="font_normal_body">电  话</label>
|
|
32
|
+
<input :size="model.f_user_phone ? model.f_user_phone.length : 2" class="input_search" condition="f_user_phone = '{}'" placeholder='电话' style="width:60%"
|
|
33
|
+
type="text"
|
|
34
|
+
v-model="model.f_user_phone">
|
|
35
|
+
</div>
|
|
36
|
+
<div :class="$parent.$parent.style" v-if="!$parent.$parent.downshow&&!$parent.$parent.$parent.isdetail">
|
|
37
|
+
<label class="font_normal_body">地  址</label>
|
|
38
|
+
<input :size="model.f_address ? model.f_address.length * 2 : 4" class="input_search" condition="f_address like '%{}%'" placeholder='用户地址' style="width:60%"
|
|
39
|
+
type="text"
|
|
40
|
+
v-model="model.f_address">
|
|
41
|
+
</div>
|
|
42
|
+
<div class="form-group col-sm-3 button-range" style="float: left">
|
|
43
|
+
<button @click="$parent.$parent.search()" class="button_search button_spacing" style="width:80px;margin-left:30px;" v-el:cx>查询</button>
|
|
44
|
+
|
|
45
|
+
<div :class="{'button_shrink_top':$parent.$parent.downshow,'button_shrink_bottom':!$parent.$parent.downshow}" @click="$parent.$parent.downshow=!$parent.$parent.downshow" class="button_spacing"
|
|
46
|
+
style="float: right" v-if="$parent.$parent.$parent.isdetail"></div>
|
|
47
|
+
</div>
|
|
48
|
+
</div>
|
|
49
|
+
<div class="row" v-if="$parent.$parent.downshow">
|
|
50
|
+
<div :class="$parent.$parent.style">
|
|
51
|
+
<label class="font_normal_body">电  话</label>
|
|
52
|
+
<input :size="model.f_user_phone ? model.f_user_phone.length : 2" class="input_search" condition="f_user_phone = '{}'" placeholder='电话' style="width:60%"
|
|
53
|
+
type="text"
|
|
54
|
+
v-model="model.f_user_phone">
|
|
55
|
+
</div>
|
|
56
|
+
<div :class="$parent.$parent.style">
|
|
57
|
+
<label class="font_normal_body">地  址</label>
|
|
58
|
+
<input :size="model.f_address ? model.f_address.length * 2 : 4" class="input_search" condition="f_address like '%{}%'" placeholder='用户地址' style="width:60%"
|
|
59
|
+
type="text"
|
|
60
|
+
v-model="model.f_address">
|
|
61
|
+
</div>
|
|
62
|
+
</div>
|
|
63
|
+
|
|
64
|
+
</div>
|
|
65
|
+
</criteria>
|
|
66
|
+
<data-grid :model="model" class="list_area table_sy" partial='list' v-ref:grid>
|
|
67
|
+
<template partial='head'>
|
|
68
|
+
<tr>
|
|
69
|
+
<th style="text-align: center; ">序号</th>
|
|
70
|
+
<th style="text-align: center;">用户编号</th>
|
|
71
|
+
<th style="text-align: center;">姓名</th>
|
|
72
|
+
<th style="text-align: center;">电话</th>
|
|
73
|
+
<th style="text-align: center;">公司</th>
|
|
74
|
+
<th style="text-align: center;">地址</th>
|
|
75
|
+
</tr>
|
|
76
|
+
</template>
|
|
77
|
+
<template partial='body'>
|
|
78
|
+
|
|
79
|
+
<td style="text-align: center;">{{$index+1}}</td>
|
|
80
|
+
<td style="text-align: center;">{{row.f_userinfo_code}}</td>
|
|
81
|
+
<td style="text-align: center;">{{row.f_user_name}}</td>
|
|
82
|
+
<td style="text-align: center;">{{row.f_user_phone}}</td>
|
|
83
|
+
<td style="text-align:center"><nobr>{{row.f_orgname}}</nobr></td>
|
|
84
|
+
<td style="text-align: center;">{{row.f_address}}</td>
|
|
85
|
+
</template>
|
|
86
|
+
<template partial='foot'></template>
|
|
87
|
+
</data-grid>
|
|
88
|
+
</criteria-paged>
|
|
89
|
+
</div>
|
|
90
|
+
</template>
|
|
91
|
+
|
|
92
|
+
<script>
|
|
93
|
+
|
|
94
|
+
import {PagedList} from 'vue-client'
|
|
95
|
+
import Vue from 'vue'
|
|
96
|
+
export default {
|
|
97
|
+
data () {
|
|
98
|
+
return {
|
|
99
|
+
model: new PagedList('rs/sql/sale_getBlackUserList', 20),
|
|
100
|
+
// 公司下拉
|
|
101
|
+
curorgid: [this.$login.f.orgid],
|
|
102
|
+
f_filialeid:this.$login.f.orgid
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
ready () {
|
|
106
|
+
},
|
|
107
|
+
methods: {
|
|
108
|
+
search () {
|
|
109
|
+
this.$refs.paged.$refs.cri.search()
|
|
110
|
+
this.$dispatch('search')
|
|
111
|
+
},
|
|
112
|
+
getorg (val) {
|
|
113
|
+
this.f_orgid = this.$login.convertToIn(val)
|
|
114
|
+
this.f_filialeid = this.$login.convertToIn(val)
|
|
115
|
+
},
|
|
116
|
+
selfSearch (args) {
|
|
117
|
+
|
|
118
|
+
if (!this.f_orgid) {
|
|
119
|
+
this.getorg([this.$login.f.orgid])
|
|
120
|
+
}
|
|
121
|
+
if(!this.f_orgid){
|
|
122
|
+
this.f_orgid = `('${this.$login.f.orgid}')`
|
|
123
|
+
}
|
|
124
|
+
console.log('查询。。。', this.f_orgid)
|
|
125
|
+
if (this.f_orgid) {
|
|
126
|
+
// args.condition = `${args.condition} and s.f_filialeid in ${this.f_orgid}`
|
|
127
|
+
args.condition = `${args.condition} and i.f_orgid in ${this.f_orgid}`
|
|
128
|
+
}
|
|
129
|
+
this.model.search(args.condition, args.model)
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
},
|
|
133
|
+
watch: {
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
</script>
|