sale-client 4.3.21 → 4.3.22
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/fileHashes/fileHashes.lock +0 -0
- package/.gradle/8.10/checksums/checksums.lock +0 -0
- package/.gradle/8.10/executionHistory/executionHistory.bin +0 -0
- package/.gradle/8.10/executionHistory/executionHistory.lock +0 -0
- package/.gradle/8.10/fileChanges/last-build.bin +0 -0
- package/.gradle/8.10/fileHashes/fileHashes.bin +0 -0
- package/.gradle/8.10/fileHashes/fileHashes.lock +0 -0
- package/.gradle/8.10/gc.properties +0 -0
- package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/.gradle/buildOutputCleanup/cache.properties +1 -1
- package/.gradle/file-system.probe +0 -0
- package/build/dev-server.js +1 -1
- package/package.json +1 -1
- package/src/filiale/fugou/GasPriceUser.vue +533 -0
- package/src/filiale/fugou/sale.js +2 -0
- package/src/filiale/meihekou/common/userinfo_detail/UserInfoDetailManageNew.vue +4 -7
- package/src/filiale/meihekou/common/userinfo_detail/ic_detail/CardHandRecord.vue +308 -0
- package/src/filiale/meihekou/common/userinfo_detail/ic_detail/ChargeQueryUser.vue +592 -0
- package/src/filiale/meihekou/common/userinfo_detail/ic_detail/RecordQueryUser.vue +69 -22
- package/src/main.js +1 -1
- package/.gradle/6.7/fileHashes/fileHashes.lock +0 -0
- package/.gradle/checksums/checksums.lock +0 -0
- /package/.gradle/{6.7 → 5.2.1}/fileChanges/last-build.bin +0 -0
- /package/.gradle/{6.7 → 5.2.1}/gc.properties +0 -0
- /package/.gradle/{configuration-cache → 8.10/dependencies-accessors}/gc.properties +0 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
Binary file
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
#
|
|
1
|
+
#Wed Mar 18 10:18:57 CST 2026
|
|
2
2
|
gradle.version=5.2.1
|
|
Binary file
|
package/build/dev-server.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var path = require('path')
|
|
2
2
|
var checkVersion = require('./versionCheck.js')
|
|
3
3
|
checkVersion()
|
|
4
|
-
const [ serverRul, localUrl ] = ['http://
|
|
4
|
+
const [ serverRul, localUrl ] = ['http://192.168.50.67:31567/', 'http://192.168.50.67:31567/']
|
|
5
5
|
var merge = require('webpack-merge')
|
|
6
6
|
var baseConfig = require('./webpack.dev.conf')
|
|
7
7
|
var devConfig = {
|
package/package.json
CHANGED
|
@@ -0,0 +1,533 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="flex">
|
|
3
|
+
<criteria-paged :model="model" v-ref:paged>
|
|
4
|
+
<criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:criteria>
|
|
5
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
|
|
6
|
+
<div class="row">
|
|
7
|
+
<div class="form-group col-sm-3" >
|
|
8
|
+
<label class="font_normal_body">客户编号</label>
|
|
9
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_userinfo_code" placeholder='客户编号'
|
|
10
|
+
condition="f_userinfo_code = '{}'" @keyup.enter="search()">
|
|
11
|
+
</div>
|
|
12
|
+
<!-- <div class="form-group col-sm-3">-->
|
|
13
|
+
<!-- <label class="font_normal_body">客户状态</label>-->
|
|
14
|
+
<!-- <v-select :value.sync="model.f_user_state" v-model="model.f_user_state"-->
|
|
15
|
+
<!-- :options='$parent.$parent.userstates' placeholder='客户状态'-->
|
|
16
|
+
<!-- close-on-select condition="f_user_state='{}'"></v-select>-->
|
|
17
|
+
<!-- </div>-->
|
|
18
|
+
<div class="form-group col-sm-3" >
|
|
19
|
+
<label class="font_normal_body">表  号</label>
|
|
20
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_meternumber" placeholder='表号'
|
|
21
|
+
condition="f_meternumber = '{}'" @keyup.enter="search()">
|
|
22
|
+
</div>
|
|
23
|
+
<div class="form-group col-sm-4 button-range" >
|
|
24
|
+
<button class="button_search" style="margin-right: 10px" @click="$parent.$parent.importCondition()" v-el:cba>条件导入</button>
|
|
25
|
+
<button class="button_search" style="margin-right: 10px" @click="$parent.$parent.clearCondition()" v-el:cba>导入条件清除</button>
|
|
26
|
+
<button class="button_search" style="margin-right: 10px" @click="$parent.$parent.changeprice()" v-el:cba>批量调价</button>
|
|
27
|
+
<button class="button_search" style="margin-right: 10px" @click="search()" v-el:cba>查询</button>
|
|
28
|
+
<export-excel
|
|
29
|
+
:data="{condition: $parent.$parent.condition}"
|
|
30
|
+
:field="$parent.$parent.getfield"
|
|
31
|
+
sqlurl="api/af-revenue/logic/saleExport" sql-name="getGasUser" :template-name="$parent.$parent.pricename+'气价使用人'"
|
|
32
|
+
:choose-col="true"></export-excel>
|
|
33
|
+
<div style="float: right" class="button_spacing"
|
|
34
|
+
:class="{'button_shrink_top': $parent.$parent.criteriaShow2,'button_shrink_bottom': !$parent.$parent.criteriaShow2}"
|
|
35
|
+
@click="$parent.$parent.criteriaShow2 = !$parent.$parent.criteriaShow2"></div>
|
|
36
|
+
</div>
|
|
37
|
+
</div>
|
|
38
|
+
<div class="row" v-show="$parent.$parent.criteriaShow2">
|
|
39
|
+
<div class="form-group col-sm-3" >
|
|
40
|
+
<label class="font_normal_body">气表状态</label>
|
|
41
|
+
<v-select style="width:60%" :value.sync="model.f_table_state"
|
|
42
|
+
v-model="model.f_table_state"
|
|
43
|
+
:options='$parent.$parent.gasStates' placeholder='气表状态'
|
|
44
|
+
condition="f_table_state ='{}'"></v-select>
|
|
45
|
+
</div>
|
|
46
|
+
<div class="col-sm-3 form-group">
|
|
47
|
+
<label class="font_normal_body">客户类型</label>
|
|
48
|
+
<v-select :value.sync="model.f_user_type"
|
|
49
|
+
@change="$parent.$parent.userTypeChange1()"
|
|
50
|
+
:options='$parent.$parent.usertypes' placeholder='请选择' v-model="model.f_user_type"
|
|
51
|
+
condition="f_user_type = '{}'"
|
|
52
|
+
close-on-select></v-select>
|
|
53
|
+
</div>
|
|
54
|
+
<div class="col-sm-3 form-group">
|
|
55
|
+
<label class="font_normal_body">用气性质</label>
|
|
56
|
+
<v-select :value.sync="model.f_gasproperties1" v-model="model.f_gasproperties1"
|
|
57
|
+
:options='$parent.$parent.gasproperties1' placeholder='请选择'
|
|
58
|
+
condition="f_gasproperties = '{}'"
|
|
59
|
+
close-on-select></v-select>
|
|
60
|
+
</div>
|
|
61
|
+
<div class="col-sm-3 form-group">
|
|
62
|
+
<label class="font_normal_body">用气类别</label>
|
|
63
|
+
<v-select :value.sync="model.f_gongye_type" v-model='model.f_gongye_type'
|
|
64
|
+
:options='$parent.$parent.gongyetype' placeholder='用气类别'
|
|
65
|
+
condition="f_gongye_type = '{}'"
|
|
66
|
+
close-on-select
|
|
67
|
+
v-el:cc></v-select>
|
|
68
|
+
</div>
|
|
69
|
+
<div class="form-group col-sm-3">
|
|
70
|
+
<label class="font_normal_body">气表类型</label>
|
|
71
|
+
<v-select :value.sync="model.f_meter_classify" v-model="model.f_meter_classify"
|
|
72
|
+
:options='$parent.$parent.meters' placeholder='气表类型'
|
|
73
|
+
close-on-select
|
|
74
|
+
condition="f_meter_classify = '{}'"
|
|
75
|
+
style="width: 60%"
|
|
76
|
+
>
|
|
77
|
+
</v-select>
|
|
78
|
+
</div>
|
|
79
|
+
<div class="form-group col-sm-3">
|
|
80
|
+
<label class="font_normal_body">小区名称</label>
|
|
81
|
+
<v-select :value.sync="model.f_residential_area_id" v-model="model.f_residential_area_id"
|
|
82
|
+
:options='$parent.$parent.areaList' placeholder='小区名称'
|
|
83
|
+
close-on-select @select-search="$parent.$parent.getAreaList"
|
|
84
|
+
condition="f_residential_area_id = '{}'"
|
|
85
|
+
style="width: 60%"
|
|
86
|
+
>
|
|
87
|
+
</v-select>
|
|
88
|
+
</div>
|
|
89
|
+
<div class="form-group col-sm-3" >
|
|
90
|
+
<label class="font_normal_body">客户地址</label>
|
|
91
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_address" placeholder='客户地址'
|
|
92
|
+
condition="f_address like '%{}%'" @keyup.enter="search()">
|
|
93
|
+
</div>
|
|
94
|
+
</div>
|
|
95
|
+
</div>
|
|
96
|
+
</criteria>
|
|
97
|
+
<data-grid :model="model" class="table_sy" partial='list' v-ref:grid :optional="true">
|
|
98
|
+
<template partial='head'>
|
|
99
|
+
<th><nobr>客户编号</nobr></th>
|
|
100
|
+
<th><nobr>表号</nobr></th>
|
|
101
|
+
<th><nobr>气价名称</nobr></th>
|
|
102
|
+
<th><nobr>气价类型</nobr></th>
|
|
103
|
+
<th><nobr>客户类型</nobr></th>
|
|
104
|
+
<th><nobr>用气性质</nobr></th>
|
|
105
|
+
<th><nobr>客户名称</nobr></th>
|
|
106
|
+
<th><nobr>客户地址</nobr></th>
|
|
107
|
+
</template>
|
|
108
|
+
<template partial='body'>
|
|
109
|
+
<td style="text-align:center"><span @click="$parent.$parent.$parent.dealmsg(row)"><a><b>{{row.f_userinfo_code}}</b></a></span></td>
|
|
110
|
+
<td style="text-align:center">{{row.f_meternumber}}</td>
|
|
111
|
+
<td style="text-align:center">{{row.f_price_name}}</td>
|
|
112
|
+
<td style="text-align:center">{{row.f_price_type}}</td>
|
|
113
|
+
<td style="text-align:center">{{row.f_user_type}}</td>
|
|
114
|
+
<td style="text-align:center">{{row.f_gasproperties}}</td>
|
|
115
|
+
<td style="text-align:center">{{row.f_user_name}}</td>
|
|
116
|
+
<td style="text-align:center;white-space: nowrap;">{{row.f_address}}</td>
|
|
117
|
+
</template>
|
|
118
|
+
<template partial='foot'></template>
|
|
119
|
+
</data-grid>
|
|
120
|
+
</criteria-paged>
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
<modal :show.sync="show" width="50%" backdrop="false">
|
|
124
|
+
|
|
125
|
+
<header slot="modal-header" class="modal-header">
|
|
126
|
+
<h4 class="modal-title" style="text-align: center;">气价调整</h4>
|
|
127
|
+
</header>
|
|
128
|
+
<article slot="modal-body" class="modal-body">
|
|
129
|
+
<div class="panel panel-primary datapanel">
|
|
130
|
+
<form class="form-horizontal select-overspread">
|
|
131
|
+
<div class="form-group">
|
|
132
|
+
<div class="row bg-info text-center text-center" style="height:35px">
|
|
133
|
+
<div style="float: left">
|
|
134
|
+
<label class="font_normal_body">旧气价信息</label>
|
|
135
|
+
</div>
|
|
136
|
+
</div>
|
|
137
|
+
<div class="row" style="margin-top: 2%">
|
|
138
|
+
<div class="col-sm-3 flex-row ">
|
|
139
|
+
<label class="control-label">客户类型</label>
|
|
140
|
+
<p class="form-control-static">{{oldinfo.f_user_type}}</p>
|
|
141
|
+
</div>
|
|
142
|
+
<div class="col-sm-3 flex-row ">
|
|
143
|
+
<label class="control-label">用气性质</label>
|
|
144
|
+
<p class="form-control-static">{{oldinfo.f_gasproperties}}</p>
|
|
145
|
+
</div>
|
|
146
|
+
<div class="col-sm-3 flex-row ">
|
|
147
|
+
<label class="control-label">气价类型</label>
|
|
148
|
+
<p class="form-control-static">{{oldinfo.f_price_type}}</p>
|
|
149
|
+
</div>
|
|
150
|
+
<div class="col-sm-3 flex-row ">
|
|
151
|
+
<label class="control-label">气价名称</label>
|
|
152
|
+
<p class="form-control-static">{{oldinfo.f_price_name}}</p>
|
|
153
|
+
</div>
|
|
154
|
+
</div>
|
|
155
|
+
<div class="row bg-info text-center text-center" style="height:35px">
|
|
156
|
+
<div style="float: left">
|
|
157
|
+
<label class="font_normal_body">新气价信息</label>
|
|
158
|
+
</div>
|
|
159
|
+
</div>
|
|
160
|
+
<div class="row" style="margin-top: 2%">
|
|
161
|
+
<div class="col-sm-4 flex-row" >
|
|
162
|
+
<label class="control-label">用户类型</label>
|
|
163
|
+
<v-select :value.sync="newinfo.f_user_type"
|
|
164
|
+
:options='usertypes' placeholder='用户类型'
|
|
165
|
+
@change="userTypeChange()"
|
|
166
|
+
close-on-select></v-select>
|
|
167
|
+
</div>
|
|
168
|
+
<div class="col-sm-4 flex-row">
|
|
169
|
+
<label class="control-label">用气性质</label>
|
|
170
|
+
<v-select :value.sync="newinfo.f_gasproperties" v-model="newinfo.f_gasproperties"
|
|
171
|
+
:options='gasproperties' placeholder='用气性质'
|
|
172
|
+
close-on-select v-ref:gas></v-select>
|
|
173
|
+
</div>
|
|
174
|
+
<div class="col-sm-4 flex-row">
|
|
175
|
+
<label class="control-label">气价类型</label>
|
|
176
|
+
<v-select :value.sync="newinfo.pricetype" v-model="newinfo.pricetype"
|
|
177
|
+
placeholder='气价类型' :options="pricetypes"
|
|
178
|
+
close-on-select v-ref:type>
|
|
179
|
+
</v-select>
|
|
180
|
+
</div>
|
|
181
|
+
</div>
|
|
182
|
+
<div class="row" style="margin-top: 2%">
|
|
183
|
+
|
|
184
|
+
<div class="col-sm-4 flex-row" >
|
|
185
|
+
<label class="control-label">气价名称</label>
|
|
186
|
+
<v-select :value.sync="newinfo.pricename" v-model="newinfo.pricename"
|
|
187
|
+
placeholder='气价名称' :options="getPricenames()" @change="priceChange"
|
|
188
|
+
close-on-select :disabled='newinfo.pricetype.length === 0 ' v-ref:name></v-select>
|
|
189
|
+
<span class="col-sm-3" v-if="newinfo.pricetype.length === 1 && gasproperties.length === 0"
|
|
190
|
+
style="color:red;text-align:right">请确定用气性质已选择!!</span>
|
|
191
|
+
</div>
|
|
192
|
+
|
|
193
|
+
<div class="col-sm-4 flex-row">
|
|
194
|
+
<label class="control-label">气价备注</label>
|
|
195
|
+
<input type="text" class="input_search" style="width:60%" v-model="newinfo.f_price_comments" placeholder='气价备注' disabled>
|
|
196
|
+
</div>
|
|
197
|
+
|
|
198
|
+
<div class="col-sm-4 flex-row">
|
|
199
|
+
<label class="control-label">调价原因</label>
|
|
200
|
+
<v-select :value.sync="newinfo.f_comments" v-model="newinfo.f_comments"
|
|
201
|
+
placeholder='调价原因' :options="adjustpricereasons" :value-single="true"
|
|
202
|
+
close-on-select v-ref:type>
|
|
203
|
+
</v-select>
|
|
204
|
+
</div>
|
|
205
|
+
|
|
206
|
+
</div>
|
|
207
|
+
<div class="row" style="margin-top: 2%">
|
|
208
|
+
<div class="col-sm-12 flex-row" v-if="newinfo.f_comments==='其他原因'">
|
|
209
|
+
<label class="control-label">其他原因</label>
|
|
210
|
+
<input type="text" class="input_search" style="width:80%" v-model="newinfo.f_other_comments" placeholder='其他原因' >
|
|
211
|
+
</div>
|
|
212
|
+
</div>
|
|
213
|
+
</div>
|
|
214
|
+
</form>
|
|
215
|
+
</div>
|
|
216
|
+
|
|
217
|
+
<upload :blodid="blodid" :businessid="blodid" isremark="true" fusetype="批量调价" v-ref:fileupload></upload>
|
|
218
|
+
</article>
|
|
219
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
220
|
+
<button class="button_search" @click="modifyUser">确定</button>
|
|
221
|
+
<button type="button" class="button_clear" @click='close'>取消</button>
|
|
222
|
+
</footer>
|
|
223
|
+
|
|
224
|
+
</modal>
|
|
225
|
+
<modal :show.sync="importShow" width="500px" title="条件导入" v-ref:modal large backdrop="false">
|
|
226
|
+
<article slot="modal-body" class="modal-body">
|
|
227
|
+
<file-upload class="my-file-uploader" name="useraddressUploadFile" action="api/af-revenue/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
|
|
228
|
+
</article>
|
|
229
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
230
|
+
</footer>
|
|
231
|
+
</modal>
|
|
232
|
+
</div>
|
|
233
|
+
</template>
|
|
234
|
+
|
|
235
|
+
<script>
|
|
236
|
+
import {HttpResetClass, PagedList} from 'vue-client'
|
|
237
|
+
import axios from 'axios'
|
|
238
|
+
import Vue from 'vue'
|
|
239
|
+
|
|
240
|
+
let loadParamGem = async function (self) {
|
|
241
|
+
await self.$LoadParams.loadParam(self.priceorgid ? self.priceorgid : self.f_filialeid)
|
|
242
|
+
}
|
|
243
|
+
export default {
|
|
244
|
+
title: '气价使用人',
|
|
245
|
+
data () {
|
|
246
|
+
return {
|
|
247
|
+
model: new PagedList('api/af-revenue/sql/getGasUser', 20, {}),
|
|
248
|
+
condition: '',
|
|
249
|
+
criteriaShow2: false,
|
|
250
|
+
gasproperties1: [],
|
|
251
|
+
getfield: {},
|
|
252
|
+
show: false,
|
|
253
|
+
gasproperties: [],
|
|
254
|
+
f_filialeid: this.$login.f.orgid,
|
|
255
|
+
importShow: false,
|
|
256
|
+
parseCondition: '1=1',
|
|
257
|
+
newinfo: {
|
|
258
|
+
f_user_type: '',
|
|
259
|
+
f_gasproperties: '',
|
|
260
|
+
pricetype: '',
|
|
261
|
+
pricename: '',
|
|
262
|
+
f_other_comments: '',
|
|
263
|
+
f_comments: ''
|
|
264
|
+
},
|
|
265
|
+
oldinfo: {
|
|
266
|
+
f_user_type: '',
|
|
267
|
+
f_gasproperties: '',
|
|
268
|
+
f_price_type: '',
|
|
269
|
+
f_price_name: '',
|
|
270
|
+
f_price_id: '',
|
|
271
|
+
f_stairprice_id: ''
|
|
272
|
+
},
|
|
273
|
+
areaList: [],
|
|
274
|
+
gongyetype: this.$appdata.getParam('用气类别') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('用气类别')] : [],
|
|
275
|
+
usertypes: this.$appdata.getParam('用户类型') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')] : [],
|
|
276
|
+
pricetypes: this.$appdata.getParam('气价类型') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('气价类型')] : [],
|
|
277
|
+
meters: this.$appdata.getParam('气表类型') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('气表类型')] : [],
|
|
278
|
+
adjustpricereasons: this.$appdata.getParam('批量调价原因'),
|
|
279
|
+
config: {
|
|
280
|
+
excelHeaders: {
|
|
281
|
+
'f_price_name': '气价名称',
|
|
282
|
+
'f_userinfo_code': '客户编号',
|
|
283
|
+
'f_user_name': '客户姓名',
|
|
284
|
+
'f_address': '客户地址',
|
|
285
|
+
'f_orgname': '组织机构'
|
|
286
|
+
}
|
|
287
|
+
},
|
|
288
|
+
blodid: '临时id' + Date.now()
|
|
289
|
+
}
|
|
290
|
+
},
|
|
291
|
+
props: ['priceid', 'pricename', 'priceorgid', 'islowincome'],
|
|
292
|
+
ready () {
|
|
293
|
+
this.search()
|
|
294
|
+
this.getfield = this.config.excelHeaders
|
|
295
|
+
loadParamGem(this)
|
|
296
|
+
this.getAreaList()
|
|
297
|
+
},
|
|
298
|
+
methods: {
|
|
299
|
+
clearCondition () {
|
|
300
|
+
this.parseCondition = '1=1'
|
|
301
|
+
},
|
|
302
|
+
importCondition () {
|
|
303
|
+
this.importShow = true
|
|
304
|
+
},
|
|
305
|
+
getAreaList (searchText) {
|
|
306
|
+
let condition = ' 1 = 1 '
|
|
307
|
+
if (searchText) {
|
|
308
|
+
condition = ` f_residential_area like '%${searchText}%' `
|
|
309
|
+
}
|
|
310
|
+
let HttpReset = new HttpResetClass()
|
|
311
|
+
HttpReset.load('POST', 'api/af-revenue/sql/saleSingleTable?pageNo=1&pageSize=100', {
|
|
312
|
+
data: {
|
|
313
|
+
items: 'f_residential_area, id',
|
|
314
|
+
tablename: 't_area',
|
|
315
|
+
orderitem: 'id desc',
|
|
316
|
+
condition: condition
|
|
317
|
+
}
|
|
318
|
+
}, {resolveMsg: null, rejectMsg: '获取小区信息失败!'}).then((req) => {
|
|
319
|
+
let redata = []
|
|
320
|
+
req.data.forEach((row, n) => {
|
|
321
|
+
redata[n] = {
|
|
322
|
+
label: row.f_residential_area,
|
|
323
|
+
value: row.id
|
|
324
|
+
}
|
|
325
|
+
})
|
|
326
|
+
this.areaList = [{label: '全部', value: ''}, ...redata]
|
|
327
|
+
})
|
|
328
|
+
},
|
|
329
|
+
userTypeChange1 () {
|
|
330
|
+
this.gasproperties1 = []
|
|
331
|
+
if (this.$refs.paged.$refs.criteria.model !== null) {
|
|
332
|
+
this.$refs.paged.$refs.criteria.model.f_gasproperties1 = ''
|
|
333
|
+
this.gasproperties1 = this.$appdata.getParam(this.$refs.paged.$refs.criteria.model.f_user_type[0])
|
|
334
|
+
} else {
|
|
335
|
+
this.gasproperties1 = [{label: '全部', value: ''}]
|
|
336
|
+
}
|
|
337
|
+
},
|
|
338
|
+
close () {
|
|
339
|
+
this.show = false
|
|
340
|
+
Object.keys(this.newinfo).forEach(key => {
|
|
341
|
+
this.newinfo[key] = ''
|
|
342
|
+
})
|
|
343
|
+
},
|
|
344
|
+
async modifyUser () {
|
|
345
|
+
let rowdata = this.$refs.paged.$refs.grid.getRowData()
|
|
346
|
+
if (rowdata.length === 0) {
|
|
347
|
+
// 提示
|
|
348
|
+
let res = await this.$showMessage(`当前未选择用户,将会针对查询结果进行调价,共 ${this.model.count} 户,是否继续?`, ['confirm', 'cancel'])
|
|
349
|
+
if (res !== 'confirm') {
|
|
350
|
+
return
|
|
351
|
+
}
|
|
352
|
+
} else {
|
|
353
|
+
// 提示
|
|
354
|
+
let res = await this.$showMessage(`当前共选择用户 ${rowdata.length} 户,是否对 ${rowdata.length} 位用户进行调价?`, ['confirm', 'cancel'])
|
|
355
|
+
if (res !== 'confirm') {
|
|
356
|
+
return
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
let condition = rowdata.length === 0 ? this.condition : ''
|
|
360
|
+
let com = rowdata.map((row) => { return row.f_userfiles_id }).join(',')
|
|
361
|
+
let fileuploadid = this.$refs.fileupload.fileInfoData.map((row) => { return row.id }).join(',')
|
|
362
|
+
|
|
363
|
+
let param = {
|
|
364
|
+
// 新气价信息
|
|
365
|
+
f_user_type: this.newinfo.f_user_type[0],
|
|
366
|
+
f_gasproperties: this.newinfo.f_gasproperties[0],
|
|
367
|
+
f_price_type: this.newinfo.pricetype[0],
|
|
368
|
+
f_price_name: this.newinfo.pricename[0].f_price_name,
|
|
369
|
+
f_price_id: this.newinfo.pricename[0].f_price_id,
|
|
370
|
+
f_perform_date: this.newinfo.pricename[0].f_perform_date,
|
|
371
|
+
f_stairprice_id: this.newinfo.pricename[0].id,
|
|
372
|
+
// 修改原因
|
|
373
|
+
f_comments: this.newinfo.f_other_comments ? this.newinfo.f_other_comments : this.newinfo.f_comments,
|
|
374
|
+
// 操作人组织机构信息
|
|
375
|
+
f_operator: this.$login.f.name,
|
|
376
|
+
f_operatorid: this.$login.f.id,
|
|
377
|
+
f_orgid: this.$login.f.orgid,
|
|
378
|
+
f_orgname: this.$login.f.orgs,
|
|
379
|
+
f_depid: this.$login.f.depids,
|
|
380
|
+
f_depname: this.$login.f.deps,
|
|
381
|
+
// 修改条件
|
|
382
|
+
con: com,
|
|
383
|
+
condition: condition,
|
|
384
|
+
fileuploadid: fileuploadid
|
|
385
|
+
}
|
|
386
|
+
if (this.priceid) {
|
|
387
|
+
if (this.newinfo.pricename[0].f_price_id == this.model.rows[0].f_price_id) {
|
|
388
|
+
this.$showMessage('选择的气价和当前气价相同, 请重新选择')
|
|
389
|
+
return
|
|
390
|
+
}
|
|
391
|
+
// 旧气价信息
|
|
392
|
+
param.f_user_type_old = this.model.rows[0].f_user_type
|
|
393
|
+
param.f_gasproperties_old = this.model.rows[0].f_gasproperties
|
|
394
|
+
param.f_price_type_old = this.model.rows[0].f_price_type
|
|
395
|
+
param.f_price_name_old = this.model.rows[0].f_price_name
|
|
396
|
+
param.f_price_id_old = this.model.rows[0].f_price_id
|
|
397
|
+
param.f_stairprice_id_old = this.model.rows[0].f_stairprice_id
|
|
398
|
+
param.f_islow_income = this.islowincome
|
|
399
|
+
let res = await this.$resetpost('api/af-revenue/logic/pricechangeall', {data: param}, {resolveMsg: '更新成功', rejectMsg: '更新失败'})
|
|
400
|
+
this.$showMessage(`成功批量修改了${res.data}位用户的气价`)
|
|
401
|
+
} else {
|
|
402
|
+
param.oldinfo = this.param
|
|
403
|
+
let res = await this.$resetpost('api/af-revenue/logic/pricechangebatch', {data: param}, {resolveMsg: '更新成功', rejectMsg: '更新失败'})
|
|
404
|
+
this.$showMessage(`成功批量修改了${res.data}位用户的气价`)
|
|
405
|
+
}
|
|
406
|
+
this.criteriaShow = false
|
|
407
|
+
this.close()
|
|
408
|
+
this.search()
|
|
409
|
+
},
|
|
410
|
+
userTypeChange () {
|
|
411
|
+
this.gasproperties = []
|
|
412
|
+
if (this.newinfo.f_user_type && this.newinfo.f_user_type.length === 1) {
|
|
413
|
+
this.gasproperties = this.$appdata.getParam(this.newinfo.f_user_type[0])
|
|
414
|
+
}
|
|
415
|
+
},
|
|
416
|
+
search () {
|
|
417
|
+
this.$refs.paged.$refs.criteria.search()
|
|
418
|
+
},
|
|
419
|
+
changeprice () {
|
|
420
|
+
let rowdata = this.$refs.paged.$refs.grid.getRowData().length > 0 ? this.$refs.paged.$refs.grid.getRowData() : this.model.rows
|
|
421
|
+
if (this.priceid && this.model.rows.length > 0) {
|
|
422
|
+
this.oldinfo = {
|
|
423
|
+
f_user_type: this.model.rows[0].f_user_type,
|
|
424
|
+
f_gasproperties: this.model.rows[0].f_gasproperties,
|
|
425
|
+
f_price_type: this.model.rows[0].f_price_type,
|
|
426
|
+
f_price_name: this.model.rows[0].f_price_name,
|
|
427
|
+
f_price_id: this.model.rows[0].f_price_id,
|
|
428
|
+
f_stairprice_id: this.model.rows[0].f_stairprice_id
|
|
429
|
+
}
|
|
430
|
+
} else {
|
|
431
|
+
this.oldinfo = {
|
|
432
|
+
f_user_type: rowdata[0].f_user_type,
|
|
433
|
+
f_gasproperties: rowdata[0].f_gasproperties,
|
|
434
|
+
f_price_type: rowdata[0].f_price_type,
|
|
435
|
+
f_price_name: rowdata[0].f_price_name
|
|
436
|
+
}
|
|
437
|
+
for (var i = 1; i < rowdata.length; i++) {
|
|
438
|
+
if (rowdata[i].f_user_type !== rowdata[i - 1].f_user_type) {
|
|
439
|
+
this.oldinfo.f_user_type = ''
|
|
440
|
+
}
|
|
441
|
+
if (rowdata[i].f_gasproperties !== rowdata[i - 1].f_gasproperties) {
|
|
442
|
+
this.oldinfo.f_gasproperties = ''
|
|
443
|
+
}
|
|
444
|
+
if (rowdata[i].f_price_type !== rowdata[i - 1].f_price_type) {
|
|
445
|
+
this.oldinfo.f_price_type = ''
|
|
446
|
+
}
|
|
447
|
+
if (rowdata[i].f_price_name != rowdata[i - 1].f_price_name) {
|
|
448
|
+
this.oldinfo.f_price_name = ''
|
|
449
|
+
}
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
this.show = true
|
|
453
|
+
},
|
|
454
|
+
selfSearch (args) {
|
|
455
|
+
this.$refs.paged.$refs.grid.selectInit()
|
|
456
|
+
if (this.priceid) {
|
|
457
|
+
args.condition = `${args.condition} and f_price_id = '${this.priceid}'`
|
|
458
|
+
} else {
|
|
459
|
+
args.condition = `${args.condition} and f_orgid = '${this.$login.f.orgid}'`
|
|
460
|
+
}
|
|
461
|
+
if (this.parseCondition) {
|
|
462
|
+
args.condition = `${args.condition} and ${this.parseCondition}`
|
|
463
|
+
}
|
|
464
|
+
this.condition = args.condition
|
|
465
|
+
this.model.search(args.condition, args.model)
|
|
466
|
+
},
|
|
467
|
+
dealmsg (val) {
|
|
468
|
+
this.$parent.f_userinfo_id = val.f_userinfo_id
|
|
469
|
+
this.$parent.listpage = false
|
|
470
|
+
},
|
|
471
|
+
getPricenames () {
|
|
472
|
+
console.log('气价。,。。', this.newinfo.pricetype, this.newinfo.f_user_type, this.newinfo.f_gasproperties)
|
|
473
|
+
let rs = []
|
|
474
|
+
if (this.newinfo.f_user_type.length === 1 && this.newinfo.f_gasproperties.length === 1 && this.newinfo.pricetype.length === 1) {
|
|
475
|
+
let params = {
|
|
476
|
+
f_user_type: this.newinfo.f_user_type[0],
|
|
477
|
+
f_gasproperties: this.newinfo.f_gasproperties[0],
|
|
478
|
+
f_price_type: this.newinfo.pricetype[0]
|
|
479
|
+
}
|
|
480
|
+
rs = this.$GetSaleParam.getPriceAll(params)
|
|
481
|
+
}
|
|
482
|
+
if (rs.length === 0) {
|
|
483
|
+
this.newinfo.pricename = ''
|
|
484
|
+
}
|
|
485
|
+
return rs
|
|
486
|
+
},
|
|
487
|
+
priceChange (val) {
|
|
488
|
+
if (val && val.length > 0) {
|
|
489
|
+
// 展示气价备注
|
|
490
|
+
this.$set('newinfo.f_price_comments', val[0].f_comments ? val[0].f_comments : '无')
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
},
|
|
494
|
+
watch: {
|
|
495
|
+
'priceid' () {
|
|
496
|
+
this.search()
|
|
497
|
+
},
|
|
498
|
+
'priceorgid' () {
|
|
499
|
+
this.$LoadParams.loadParam(this.priceorgid ? this.priceorgid : this.f_filialeid)
|
|
500
|
+
}
|
|
501
|
+
},
|
|
502
|
+
events: {
|
|
503
|
+
'onFileUpload': function (file, res) {
|
|
504
|
+
this.iswork = true
|
|
505
|
+
// 当前上传的是批量导入的档案
|
|
506
|
+
let param = {
|
|
507
|
+
filepath: res.f_realpath,
|
|
508
|
+
f_operator: this.$login.f.name,
|
|
509
|
+
f_operatorid: this.$login.f.id,
|
|
510
|
+
f_orgid: this.$login.f.orgid,
|
|
511
|
+
f_orgname: this.$login.f.orgs,
|
|
512
|
+
f_depid: this.$login.f.depids,
|
|
513
|
+
f_depname: this.$login.f.deps
|
|
514
|
+
}
|
|
515
|
+
axios.post('api/af-revenue/logic/conditionParse',
|
|
516
|
+
{data: param}, {timeout: 10 * 60 * 1000, headers: {token: Vue.$login.jwt, Authorization: 'Bearer ' + Vue.$login.jwtNew}}).then(res => {
|
|
517
|
+
this.parseCondition = res.data.data.value
|
|
518
|
+
this.$refs.file.$el.querySelector('input').value = ''
|
|
519
|
+
this.importShow = false
|
|
520
|
+
this.search()
|
|
521
|
+
})
|
|
522
|
+
}
|
|
523
|
+
},
|
|
524
|
+
computed: {
|
|
525
|
+
userstates () {
|
|
526
|
+
return [{label: '全部', value: ''}, {label: '销户', value: '销户'}, {label: '停用', value: '停用'}, ...this.$appdata.getParam('客户状态')]
|
|
527
|
+
},
|
|
528
|
+
gasStates () {
|
|
529
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('气表状态')]
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
}
|
|
533
|
+
</script>
|
|
@@ -94,4 +94,6 @@ export default function () {
|
|
|
94
94
|
Vue.component('charge-modal', (resolve) => { require(['./ChargeModal'], resolve) })
|
|
95
95
|
// 物联网表收费
|
|
96
96
|
Vue.component('iot-meter-center', (resolve) => { require(['./IOTMeterCenter'], resolve) })
|
|
97
|
+
// 使用该气价的用户信息
|
|
98
|
+
Vue.component('gasprice-user', (resolve) => { require(['./GasPriceUser'], resolve) })
|
|
97
99
|
}
|
|
@@ -6,11 +6,8 @@
|
|
|
6
6
|
<saletab header="流水查询" v-if="permission('流水查询')">
|
|
7
7
|
<record-query-user :row="row" v-if="show == '流水查询'"></record-query-user>
|
|
8
8
|
</saletab>
|
|
9
|
-
<saletab header="机表流水查询" v-if="permission('机表流水查询')&&row.f_meter_type.includes('机表')">
|
|
10
|
-
<machine-record-query :row="row" v-if="show == '机表流水查询'" @deal-msg="dealMsg"></machine-record-query>
|
|
11
|
-
</saletab>
|
|
12
9
|
<saletab header="收费查询" v-if="permission('收费查询')">
|
|
13
|
-
<charge-query-
|
|
10
|
+
<charge-query-users :row="row" v-if="show == '收费查询'" @deal-msg="dealMsg"></charge-query-users>
|
|
14
11
|
</saletab>
|
|
15
12
|
<saletab header="累购查询" v-if="permission('累购查询')">
|
|
16
13
|
<Repurchase :row="row" v-if="show == '累购查询'" @deal-msg="dealMsg"></Repurchase>
|
|
@@ -75,14 +72,14 @@
|
|
|
75
72
|
import {HttpResetClass} from 'vue-client'
|
|
76
73
|
// 导入IC卡相关查询界面
|
|
77
74
|
import ChangeMeterQueryUser from '../../../../components/common/userinfo_detail/ic_detail/ChangeMeterQueryUser'
|
|
78
|
-
import
|
|
75
|
+
import ChargeQueryUsers from './ic_detail/ChargeQueryUser'
|
|
79
76
|
import ChargeRecordQueryUser from '../../../../components/common/userinfo_detail/ic_detail/ChargeRecordQuery'
|
|
80
77
|
import FillCardQueryUser from '../../../../components/common/userinfo_detail/ic_detail/FillCardQueryUser'
|
|
81
78
|
import HandQueryUser from './ic_detail/HandQueryUser'
|
|
82
79
|
import OtherChargeQueryUser from '../../../../components/common/userinfo_detail/ic_detail/OtherChargeQueryUser'
|
|
83
80
|
import RecordQueryUser from './ic_detail/RecordQueryUser'
|
|
84
81
|
import TransferQueryUser from '../../../../components/common/userinfo_detail/ic_detail/TransferQueryUser'
|
|
85
|
-
import CardHandRecord from '
|
|
82
|
+
import CardHandRecord from './ic_detail/CardHandRecord'
|
|
86
83
|
import AutomaticPurse from '../../../../components/common/userinfo_detail/ic_detail/AutomaticPurse'
|
|
87
84
|
import Repurchase from '../../../../components/common/userinfo_detail/ic_detail/Repurchase'
|
|
88
85
|
import MachineRecordQuery from './ic_detail/MachineRecordQuery'
|
|
@@ -104,7 +101,7 @@ export default {
|
|
|
104
101
|
AutomaticPurse,
|
|
105
102
|
Repurchase,
|
|
106
103
|
ChangeMeterQueryUser,
|
|
107
|
-
|
|
104
|
+
ChargeQueryUsers,
|
|
108
105
|
ChargeRecordQueryUser,
|
|
109
106
|
FillCardQueryUser,
|
|
110
107
|
HandQueryUser,
|