sale-client 4.2.122 → 4.2.123
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 -5
- package/package.json +1 -1
- package/src/filiale/xinkang/ChargeList.vue +978 -0
- package/src/filiale/xinkang/sale.js +2 -0
- package/src/main.js +1 -1
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://139.9.204.64:31467/', 'http://139.9.204.64:31467/']
|
|
5
5
|
var merge = require('webpack-merge')
|
|
6
6
|
var baseConfig = require('./webpack.dev.conf')
|
|
7
7
|
var devConfig = {
|
|
@@ -51,10 +51,10 @@ var devConfig = {
|
|
|
51
51
|
target: 'http://localhost:8080'
|
|
52
52
|
},
|
|
53
53
|
'/api/af-revenue': {
|
|
54
|
-
pathRewrite: {
|
|
55
|
-
|
|
56
|
-
},
|
|
57
|
-
target:
|
|
54
|
+
// pathRewrite: {
|
|
55
|
+
// '/api/af-revenue': '/af-revenue'
|
|
56
|
+
// },
|
|
57
|
+
target: serverRul
|
|
58
58
|
},
|
|
59
59
|
'/api': {
|
|
60
60
|
target: serverRul
|
package/package.json
CHANGED
|
@@ -0,0 +1,978 @@
|
|
|
1
|
+
<template >
|
|
2
|
+
<div @keyup.enter="search">
|
|
3
|
+
<criteria-paged :model="model" v-ref:paged :pager="isPager">
|
|
4
|
+
<criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
|
|
5
|
+
<div novalidate class="form-horizontal select-overspread container-fluid auto" partial title="该区域包含权限:读卡限定、读卡2、综合收费导出权限">
|
|
6
|
+
<card-info-modal :show.sync="$parent.$parent.cardModal_show" :cardinfo="$parent.$parent.cardInfo"
|
|
7
|
+
v-ref:cardinfo></card-info-modal>
|
|
8
|
+
<div class="auto" v-if="$parent.$parent.$parent.sustainMoney != null">
|
|
9
|
+
<h3 style="margin-top: 10px;margin-bottom: 0px">当前连续收款金额: <label class="b" style="color: #a94442">{{$parent.$parent.$parent.sustainMoney}}</label></h3>
|
|
10
|
+
</div>
|
|
11
|
+
<div v-show="!$parent.$parent.authArr.includes('读卡限定')">
|
|
12
|
+
<div class="form-group col-sm-3" >
|
|
13
|
+
<label class="font_normal_body">客户编号</label>
|
|
14
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_userinfo_code" placeholder='客户编号'
|
|
15
|
+
condition="f_userinfo_code = '{}'" @keyup.enter="$parent.$parent.clean()">
|
|
16
|
+
</div>
|
|
17
|
+
<div class="form-group col-sm-3">
|
|
18
|
+
<label class="font_normal_body">客户名称</label>
|
|
19
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_user_name" placeholder='客户名称'
|
|
20
|
+
@keyup.enter="$parent.$parent.clean()" condition="f_user_name like '%{}%'">
|
|
21
|
+
</div>
|
|
22
|
+
<!--<div class="row" >-->
|
|
23
|
+
<div v-show="$parent.$parent.criteriaShow">
|
|
24
|
+
<!--<div class="form-group col-sm-4" v-if="$parent.$parent.clientWidth<1600">-->
|
|
25
|
+
<!--<label class="font_normal_body">客户名称</label>-->
|
|
26
|
+
<!--<input type="text" class="input_search" style="width:60%" v-model="model.f_user_name" placeholder='客户名称'-->
|
|
27
|
+
<!--@keyup.enter="search(), $parent.$parent.clean()" condition="f_user_name = '{}'">-->
|
|
28
|
+
<!--</div>-->
|
|
29
|
+
<div class="form-group col-sm-3">
|
|
30
|
+
<label class="font_normal_body">旧客户号</label>
|
|
31
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_olduserinfo_code" placeholder='客户编号'
|
|
32
|
+
condition="f_olduserinfo_code = '{}'">
|
|
33
|
+
</div>
|
|
34
|
+
|
|
35
|
+
<div class="form-group col-sm-3">
|
|
36
|
+
<label class="font_normal_body">电  话</label>
|
|
37
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_user_phone" placeholder='电话'
|
|
38
|
+
condition="f_user_phone like '%{}%'">
|
|
39
|
+
</div>
|
|
40
|
+
<div class="form-group col-sm-3">
|
|
41
|
+
<label class="font_normal_body">客户地址</label>
|
|
42
|
+
<input type="text" class="input_search" style="width:60%" style="width:60%" v-model="model.f_address" placeholder='客户地址'
|
|
43
|
+
condition="address.f_address like '%{}%'">
|
|
44
|
+
</div>
|
|
45
|
+
<div class="form-group col-sm-3">
|
|
46
|
+
<label class="font_normal_body">表  号</label>
|
|
47
|
+
<input type="text" class="input_search" style="width:60%" style="width:60%" v-model="model.f_meternumber" placeholder='表号'
|
|
48
|
+
condition="u.f_meternumber like '%{}%'">
|
|
49
|
+
</div>
|
|
50
|
+
|
|
51
|
+
<!--<div class="form-group col-sm-4">-->
|
|
52
|
+
<!--<label class="font_normal_body">档案状态</label>-->
|
|
53
|
+
<!--<v-select v-model="model.f_file_state"-->
|
|
54
|
+
<!--placeholder='档案状态'-->
|
|
55
|
+
<!--:value.sync="model.f_file_state"-->
|
|
56
|
+
<!--:options='$parent.$parent.fileStates'-->
|
|
57
|
+
<!--condition="u.f_table_state = '{}'"-->
|
|
58
|
+
<!--style="width: 60%"-->
|
|
59
|
+
<!--close-on-select></v-select>-->
|
|
60
|
+
<!--</div>-->
|
|
61
|
+
|
|
62
|
+
<div class="form-group col-sm-3">
|
|
63
|
+
<label class="font_normal_body">气表状态</label>
|
|
64
|
+
<v-select id="f_paytype"
|
|
65
|
+
v-model="model.f_table_state"
|
|
66
|
+
placeholder='气表状态'
|
|
67
|
+
:value.sync="model.f_table_state"
|
|
68
|
+
:options='$parent.$parent.tableStates'
|
|
69
|
+
condition="f_table_state = '{}'"
|
|
70
|
+
style="width: 60%"
|
|
71
|
+
close-on-select></v-select>
|
|
72
|
+
</div>
|
|
73
|
+
<div class="form-group col-sm-3">
|
|
74
|
+
<label class="font_normal_body">气表品牌</label>
|
|
75
|
+
<v-select id="f_meter_brand"
|
|
76
|
+
v-model="model.f_meter_brand"
|
|
77
|
+
placeholder='气表品牌'
|
|
78
|
+
:value.sync="model.f_meter_brand"
|
|
79
|
+
:options='$parent.$parent.meterbrand'
|
|
80
|
+
condition="f_meter_brand = '{}'"
|
|
81
|
+
close-on-select style="width: 60%"></v-select>
|
|
82
|
+
</div>
|
|
83
|
+
<div class="form-group col-sm-3">
|
|
84
|
+
<label class="font_normal_body">用气性质</label>
|
|
85
|
+
<v-select v-model="model.f_gasproperties"
|
|
86
|
+
placeholder='用气性质'
|
|
87
|
+
:value.sync="model.f_gasproperties"
|
|
88
|
+
:options='$parent.$parent.gasproperties'
|
|
89
|
+
condition="u.f_gasproperties = '{}'"
|
|
90
|
+
close-on-select style="width: 60%"></v-select>
|
|
91
|
+
</div>
|
|
92
|
+
<div class="form-group col-sm-3">
|
|
93
|
+
<label class="font_normal_body">客户等级</label>
|
|
94
|
+
<v-select v-model="model.f_user_level"
|
|
95
|
+
placeholder='客户等级'
|
|
96
|
+
:value.sync="model.f_user_level"
|
|
97
|
+
:options='$parent.$parent.userlevel'
|
|
98
|
+
condition="i.f_user_level = '{}'"
|
|
99
|
+
close-on-select style="width: 60%"></v-select>
|
|
100
|
+
</div>
|
|
101
|
+
<div class="form-group col-sm-3" >
|
|
102
|
+
<label class="font_normal_body">组织机构</label>
|
|
103
|
+
<res-select :initresid='$parent.$parent.curorgid'
|
|
104
|
+
@res-select="$parent.$parent.getorg"
|
|
105
|
+
class="select select_list"
|
|
106
|
+
restype='organization'
|
|
107
|
+
style="width: 60%">
|
|
108
|
+
</res-select>
|
|
109
|
+
</div>
|
|
110
|
+
<div class="form-group col-sm-3">
|
|
111
|
+
<label class="font_normal_body">证件号</label>
|
|
112
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_idnumber" placeholder='证件号'
|
|
113
|
+
condition="f_idnumber like '%{}%'">
|
|
114
|
+
</div>
|
|
115
|
+
<div class="form-group col-sm-3">
|
|
116
|
+
<label class="font_normal_body">卡  号</label>
|
|
117
|
+
<input type="text" class="input_search" style="width:60%" v-model="model.f_card_id" placeholder='卡号'
|
|
118
|
+
condition="f_card_id like '%{}%'">
|
|
119
|
+
</div>
|
|
120
|
+
<div class="form-group col-sm-3">
|
|
121
|
+
<label class="font_normal_body">使用类型</label>
|
|
122
|
+
<v-select v-model="model.f_usetype"
|
|
123
|
+
placeholder='使用类型'
|
|
124
|
+
:value.sync="model.f_usetype"
|
|
125
|
+
:options='$parent.$parent.usetype'
|
|
126
|
+
condition="u.f_usetype = '{}'"
|
|
127
|
+
close-on-select style="width: 60%"></v-select>
|
|
128
|
+
</div>
|
|
129
|
+
<div class="form-group col-sm-3">
|
|
130
|
+
<label class="font_normal_body">用户状态</label>
|
|
131
|
+
<v-select v-model="model.f_user_state"
|
|
132
|
+
placeholder='用户状态'
|
|
133
|
+
:value.sync="model.f_user_state"
|
|
134
|
+
:options='$parent.$parent.userState'
|
|
135
|
+
condition="f_user_state = '{}'"
|
|
136
|
+
close-on-select style="width: 60%"></v-select>
|
|
137
|
+
</div>
|
|
138
|
+
</div>
|
|
139
|
+
</div>
|
|
140
|
+
<div class="form-group col-sm-6" style="float:right;white-space: nowrap;width: auto" >
|
|
141
|
+
<button class="button_clear" v-if="$parent.$parent.authArr.includes('连续收费') && $parent.$parent.$parent.sustainMoney == null" @click="$parent.$parent.startContinuousCharg()">启动连续收费</button>
|
|
142
|
+
<button class="button_clear" v-if="$parent.$parent.authArr.includes('连续收费') && $parent.$parent.$parent.sustainMoney" @click="$parent.$parent.closeContinuousCharg()">关闭连续收费</button>
|
|
143
|
+
<read-card :is-single.sync="$parent.$parent.isSingleUser" @read-info="$parent.$parent.cardBtn" v-if="!$parent.$parent.noRead" v-ref:readcard></read-card>
|
|
144
|
+
<button class="button_search" @click="$parent.$parent.testCard()" v-el:cx>测卡</button>
|
|
145
|
+
<button class="button_search" v-show="!$parent.$parent.authArr.includes('读卡限定')" @click="search(), $parent.$parent.clean()" v-el:cx>查询</button>
|
|
146
|
+
<button class="button_clear" v-show="!$parent.$parent.authArr.includes('读卡限定')" @click="$parent.$parent.clear()">清空</button>
|
|
147
|
+
<button class="button_clear" v-if="$parent.$parent.authArr.includes('读卡2')" @click="$parent.$parent.readCardByFactory()">读卡2</button>
|
|
148
|
+
<button class="button_clear" v-if="$parent.$parent.authArr.includes('磁条卡')" @click="$parent.$parent.readCiTiaoCard()">读磁条卡</button>
|
|
149
|
+
<export-excel v-if="$parent.$parent.authArr.includes('收费综合导出权限')"
|
|
150
|
+
:data="{condition: $parent.$parent.excelCondition}"
|
|
151
|
+
:field="$parent.$parent.fields"
|
|
152
|
+
sqlurl="api/af-revenue/logic/saleExport" sql-name="sale_getUser"
|
|
153
|
+
template-name='收费信息导出'
|
|
154
|
+
:choose-col="true">
|
|
155
|
+
</export-excel>
|
|
156
|
+
</div>
|
|
157
|
+
</div>
|
|
158
|
+
</criteria>
|
|
159
|
+
<data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid v-if="!$parent.row" >
|
|
160
|
+
<template partial='head' >
|
|
161
|
+
<tr>
|
|
162
|
+
<th style="white-space: nowrap;" >序号</th>
|
|
163
|
+
<!--<th>-->
|
|
164
|
+
<!--<data-order field="f_userinfo_code" name="客户编号"-->
|
|
165
|
+
<!--:order.sync="$parent.$parent.$parent.orderFields.f_userinfo_code"></data-order>-->
|
|
166
|
+
<!--</th>-->
|
|
167
|
+
<th style="white-space: nowrap;" >客户编号</th>
|
|
168
|
+
<th style="white-space: nowrap;" >客户基本信息</th>
|
|
169
|
+
<th style="white-space: nowrap;" >表具信息</th>
|
|
170
|
+
<th style="white-space: nowrap;" >分类信息</th>
|
|
171
|
+
|
|
172
|
+
</tr>
|
|
173
|
+
</template>
|
|
174
|
+
<template partial='body'>
|
|
175
|
+
<td :class="{'bg-danger' : row.f_table_state === '停用' }" style="text-align: center;">{{$index + 1}}</td>
|
|
176
|
+
<td :class="{'bg-danger' : row.f_table_state === '停用' }"><nobr>
|
|
177
|
+
{{row.f_userinfo_code}}
|
|
178
|
+
</nobr> </td>
|
|
179
|
+
<td style="white-space: nowrap;" :class="{'bg-danger' : row.f_table_state === '停用' || row.f_sellexp == '1'}">
|
|
180
|
+
<span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_user_name}} {{row.f_user_phone}} {{row.f_address}}</a></span>
|
|
181
|
+
</td>
|
|
182
|
+
<td style="white-space: nowrap;" :class="{'bg-danger' : row.f_table_state === '停用' }">{{row.f_user_id}} {{row.f_gasproperties}} {{row.f_meter_brand}}
|
|
183
|
+
{{row.f_meter_style}} {{row.f_price_type}} {{row.f_price_name}} {{row.f_table_state}}
|
|
184
|
+
</td>
|
|
185
|
+
<td style="white-space: nowrap;text-align: center;" :class="{'bg-danger' : row.f_table_state === '停用' }">{{row.f_meter_type}} ({{ row.f_whether_hairpin }})
|
|
186
|
+
</td>
|
|
187
|
+
|
|
188
|
+
</template>
|
|
189
|
+
</data-grid>
|
|
190
|
+
<!--<meter-charge-record-query partial='list' v-if="$parent.row" :searchdata="$parent.row"></meter-charge-record-query>-->
|
|
191
|
+
<!--<data-grid :model="recordModel" class="list_area table_sy" partial='list' v-if="$parent.row" v-ref:grid >-->
|
|
192
|
+
<!--<template partial='head'>-->
|
|
193
|
+
<!--<tr>-->
|
|
194
|
+
|
|
195
|
+
<!--<th><nobr>金额</nobr></th>-->
|
|
196
|
+
<!--<th><nobr>气量</nobr></th>-->
|
|
197
|
+
<!--<th><nobr>操作类型</nobr></th>-->
|
|
198
|
+
<!--<th><nobr>操作员 </nobr></th>-->
|
|
199
|
+
<!--<th><nobr>操作时间 </nobr></th>-->
|
|
200
|
+
<!--<th><nobr>备注</nobr></th>-->
|
|
201
|
+
<!--</tr>-->
|
|
202
|
+
<!--</template>-->
|
|
203
|
+
<!--<template partial='body' >-->
|
|
204
|
+
<!--<tr >-->
|
|
205
|
+
<!--<td style="text-align:center">{{row.fee}}</td>-->
|
|
206
|
+
<!--<td style="text-align:center">{{row.gas}}</td>-->
|
|
207
|
+
<!--<td style="text-align:center">{{row.type}}</td>-->
|
|
208
|
+
<!--<td style="text-align:center">{{row.f_operator}}</td>-->
|
|
209
|
+
<!--<td style="text-align:center">{{row.f_operate_date}}</td>-->
|
|
210
|
+
<!--<td style="text-align:center">{{row.note}}</td>-->
|
|
211
|
+
<!--</tr>-->
|
|
212
|
+
<!--</template>-->
|
|
213
|
+
<!--</data-grid>-->
|
|
214
|
+
</criteria-paged>
|
|
215
|
+
</div>
|
|
216
|
+
<div class="basic-main flex" :model="model" v-if="row" style="height: 250px;background:#E6E6FA;">
|
|
217
|
+
<meter-charge-record-query :searchdata="row" @dblclick="recordClick()"></meter-charge-record-query>
|
|
218
|
+
</div>
|
|
219
|
+
|
|
220
|
+
<modal :show.sync="showCardInfo" v-ref:modal backdrop="false">
|
|
221
|
+
<header slot="modal-header" class="modal-header">
|
|
222
|
+
<h4 class="modal-title">卡上信息</h4>
|
|
223
|
+
</header>
|
|
224
|
+
<article slot="modal-body" class="modal-body">
|
|
225
|
+
<form class="form-horizontal">
|
|
226
|
+
<div class="form-group">
|
|
227
|
+
<label class="col-sm-2 control-label">卡  号</label>
|
|
228
|
+
<div class="col-sm-4">
|
|
229
|
+
<p class="form-control-static">{{cardInfo.CardID}}</p>
|
|
230
|
+
</div>
|
|
231
|
+
|
|
232
|
+
<label class="col-sm-2 control-label">卡上次数</label>
|
|
233
|
+
<div class="col-sm-4">
|
|
234
|
+
<p class="form-control-static">{{cardInfo.Times}}</p>
|
|
235
|
+
</div>
|
|
236
|
+
</div>
|
|
237
|
+
<div class="form-group" v-if="this.model.rows.length==1">
|
|
238
|
+
<label class="col-sm-2 control-label">客户名称</label>
|
|
239
|
+
<div class="col-sm-4">
|
|
240
|
+
<p class="form-control-static">{{this.model.rows[0].f_user_name}}</p>
|
|
241
|
+
</div>
|
|
242
|
+
|
|
243
|
+
<label class="col-sm-2 control-label">客户地址</label>
|
|
244
|
+
<div class="col-sm-4">
|
|
245
|
+
<p class="form-control-static">{{this.model.rows[0].f_address}}</p>
|
|
246
|
+
</div>
|
|
247
|
+
</div>
|
|
248
|
+
<div class="form-group" v-if="this.model.rows.length>1">
|
|
249
|
+
<label class="col-sm-2 control-label">信 息: </label>
|
|
250
|
+
<div class="col-sm-8">
|
|
251
|
+
<p class="form-control-static">该卡号出现重复,点击继续后,请确认该客户信息之后双击进入!!</p>
|
|
252
|
+
</div>
|
|
253
|
+
</div>
|
|
254
|
+
<div class="form-group" v-if="this.model.rows.length<1">
|
|
255
|
+
<label class="col-sm-2 control-label">信 息: </label>
|
|
256
|
+
<div class="col-sm-8">
|
|
257
|
+
<p class="form-control-static">此时的卡片信息和用户信息不匹配,请核实后在进行读卡 !!</p>
|
|
258
|
+
</div>
|
|
259
|
+
</div>
|
|
260
|
+
<div class="form-group">
|
|
261
|
+
<label class="col-sm-2 control-label">卡上气量</label>
|
|
262
|
+
<div class="col-sm-4">
|
|
263
|
+
<p class="form-control-static">{{cardInfo.Gas}}</p>
|
|
264
|
+
</div>
|
|
265
|
+
|
|
266
|
+
<label class="col-sm-2 control-label">卡上金额</label>
|
|
267
|
+
<div class="col-sm-4">
|
|
268
|
+
<p class="form-control-static">{{cardInfo.Money}}</p>
|
|
269
|
+
</div>
|
|
270
|
+
</div>
|
|
271
|
+
<div class="form-group" v-if="cardInfo.NewParam.IsInsert == 0">
|
|
272
|
+
|
|
273
|
+
<label class="col-sm-2 control-label">累购气量</label>
|
|
274
|
+
<div class="col-sm-4">
|
|
275
|
+
<p class="form-control-static">{{cardInfo.NewParam.ljgql}}</p>
|
|
276
|
+
</div>
|
|
277
|
+
|
|
278
|
+
</div>
|
|
279
|
+
<!--<div class="form-group">-->
|
|
280
|
+
<!--<strong>卡上有气,请告知客户接表后再来充值!如进行其他业务请点击“继续”</strong>-->
|
|
281
|
+
<!--</div>-->
|
|
282
|
+
</form>
|
|
283
|
+
</article>
|
|
284
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
285
|
+
<strong>卡上有气,请告知客户接表后再来充值!如进行其他业务请点击“继续”</strong>
|
|
286
|
+
<button type="button" class="button_search" @click='hasGasContinue'>继续</button>
|
|
287
|
+
<button type="button" class="btn btn-default" @click='hasGasClose'>取消</button>
|
|
288
|
+
</footer>
|
|
289
|
+
</modal>
|
|
290
|
+
|
|
291
|
+
<modal :show.sync="showCardError" v-ref:modal backdrop="false">
|
|
292
|
+
<header slot="modal-header" class="modal-header">
|
|
293
|
+
<h4 class="modal-title">卡上信息</h4>
|
|
294
|
+
</header>
|
|
295
|
+
<article slot="modal-body" class="modal-body">
|
|
296
|
+
<form class="form-horizontal">
|
|
297
|
+
<div class="form-group">
|
|
298
|
+
<label class="col-sm-2 control-label">卡  号</label>
|
|
299
|
+
<div class="col-sm-2">
|
|
300
|
+
<p class="form-control-static">{{cardInfo.CardID}}</p>
|
|
301
|
+
</div>
|
|
302
|
+
|
|
303
|
+
<label class="col-sm-2 control-label">卡上次数</label>
|
|
304
|
+
<div class="col-sm-2">
|
|
305
|
+
<p class="form-control-static">{{cardInfo.Times}}</p>
|
|
306
|
+
</div>
|
|
307
|
+
<label class="col-sm-2 control-label">系统次数</label>
|
|
308
|
+
<div class="col-sm-2">
|
|
309
|
+
<p class="form-control-static">{{systemTimes}}</p>
|
|
310
|
+
</div>
|
|
311
|
+
<label class="col-sm-2 control-label">用户编号</label>
|
|
312
|
+
<div class="col-sm-2">
|
|
313
|
+
<p class="form-control-static">{{userCode}}</p>
|
|
314
|
+
</div>
|
|
315
|
+
<label class="col-sm-2 control-label">用户姓名</label>
|
|
316
|
+
<div class="col-sm-2">
|
|
317
|
+
<p class="form-control-static">{{userName}}</p>
|
|
318
|
+
</div>
|
|
319
|
+
<label class="col-sm-2 control-label">用户地址</label>
|
|
320
|
+
<div class="col-sm-2">
|
|
321
|
+
<p class="form-control-static">{{userAddress}}</p>
|
|
322
|
+
</div>
|
|
323
|
+
</div>
|
|
324
|
+
<div class="form-group" style="margin-left:10%;">
|
|
325
|
+
<p class="text-left" style="font-size:20px;line-height:60px;font-height:800;">当前卡充值次数与系统不符,请检查是否是正确的卡</p>
|
|
326
|
+
</div>
|
|
327
|
+
</form>
|
|
328
|
+
</article>
|
|
329
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
330
|
+
<button type="button" v-if="showCardError2" class="button_search" @click='hasGasContinue'>继续</button>
|
|
331
|
+
<button type="button" class="btn btn-default" @click='hasGasClose'>取消</button>
|
|
332
|
+
</footer>
|
|
333
|
+
</modal>
|
|
334
|
+
|
|
335
|
+
</template>
|
|
336
|
+
|
|
337
|
+
<script>
|
|
338
|
+
/**
|
|
339
|
+
*用户档案查询列表以及添加操作组件
|
|
340
|
+
*/
|
|
341
|
+
import {PagedList} from 'vue-client'
|
|
342
|
+
|
|
343
|
+
let cardBtnGen = async function (self, val) {
|
|
344
|
+
self.cardInfo = val.data
|
|
345
|
+
let getUser = null
|
|
346
|
+
// 判断读卡是否需要卡密码
|
|
347
|
+
console.log('读卡上的信息', self.cardInfo)
|
|
348
|
+
|
|
349
|
+
if (self.cardInfo.NewParam) {
|
|
350
|
+
if (self.cardInfo.NewParam.error) {
|
|
351
|
+
if (self.cardInfo.NewParam.error === '0001') {
|
|
352
|
+
// 需要重新读卡并传卡密码
|
|
353
|
+
if (self.model.rows.length == 1 && self.model.rows[0].f_alias === self.cardInfo.Factory) {
|
|
354
|
+
self.readCardParam = self.model.rows[0].f_card_password
|
|
355
|
+
self.cardInfo = await self.$refs.paged.$refs.cri.$refs.readcard.readCard2(self.model.rows[0].f_card_password)
|
|
356
|
+
} else {
|
|
357
|
+
if (self.cardInfo.Factory == 'JiBiao' || self.cardInfo.Factory == 'JiChengADSystem') {
|
|
358
|
+
// 获取用户信息
|
|
359
|
+
getUser = await self.$resetpost('api/af-revenue/sql/sale_getUser', {
|
|
360
|
+
data: {
|
|
361
|
+
condition: `f_meter_type in ('机表','物联网表') and u.f_card_id='${self.cardInfo.CardID}'
|
|
362
|
+
and u.f_filialeid = '${self.$login.f.orgid}' and f_whether_hairpin != '未发'`,
|
|
363
|
+
orderitem: `${self.orderitem} Desc`
|
|
364
|
+
}
|
|
365
|
+
}, {resolveMsg: '读卡成功', rejectMsg: '读卡失败'})
|
|
366
|
+
} else if (self.cardInfo.Factory == 'TaiPengNiuKou') {
|
|
367
|
+
// 获取用户信息
|
|
368
|
+
getUser = await self.$resetpost('api/af-revenue/sql/sale_getUser', {
|
|
369
|
+
data: {
|
|
370
|
+
condition: `gb.f_meter_type in ('气量卡表', '金额卡表','物联网表') and u.f_card_password='${self.cardInfo.NewParam.kmm}'
|
|
371
|
+
and u.f_filialeid = '${self.$login.f.orgid}' and f_alias='${self.cardInfo.Factory}' and f_whether_hairpin != '未发'`,
|
|
372
|
+
orderitem: `${self.orderitem} Desc`
|
|
373
|
+
}
|
|
374
|
+
}, {resolveMsg: '读卡成功', rejectMsg: '读卡失败'})
|
|
375
|
+
self.cardInfo.CardID = getUser.data[0].f_card_id
|
|
376
|
+
} else {
|
|
377
|
+
// 获取用户信息
|
|
378
|
+
getUser = await self.$resetpost('api/af-revenue/sql/sale_getUser', {
|
|
379
|
+
data: {
|
|
380
|
+
condition: `gb.f_meter_type in ('气量卡表', '金额卡表','物联网表') and u.f_card_id='${self.cardInfo.CardID}'
|
|
381
|
+
and u.f_filialeid = '${self.$login.f.orgid}' and f_alias='${self.cardInfo.Factory}' and f_whether_hairpin != '未发'`,
|
|
382
|
+
orderitem: `${self.orderitem} Desc`
|
|
383
|
+
}
|
|
384
|
+
}, {resolveMsg: '读卡成功', rejectMsg: '读卡失败'})
|
|
385
|
+
}
|
|
386
|
+
if (getUser.data.length == 1 && getUser.data[0].f_alias === self.cardInfo.Factory) {
|
|
387
|
+
self.readCardParam = getUser.data[0].f_card_password
|
|
388
|
+
self.cardInfo = await self.$refs.paged.$refs.cri.$refs.readcard.readCard2(getUser.data[0].f_card_password)
|
|
389
|
+
} else {
|
|
390
|
+
self.$showAlert('此卡需要先获取客户信息。请通过条件查询该客户信息之后进行读卡!!', 'warning', 2000)
|
|
391
|
+
return
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
} else if (self.cardInfo.NewParam.error === '0002') {
|
|
395
|
+
// 获取用户信息
|
|
396
|
+
getUser = await self.$resetpost('api/af-revenue/sql/sale_getUser', {
|
|
397
|
+
data: {
|
|
398
|
+
condition: `gb.f_meter_type in ('气量卡表', '金额卡表','物联网表') and u.f_card_password='${self.cardInfo.NewParam.kmm}'
|
|
399
|
+
and u.f_filialeid = '${self.$login.f.orgid}' and f_alias='${self.cardInfo.Factory}' and f_whether_hairpin != '未发'`,
|
|
400
|
+
orderitem: `${self.orderitem} Desc`
|
|
401
|
+
}
|
|
402
|
+
}, {resolveMsg: '读卡成功', rejectMsg: '读卡失败'})
|
|
403
|
+
self.cardInfo.CardID = getUser.data[0].f_card_id
|
|
404
|
+
if (getUser.data.length == 1 && getUser.data[0].f_alias === self.cardInfo.Factory) {
|
|
405
|
+
self.cardInfo = await self.$refs.paged.$refs.cri.$refs.readcard.readCard3(getUser.data[0].f_times)
|
|
406
|
+
console.log('self.cardInfo', self.cardInfo)
|
|
407
|
+
} else {
|
|
408
|
+
self.$showAlert('此卡需要先获取客户信息。请通过条件查询该客户信息之后进行读卡!!', 'warning', 2000)
|
|
409
|
+
return
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
// 验证卡上是否有气, 1). 卡上的气量和金额大于0 2). 只认累购的表会有一个新参数 NewParam.IsInsert (0: 未接表 1: 已接表)
|
|
415
|
+
let cardHasGas = false
|
|
416
|
+
if ((self.cardInfo.Gas - 0) > 0 || (self.cardInfo.Money - 0) > 0) {
|
|
417
|
+
cardHasGas = true
|
|
418
|
+
}
|
|
419
|
+
|
|
420
|
+
if (self.cardInfo.NewParam) {
|
|
421
|
+
if (self.cardInfo.NewParam.hasOwnProperty('IsInsert')) {
|
|
422
|
+
cardHasGas = (self.cardInfo.NewParam.IsInsert == 0)
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
if (cardHasGas) {
|
|
427
|
+
// 卡上有气, 弹出框提示
|
|
428
|
+
self.showCardInfo = true
|
|
429
|
+
// 获取当前卡信息
|
|
430
|
+
getMeterInfoGen3(self)
|
|
431
|
+
} else {
|
|
432
|
+
getMeterInfoGen(self)
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
self.$refs.paged.$refs.grid.$el.scrollTop = 0
|
|
436
|
+
}
|
|
437
|
+
let getMeterInfoGen2 = async function (self) {
|
|
438
|
+
self.model.rows = []
|
|
439
|
+
if (self.cardInfo.CardID && self.cardInfo.Factory) {
|
|
440
|
+
// 存在机表和物联网表读卡发卡的情况,这里对读卡返回的Factory进行判断区分, 物联网和机表直接返回 JiBiao。
|
|
441
|
+
// 还有一种方式: 在建立气表品牌的时候机表和物联网表别名直接给成JiBiao
|
|
442
|
+
let getUser = null
|
|
443
|
+
if (self.cardInfo.Factory == 'JiBiao' || self.cardInfo.Factory == 'JiChengADSystem') {
|
|
444
|
+
// 获取用户信息
|
|
445
|
+
getUser = await self.$resetpost('api/af-revenue/sql/sale_getUser', {
|
|
446
|
+
data: {
|
|
447
|
+
condition: `f_meter_type in ('机表','物联网表') and u.f_card_id='${self.cardInfo.CardID}'
|
|
448
|
+
and u.f_filialeid = '${self.$login.f.orgid}' and f_whether_hairpin != '未发'`,
|
|
449
|
+
orderitem: `${self.orderitem} Desc`
|
|
450
|
+
}
|
|
451
|
+
}, {resolveMsg: '读卡成功', rejectMsg: '读卡失败'})
|
|
452
|
+
} else if (self.cardInfo.Factory == 'TaiPengNiuKou') {
|
|
453
|
+
// 获取用户信息
|
|
454
|
+
getUser = await self.$resetpost('api/af-revenue/sql/sale_getUser', {
|
|
455
|
+
data: {
|
|
456
|
+
condition: `gb.f_meter_type in ('气量卡表', '金额卡表','物联网表') and u.f_card_password='${self.cardInfo.NewParam.kmm}'
|
|
457
|
+
and u.f_filialeid = '${self.$login.f.orgid}' and f_alias='${self.cardInfo.Factory}' and f_whether_hairpin != '未发'`,
|
|
458
|
+
orderitem: `${self.orderitem} Desc`
|
|
459
|
+
}
|
|
460
|
+
}, {resolveMsg: '读卡成功', rejectMsg: '读卡失败'})
|
|
461
|
+
self.cardInfo.CardID = getUser.data[0].f_card_id
|
|
462
|
+
} else {
|
|
463
|
+
// 获取用户信息
|
|
464
|
+
getUser = await self.$resetpost('api/af-revenue/sql/sale_getUser', {
|
|
465
|
+
data: {
|
|
466
|
+
condition: `gb.f_meter_type in ('气量卡表', '金额卡表','物联网表') and u.f_card_id='${self.cardInfo.CardID}'
|
|
467
|
+
and u.f_filialeid = '${self.$login.f.orgid}' and f_alias='${self.cardInfo.Factory}' and f_whether_hairpin != '未发'`,
|
|
468
|
+
orderitem: `${self.orderitem} Desc`
|
|
469
|
+
}
|
|
470
|
+
}, {resolveMsg: '读卡成功', rejectMsg: '读卡失败'})
|
|
471
|
+
}
|
|
472
|
+
|
|
473
|
+
if (getUser.data.length === 0) {
|
|
474
|
+
self.model.state = '错误'
|
|
475
|
+
self.model.rows = null
|
|
476
|
+
self.model.error = '没有符合条件的记录'
|
|
477
|
+
self.cardModal_show = true
|
|
478
|
+
} else if (getUser.data.length === 1) {
|
|
479
|
+
// 验证卡上信息和获取的用户信息
|
|
480
|
+
if (self.cardInfo.CardID != getUser.data[0].f_card_id || self.cardInfo.Factory != getUser.data[0].f_alias) {
|
|
481
|
+
self.$showAlert(`此时的卡片信息和用户信息不匹配,请核实后在进行读卡。卡上信息: 卡号-${self.cardInfo.CardID},厂家-${self.cardInfo.Factory}。
|
|
482
|
+
用户信息: 卡号-${getUser.data[0].f_card_id},厂家-${getUser.data[0].f_alias}`, 'warning', 5000)
|
|
483
|
+
return
|
|
484
|
+
}
|
|
485
|
+
self.model.state = '正确'
|
|
486
|
+
self.model.rows = getUser.data
|
|
487
|
+
self.$dispatch('dblclick', getUser.data[0], 0, self.cardInfo) // 这里的0是角标位置(暂无用)
|
|
488
|
+
} else if (getUser.data.length > 1) {
|
|
489
|
+
if (self.model.rows.length == 1) {
|
|
490
|
+
// 处理读卡时需要卡密码的问题:此时已经查出一户数据来,验证此数据的卡号和读出的卡号是否一致,一致则不用去查询
|
|
491
|
+
let hasMatchingData = false
|
|
492
|
+
getUser.data.forEach((res, index) => {
|
|
493
|
+
if (self.model.rows[0].f_userfiles_id == res.f_userfiles_id) {
|
|
494
|
+
self.model.rows = [getUser.data[index]]
|
|
495
|
+
self.model.state = '正确'
|
|
496
|
+
hasMatchingData = true
|
|
497
|
+
self.$dispatch('dblclick', getUser.data[index], 0, self.cardInfo)
|
|
498
|
+
}
|
|
499
|
+
})
|
|
500
|
+
if (!hasMatchingData) {
|
|
501
|
+
self.model.rows = getUser.data
|
|
502
|
+
self.model.pageIndex = 1
|
|
503
|
+
self.model.state = '正确'
|
|
504
|
+
self.$dispatch('clean')
|
|
505
|
+
self.$showAlert('该卡号出现重复,请确认该客户信息之后双击进入!!', 'warning', 5000)
|
|
506
|
+
}
|
|
507
|
+
} else {
|
|
508
|
+
self.model.rows = getUser.data
|
|
509
|
+
self.model.pageIndex = 1
|
|
510
|
+
self.model.state = '正确'
|
|
511
|
+
self.$dispatch('clean')
|
|
512
|
+
self.$showAlert('该卡号出现重复,请确认该客户信息之后双击进入!!', 'warning', 5000)
|
|
513
|
+
}
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
let getMeterInfoGen3 = async function (self) {
|
|
519
|
+
if (self.cardInfo.CardID && self.cardInfo.Factory) {
|
|
520
|
+
// 存在机表和物联网表读卡发卡的情况,这里对读卡返回的Factory进行判断区分, 物联网和机表直接返回 JiBiao。
|
|
521
|
+
// 还有一种方式: 在建立气表品牌的时候机表和物联网表别名直接给成JiBiao
|
|
522
|
+
let getUser = null
|
|
523
|
+
if (self.cardInfo.Factory == 'JiBiao' || self.cardInfo.Factory == 'JiChengADSystem') {
|
|
524
|
+
// 获取用户信息
|
|
525
|
+
getUser = await self.$resetpost('api/af-revenue/sql/sale_getUser', {
|
|
526
|
+
data: {
|
|
527
|
+
condition: `f_meter_type in ('机表','物联网表') and u.f_card_id='${self.cardInfo.CardID}'
|
|
528
|
+
and u.f_filialeid = '${self.$login.f.orgid}' and f_whether_hairpin != '未发'`,
|
|
529
|
+
orderitem: `${self.orderitem} Desc`
|
|
530
|
+
}
|
|
531
|
+
}, {resolveMsg: '读卡成功', rejectMsg: '读卡失败'})
|
|
532
|
+
} else {
|
|
533
|
+
// 获取用户信息
|
|
534
|
+
getUser = await self.$resetpost('api/af-revenue/sql/sale_getUser', {
|
|
535
|
+
data: {
|
|
536
|
+
condition: `gb.f_meter_type in ('气量卡表', '金额卡表','物联网表') and u.f_card_id='${self.cardInfo.CardID}'
|
|
537
|
+
and u.f_filialeid = '${self.$login.f.orgid}' and f_alias='${self.cardInfo.Factory}' and f_whether_hairpin != '未发'`,
|
|
538
|
+
orderitem: `${self.orderitem} Desc`
|
|
539
|
+
}
|
|
540
|
+
}, {resolveMsg: '读卡成功', rejectMsg: '读卡失败'})
|
|
541
|
+
}
|
|
542
|
+
self.model.rows = getUser.data
|
|
543
|
+
}
|
|
544
|
+
}
|
|
545
|
+
|
|
546
|
+
let getMeterInfoGen = async function (self) {
|
|
547
|
+
if (self.cardInfo.CardID && self.cardInfo.Factory) {
|
|
548
|
+
// 存在机表和物联网表读卡发卡的情况,这里对读卡返回的Factory进行判断区分, 物联网和机表直接返回 JiBiao。
|
|
549
|
+
// 还有一种方式: 在建立气表品牌的时候机表和物联网表别名直接给成JiBiao
|
|
550
|
+
let getUser = null
|
|
551
|
+
if (self.cardInfo.Factory == 'JiBiao' || self.cardInfo.Factory == 'JiChengADSystem') {
|
|
552
|
+
// 获取用户信息
|
|
553
|
+
getUser = await self.$resetpost('api/af-revenue/sql/sale_getUser', {
|
|
554
|
+
data: {
|
|
555
|
+
condition: `gb.f_meter_type in ('机表','物联网表') and u.f_card_id='${self.cardInfo.CardID}'
|
|
556
|
+
and u.f_filialeid = '${self.$login.f.orgid}' and f_whether_hairpin != '未发'`,
|
|
557
|
+
orderitem: `${self.orderitem} Desc`
|
|
558
|
+
}
|
|
559
|
+
}, {resolveMsg: '读卡成功', rejectMsg: '读卡失败'})
|
|
560
|
+
} else if (self.cardInfo.Factory == 'TaiPengNiuKou') {
|
|
561
|
+
// 获取用户信息
|
|
562
|
+
getUser = await self.$resetpost('api/af-revenue/sql/sale_getUser', {
|
|
563
|
+
data: {
|
|
564
|
+
condition: `gb.f_meter_type in ('气量卡表', '金额卡表','物联网表') and u.f_card_password='${self.cardInfo.NewParam.kmm}'
|
|
565
|
+
and u.f_filialeid = '${self.$login.f.orgid}' and f_alias='${self.cardInfo.Factory}' and f_whether_hairpin != '未发'`,
|
|
566
|
+
orderitem: `${self.orderitem} Desc`
|
|
567
|
+
}
|
|
568
|
+
}, {resolveMsg: '读卡成功', rejectMsg: '读卡失败'})
|
|
569
|
+
self.cardInfo.CardID = getUser.data[0].f_card_id
|
|
570
|
+
} else {
|
|
571
|
+
// 获取用户信息
|
|
572
|
+
getUser = await self.$resetpost('api/af-revenue/sql/sale_getUser', {
|
|
573
|
+
data: {
|
|
574
|
+
condition: `gb.f_meter_type in ('气量卡表', '金额卡表','物联网表') and u.f_card_id='${self.cardInfo.CardID}'
|
|
575
|
+
and u.f_filialeid = '${self.$login.f.orgid}' and f_alias='${self.cardInfo.Factory}' and f_whether_hairpin != '未发'`,
|
|
576
|
+
orderitem: `${self.orderitem} Desc`
|
|
577
|
+
}
|
|
578
|
+
}, {resolveMsg: '读卡成功', rejectMsg: '读卡失败'})
|
|
579
|
+
}
|
|
580
|
+
// 判断是否是旧卡
|
|
581
|
+
if (getUser.data.length > 0) {
|
|
582
|
+
if (self.cardInfo.Times < getUser.data[0].f_times) {
|
|
583
|
+
self.systemTimes = getUser.data[0].f_times
|
|
584
|
+
self.userCode = getUser.data[0].f_userinfo_code
|
|
585
|
+
self.userName = getUser.data[0].f_user_name
|
|
586
|
+
self.userAddress = getUser.data[0].f_address
|
|
587
|
+
if (getUser.data[0].f_is_check != '否') {
|
|
588
|
+
self.showCardError = true
|
|
589
|
+
self.showCardError2 = true
|
|
590
|
+
return
|
|
591
|
+
}
|
|
592
|
+
// self.$showMessage('当前卡充值次数与系统不符,请检查是否是正确的卡.')
|
|
593
|
+
}
|
|
594
|
+
}
|
|
595
|
+
// 判断是否是旧卡
|
|
596
|
+
if (getUser.data.length > 0) {
|
|
597
|
+
if (self.cardInfo.Times > getUser.data[0].f_times) {
|
|
598
|
+
self.systemTimes = getUser.data[0].f_times
|
|
599
|
+
self.userCode = getUser.data[0].f_userinfo_code
|
|
600
|
+
self.userName = getUser.data[0].f_user_name
|
|
601
|
+
self.userAddress = getUser.data[0].f_address
|
|
602
|
+
if (getUser.data[0].f_is_check != '否') {
|
|
603
|
+
self.showCardError2 = false
|
|
604
|
+
self.showCardError = true
|
|
605
|
+
return
|
|
606
|
+
}
|
|
607
|
+
}
|
|
608
|
+
}
|
|
609
|
+
|
|
610
|
+
if (getUser.data.length === 0) {
|
|
611
|
+
self.model.state = '错误'
|
|
612
|
+
self.model.rows = null
|
|
613
|
+
self.model.error = '没有符合条件的记录'
|
|
614
|
+
self.cardModal_show = true
|
|
615
|
+
} else if (getUser.data.length === 1) {
|
|
616
|
+
// 验证卡上信息和获取的用户信息
|
|
617
|
+
if (self.cardInfo.CardID != getUser.data[0].f_card_id || self.cardInfo.Factory != getUser.data[0].f_alias) {
|
|
618
|
+
self.$showAlert(`此时的卡片信息和用户信息不匹配,请核实后在进行读卡。卡上信息: 卡号-${self.cardInfo.CardID},厂家-${self.cardInfo.Factory}。
|
|
619
|
+
用户信息: 卡号-${getUser.data[0].f_card_id},厂家-${getUser.data[0].f_alias}`, 'warning', 5000)
|
|
620
|
+
return
|
|
621
|
+
}
|
|
622
|
+
self.model.state = '正确'
|
|
623
|
+
self.model.rows = getUser.data
|
|
624
|
+
self.$dispatch('dblclick', getUser.data[0], 0, self.cardInfo) // 这里的0是角标位置(暂无用)
|
|
625
|
+
} else if (getUser.data.length > 1) {
|
|
626
|
+
if (self.model.rows.length == 1) {
|
|
627
|
+
// 处理读卡时需要卡密码的问题:此时已经查出一户数据来,验证此数据的卡号和读出的卡号是否一致,一致则不用去查询
|
|
628
|
+
let hasMatchingData = false
|
|
629
|
+
getUser.data.forEach((res, index) => {
|
|
630
|
+
if (self.model.rows[0].f_userfiles_id == res.f_userfiles_id) {
|
|
631
|
+
self.model.rows = [getUser.data[index]]
|
|
632
|
+
self.model.state = '正确'
|
|
633
|
+
hasMatchingData = true
|
|
634
|
+
self.$dispatch('dblclick', getUser.data[index], 0, self.cardInfo)
|
|
635
|
+
}
|
|
636
|
+
})
|
|
637
|
+
if (!hasMatchingData) {
|
|
638
|
+
self.model.rows = getUser.data
|
|
639
|
+
self.model.pageIndex = 1
|
|
640
|
+
self.model.state = '正确'
|
|
641
|
+
self.$dispatch('clean')
|
|
642
|
+
self.$showAlert('该卡号出现重复,请确认该客户信息之后双击进入!!', 'warning', 5000)
|
|
643
|
+
}
|
|
644
|
+
} else {
|
|
645
|
+
self.model.rows = getUser.data
|
|
646
|
+
self.model.pageIndex = 1
|
|
647
|
+
self.model.state = '正确'
|
|
648
|
+
self.$dispatch('clean')
|
|
649
|
+
self.$showAlert('该卡号出现重复,请确认该客户信息之后双击进入!!', 'warning', 5000)
|
|
650
|
+
}
|
|
651
|
+
}
|
|
652
|
+
}
|
|
653
|
+
}
|
|
654
|
+
|
|
655
|
+
let asyncReadyGen = async function (self) {
|
|
656
|
+
// 获取营收参数
|
|
657
|
+
await self.searchNoData()
|
|
658
|
+
await self.$LoadParams.loadParam()
|
|
659
|
+
await self.initQueryParam()
|
|
660
|
+
await self.clear()
|
|
661
|
+
if (!self.authArr.includes('读卡限定')) {
|
|
662
|
+
self.search()
|
|
663
|
+
}
|
|
664
|
+
}
|
|
665
|
+
|
|
666
|
+
export default {
|
|
667
|
+
title: '收费',
|
|
668
|
+
data () {
|
|
669
|
+
return {
|
|
670
|
+
// 公司下拉
|
|
671
|
+
curorgid: [this.$login.f.orgid],
|
|
672
|
+
f_orgid: '',
|
|
673
|
+
showCardError2: false,
|
|
674
|
+
model: new PagedList('api/af-revenue/sql/sale_getUser', 30, {orderitem: '"' + this.orderitem + ' DESC"'}),
|
|
675
|
+
isPager: true,
|
|
676
|
+
rows: null,
|
|
677
|
+
cardInfo: '',
|
|
678
|
+
excelCondition: '',
|
|
679
|
+
cardModal_show: false,
|
|
680
|
+
bulkType: null, // 批量操作标识
|
|
681
|
+
contract: [{label: '全部', value: ''},
|
|
682
|
+
{label: '有', value: 'not null'},
|
|
683
|
+
{label: '无', value: 'null'}],
|
|
684
|
+
orderFields: {
|
|
685
|
+
f_userinfo_id: 'no'
|
|
686
|
+
},
|
|
687
|
+
filiale: '',
|
|
688
|
+
outlet: '',
|
|
689
|
+
fields: {
|
|
690
|
+
'f_userinfo_code': '用户编号',
|
|
691
|
+
'f_user_name': '用户姓名',
|
|
692
|
+
'f_user_phone': '用户电话',
|
|
693
|
+
'f_address': '用户地址',
|
|
694
|
+
'f_credentials': '证件类型',
|
|
695
|
+
'f_idnumber': '证件号码',
|
|
696
|
+
'f_user_id': '表编号',
|
|
697
|
+
'f_gasproperties': '用气性质',
|
|
698
|
+
'f_meter_brand': '气表品牌',
|
|
699
|
+
'f_meter_style': '气表型号',
|
|
700
|
+
'f_price_type': '气价类型',
|
|
701
|
+
'f_price_name': '气价名称',
|
|
702
|
+
'fenleixinxi': '分类信息'
|
|
703
|
+
},
|
|
704
|
+
filialeName: [],
|
|
705
|
+
outletsname: [],
|
|
706
|
+
filialetype: '',
|
|
707
|
+
jurisdiction: this.$login.r,
|
|
708
|
+
tableStates: this.$appdata.getParam('气表状态') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('气表状态')] : [],
|
|
709
|
+
|
|
710
|
+
fileStates: this.$appdata.getParam('档案状态') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('档案状态')] : [],
|
|
711
|
+
|
|
712
|
+
// userTypes: this.$appdata.getParam('用户类型') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')] : [],
|
|
713
|
+
gasproperties: this.$appdata.getParam('用气性质') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')] : [],
|
|
714
|
+
|
|
715
|
+
meterbrand: [],
|
|
716
|
+
userlevel: this.$appdata.getParam('用户等级') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('用户等级')] : [],
|
|
717
|
+
usetype: this.$appdata.getParam('使用类型') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('使用类型')] : [],
|
|
718
|
+
userState: this.$appdata.getParam('收费用户状态') ? [{label: '全部', value: ''}, ...this.$appdata.getParam('收费用户状态')] : [],
|
|
719
|
+
criteriaShow: true,
|
|
720
|
+
|
|
721
|
+
// 读卡是否需要额外参数
|
|
722
|
+
readCardNeedParam: false,
|
|
723
|
+
readCardParam: {},
|
|
724
|
+
systemTimes: '',
|
|
725
|
+
userCode: '',
|
|
726
|
+
userName: '',
|
|
727
|
+
userAddress: '',
|
|
728
|
+
|
|
729
|
+
// 当列表是一户的时候直接读卡,跳过判卡
|
|
730
|
+
isSingleUser: null,
|
|
731
|
+
|
|
732
|
+
// 默认不查询
|
|
733
|
+
specialCondition: false,
|
|
734
|
+
|
|
735
|
+
// 卡信息弹出框
|
|
736
|
+
showCardInfo: false,
|
|
737
|
+
|
|
738
|
+
// 流水记录显示
|
|
739
|
+
recordModel: {rows: []},
|
|
740
|
+
clientWidth: document.body.clientWidth,
|
|
741
|
+
showCardError: false
|
|
742
|
+
}
|
|
743
|
+
},
|
|
744
|
+
props: {
|
|
745
|
+
orderitem: {
|
|
746
|
+
type: String,
|
|
747
|
+
default: 'f_userinfo_id desc'
|
|
748
|
+
},
|
|
749
|
+
defbtn: {
|
|
750
|
+
type: String
|
|
751
|
+
},
|
|
752
|
+
noRead: {
|
|
753
|
+
type: Boolean,
|
|
754
|
+
default: false
|
|
755
|
+
},
|
|
756
|
+
row: {}
|
|
757
|
+
},
|
|
758
|
+
ready () {
|
|
759
|
+
asyncReadyGen(this)
|
|
760
|
+
},
|
|
761
|
+
compiled () {
|
|
762
|
+
window.onresize = () => {
|
|
763
|
+
return (() => {
|
|
764
|
+
this.clientWidth = document.body.clientWidth
|
|
765
|
+
})()
|
|
766
|
+
}
|
|
767
|
+
},
|
|
768
|
+
methods: {
|
|
769
|
+
getorg (val) {
|
|
770
|
+
this.f_orgid = this.$login.convertToIn(val)
|
|
771
|
+
this.$parent.f_orgid = this.f_orgid
|
|
772
|
+
},
|
|
773
|
+
recordClick () {
|
|
774
|
+
// DoNothing, 消除流水界面出发的双击事件
|
|
775
|
+
},
|
|
776
|
+
|
|
777
|
+
hidden () {
|
|
778
|
+
this.criteriaShow = !this.criteriaShow
|
|
779
|
+
},
|
|
780
|
+
clear () {
|
|
781
|
+
Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
|
|
782
|
+
this.$refs.paged.$refs.cri.model[key] = []
|
|
783
|
+
})
|
|
784
|
+
},
|
|
785
|
+
initQueryParam () {
|
|
786
|
+
let arr = []
|
|
787
|
+
this.$GetSaleParam.getGasbrand().forEach((item) => {
|
|
788
|
+
let temp = {}
|
|
789
|
+
temp.label = item.label
|
|
790
|
+
temp.value = item.value.f_meter_brand
|
|
791
|
+
arr.push(temp)
|
|
792
|
+
})
|
|
793
|
+
this.meterbrand = [{label: '全部', value: ''}, ...arr]
|
|
794
|
+
},
|
|
795
|
+
search () {
|
|
796
|
+
if (!this.authArr.includes('读卡限定')) {
|
|
797
|
+
this.$refs.paged.$refs.cri.search()
|
|
798
|
+
} else {
|
|
799
|
+
this.model.rows = []
|
|
800
|
+
}
|
|
801
|
+
},
|
|
802
|
+
searchNoData () {
|
|
803
|
+
this.specialCondition = true
|
|
804
|
+
this.$refs.paged.$refs.cri.model.aa = '1!=1'
|
|
805
|
+
this.$refs.paged.$refs.cri.conditions.aa = '1!=1'
|
|
806
|
+
this.search()
|
|
807
|
+
},
|
|
808
|
+
clean () {
|
|
809
|
+
this.cardInfo = ''
|
|
810
|
+
// 清除批量操作
|
|
811
|
+
// this.$refs.paged.$refs.grid.select(null)
|
|
812
|
+
this.row = null
|
|
813
|
+
this.$dispatch('clean')
|
|
814
|
+
},
|
|
815
|
+
|
|
816
|
+
// 判断是不是卡表
|
|
817
|
+
isCard (str) {
|
|
818
|
+
return (str.includes('卡表'))
|
|
819
|
+
},
|
|
820
|
+
|
|
821
|
+
async selfSearch (args) {
|
|
822
|
+
if (!this.f_orgid) {
|
|
823
|
+
this.getorg([this.$login.f.orgid])
|
|
824
|
+
}
|
|
825
|
+
if (this.f_orgid) {
|
|
826
|
+
args.condition = `u.f_filialeid in ${this.f_orgid} and ${args.condition}`
|
|
827
|
+
}
|
|
828
|
+
this.excelCondition = args.condition
|
|
829
|
+
args.condition = `${args.condition}`
|
|
830
|
+
if (this.defbtn === '发卡售气') {
|
|
831
|
+
args.condition = `${args.condition} and f_whether_hairpin = '未发' and f_meter_classify like '%卡表%'`
|
|
832
|
+
}
|
|
833
|
+
this.isPager = true
|
|
834
|
+
this.criteriaShow = true
|
|
835
|
+
this.$parent.warningInfo = null
|
|
836
|
+
this.cardInfo = ''
|
|
837
|
+
if (!this.specialCondition) {
|
|
838
|
+
if (args.condition.includes('1!=1')) {
|
|
839
|
+
args.condition = args.condition.replace('1!=1', '1=1')
|
|
840
|
+
}
|
|
841
|
+
}
|
|
842
|
+
this.specialCondition = false
|
|
843
|
+
|
|
844
|
+
await this.model.search(args.condition, args.model)
|
|
845
|
+
if (this.model.rows.length == 1) {
|
|
846
|
+
this.$parent.toBusiness(this.model.rows[0])
|
|
847
|
+
}
|
|
848
|
+
},
|
|
849
|
+
cardBtn (val) {
|
|
850
|
+
this.clear()
|
|
851
|
+
cardBtnGen(this, val)
|
|
852
|
+
},
|
|
853
|
+
dealmsg (val) {
|
|
854
|
+
this.$dispatch('deal-msg', val)
|
|
855
|
+
},
|
|
856
|
+
refreshRow (row) {
|
|
857
|
+
this.isPager = false
|
|
858
|
+
// 滚动条置顶
|
|
859
|
+
// this.$refs.paged.$refs.grid.$el.scrollTop = 0
|
|
860
|
+
this.model.rows = [row]
|
|
861
|
+
},
|
|
862
|
+
userTypeChange () {
|
|
863
|
+
this.gasproperties = []
|
|
864
|
+
if (this.$refs.paged.$refs.cri.model.f_user_type.length === 1) {
|
|
865
|
+
if (this.$refs.paged.$refs.cri.model.f_user_type[0]) {
|
|
866
|
+
this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
|
|
867
|
+
} else {
|
|
868
|
+
this.$refs.paged.$refs.cri.model.f_gasproperties = ''
|
|
869
|
+
}
|
|
870
|
+
}
|
|
871
|
+
},
|
|
872
|
+
async hasGasContinue () {
|
|
873
|
+
this.showCardError = false
|
|
874
|
+
this.showCardInfo = false
|
|
875
|
+
getMeterInfoGen2(this)
|
|
876
|
+
},
|
|
877
|
+
hasGasClose () {
|
|
878
|
+
this.showCardInfo = false
|
|
879
|
+
this.showCardError = false
|
|
880
|
+
this.showCardError2 = false
|
|
881
|
+
},
|
|
882
|
+
async testCard () {
|
|
883
|
+
try {
|
|
884
|
+
let res = await this.$resetpost('http://127.0.0.1:8003/CardTest', {}, {resolveMsg: null, rejectMsg: null})
|
|
885
|
+
let preMsg = res.data.code == 1 ? '成功:' : '错误:'
|
|
886
|
+
this.$showMessage(preMsg + res.data.msg)
|
|
887
|
+
} catch (e) {
|
|
888
|
+
this.$showMessage('错误:连接卡服务失败')
|
|
889
|
+
}
|
|
890
|
+
},
|
|
891
|
+
async readCiTiaoCard () {
|
|
892
|
+
console.log('读磁条卡,开始')
|
|
893
|
+
let data = {}
|
|
894
|
+
let getUser = {data: []}
|
|
895
|
+
try {
|
|
896
|
+
// let res = {data:{Factory : 'CiTiao',CardID : '5'}}
|
|
897
|
+
this.$showAlert('请刷卡', 'warning', 50000)
|
|
898
|
+
let res = await this.$resetpost('http://127.0.0.1:8003/ReadCard_HEC', data, {resolveMsg: null, rejectMsg: null})
|
|
899
|
+
res.data.Err ? this.$showAlert(res.data.Err, 'danger', 2000) : ''
|
|
900
|
+
this.$closeAlert()
|
|
901
|
+
if (res.data.Err === null && res.data.Exception) {
|
|
902
|
+
this.$showAlert(res.data.Exception, 'danger', 2000)
|
|
903
|
+
} else {
|
|
904
|
+
if (res.data.Factory === 'CiTiao') {
|
|
905
|
+
// 获取用户信息
|
|
906
|
+
getUser = await this.$resetpost('api/af-revenue/sql/sale_getUser', {
|
|
907
|
+
data: {
|
|
908
|
+
condition: `gb.f_meter_type in ('机表','物联网表') and i.f_userinfo_code='${res.data.CardID}'`,
|
|
909
|
+
orderitem: `${this.orderitem}`
|
|
910
|
+
}
|
|
911
|
+
}, {resolveMsg: '读卡成功', rejectMsg: '读卡失败'})
|
|
912
|
+
this.model.rows = getUser.data
|
|
913
|
+
}
|
|
914
|
+
}
|
|
915
|
+
} catch (error) {
|
|
916
|
+
console.log('捕获到异常', error)
|
|
917
|
+
this.$showAlert(error.data, 'danger', 2000)
|
|
918
|
+
}
|
|
919
|
+
},
|
|
920
|
+
async readCardByFactory () {
|
|
921
|
+
console.log('通过厂家读卡', this.model.rows.length)
|
|
922
|
+
if (this.model.rows.length == 1) {
|
|
923
|
+
let operConfirm = await this.$showMessage(`当前用户的表厂家为: ${this.model.rows[0].f_meter_brand}。请确认读卡器插入的卡为${this.model.rows[0].f_meter_brand}的卡。`, ['confirm', 'cancel'])
|
|
924
|
+
if (operConfirm == 'confirm') {
|
|
925
|
+
let data = {
|
|
926
|
+
factory: this.model.rows[0].f_alias
|
|
927
|
+
}
|
|
928
|
+
try {
|
|
929
|
+
let res = await this.$resetpost('http://127.0.0.1:8003/ReadCard', data, {resolveMsg: null, rejectMsg: null})
|
|
930
|
+
res.data.Err ? this.$showAlert(res.data.Err, 'danger', 2000) : ''
|
|
931
|
+
if (res.data.Err === null && res.data.Exception) {
|
|
932
|
+
this.$showAlert(res.data.Exception, 'danger', 2000)
|
|
933
|
+
} else if (!res.data.CardID) {
|
|
934
|
+
this.$showAlert(`请确认当前读卡器插入的卡为: ${this.model.rows[0].f_meter_brand} 的卡`, 'danger', 5000)
|
|
935
|
+
} else {
|
|
936
|
+
this.cardBtn(res)
|
|
937
|
+
}
|
|
938
|
+
} catch (error) {
|
|
939
|
+
console.log('捕获到异常', error)
|
|
940
|
+
this.$showAlert(error.data, 'danger', 2000)
|
|
941
|
+
}
|
|
942
|
+
} else {
|
|
943
|
+
|
|
944
|
+
}
|
|
945
|
+
} else {
|
|
946
|
+
this.$showAlert('请通过条件精确查询到此卡属于的用户信息,保证列表只有一条用户数据。再点击按钮“读卡2”', 'warning', 5000)
|
|
947
|
+
}
|
|
948
|
+
},
|
|
949
|
+
startContinuousCharg () {
|
|
950
|
+
console.log('启动连续收费')
|
|
951
|
+
window.localStorage.setItem('sustainMoney', 0)
|
|
952
|
+
this.$parent.sustainMoney = 0
|
|
953
|
+
},
|
|
954
|
+
async closeContinuousCharg () {
|
|
955
|
+
console.log('关闭连续收费')
|
|
956
|
+
let res = await this.$showMessage('确定关闭连续收款吗, 数据将被清空?', ['confirm', 'cancel'])
|
|
957
|
+
if (res != 'confirm') return
|
|
958
|
+
window.localStorage.removeItem('sustainMoney')
|
|
959
|
+
this.$parent.sustainMoney = null
|
|
960
|
+
}
|
|
961
|
+
},
|
|
962
|
+
watch: {
|
|
963
|
+
'model.rows.length' () {
|
|
964
|
+
this.isSingleUser = this.model.rows
|
|
965
|
+
}
|
|
966
|
+
},
|
|
967
|
+
computed: {
|
|
968
|
+
authArr () {
|
|
969
|
+
console.log('this.$login.r:', this.$login.r)
|
|
970
|
+
console.log('this.$login.r.includes:', this.$login.r.includes('收费综合导出权限'))
|
|
971
|
+
return this.$login.r ? this.$login.r : []
|
|
972
|
+
}
|
|
973
|
+
}
|
|
974
|
+
}
|
|
975
|
+
</script>
|
|
976
|
+
<style>
|
|
977
|
+
|
|
978
|
+
</style>
|
|
@@ -20,4 +20,6 @@ export default function () {
|
|
|
20
20
|
// // 收费查询
|
|
21
21
|
// Vue.component('charge-query-user', (resolve) => { require(['./ChargeQueryUser'], resolve) })
|
|
22
22
|
Vue.component('user-info-detail-manage-new', (resolve) => { require(['./UserInfoDetailManageNew'], resolve) })
|
|
23
|
+
// 收费查询
|
|
24
|
+
Vue.component('charge-list', (resolve) => { require(['./ChargeList'], resolve) })
|
|
23
25
|
}
|
package/src/main.js
CHANGED
|
@@ -2,7 +2,7 @@ import Vue from 'vue'
|
|
|
2
2
|
import all from 'vue-client/src/all'
|
|
3
3
|
import App from './App'
|
|
4
4
|
import system from 'system-clients/src/system'
|
|
5
|
-
import FilialeSale from './filiale/
|
|
5
|
+
import FilialeSale from './filiale/xinkang/sale'
|
|
6
6
|
import sale from './sale'
|
|
7
7
|
import address from 'address-client/src/address'
|
|
8
8
|
import ldap from 'ldap-clients/src/ldap'
|