sale-client 3.6.166 → 3.6.168
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 +5 -2
- package/package.json +1 -1
- package/src/components/common/userinfo_detail/UserBaseInfo.vue +14 -4
- package/src/components/common/userinfo_detail/UserBaseInfoNew.vue +14 -4
- package/src/components/revenue/Common/PaymentCode.vue +1 -1
- package/src/components/revenue/base/leftview/SafeCheck.vue +1 -0
- package/src/components/revenue/batchDeduction/batchDeduction.vue +47 -0
- package/src/components/revenue/batchDeduction/batchDeductionList.vue +238 -0
- package/src/components/revenue/batchDeduction/batchDeductionOper.vue +119 -0
- package/src/components/revenue/comprehen/ComprehenOperation/ChangeAccount/TransferManage.vue +1 -1
- package/src/components/revenue/comprehen/closeaccount/Batchmanage.vue +14 -10
- package/src/components/revenue/comprehen/gasbrand/AddGasBrand.vue +99 -63
- package/src/components/webMeter/MeterManage/WebMeterBatchOperate.vue +14 -4
- package/src/plugins/LogicService.js +1 -0
- package/src/sale.js +4 -0
package/build/dev-server.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
var path = require('path')
|
|
2
|
-
const [ serverRul, localUrl ] = ['http://121.36.106.17:8400/', 'http://
|
|
2
|
+
const [ serverRul, localUrl ] = ['http://121.36.106.17:8400/', 'http://127.0.0.1:8080/']
|
|
3
3
|
var merge = require('webpack-merge')
|
|
4
4
|
var baseConfig = require('./webpack.dev.conf')
|
|
5
5
|
var devConfig = {
|
|
@@ -18,7 +18,10 @@ var devConfig = {
|
|
|
18
18
|
},
|
|
19
19
|
proxy: {
|
|
20
20
|
'/rs/file': {
|
|
21
|
-
target:
|
|
21
|
+
target: localUrl
|
|
22
|
+
},
|
|
23
|
+
'/rs/downloadfile': {
|
|
24
|
+
target: localUrl
|
|
22
25
|
},
|
|
23
26
|
'/webapps': {
|
|
24
27
|
target: serverRul
|
package/package.json
CHANGED
|
@@ -343,10 +343,20 @@
|
|
|
343
343
|
meternumberf: this.row.f_meternumber,
|
|
344
344
|
contentData: {isOpen: oper ? 1 : 0}
|
|
345
345
|
}
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
346
|
+
let _this = this
|
|
347
|
+
await this.$resetpost('rs/sql/iot_searchInstruct', {data: datas},
|
|
348
|
+
{warnMsg: null, resolveMsg: null}).then(res => {
|
|
349
|
+
if (res.data.length === 0) {
|
|
350
|
+
_this.$resetpost('rs/logic/iot_saveInstruct', {data: datas},
|
|
351
|
+
{warnMsg: `确定要进行${msg}操作吗?`, resolveMsg: `${msg}成功`, rejectMsg: `${msg}失败`}).then(res => {
|
|
352
|
+
_this.valve = false
|
|
353
|
+
_this.operateReason = ''
|
|
354
|
+
})
|
|
355
|
+
} else {
|
|
356
|
+
this.$showAlert('存在开关阀待发送的指令,系统不生成同样的待发送指令', 'warning', 3000)
|
|
357
|
+
_this.valve = false
|
|
358
|
+
_this.operateReason = ''
|
|
359
|
+
}
|
|
350
360
|
})
|
|
351
361
|
}
|
|
352
362
|
},
|
|
@@ -388,10 +388,20 @@
|
|
|
388
388
|
meternumberf: this.row.f_meternumber,
|
|
389
389
|
contentData: {isOpen: oper ? 1 : 0}
|
|
390
390
|
}
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
391
|
+
let _this = this
|
|
392
|
+
await this.$resetpost('rs/sql/iot_searchInstruct', {data: datas},
|
|
393
|
+
{warnMsg: null, resolveMsg: null}).then(res => {
|
|
394
|
+
if (res.data.length === 0) {
|
|
395
|
+
_this.$resetpost('rs/logic/iot_saveInstruct', {data: datas},
|
|
396
|
+
{warnMsg: `确定要进行${msg}操作吗?`, resolveMsg: `${msg}成功`, rejectMsg: `${msg}失败`}).then(res => {
|
|
397
|
+
_this.valve = false
|
|
398
|
+
_this.operateReason = ''
|
|
399
|
+
})
|
|
400
|
+
} else {
|
|
401
|
+
this.$showAlert('存在开关阀待发送的指令,系统不生成同样的待发送指令', 'warning', 3000)
|
|
402
|
+
_this.valve = false
|
|
403
|
+
_this.operateReason = ''
|
|
404
|
+
}
|
|
395
405
|
})
|
|
396
406
|
}
|
|
397
407
|
},
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
timer: null,
|
|
45
45
|
// 收费成功id
|
|
46
46
|
sellinggasId: null,
|
|
47
|
-
canPayment: this.$appdata.getSingleValue('微信支付付款方式') ? this.$appdata.getSingleValue('微信支付付款方式') : '
|
|
47
|
+
canPayment: this.$appdata.getSingleValue('微信支付付款方式') ? this.$appdata.getSingleValue('微信支付付款方式') : '',
|
|
48
48
|
}
|
|
49
49
|
},
|
|
50
50
|
created () {
|
|
@@ -152,6 +152,7 @@
|
|
|
152
152
|
</thead>
|
|
153
153
|
<tr v-for="checkitem in model.safecheckitem">
|
|
154
154
|
<td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ checkitem.f_item_name }}</td>
|
|
155
|
+
<td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%">{{ checkitem.f_is_repaired }}</td>
|
|
155
156
|
<td style="text-align: center;border: #E9E9E9 solid 1px;width: 33%" v-if="checkitem.f_path!='' && checkitem.f_path!=null">
|
|
156
157
|
<img-self :src="'rs/image/file/'+checkitem.f_path" style="float: left" width="100" height="150"></img-self>
|
|
157
158
|
</td>
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="flex-row">
|
|
3
|
+
<div class="basic-main" :class="{'basic-main':!chargeShow,'binary-left':chargeShow}" style="height: 98%;">
|
|
4
|
+
<batch-deduction-list :charge-show="chargeShow" v-ref:deductionlist></batch-deduction-list>
|
|
5
|
+
</div>
|
|
6
|
+
<div style="height: 98%;width: 40%" class="binary-right" v-if="chargeShow">
|
|
7
|
+
<batch-deduction-oper :batch-id="batch_id" v-ref:oper></batch-deduction-oper>
|
|
8
|
+
</div>
|
|
9
|
+
<work-busy :is-busy="isbusy"></work-busy>
|
|
10
|
+
</div>
|
|
11
|
+
</template>
|
|
12
|
+
<script>
|
|
13
|
+
export default {
|
|
14
|
+
title: '批量补扣费',
|
|
15
|
+
data () {
|
|
16
|
+
return {
|
|
17
|
+
chargeShow: false,
|
|
18
|
+
batch_id: '',
|
|
19
|
+
isbusy: false
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
ready () {},
|
|
23
|
+
methods: {},
|
|
24
|
+
events: {
|
|
25
|
+
async batchToSell (condition) {
|
|
26
|
+
this.isbusy = true
|
|
27
|
+
await this.$resetpost(`rs/logic/sale_chargeDeduction`, {condition}, {
|
|
28
|
+
resolveMsg: '生成收费记录成功',
|
|
29
|
+
rejectMsg: '生成收费记录失败',
|
|
30
|
+
silent: true
|
|
31
|
+
}, 0).then(res => {
|
|
32
|
+
this.batch_id = res.data
|
|
33
|
+
this.isbusy = false
|
|
34
|
+
}).catch(e => {
|
|
35
|
+
this.isbusy = false
|
|
36
|
+
})
|
|
37
|
+
await this.$refs.deductionlist.search()
|
|
38
|
+
this.chargeShow = true
|
|
39
|
+
},
|
|
40
|
+
reSearch () {
|
|
41
|
+
this.chargeShow = false
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
</script>
|
|
46
|
+
<style lang="less" scoped>
|
|
47
|
+
</style>
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<criteria-paged :model="model" v-ref:paged>
|
|
3
|
+
<criteria partial='criteria' v-ref:criteria @condition-changed="$parent.selfSearch">
|
|
4
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
|
|
5
|
+
<div class="row">
|
|
6
|
+
<div class="form-group col-sm-2">
|
|
7
|
+
<label class="font_normal_body"><nobr>用户编号</nobr></label>
|
|
8
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
|
|
9
|
+
condition="tbd.f_userinfo_code='{}'" placeholder='用户编号'>
|
|
10
|
+
</div>
|
|
11
|
+
<div class="form-group col-sm-2">
|
|
12
|
+
<label class="font_normal_body"><nobr>用户姓名</nobr></label>
|
|
13
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
|
|
14
|
+
condition="tbd.f_user_name = '{}'" placeholder='用户姓名'>
|
|
15
|
+
</div>
|
|
16
|
+
<div class="form-group col-sm-2" v-if="!$parent.$parent.chargeShow" >
|
|
17
|
+
<label class="font_normal_body"><nobr>用气性质</nobr></label>
|
|
18
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_gasproperties"
|
|
19
|
+
condition="uf.f_gasproperties='{}'" placeholder='用气性质'>
|
|
20
|
+
</div>
|
|
21
|
+
|
|
22
|
+
<div class="span" style="float:right;">
|
|
23
|
+
<button class="button_export button_spacing" @click="$parent.$parent.importToSuccess()">一键生成补扣费记录</button>
|
|
24
|
+
<button class="button_export button_spacing" @click="$parent.$parent.importForThe()">导入待处理记录</button>
|
|
25
|
+
<button class="button_search button_spacing" @click="$parent.$parent.search()">查询</button>
|
|
26
|
+
<button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
|
|
27
|
+
|
|
28
|
+
<div style="float: right" class="button_spacing"
|
|
29
|
+
:class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
|
|
30
|
+
@click="$parent.$parent.hidden()"></div>
|
|
31
|
+
</div>
|
|
32
|
+
</div>
|
|
33
|
+
<div class="row" v-show="$parent.$parent.criteriaShow">
|
|
34
|
+
<div class="form-group col-sm-2">
|
|
35
|
+
<label class="font_normal_body"><nobr>记录状态</nobr></label>
|
|
36
|
+
<v-select v-model="model.f_state"
|
|
37
|
+
placeholder='记录状态'
|
|
38
|
+
:value.sync="model.f_state"
|
|
39
|
+
:options='$parent.$parent.states'
|
|
40
|
+
condition="tbd.f_state = '{}'"
|
|
41
|
+
style="width: 60%"
|
|
42
|
+
close-on-select></v-select>
|
|
43
|
+
</div>
|
|
44
|
+
<div class="form-group col-sm-2" v-if="$parent.$parent.chargeShow" >
|
|
45
|
+
<label class="font_normal_body"><nobr>用气性质</nobr></label>
|
|
46
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_gasproperties"
|
|
47
|
+
condition="uf.f_gasproperties='{}'" placeholder='用气性质'>
|
|
48
|
+
</div>
|
|
49
|
+
</div>
|
|
50
|
+
</div>
|
|
51
|
+
</criteria>
|
|
52
|
+
<data-grid :model="model" partial='list' v-ref:grid class="list_area table_sy">
|
|
53
|
+
<template partial='head'>
|
|
54
|
+
<tr>
|
|
55
|
+
<th>序号</th>
|
|
56
|
+
<th>客户编号</th>
|
|
57
|
+
<th>用户姓名</th>
|
|
58
|
+
<th>用气性质</th>
|
|
59
|
+
<th>表上余额</th>
|
|
60
|
+
<th>系统余额</th>
|
|
61
|
+
<th>金额</th>
|
|
62
|
+
<th>业务类型</th>
|
|
63
|
+
<th>收费时间</th>
|
|
64
|
+
<th>记录状态</th>
|
|
65
|
+
<th>生成记录人员</th>
|
|
66
|
+
<th>所属分公司</th>
|
|
67
|
+
<th>操作</th>
|
|
68
|
+
</tr>
|
|
69
|
+
</template>
|
|
70
|
+
<template partial='body'>
|
|
71
|
+
<td style="text-align: center;"> {{ $index + 1 }}</td>
|
|
72
|
+
<td>{{ row.f_userinfo_code }}</td>
|
|
73
|
+
<td>{{ row.f_user_name }}</td>
|
|
74
|
+
<td>{{ row.f_gasproperties }}</td>
|
|
75
|
+
<td>{{ row.f_jval }}</td>
|
|
76
|
+
<td>{{ row.f_balance_amount }}</td>
|
|
77
|
+
<td>{{ row.f_collection }}</td>
|
|
78
|
+
<td>{{ row.f_collection < 0 ? '扣费' : '补费' }}</td>
|
|
79
|
+
<td>{{ row.f_operate_date }}</td>
|
|
80
|
+
<td>{{ row.f_state }}</td>
|
|
81
|
+
<td>{{ row.f_operator }}</td>
|
|
82
|
+
<td>{{ row.f_orgname }}</td>
|
|
83
|
+
<td style="text-align: center"> <button v-if="row.f_state === '待生成'" type="button" class="btn btn-danger" @click.stop="$parent.$parent.$parent.cancel(row)">作废</button>
|
|
84
|
+
</td>
|
|
85
|
+
</template>
|
|
86
|
+
</data-grid>
|
|
87
|
+
</criteria-paged>
|
|
88
|
+
<work-busy :is-busy='isbusy'></work-busy>
|
|
89
|
+
<modal :show.sync="fileShow" width="480px" v-ref:modal backdrop="true">
|
|
90
|
+
<header slot="modal-header" class="modal-header">
|
|
91
|
+
<button type="button" class="close" @click="importForThe"><span>×</span></button>
|
|
92
|
+
<h4 class="modal-title">选择文件</h4>
|
|
93
|
+
</header>
|
|
94
|
+
<article slot="modal-body" class="modal-body">
|
|
95
|
+
<div class="form-group">
|
|
96
|
+
<file-upload class="my-file-uploader" name="useraddressUploadFile" action="rs/file/uploadFile" tagname="确定"
|
|
97
|
+
multiple v-ref:file></file-upload>
|
|
98
|
+
<button type="button" style="margin-top: 10px;" @click="downloadFiles()" class="button_clear btn-gn">模板下载</button>
|
|
99
|
+
</div>
|
|
100
|
+
</article>
|
|
101
|
+
<footer slot="modal-footer" class="modal-footer" style="display: none"></footer>
|
|
102
|
+
</modal>
|
|
103
|
+
</template>
|
|
104
|
+
<script>
|
|
105
|
+
import {PagedList, HttpResetClass} from 'vue-client'
|
|
106
|
+
import Vue from 'vue'
|
|
107
|
+
|
|
108
|
+
export default {
|
|
109
|
+
title: '批量预存',
|
|
110
|
+
props: ['chargeShow'],
|
|
111
|
+
data () {
|
|
112
|
+
return {
|
|
113
|
+
criteriaShow: false,
|
|
114
|
+
model: new PagedList('rs/sql/getDeductionRecord', 30 ,{}),
|
|
115
|
+
fileShow: false,
|
|
116
|
+
condition: '',
|
|
117
|
+
searchEd: false,
|
|
118
|
+
templateName: '批量补扣费导入模板',
|
|
119
|
+
states: [
|
|
120
|
+
{label: '待生成', value: '待生成'},
|
|
121
|
+
{label: '已生成', value: '已生成'},
|
|
122
|
+
{label: '作废', value: '作废'}
|
|
123
|
+
],
|
|
124
|
+
isbusy: false
|
|
125
|
+
}
|
|
126
|
+
},
|
|
127
|
+
|
|
128
|
+
ready () {
|
|
129
|
+
},
|
|
130
|
+
methods: {
|
|
131
|
+
downloadFiles () {
|
|
132
|
+
let downurl = 'rs/downloadfile/file?filename=' + this.templateName
|
|
133
|
+
this.$downFile(downurl, this.templateName + '.xlsx')
|
|
134
|
+
},
|
|
135
|
+
selfSearch (args) {
|
|
136
|
+
this.condition = args.condition
|
|
137
|
+
this.model.search(args.condition, this.model)
|
|
138
|
+
this.searchEd = true
|
|
139
|
+
this.$dispatch('reSearch')
|
|
140
|
+
},
|
|
141
|
+
// 待生成记录生成为有效收费记录
|
|
142
|
+
async importToSuccess () {
|
|
143
|
+
if (this.searchEd) {
|
|
144
|
+
// 查询有多少待执行记录
|
|
145
|
+
let condition = this.condition + ` and tbd.f_state = '待生成' `
|
|
146
|
+
let http = new HttpResetClass()
|
|
147
|
+
let getCount = await http.load('POST', 'rs/sql/getDeductionRecord',
|
|
148
|
+
{data: {
|
|
149
|
+
condition: condition
|
|
150
|
+
}},
|
|
151
|
+
{resolveMsg: null, rejectMsg: null})
|
|
152
|
+
let sum = getCount.data.length
|
|
153
|
+
if (sum === 0) {
|
|
154
|
+
this.$showAlert('没有待生成的记录', 'warning', 2000)
|
|
155
|
+
return
|
|
156
|
+
}
|
|
157
|
+
this.$showMessage(`确定要生成收费记录吗?共计${sum}条记录`, ['confirm', 'cancel']).then(async (res) => {
|
|
158
|
+
if (res === 'confirm') {
|
|
159
|
+
this.$dispatch('batchToSell', condition)
|
|
160
|
+
}
|
|
161
|
+
})
|
|
162
|
+
} else {
|
|
163
|
+
this.$showAlert('请先执行查询操作', 'warning', 2000)
|
|
164
|
+
}
|
|
165
|
+
},
|
|
166
|
+
importForThe () {
|
|
167
|
+
this.fileShow = !this.fileShow
|
|
168
|
+
},
|
|
169
|
+
// 作废待生成记录
|
|
170
|
+
async cancel (row) {
|
|
171
|
+
await this.$resetpost('rs/entity/t_batch_deductions', {id: row.id, f_state: '作废'}, {
|
|
172
|
+
resolveMsg: '作废成功',
|
|
173
|
+
rejectMsg: '作废失败!!!'
|
|
174
|
+
})
|
|
175
|
+
await this.search()
|
|
176
|
+
},
|
|
177
|
+
// 隐藏折叠条件
|
|
178
|
+
hidden () {
|
|
179
|
+
this.criteriaShow = !this.criteriaShow
|
|
180
|
+
},
|
|
181
|
+
// 清空
|
|
182
|
+
clear () {
|
|
183
|
+
Object.keys(this.$refs.paged.$refs.criteria.model).forEach((key) => {
|
|
184
|
+
this.$refs.paged.$refs.criteria.model[key] = []
|
|
185
|
+
})
|
|
186
|
+
},
|
|
187
|
+
search () {
|
|
188
|
+
this.$refs.paged.$refs.criteria.search()
|
|
189
|
+
}
|
|
190
|
+
},
|
|
191
|
+
events: {
|
|
192
|
+
onFileUpload: async function (file, res) {
|
|
193
|
+
this.isbusy = true
|
|
194
|
+
let data = {
|
|
195
|
+
filepath: res.f_downloadpath,
|
|
196
|
+
f_operator: Vue.$login.f.name,
|
|
197
|
+
f_operatorid: Vue.$login.f.id,
|
|
198
|
+
f_orgid: Vue.$login.f.orgid,
|
|
199
|
+
f_orgname: Vue.$login.f.orgs,
|
|
200
|
+
f_depid: Vue.$login.f.depids,
|
|
201
|
+
f_depname: Vue.$login.f.deps
|
|
202
|
+
}
|
|
203
|
+
await this.$resetpost(`rs/logic/sale_importPreloads`, data, {
|
|
204
|
+
resolveMsg: null,
|
|
205
|
+
rejectMsg: '导入失败',
|
|
206
|
+
silent: true
|
|
207
|
+
}, 0).then((res) => {
|
|
208
|
+
this.isbusy = false
|
|
209
|
+
if (res.data.type == 'success') {
|
|
210
|
+
this.$showAlert('导入信息:' + res.data.msg, res.data.type, 2000)
|
|
211
|
+
} else {
|
|
212
|
+
this.$showAlert('文件上传失败,请检查数据格式(每个数据字段值都为文本格式,收费金额为数字,日期格式为 年年年年-月月-日日 时时:分分:秒秒),多次错误请尝试重新下载模板', 'warning', 2000)
|
|
213
|
+
}
|
|
214
|
+
// 关闭上传框
|
|
215
|
+
this.importForThe()
|
|
216
|
+
// 重新查询
|
|
217
|
+
this.search()
|
|
218
|
+
}).catch(() => {
|
|
219
|
+
this.$showAlert('文件上传失败,请检查数据格式(每个数据字段值都为文本格式,收费金额为数字,日期格式为 年年年年-月月-日日 时时:分分:秒秒),多次错误请尝试重新下载模板', 'warning', 2000)
|
|
220
|
+
this.isbusy = false
|
|
221
|
+
})
|
|
222
|
+
},
|
|
223
|
+
'onFileError' (error) {
|
|
224
|
+
this.$showAlert('文件上传失败,请检查数据格式(每个数据字段值都为文本格式,收费金额为数字,日期格式为 年年年年-月月-日日 时时:分分:秒秒),多次错误请尝试重新下载模板', 'warning', 2000)
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
}
|
|
229
|
+
</script>
|
|
230
|
+
<style lang="less" scoped>
|
|
231
|
+
.table_sy {
|
|
232
|
+
tr {
|
|
233
|
+
td {
|
|
234
|
+
text-align: center;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
</style>
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<criteria-paged :simple="true" :model="model" v-ref:paged>
|
|
3
|
+
<criteria partial='criteria' v-ref:criteria @condition-changed="$parent.selfSearch">
|
|
4
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
|
|
5
|
+
</div>
|
|
6
|
+
</criteria>
|
|
7
|
+
<data-grid :model="model" partial='list' v-ref:grid class="list_area table_sy">
|
|
8
|
+
<template partial='head'>
|
|
9
|
+
<tr>
|
|
10
|
+
<th>客户编号</th>
|
|
11
|
+
<th>用户姓名</th>
|
|
12
|
+
<th>用气性质</th>
|
|
13
|
+
<th>金额</th>
|
|
14
|
+
<th>业务类型</th>
|
|
15
|
+
<th>操作</th>
|
|
16
|
+
</tr>
|
|
17
|
+
</template>
|
|
18
|
+
<template partial='body'>
|
|
19
|
+
<td>{{ row.f_userinfo_code }}</td>
|
|
20
|
+
<td>{{ row.f_user_name }}</td>
|
|
21
|
+
<td>{{ row.f_gasproperties }}</td>
|
|
22
|
+
<td>{{ row.f_collection }}</td>
|
|
23
|
+
<td>{{ row.type }}</td>
|
|
24
|
+
<td style="text-align: center;">
|
|
25
|
+
<button @click.stop="$parent.$parent.$parent.report(row)" class="btn btn-link" name="button" type="button"
|
|
26
|
+
v-if="row.f_state==='已生成'">票据补打
|
|
27
|
+
</button>
|
|
28
|
+
<!-- <button @click.stop="$parent.$parent.$parent.cancel(row)" class="btn btn-link" name="button" type="button"-->
|
|
29
|
+
<!-- v-if="row.f_state==='已生成'">撤销记录-->
|
|
30
|
+
<!-- </button>-->
|
|
31
|
+
</td>
|
|
32
|
+
</template>
|
|
33
|
+
</data-grid>
|
|
34
|
+
</criteria-paged>
|
|
35
|
+
<record-cancel :data="cancel_data" :show.sync="cancel_show" @cancel="cancelOper()" @cancel-success="cancelSucc()" v-if="cancel_show"></record-cancel>
|
|
36
|
+
<reissue-bill :data="reissue_data" :show.sync="reissue_show" @cancel="reissueOper()" @reissue-success="reissueSucc()"
|
|
37
|
+
v-if="reissue_show"></reissue-bill>
|
|
38
|
+
</template>
|
|
39
|
+
<script>
|
|
40
|
+
import {PagedList} from 'vue-client'
|
|
41
|
+
import co from 'co'
|
|
42
|
+
|
|
43
|
+
let reprintGen = function* (self, row) {
|
|
44
|
+
try {
|
|
45
|
+
let reissueData = {}
|
|
46
|
+
reissueData = Object.assign({}, reissueData, row)
|
|
47
|
+
reissueData.f_bill_type = '预存缴费'
|
|
48
|
+
reissueData.f_bill_style = '普通收据'
|
|
49
|
+
reissueData.f_operator = self.$login.f.name
|
|
50
|
+
reissueData.f_operatorid = self.$login.f.id
|
|
51
|
+
reissueData.f_orgid = self.$login.f.orgid
|
|
52
|
+
reissueData.f_orgname = self.$login.f.orgs
|
|
53
|
+
reissueData.f_depid = self.$login.f.depids
|
|
54
|
+
reissueData.f_depname = self.$login.f.deps
|
|
55
|
+
reissueData.billUrl = 'rs/report/MakeUp'
|
|
56
|
+
self.reissue_data = reissueData
|
|
57
|
+
self.reissue_show = true
|
|
58
|
+
} catch (error) {
|
|
59
|
+
if (error.status) {
|
|
60
|
+
self.$warn(`加载数据出错, ${JSON.stringify(error)}`, 'CardList')
|
|
61
|
+
}
|
|
62
|
+
throw error
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
export default {
|
|
66
|
+
title: '批量预存',
|
|
67
|
+
props: ['batchId'],
|
|
68
|
+
data () {
|
|
69
|
+
return {
|
|
70
|
+
model: new PagedList('rs/sql/batchDeductionQuery', 30),
|
|
71
|
+
reissue_show: false,
|
|
72
|
+
cancel_show: false,
|
|
73
|
+
cancel_data: null,
|
|
74
|
+
reissue_data: null
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
|
|
78
|
+
ready () {
|
|
79
|
+
this.search()
|
|
80
|
+
},
|
|
81
|
+
methods: {
|
|
82
|
+
cancel (row) {
|
|
83
|
+
this.cancel_show = true
|
|
84
|
+
this.cancel_data = row
|
|
85
|
+
},
|
|
86
|
+
cancelOper () {
|
|
87
|
+
this.cancel_data = null
|
|
88
|
+
this.cancel_show = false
|
|
89
|
+
},
|
|
90
|
+
cancelSucc () {
|
|
91
|
+
this.cancel_show = false
|
|
92
|
+
this.search()
|
|
93
|
+
this.$dispatch('refresh')
|
|
94
|
+
},
|
|
95
|
+
selfSearch (args) {
|
|
96
|
+
args.condition = args.condition + ` and tbd.f_batch_id = '${this.batchId}'`
|
|
97
|
+
this.model.search(args.condition, this.model)
|
|
98
|
+
},
|
|
99
|
+
reissueSucc () {
|
|
100
|
+
this.reissue_show = false
|
|
101
|
+
this.$dispatch('refresh')
|
|
102
|
+
},
|
|
103
|
+
reissueOper () {
|
|
104
|
+
this.reissue_data = null
|
|
105
|
+
this.reissue_show = false
|
|
106
|
+
},
|
|
107
|
+
report (row) {
|
|
108
|
+
let reprint = reprintGen(this, row)
|
|
109
|
+
return co(reprint)
|
|
110
|
+
},
|
|
111
|
+
search () {
|
|
112
|
+
this.$refs.paged.$refs.criteria.search()
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
}
|
|
117
|
+
</script>
|
|
118
|
+
<style lang="less" scoped>
|
|
119
|
+
</style>
|
package/src/components/revenue/comprehen/ComprehenOperation/ChangeAccount/TransferManage.vue
CHANGED
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
</div>
|
|
32
32
|
<div class="col-sm-8" :class="[$v.f_newidnumber.identityCardValid ? 'has-error' : '']" v-if="model.f_newcredentials[0] === '身份证'">
|
|
33
33
|
<label id="label" class="font_normal_body">*证件号码</label>
|
|
34
|
-
<input type="text" v-model="model.f_newidnumber" v-validate:f_newidnumber='{identityCardValid: true}' class="input_search" style="width:80%" placeholder="新身份证号">
|
|
34
|
+
<input type="text" v-model="model.f_newidnumber" maxlength="18" v-validate:f_newidnumber='{identityCardValid: true}' class="input_search" style="width:80%" placeholder="新身份证号">
|
|
35
35
|
</div>
|
|
36
36
|
<div class="col-sm-8" v-if="model.f_newcredentials[0] !== '身份证'">
|
|
37
37
|
<label class="font_normal_body"> 证件号码</label>
|
|
@@ -1,20 +1,19 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<!-- <div v-if="listpage">-->
|
|
3
3
|
<tab-button v-ref:list>
|
|
4
|
-
<tabs header="批量销户审核">
|
|
4
|
+
<tabs header="批量销户审核" v-if="permission('批量销户审核')">
|
|
5
5
|
<battch-canceluser-audit @deal-msg="dealMsg"></battch-canceluser-audit>
|
|
6
6
|
</tabs>
|
|
7
|
-
<tabs header="修改抄表员">
|
|
7
|
+
<tabs header="修改抄表员" v-if="permission('修改抄表员')">
|
|
8
8
|
<batch-update-inputtor @deal-msg="dealMsg"></batch-update-inputtor>
|
|
9
9
|
</tabs>
|
|
10
|
-
<tabs header="修改表档案">
|
|
10
|
+
<tabs header="修改表档案" v-if="permission('修改表档案')">
|
|
11
|
+
<batch-edit-manage @deal-msg="dealMsg"></batch-edit-manage>
|
|
12
|
+
</tabs>
|
|
13
|
+
<tabs header="批量补扣费" v-if="permission('批量补扣费')">
|
|
11
14
|
<batch-edit-manage @deal-msg="dealMsg"></batch-edit-manage>
|
|
12
15
|
</tabs>
|
|
13
16
|
</tab-button>
|
|
14
|
-
<!-- </div>-->
|
|
15
|
-
<!-- <div v-if="!listpage">-->
|
|
16
|
-
<!-- <meter-info-manage :row="rowData" :f_start_date="f_start_date" :f_end_date="f_end_date"></meter-info-manage>-->
|
|
17
|
-
<!-- </div>-->
|
|
18
17
|
</template>
|
|
19
18
|
|
|
20
19
|
<script>
|
|
@@ -39,12 +38,17 @@
|
|
|
39
38
|
show: [true]
|
|
40
39
|
}
|
|
41
40
|
},
|
|
42
|
-
components: {Tabs, TabButton, Closeaccount },
|
|
41
|
+
components: { Tabs, TabButton, Closeaccount },
|
|
43
42
|
ready () {
|
|
44
|
-
|
|
45
|
-
|
|
43
|
+
if (!this.permission('批量销户审核') && !this.permission('修改抄表员') && !this.permission('修改表档案') &&
|
|
44
|
+
!this.permission('批量补扣费')) {
|
|
45
|
+
this.$showAlert('您没有该页面的内容权限,请向管理员申请', 'warning', 3000)
|
|
46
|
+
}
|
|
46
47
|
},
|
|
47
48
|
methods: {
|
|
49
|
+
permission (name) {
|
|
50
|
+
return this.$login.r.find(value => value == name)
|
|
51
|
+
},
|
|
48
52
|
cancel (obj) {
|
|
49
53
|
this.listpage = true
|
|
50
54
|
},
|
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div
|
|
3
|
-
<ul class="nav nav-tabs"
|
|
2
|
+
<div class="auto select-overspread" style="padding-left: 10px;">
|
|
3
|
+
<ul class="nav nav-tabs" style="margin-bottom: 10px">
|
|
4
4
|
<li role="presentation" class="active"><a href="#">气表品牌</a></li>
|
|
5
5
|
</ul>
|
|
6
6
|
<validator name='v'>
|
|
7
|
-
<form
|
|
8
|
-
<div class="row"
|
|
7
|
+
<form novalidate class="form-horizontal select-overspread container-fluid auto">
|
|
8
|
+
<div class="row">
|
|
9
9
|
<div class="col-sm-4 form-group" :class="[$v.f_meter_brand.required ? 'has-error' : 'has-success']">
|
|
10
|
-
<label for="f_meter_brand"
|
|
11
|
-
<input class="input_search" style="width: 60%"
|
|
10
|
+
<label for="f_meter_brand" class="font_normal_body">气表品牌</label>
|
|
11
|
+
<input class="input_search" style="width: 60%" type="text" v-model="gasmessage.f_meter_brand"
|
|
12
|
+
v-validate:f_meter_brand="['required']">
|
|
12
13
|
</div>
|
|
13
14
|
|
|
14
15
|
<div class="col-sm-4 form-group" :class="[$v.metertype.required ? 'has-error' : '']">
|
|
15
16
|
<label for="f_meter_type" class="font_normal_body">气表类型</label>
|
|
16
|
-
<input type="text" class="input_search" style="width: 60%" v-show="false"
|
|
17
|
+
<input type="text" class="input_search" style="width: 60%" v-show="false"
|
|
18
|
+
v-model="$refs.metertype.selectedItems" v-validate:metertype='{required: true }'>
|
|
17
19
|
<v-select :value.sync="gasmessage.f_meter_type"
|
|
18
20
|
v-model="gasmessage.f_meter_type"
|
|
19
21
|
:options='meterType' placeholder='气表类型'
|
|
@@ -21,18 +23,19 @@
|
|
|
21
23
|
</div>
|
|
22
24
|
<div class="col-sm-4 form-group" :class="[$v.f_alias.required ? 'has-error' : 'has-success']">
|
|
23
25
|
<label for="f_alias" class="font_normal_body">别  名</label>
|
|
24
|
-
<input class="input_search" style="width: 60%" type="text" v-model="gasmessage.f_alias"
|
|
26
|
+
<input class="input_search" style="width: 60%" type="text" v-model="gasmessage.f_alias"
|
|
27
|
+
v-validate:f_alias='{required: true }'>
|
|
25
28
|
</div>
|
|
26
29
|
<div class="col-sm-4 form-group">
|
|
27
30
|
<label for="f_checkout_limit" class="font_normal_body ">校检年限</label>
|
|
28
|
-
<input class="input_search" style="width: 60%" type="number" v-model="gasmessage.f_checkout_limit"
|
|
31
|
+
<input class="input_search" style="width: 60%" type="number" v-model="gasmessage.f_checkout_limit">
|
|
29
32
|
</div>
|
|
30
33
|
<div class="col-sm-4 form-group">
|
|
31
34
|
<label for="f_collection_type" class="font_normal_body">缴费方式</label>
|
|
32
35
|
<v-select :value.sync="gasmessage.f_collection_type"
|
|
33
36
|
v-model="gasmessage.f_collection_type"
|
|
34
37
|
:options='collectiontypes' placeholder='缴费方式'
|
|
35
|
-
close-on-select :disabled='colletype'
|
|
38
|
+
close-on-select :disabled='colletype' style="width: 60%"></v-select>
|
|
36
39
|
</div>
|
|
37
40
|
<div class="col-sm-4 form-group">
|
|
38
41
|
<label for="f_isdecimal" class="font_normal_body">支持小数</label>
|
|
@@ -43,7 +46,7 @@
|
|
|
43
46
|
</div>
|
|
44
47
|
<div class="col-sm-4 form-group" v-if="gasmessage.f_isdecimal[0] ==='是'">
|
|
45
48
|
<label for="f_isdecimal" class="font_normal_body">气量位数</label>
|
|
46
|
-
|
|
49
|
+
<v-select :value.sync="gasmessage.f_gas_decimal"
|
|
47
50
|
v-model="gasmessage.f_gas_decimal"
|
|
48
51
|
:value-single="true"
|
|
49
52
|
:search="false"
|
|
@@ -59,31 +62,45 @@
|
|
|
59
62
|
:options='decimalArray' placeholder='金额位数'
|
|
60
63
|
close-on-select style="width: 60%"></v-select>
|
|
61
64
|
</div>
|
|
62
|
-
<div class="col-sm-4 form-group" v-if="gasmessage.f_meter_type[0].includes('物联网')"
|
|
65
|
+
<div class="col-sm-4 form-group" v-if="gasmessage.f_meter_type[0].includes('物联网')"
|
|
66
|
+
:class="[$v.calculation.required ? 'select-error' : '']">
|
|
63
67
|
<label for="f_calculation" class="font_normal_body">结算方式</label>
|
|
64
|
-
<input type="text" v-show="false" v-model="$refs.calculation.selectedItems"
|
|
65
|
-
|
|
68
|
+
<input type="text" v-show="false" v-model="$refs.calculation.selectedItems"
|
|
69
|
+
v-validate:calculation='{required: true }'>
|
|
70
|
+
<v-select :value.sync="gasmessage.f_calculation" :width="'60%'" :options='calculation'
|
|
71
|
+
placeholder='结算方式' close-on-select v-ref:calculation>
|
|
72
|
+
</v-select>
|
|
73
|
+
</div>
|
|
74
|
+
<div class="col-sm-4 form-group" v-if="gasmessage.f_meter_type[0].includes('物联网') && gasmessage.f_calculation.length
|
|
75
|
+
&& gasmessage.f_calculation[0] == '表端结算'">
|
|
76
|
+
<label for="f_calculation" class="font_normal_body">系统结算</label>
|
|
77
|
+
<v-select :value.sync="gasmessage.f_system_settlement" :width="'60%'"
|
|
78
|
+
v-model="gasmessage.f_system_settlement"
|
|
79
|
+
:search="false"
|
|
80
|
+
:options='isdecimal' placeholder='系统是否结算' close-on-select>
|
|
66
81
|
</v-select>
|
|
67
82
|
</div>
|
|
68
83
|
<div class="col-sm-4 form-group" v-if="gasmessage.f_meter_type[0].includes('物联网')">
|
|
69
84
|
<label for="f_hascard" class="font_normal_body">是否带卡</label>
|
|
70
85
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
86
|
+
<v-select :value.sync="gasmessage.f_hascard"
|
|
87
|
+
v-model="gasmessage.f_hascard"
|
|
88
|
+
:options='isdecimal' placeholder='是否带卡'
|
|
89
|
+
close-on-select style="width: 60%"></v-select>
|
|
75
90
|
|
|
76
91
|
</div>
|
|
77
|
-
<div class="col-sm-4 form-group"
|
|
92
|
+
<div class="col-sm-4 form-group"
|
|
93
|
+
v-if="gasmessage.f_meter_type[0].includes('物联网') && gasmessage.f_hascard[0]==='是'">
|
|
78
94
|
<label for="f_hascard" class="font_normal_body">共用次数</label>
|
|
79
95
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
96
|
+
<v-select :value.sync="gasmessage.f_share_times"
|
|
97
|
+
v-model="gasmessage.f_share_times"
|
|
98
|
+
:options='isdecimal' placeholder='是否共用次数'
|
|
99
|
+
close-on-select style="width: 60%"></v-select>
|
|
84
100
|
|
|
85
101
|
</div>
|
|
86
|
-
<div class="col-sm-4 form-group"
|
|
102
|
+
<div class="col-sm-4 form-group"
|
|
103
|
+
v-if="gasmessage.f_meter_type[0].includes('物联网') && gasmessage.f_hascard[0]==='是'">
|
|
87
104
|
<label for="f_hascard" class="font_normal_body">共用开户</label>
|
|
88
105
|
|
|
89
106
|
<v-select :value.sync="gasmessage.f_share_open"
|
|
@@ -96,14 +113,15 @@
|
|
|
96
113
|
<div class="col-sm-4 form-group" v-if="gasmessage.f_meter_type[0].includes('气量卡表')">
|
|
97
114
|
<label for="hasCard" class="font_normal_body">支持蓝牙</label>
|
|
98
115
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
116
|
+
<v-select :value.sync="gasmessage.f_support_bluetooth"
|
|
117
|
+
:value-single="true"
|
|
118
|
+
v-model="gasmessage.f_support_bluetooth"
|
|
119
|
+
:options='isdecimal' placeholder='是否支持蓝牙'
|
|
120
|
+
close-on-select style="width: 60%"></v-select>
|
|
104
121
|
|
|
105
122
|
</div>
|
|
106
|
-
<div class="col-sm-4 form-group"
|
|
123
|
+
<div class="col-sm-4 form-group"
|
|
124
|
+
v-if="gasmessage.f_meter_type[0].includes('卡表')||gasmessage.f_meter_type[0].includes('物联网表')">
|
|
107
125
|
<label for="hasCard" class="font_normal_body">是否累购</label>
|
|
108
126
|
<v-select :value.sync="gasmessage.f_support_purchase"
|
|
109
127
|
:value-single="true"
|
|
@@ -121,18 +139,20 @@
|
|
|
121
139
|
</div>
|
|
122
140
|
<div v-if="gasmessage.f_meter_type[0].includes('卡表') || gasmessage.f_hascard[0]==='是'" class="row">
|
|
123
141
|
<div class="col-sm-4 form-group" :class="[$v.f_cardnumber.required ? 'has-error' : 'has-success']">
|
|
124
|
-
<label for="f_card_password"
|
|
125
|
-
<input class="input_search" style="width: 60%" type="text" v-model="gasmessage.f_cardnumber"
|
|
142
|
+
<label for="f_card_password" class="font_normal_body"> 卡号 </label>
|
|
143
|
+
<input class="input_search" style="width: 60%" type="text" v-model="gasmessage.f_cardnumber"
|
|
144
|
+
v-validate:f_cardnumber='{required: true }'>
|
|
126
145
|
</div>
|
|
127
|
-
<div class="col-sm-4 form-group"
|
|
128
|
-
<label for="f_card_password"
|
|
129
|
-
<input class="input_search" style="width: 60%" type="text" v-model="gasmessage.f_card_password"
|
|
146
|
+
<div class="col-sm-4 form-group">
|
|
147
|
+
<label for="f_card_password" class="font_normal_body">卡 密 码</label>
|
|
148
|
+
<input class="input_search" style="width: 60%" type="text" v-model="gasmessage.f_card_password">
|
|
130
149
|
</div>
|
|
131
150
|
</div>
|
|
132
151
|
|
|
133
152
|
<div class="col-sm-4 form-group">
|
|
134
|
-
<label
|
|
135
|
-
<input class="input_search" placeholder="优先级" style="width:60%" type="text"
|
|
153
|
+
<label class="font_normal_body ">优 先 级</label>
|
|
154
|
+
<input class="input_search" placeholder="优先级" style="width:60%" type="text"
|
|
155
|
+
v-model="gasmessage.f_priority">
|
|
136
156
|
</div>
|
|
137
157
|
<div class="col-sm-4 form-group">
|
|
138
158
|
<label for="f_is_check" class="font_normal_body">是否校验</label>
|
|
@@ -156,8 +176,9 @@
|
|
|
156
176
|
close-on-select style="width: 60%"></v-select>
|
|
157
177
|
</div>
|
|
158
178
|
<div class="col-sm-4 form-group">
|
|
159
|
-
<label
|
|
160
|
-
<input class="input_search" placeholder="表号长度" style="width:60%" type="number"
|
|
179
|
+
<label class="font_normal_body ">表号长度</label>
|
|
180
|
+
<input class="input_search" placeholder="表号长度" style="width:60%" type="number"
|
|
181
|
+
v-model="gasmessage.f_meternumber_len">
|
|
161
182
|
</div>
|
|
162
183
|
<div class="col-sm-4 form-group" v-if="gasmessage.f_meter_type[0].includes('卡表')">
|
|
163
184
|
<label for="hasCard" class="font_normal_body">动 态 库<br/>到 期 日</label>
|
|
@@ -170,17 +191,24 @@
|
|
|
170
191
|
|
|
171
192
|
|
|
172
193
|
<div class="col-sm-12 form-group" style="height: auto !important;">
|
|
173
|
-
<label
|
|
174
|
-
<textarea class="input_textarea" rows="3" style="width:87%;margin-top:5px"
|
|
194
|
+
<label class="font_normal_body " style="margin-top:-20px">备  注</label>
|
|
195
|
+
<textarea class="input_textarea" rows="3" style="width:87%;margin-top:5px"
|
|
196
|
+
v-model="gasmessage.f_comments"></textarea>
|
|
175
197
|
</div>
|
|
176
198
|
</div>
|
|
177
199
|
<p class="bg-info text-center" style="padding: 8px;margin: 8px">气表型号</p>
|
|
178
|
-
<add-gas-model :data="gasmessage"
|
|
200
|
+
<add-gas-model :data="gasmessage" :modelvalid.sync="modelvalid" v-on:toggle="getArrParam"
|
|
201
|
+
v-ref:addgasmodel></add-gas-model>
|
|
179
202
|
<div style="text-align:right;height:auto;margin-top:30px;margin-right:50px;">
|
|
180
|
-
<button type="button" class="button_search " @click="confirm()" :disabled='!($v.valid && modelvalid) '
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
<button type="button" class="
|
|
203
|
+
<button type="button" class="button_search " @click="confirm()" :disabled='!($v.valid && modelvalid) '
|
|
204
|
+
v-if='isConfirm'>保存
|
|
205
|
+
</button>
|
|
206
|
+
<button type="button" class="button_search " @click="modify()" :disabled='!($v.valid && modelvalid)'
|
|
207
|
+
v-if='isModify'>修改
|
|
208
|
+
</button>
|
|
209
|
+
<button type="button" class="button_search " @click="delMeter()" v-if='data.counts===0 && isModify'>删除
|
|
210
|
+
</button>
|
|
211
|
+
<button type="button" class="button_clear" @click="cancel()">取消</button>
|
|
184
212
|
</div>
|
|
185
213
|
</form>
|
|
186
214
|
</validator>
|
|
@@ -191,9 +219,10 @@
|
|
|
191
219
|
import ViewOrg from './ViewOrg'
|
|
192
220
|
import AddGasModel from './AddGasModel'
|
|
193
221
|
import {HttpResetClass} from 'vue-client'
|
|
222
|
+
|
|
194
223
|
/**
|
|
195
|
-
*阶梯气价管理组件
|
|
196
|
-
*/
|
|
224
|
+
*阶梯气价管理组件
|
|
225
|
+
*/
|
|
197
226
|
export default {
|
|
198
227
|
components: {AddGasModel, ViewOrg},
|
|
199
228
|
title: '修改气表品牌',
|
|
@@ -217,6 +246,7 @@ export default {
|
|
|
217
246
|
f_support_bluetooth: '',
|
|
218
247
|
f_support_purchase: '',
|
|
219
248
|
f_issupport_feededuction: '',
|
|
249
|
+
f_system_settlement: '',
|
|
220
250
|
f_share_times: '',
|
|
221
251
|
f_share_open: '',
|
|
222
252
|
f_priority: 100,
|
|
@@ -239,7 +269,10 @@ export default {
|
|
|
239
269
|
isdecimal: [{label: '否', value: '否'}, {label: '是', value: '是'}],
|
|
240
270
|
decimalArray: [{label: 1, value: 1}, {label: 2, value: 2}, {label: 3, value: 3}, {label: 4, value: 4}],
|
|
241
271
|
collectiontypes: [{label: '按金额', value: '按金额'}, {label: '按气量', value: '按气量'}],
|
|
242
|
-
meterType: [{label: '金额卡表', value: '金额卡表'}, {label: '气量卡表', value: '气量卡表'}, {
|
|
272
|
+
meterType: [{label: '金额卡表', value: '金额卡表'}, {label: '气量卡表', value: '气量卡表'}, {
|
|
273
|
+
label: '机表',
|
|
274
|
+
value: '机表'
|
|
275
|
+
}, {label: '物联网表', value: '物联网表'}],
|
|
243
276
|
calculation: [{label: '表端结算', value: '表端结算'}, {label: '系统结算', value: '系统结算'}]
|
|
244
277
|
}
|
|
245
278
|
},
|
|
@@ -291,6 +324,7 @@ export default {
|
|
|
291
324
|
this.gasmessage.f_is_step = this.gasmessage.f_is_step ? [this.gasmessage.f_is_step] : []
|
|
292
325
|
this.gasmessage.f_collection_type = this.gasmessage.f_collection_type ? [this.gasmessage.f_collection_type] : ''
|
|
293
326
|
this.gasmessage.f_calculation = this.gasmessage.f_calculation ? [this.gasmessage.f_calculation] : ''
|
|
327
|
+
this.gasmessage.f_system_settlement = this.gasmessage.f_system_settlement ? [this.gasmessage.f_system_settlement] : ''
|
|
294
328
|
this.isConfirm = false
|
|
295
329
|
this.gasmessage.f_hascard = this.gasmessage.f_hascard ? [this.gasmessage.f_hascard] : []
|
|
296
330
|
this.gasmessage.f_share_times = this.gasmessage.f_share_times ? [this.gasmessage.f_share_times] : []
|
|
@@ -317,14 +351,15 @@ export default {
|
|
|
317
351
|
this.model.f_isdecimal = this.model.f_meter_type.includes('物联网') ? '是' : this.model.f_isdecimal[0]
|
|
318
352
|
this.model.f_collection_type = this.model.f_collection_type[0]
|
|
319
353
|
this.model.f_calculation = this.model.f_calculation[0]
|
|
354
|
+
this.model.f_system_settlement = this.model.f_system_settlement[0]
|
|
320
355
|
this.model.useOrg = this.useOrg
|
|
321
356
|
this.getArrParam()
|
|
322
357
|
this.$LogicService.addGasBrand(this.model, this.addGasModelArray)
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
358
|
+
.then(
|
|
359
|
+
(res) => {
|
|
360
|
+
this.$dispatch('success', '气表品牌增加', this.data, res)
|
|
361
|
+
}
|
|
362
|
+
).catch(
|
|
328
363
|
(error) => {
|
|
329
364
|
this.$dispatch('error', '气表品牌增加', this.data, error)
|
|
330
365
|
}
|
|
@@ -356,22 +391,23 @@ export default {
|
|
|
356
391
|
console.log('+++++++++++++', this.model)
|
|
357
392
|
if (this.model.f_meter_type !== '物联网表') {
|
|
358
393
|
// this.model.f_hascard ='否'
|
|
359
|
-
|
|
394
|
+
// this.model.f_share_times = '否'
|
|
360
395
|
}
|
|
361
396
|
if (this.model.f_meter_type !== '气量卡表') {
|
|
362
|
-
|
|
397
|
+
// this.model.f_support_bluetooth = '否'
|
|
363
398
|
}
|
|
364
399
|
this.model.f_isdecimal = this.model.f_isdecimal[0]
|
|
365
400
|
this.model.f_collection_type = this.model.f_collection_type[0]
|
|
366
401
|
this.model.f_calculation = this.model.f_calculation[0]
|
|
402
|
+
this.model.f_system_settlement = this.model.f_system_settlement[0]
|
|
367
403
|
this.$LogicService.modifyGasBrand(this.model, this.addGasModelArray)
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
404
|
+
.then(
|
|
405
|
+
(res) => {
|
|
406
|
+
let http = new HttpResetClass()
|
|
407
|
+
http.load('POST', 'rs/logic/delSaleInitData', {data: {}}, {resolveMsg: null, rejectMsg: null})
|
|
408
|
+
this.$dispatch('success', '气表品牌修改', this.data, res)
|
|
409
|
+
}
|
|
410
|
+
).catch(
|
|
375
411
|
(error) => {
|
|
376
412
|
this.$dispatch('error', '气表品牌修改', this.data, error)
|
|
377
413
|
}
|
|
@@ -159,10 +159,20 @@ export default {
|
|
|
159
159
|
meternumberf: this.row.f_meternumber,
|
|
160
160
|
contentData: {isOpen: oper ? 1 : 0}
|
|
161
161
|
}
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
162
|
+
let _this = this
|
|
163
|
+
await this.$resetpost('rs/sql/iot_searchInstruct', {data: datas},
|
|
164
|
+
{warnMsg: null, resolveMsg: null}).then(res => {
|
|
165
|
+
if (res.data.length === 0) {
|
|
166
|
+
_this.$resetpost('rs/logic/iot_saveInstruct', {data: datas},
|
|
167
|
+
{warnMsg: `确定要进行${msg}操作吗?`, resolveMsg: `${msg}成功`, rejectMsg: `${msg}失败`}).then(res => {
|
|
168
|
+
_this.valve = false
|
|
169
|
+
_this.operateReason = ''
|
|
170
|
+
})
|
|
171
|
+
} else {
|
|
172
|
+
this.$showAlert('存在开关阀待发送的指令,系统不生成同样的待发送指令', 'warning', 3000)
|
|
173
|
+
_this.valve = false
|
|
174
|
+
_this.operateReason = ''
|
|
175
|
+
}
|
|
166
176
|
})
|
|
167
177
|
await this.$dispatch('research')
|
|
168
178
|
},
|
|
@@ -231,6 +231,7 @@ let LogicService = {
|
|
|
231
231
|
f_isdecimal: model.f_isdecimal,
|
|
232
232
|
f_collection_type: model.f_collection_type,
|
|
233
233
|
f_calculation: model.f_calculation,
|
|
234
|
+
f_system_settlement: model.f_system_settlement,
|
|
234
235
|
f_comments: model.f_comments,
|
|
235
236
|
f_is_check: model.f_is_check,
|
|
236
237
|
f_is_step: model.f_is_step,
|
package/src/sale.js
CHANGED
|
@@ -1118,6 +1118,10 @@ export default function () {
|
|
|
1118
1118
|
Vue.component('batch-preloads', (resolve) => { require(['./components/revenue/batchPreloads/batchPreloads'], resolve) })
|
|
1119
1119
|
Vue.component('batch-preloads-list', (resolve) => { require(['./components/revenue/batchPreloads/batchPreloadsList'], resolve) })
|
|
1120
1120
|
Vue.component('batch-preloads-charge', (resolve) => { require(['./components/revenue/batchPreloads/batchPreloadsCharge'], resolve) })
|
|
1121
|
+
// 批量补扣费
|
|
1122
|
+
Vue.component('batch-deduction-manage', (resolve) => { require(['./components/revenue/batchDeduction/batchDeduction'], resolve) })
|
|
1123
|
+
Vue.component('batch-deduction-list', (resolve) => { require(['./components/revenue/batchDeduction/batchDeductionList'], resolve) })
|
|
1124
|
+
Vue.component('batch-deduction-oper', (resolve) => { require(['./components/revenue/batchDeduction/batchDeductionOper'], resolve) })
|
|
1121
1125
|
// 周口ncc推送日志查看
|
|
1122
1126
|
Vue.component('log-query', (resolve) => { require(['./components/zhoukou/LogRecordList'], resolve) })
|
|
1123
1127
|
// 周口ncc创建开发商档案
|