sale-client 4.2.35 → 4.2.36
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 +82 -68
- package/package.json +1 -1
- package/src/App.vue +1 -1
- package/src/components/revenue/HandManager/MeterBookUser.vue +726 -726
- package/src/components/revenue/comprehen/ComprehenOperation/QrPay/QrPaymentDetailed.vue +423 -423
- package/src/components/revenue/comprehen/Maintenance/hand/handOperate.vue +469 -469
- package/src/components/revenue/machineHandManage/ArrearsQuery.vue +938 -938
- package/src/components/webMeter/MeterManage/WebMeterBatchOperationValve.vue +970 -970
- package/src/filiale/alashan/eticket/EticketRecordList.vue +428 -428
- package/src/filiale/bayan/ChargeList.vue +1010 -1010
- package/src/filiale/bayan/StockListmain.vue +543 -543
- package/src/filiale/bazhong/UserInfoDetailManageNew.vue +245 -0
- package/src/filiale/bazhong/ic_detail/ChangeMeterQueryUser.vue +370 -0
- package/src/filiale/bazhong/sale.js +8 -0
- package/src/filiale/beifangshiye/OtherChargeNew.vue +625 -625
- package/src/filiale/lixianV3/ArrearsQuery.vue +938 -938
- package/src/filiale/lixianV3/InsuranceChargesDetails.vue +425 -425
- package/src/filiale/meihekou/common/userinfo_detail/ic_detail/MachineRecordQuery.vue +281 -281
- package/src/filiale/qianneng/revenue/sms/AccountMessageList.vue +508 -508
- package/src/filiale/ronghao/ArrearsQuery.vue +974 -974
- package/src/filiale/ronghao/CardService.js +2144 -2144
- package/src/filiale/ronghao/InsuranceManage.vue +58 -58
- package/src/filiale/ronghao/MachineChargeService.js +149 -149
- package/src/filiale/ronghao/NoCardMeterCenter.vue +534 -534
- package/src/filiale/ronghao/PaymentCode.vue +174 -174
- package/src/filiale/ronghao/PriceChangeCompensation/CompensationManage.vue +26 -26
- package/src/filiale/ronghao/PriceChangeCompensation/IotCompensation.vue +318 -318
- package/src/filiale/ronghao/PriceChangeCompensation/JbCompensation.vue +343 -343
- package/src/filiale/ronghao/PriceChangeCompensation/SurplusRecordDetail.vue +74 -74
- package/src/filiale/ronghao/ReplaceCardManage.vue +415 -415
- package/src/filiale/ronghao/Upload.vue +654 -654
- package/src/filiale/ronghao/cardDown.vue +1141 -1141
- package/src/filiale/ronghao/changemeterOperate.vue +315 -315
- package/src/filiale/ronghao/fillgasSpecific.vue +313 -313
- package/src/filiale/ronghao/ic_detail/ChargeRecordQuery.vue +106 -106
- package/src/filiale/ronghao/ic_detail/WatchCollection.vue +115 -115
- package/src/filiale/ronghao/ic_detail/WebHandQueryUser.vue +411 -411
- package/src/filiale/ronghao/machineDown.vue +1176 -1176
- package/src/filiale/ronghao/replacementSingleInfoOperation.vue +315 -315
- package/src/filiale/ronghao/specificInformation.vue +537 -537
- package/src/filiale/yangchun/ChargeList.vue +954 -954
- package/src/filiale/yuncheng/changemeterListMaintain.vue +504 -504
- package/src/filiale/zhongsheng/BlackListList.vue +293 -293
- package/src/filiale/zhongyi/HandQueryUser.vue +389 -389
- package/src/main.js +33 -33
- package/src/plugins/CardService.js +2217 -2217
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="binary flex">
|
|
3
|
+
<div class="row binary-left flex" style="width:99%;height:98%;margin-bottom:0">
|
|
4
|
+
<div class="auto">
|
|
5
|
+
<user-base-info-new :row="row"
|
|
6
|
+
:buttonshow="buttonshow"
|
|
7
|
+
@refresh="search"
|
|
8
|
+
@cancel-main="cancel"
|
|
9
|
+
@cancel-re="cancelRe"
|
|
10
|
+
@search-main="search">
|
|
11
|
+
</user-base-info-new>
|
|
12
|
+
</div>
|
|
13
|
+
<saletabbut v-if="row" v-ref:list style="height:72%;margin-top: 1%;overflow-y: scroll">
|
|
14
|
+
<saletab header="流水查询" v-if="permission('流水查询')">
|
|
15
|
+
<record-query-user :row="row"></record-query-user>
|
|
16
|
+
</saletab>
|
|
17
|
+
<saletab header="机表流水查询" v-if="permission('机表流水查询') && row.f_meter_type.includes('机表')">
|
|
18
|
+
<machine-record-query :row="row" v-if="show === '机表流水查询'" @deal-msg="dealMsg"></machine-record-query>
|
|
19
|
+
</saletab>
|
|
20
|
+
<saletab header="收费查询" v-if="!newWebHand && permission('收费查询')">
|
|
21
|
+
<charge-query-user :row="row" v-if="show === '收费查询'" @deal-msg="dealMsg"></charge-query-user>
|
|
22
|
+
</saletab>
|
|
23
|
+
<saletab header="收费查询" v-if="newWebHand && permission('收费查询')">
|
|
24
|
+
<charge-query-user :row="row" v-if="show === '收费查询'" @deal-msg="dealMsg"></charge-query-user>
|
|
25
|
+
</saletab>
|
|
26
|
+
<saletab header="累购查询" v-if="permission('累购查询')">
|
|
27
|
+
<Repurchase :row="row" v-if="show === '累购查询'" @deal-msg="dealMsg"></Repurchase>
|
|
28
|
+
</saletab>
|
|
29
|
+
<saletab header="下账查询" v-if="!newWebHand && row.f_meter_type.includes('物联网表') && permission('自动下账查询')">
|
|
30
|
+
<automatic-purse :row="row" @deal-msg="dealMsg"></automatic-purse>
|
|
31
|
+
</saletab>
|
|
32
|
+
<saletab header="下账查询" v-if="newWebHand && row.f_meter_type.includes('物联网表') && permission('自动下账查询')">
|
|
33
|
+
<web-automatic-purse :row="row" @deal-msg="dealMsg"></web-automatic-purse>
|
|
34
|
+
</saletab>
|
|
35
|
+
<saletab header="抄表记录" v-if="row.f_meter_type.includes('卡表') && permission('抄表记录')">
|
|
36
|
+
<card-hand-record :row="row" v-if="show === '抄表记录'" @deal-msg="dealMsg"></card-hand-record>
|
|
37
|
+
</saletab>
|
|
38
|
+
<saletab header="抄表记录" v-if="!newWebHand && !row.f_meter_type.includes('卡表') && permission('抄表记录')">
|
|
39
|
+
<hand-query-user :row="row" v-if="show === '抄表记录'" @deal-msg="dealMsg"></hand-query-user>
|
|
40
|
+
</saletab>
|
|
41
|
+
<saletab header="抄表记录" v-if="newWebHand && !row.f_meter_type.includes('卡表') && permission('抄表记录')">
|
|
42
|
+
<web-hand-query-user :row="row" v-if="show === '抄表记录'" @deal-msg="dealMsg"></web-hand-query-user>
|
|
43
|
+
</saletab>
|
|
44
|
+
<saletab header="补卡查询" v-if="row.f_meter_type.includes('卡表') && permission('补卡查询')">
|
|
45
|
+
<fill-card-query-user :row="row" v-if="show === '补卡查询'" @deal-msg="dealMsg"></fill-card-query-user>
|
|
46
|
+
</saletab>
|
|
47
|
+
<saletab header="补气查询" v-if="permission('补气查询')">
|
|
48
|
+
<fill-gas-query-user :row="row" v-if="show === '补气查询'" @deal-msg="dealMsg"></fill-gas-query-user>
|
|
49
|
+
</saletab>
|
|
50
|
+
<saletab header="换表查询" v-if="permission('换表查询')">
|
|
51
|
+
<change-meter-query-user :row="row" v-if="show === '换表查询'" @deal-msg="dealMsg"></change-meter-query-user>
|
|
52
|
+
</saletab>
|
|
53
|
+
<saletab header="其他收费" v-if="permission('其他收费')">
|
|
54
|
+
<other-charge-query-user :row="row" v-if="show === '其他收费'" @deal-msg="dealMsg"></other-charge-query-user>
|
|
55
|
+
</saletab>
|
|
56
|
+
<saletab header="保险收费记录" v-if="permission('保险收费记录')">
|
|
57
|
+
<insurance-charges-record :row="row" @deal-msg="dealMsg"></insurance-charges-record>
|
|
58
|
+
</saletab>
|
|
59
|
+
<saletab header="垃圾费收费记录" v-if="permission('垃圾费收费记录')">
|
|
60
|
+
<garbage-record-list :row="row" @deal-msg="dealMsg"></garbage-record-list>
|
|
61
|
+
</saletab>
|
|
62
|
+
<saletab header="过户查询" v-if="permission('过户查询')">
|
|
63
|
+
<transfer-query-user :row="row" v-if="show === '过户查询'" @deal-msg="dealMsg"></transfer-query-user>
|
|
64
|
+
</saletab>
|
|
65
|
+
<saletab header="价格调整" v-if="permission('价格调整')">
|
|
66
|
+
<price-change-query-user :row="row" v-if="show === '价格调整'" @deal-msg="dealMsg"></price-change-query-user>
|
|
67
|
+
</saletab>
|
|
68
|
+
<saletab header="附件查看" v-if="permission('附件查看')">
|
|
69
|
+
<upload-file-history :row="row" v-if="show === '附件查看'" @deal-msg="dealMsg"></upload-file-history>
|
|
70
|
+
</saletab>
|
|
71
|
+
<saletab header="变更记录" v-if="permission('变更记录')">
|
|
72
|
+
<change-record :row="row" v-if="show === '变更记录'" @deal-msg="dealMsg"></change-record>
|
|
73
|
+
</saletab>
|
|
74
|
+
<saletab header="指令查看" v-if="row.f_meter_type.includes('物联网表') && permission('指令查看')">
|
|
75
|
+
<query-instruct :row="row" v-if="show === '指令查看'" @deal-msg="dealMsg"></query-instruct>
|
|
76
|
+
</saletab>
|
|
77
|
+
<saletab header="历史指令查看" v-if="row.f_meter_type.includes('物联网表') && permission('历史指令查看')">
|
|
78
|
+
<query-history-instruct :row="row" v-if="show === '历史指令查看'" @deal-msg="dealMsg"></query-history-instruct>
|
|
79
|
+
</saletab>
|
|
80
|
+
<saletab header="异常报警" v-if="row.f_meter_type.includes('物联网表') && permission('异常报警')">
|
|
81
|
+
<watch-warning :row="row" v-if="show === '异常报警'" @deal-msg="dealMsg"></watch-warning>
|
|
82
|
+
</saletab>
|
|
83
|
+
<saletab header="表具采集" v-if="row.f_meter_type.includes('物联网表') && permission('表具采集')">
|
|
84
|
+
<watch-collection :row="row" v-if="show === '表具采集'" @deal-msg="dealMsg"></watch-collection>
|
|
85
|
+
</saletab>
|
|
86
|
+
<saletab header="调价补差" v-if="permission('调价补差')">
|
|
87
|
+
<price-adjustment-query-user :row="row" v-if="show === '调价补差'" @deal-msg="dealMsg"></price-adjustment-query-user>
|
|
88
|
+
</saletab>
|
|
89
|
+
<saletab header="设备查询" v-if="permission('设备查询')">
|
|
90
|
+
<deveice-record :row="row" v-if="show === '设备查询'" @deal-msg="dealMsg"></deveice-record>
|
|
91
|
+
</saletab>
|
|
92
|
+
<saletab header="流量计参数查看" v-if="permission('流量计参数查看')">
|
|
93
|
+
<meter-param :row="row" v-if="show === '流量计参数查看'" @deal-msg="dealMsg"></meter-param>
|
|
94
|
+
</saletab>
|
|
95
|
+
<saletab header="表使用量图表" v-if="permission('流量计参数查看')">
|
|
96
|
+
<table-usage-chart :row="row" v-if="show === '表使用量图表'" @deal-msg="dealMsg"></table-usage-chart>
|
|
97
|
+
</saletab>
|
|
98
|
+
<saletab header="用户设备查询" v-if="permission('用户设备查看')">
|
|
99
|
+
<user-device-query :row="row" v-if="show === '用户设备查询'" @deal-msg="dealMsg"></user-device-query>
|
|
100
|
+
</saletab>
|
|
101
|
+
<saletab header="合同查看" v-if="permission('合同查看')">
|
|
102
|
+
<contract-signing-list :row="row" v-if="show === '合同查看'" @deal-msg="dealMsg"></contract-signing-list>
|
|
103
|
+
</saletab>
|
|
104
|
+
<saletab header="用户重点记录" v-if="permission('用户重点记录')">
|
|
105
|
+
<user-key-record :row="row" @deal-msg="dealMsg"></user-key-record>
|
|
106
|
+
</saletab>
|
|
107
|
+
<saletab header="维修记录" v-if="permission('维修记录')">
|
|
108
|
+
<repair-list :row="row" @deal-msg="dealMsg"></repair-list>
|
|
109
|
+
</saletab>
|
|
110
|
+
<saletab header="安检记录" v-if="permission('安检记录')">
|
|
111
|
+
<security-check-info :row="row" @deal-msg="dealMsg"></security-check-info>
|
|
112
|
+
</saletab>
|
|
113
|
+
</saletabbut>
|
|
114
|
+
</div>
|
|
115
|
+
</div>
|
|
116
|
+
</template>
|
|
117
|
+
|
|
118
|
+
<script>
|
|
119
|
+
import {HttpResetClass} from 'vue-client'
|
|
120
|
+
// 导入IC卡相关查询界面
|
|
121
|
+
import ChangeMeterQueryUser from './ic_detail/ChangeMeterQueryUser.vue'
|
|
122
|
+
import ChargeQueryUser from '../../components/common/userinfo_detail/ic_detail/ChargeQueryUser.vue'
|
|
123
|
+
import ChargeRecordQueryUser from '../../components/common/userinfo_detail/ic_detail/ChargeRecordQuery.vue'
|
|
124
|
+
import FillCardQueryUser from '../../components/common/userinfo_detail/ic_detail/FillCardQueryUser.vue'
|
|
125
|
+
import HandQueryUser from '../../components/common/userinfo_detail/ic_detail/HandQueryUser.vue'
|
|
126
|
+
import OtherChargeQueryUser from '../../components/common/userinfo_detail/ic_detail/OtherChargeQueryUser.vue'
|
|
127
|
+
import RecordQueryUser from '../../components/common/userinfo_detail/ic_detail/RecordQueryUser.vue'
|
|
128
|
+
import TransferQueryUser from '../../components/common/userinfo_detail/ic_detail/TransferQueryUser.vue'
|
|
129
|
+
import CardHandRecord from '../../components/common/userinfo_detail/ic_detail/CardHandRecord.vue'
|
|
130
|
+
import AutomaticPurse from '../../components/common/userinfo_detail/ic_detail/AutomaticPurse.vue'
|
|
131
|
+
import Repurchase from '../../components/common/userinfo_detail/ic_detail/Repurchase.vue'
|
|
132
|
+
import MachineRecordQuery from '../../components/common/userinfo_detail/ic_detail/MachineRecordQuery.vue'
|
|
133
|
+
import WebAutomaticPurse from '../../components/common/userinfo_detail/ic_detail/WebAutomaticPurse.vue'
|
|
134
|
+
import WebChargeQueryUser from '../../components/common/userinfo_detail/ic_detail/WebChargeQueryUser.vue'
|
|
135
|
+
import WebHandQueryUser from '../../components/common/userinfo_detail/ic_detail/WebHandQueryUser.vue'
|
|
136
|
+
import UserDeviceQuery from '../../components/common/userinfo_detail/ic_detail/UserDeviceQuery.vue'
|
|
137
|
+
import contractSigningList from '../../components/common/userinfo_detail/ic_detail/contractSigningList.vue'
|
|
138
|
+
import UserKeyRecord from '../../components/common/userinfo_detail/ic_detail/UserKeyRecord.vue'
|
|
139
|
+
import RepairList from '../../components/common/userinfo_detail/ic_detail/RepairList.vue'
|
|
140
|
+
import SecurityCheckInfo from '../../components/common/userinfo_detail/ic_detail/SecuritycheckInfo.vue'
|
|
141
|
+
// 导入物联网相关查询
|
|
142
|
+
import QueryInstruct from '../../components/common/userinfo_detail/iot_detail/QueryInstruct.vue'
|
|
143
|
+
import QueryHistoryInstruct from '../../components/common/userinfo_detail/iot_detail/QueryHistoryInstruct.vue'
|
|
144
|
+
import WatchCollection from '../../components/common/userinfo_detail/iot_detail/WatchCollection.vue'
|
|
145
|
+
import WatchWarning from '../../components/common/userinfo_detail/iot_detail/WatchWarning.vue'
|
|
146
|
+
import PriceChangeQueryUser from '../../components/common/userinfo_detail/ic_detail/PriceChangeQueryUser.vue'
|
|
147
|
+
import ChangeRecord from '../../components/common/userinfo_detail/ic_detail/ChangeRecord.vue'
|
|
148
|
+
import PriceAdjustmentQueryUser from '../../components/common/userinfo_detail/ic_detail/PriceAdjustmentQueryUser.vue'
|
|
149
|
+
import MeterParam from '../../components/common/userinfo_detail/ic_detail/MeterParam.vue'
|
|
150
|
+
import DeveiceRecord from '../../components/common/userinfo_detail/ic_detail/DeveiceRecord.vue'
|
|
151
|
+
import GarbageRecordList from '../../components/common/userinfo_detail/ic_detail/GarbageRecordList.vue'
|
|
152
|
+
import InsuranceChargesRecord from '../../components/common/userinfo_detail/ic_detail/InsuranceChargesRecord.vue'
|
|
153
|
+
|
|
154
|
+
export default {
|
|
155
|
+
title: '用户详细信息',
|
|
156
|
+
props: ['f_userfiles_id', 'f_userinfo_id', 'f_userinfo_code', 'parentname', 'buttonshow'],
|
|
157
|
+
components: {
|
|
158
|
+
InsuranceChargesRecord,
|
|
159
|
+
GarbageRecordList,
|
|
160
|
+
SecurityCheckInfo,
|
|
161
|
+
RepairList,
|
|
162
|
+
PriceAdjustmentQueryUser,
|
|
163
|
+
PriceChangeQueryUser,
|
|
164
|
+
AutomaticPurse,
|
|
165
|
+
WebAutomaticPurse,
|
|
166
|
+
WebChargeQueryUser,
|
|
167
|
+
WebHandQueryUser,
|
|
168
|
+
Repurchase,
|
|
169
|
+
ChangeMeterQueryUser,
|
|
170
|
+
ChargeQueryUser,
|
|
171
|
+
ChargeRecordQueryUser,
|
|
172
|
+
FillCardQueryUser,
|
|
173
|
+
HandQueryUser,
|
|
174
|
+
OtherChargeQueryUser,
|
|
175
|
+
RecordQueryUser,
|
|
176
|
+
TransferQueryUser,
|
|
177
|
+
WatchWarning,
|
|
178
|
+
WatchCollection,
|
|
179
|
+
QueryInstruct,
|
|
180
|
+
QueryHistoryInstruct,
|
|
181
|
+
ChangeRecord,
|
|
182
|
+
CardHandRecord,
|
|
183
|
+
MeterParam,
|
|
184
|
+
DeveiceRecord,
|
|
185
|
+
MachineRecordQuery,
|
|
186
|
+
UserDeviceQuery,
|
|
187
|
+
contractSigningList,
|
|
188
|
+
UserKeyRecord
|
|
189
|
+
},
|
|
190
|
+
data () {
|
|
191
|
+
return {
|
|
192
|
+
row: null,
|
|
193
|
+
name: '自动下账查询',
|
|
194
|
+
newWebHand: this.$appdata.getSingleValue('新抄表'),
|
|
195
|
+
show: ''
|
|
196
|
+
}
|
|
197
|
+
},
|
|
198
|
+
ready () {
|
|
199
|
+
this.search()
|
|
200
|
+
console.log(this.$login)
|
|
201
|
+
},
|
|
202
|
+
methods: {
|
|
203
|
+
permission (name) {
|
|
204
|
+
if (this.$login.r.find(value => value == '收费综合查询')) {
|
|
205
|
+
if (!this.$login.r.find(value => value == name)) {
|
|
206
|
+
return false
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
return true
|
|
210
|
+
},
|
|
211
|
+
async search () {
|
|
212
|
+
let http = new HttpResetClass()
|
|
213
|
+
if (!this.f_userfiles_id && !this.f_userinfo_id && !this.f_userinfo_code) {
|
|
214
|
+
this.$showMessage('用户信息缺失,查询详情信息失败')
|
|
215
|
+
return
|
|
216
|
+
}
|
|
217
|
+
let getBaseInfo = await http.load('POST', 'api/af-revenue/logic/iot_getUserBaseData',
|
|
218
|
+
{
|
|
219
|
+
data: {
|
|
220
|
+
f_userfiles_id: this.f_userfiles_id,
|
|
221
|
+
f_userinfo_id: this.f_userinfo_id,
|
|
222
|
+
f_userinfo_code: this.f_userinfo_code
|
|
223
|
+
}
|
|
224
|
+
}, {resolveMsg: null, rejectMsg: '获取基本信息出错'})
|
|
225
|
+
this.row = getBaseInfo.data
|
|
226
|
+
this.row.parentname = this.parentname || ''
|
|
227
|
+
},
|
|
228
|
+
cancel (val) {
|
|
229
|
+
// 判断当前是否在 iframe 环境中
|
|
230
|
+
this.$emit('cancel-main', val)
|
|
231
|
+
},
|
|
232
|
+
cancelRe (val) {
|
|
233
|
+
this.$emit('cancel-re', val)
|
|
234
|
+
},
|
|
235
|
+
butOper (val) {
|
|
236
|
+
this.name = val
|
|
237
|
+
}
|
|
238
|
+
},
|
|
239
|
+
watch: {
|
|
240
|
+
'f_userinfo_id' () {
|
|
241
|
+
this.search()
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
</script>
|
|
@@ -0,0 +1,370 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="flex" style="justify-content: space-between;">
|
|
3
|
+
<div @keyup.enter="search" style="">
|
|
4
|
+
<criteria-paged :model="model" v-ref:paged>
|
|
5
|
+
<criteria @condition-changed='$parent.search' partial='criteria' v-ref:criteria>
|
|
6
|
+
<div class="form-horizontal select-overspread container-fluid auto" novalidate partial>
|
|
7
|
+
<div class="row">
|
|
8
|
+
<div class="col-sm-2 form-group">
|
|
9
|
+
<label class="font_normal_body">开始时间</label>
|
|
10
|
+
<datepicker :format="'yyyy-MM-dd'" :value.sync="model.f_start_date"
|
|
11
|
+
class="datepicker"
|
|
12
|
+
condition="f_operate_date >= '{} 00:00:00' "
|
|
13
|
+
placeholder="起始时间"
|
|
14
|
+
style="width:60%"
|
|
15
|
+
v-model="model.f_start_date"
|
|
16
|
+
></datepicker>
|
|
17
|
+
</div>
|
|
18
|
+
<div class="col-sm-2 form-group">
|
|
19
|
+
<label class="font_normal_body">结束时间</label>
|
|
20
|
+
<datepicker :format="'yyyy-MM-dd'" :value.sync="model.f_end_date"
|
|
21
|
+
class="datepicker"
|
|
22
|
+
condition="f_operate_date <= '{} 23:59:59'"
|
|
23
|
+
placeholder="结束时间"
|
|
24
|
+
style="width:60%"
|
|
25
|
+
v-model="model.f_end_date"
|
|
26
|
+
></datepicker>
|
|
27
|
+
</div>
|
|
28
|
+
<div class="col-sm-2 form-group">
|
|
29
|
+
<label class="font_normal_body">换表类型</label>
|
|
30
|
+
<v-select :options='$parent.$parent.changeType' :value.sync="model.f_type"
|
|
31
|
+
close-on-select
|
|
32
|
+
condition="f_type='{}'"
|
|
33
|
+
placeholder='换表类型'
|
|
34
|
+
style="width:60%"
|
|
35
|
+
v-model="model.f_type"
|
|
36
|
+
></v-select>
|
|
37
|
+
</div>
|
|
38
|
+
<div class="col-sm-2 form-group">
|
|
39
|
+
<label class="font_normal_body">换表状态</label>
|
|
40
|
+
<v-select :value.sync="model.f_state" v-model='model.f_state'
|
|
41
|
+
style="width:60%"
|
|
42
|
+
:options='$parent.$parent.isstates' placeholder='换表状态'
|
|
43
|
+
close-on-select
|
|
44
|
+
condition="f_state = '{}'"></v-select>
|
|
45
|
+
</div>
|
|
46
|
+
<div class="col-sm-2 form-group">
|
|
47
|
+
<label class="font_normal_body">新表封号</label>
|
|
48
|
+
<input type="text" style="width:60%" class="input_search" v-model="model.f_metertitles"
|
|
49
|
+
condition="f_metertitles = '{}' " placeholder="新表封号">
|
|
50
|
+
</div>
|
|
51
|
+
<div style="float: right">
|
|
52
|
+
<button @click="search()" class="button_search" style="margin-right: 10px" v-el:cba>查询</button>
|
|
53
|
+
<print-data :defaultfield="$parent.$parent.defaultfield" :field="$parent.$parent.fields"
|
|
54
|
+
:is-selected="true" :model="$parent.$parent.printModel"
|
|
55
|
+
@print-data="$parent.$parent.print()" print-name="换表流水"></print-data>
|
|
56
|
+
</div>
|
|
57
|
+
</div>
|
|
58
|
+
</div>
|
|
59
|
+
</criteria>
|
|
60
|
+
<data-grid :model="model" class="list_area table_sy" partial='list' v-ref:grid>
|
|
61
|
+
<template partial='head'>
|
|
62
|
+
<tr>
|
|
63
|
+
<th>
|
|
64
|
+
<nobr>换表类型</nobr>
|
|
65
|
+
</th>
|
|
66
|
+
<th>
|
|
67
|
+
<nobr>旧表底数</nobr>
|
|
68
|
+
</th>
|
|
69
|
+
<th>
|
|
70
|
+
<nobr>新表底数</nobr>
|
|
71
|
+
</th>
|
|
72
|
+
<th>
|
|
73
|
+
<nobr>旧表剩余</nobr>
|
|
74
|
+
</th>
|
|
75
|
+
<th>
|
|
76
|
+
<nobr>旧表品牌</nobr>
|
|
77
|
+
</th>
|
|
78
|
+
<th>
|
|
79
|
+
<nobr>新表品牌</nobr>
|
|
80
|
+
</th>
|
|
81
|
+
<th>
|
|
82
|
+
<nobr>旧表号</nobr>
|
|
83
|
+
</th>
|
|
84
|
+
<th>
|
|
85
|
+
<nobr>新表号</nobr>
|
|
86
|
+
</th>
|
|
87
|
+
<th>
|
|
88
|
+
<nobr>换表费</nobr>
|
|
89
|
+
</th>
|
|
90
|
+
<th>
|
|
91
|
+
<nobr>操作人</nobr>
|
|
92
|
+
</th>
|
|
93
|
+
<th>
|
|
94
|
+
<nobr>状态</nobr>
|
|
95
|
+
</th>
|
|
96
|
+
<th>
|
|
97
|
+
<nobr>换表人</nobr>
|
|
98
|
+
</th>
|
|
99
|
+
<th>
|
|
100
|
+
<nobr>换表日期</nobr>
|
|
101
|
+
</th>
|
|
102
|
+
<th>
|
|
103
|
+
<nobr>换表原因</nobr>
|
|
104
|
+
</th>
|
|
105
|
+
<th>
|
|
106
|
+
<nobr>新表封号</nobr>
|
|
107
|
+
</th>
|
|
108
|
+
<th>
|
|
109
|
+
<nobr>旧表图片</nobr>
|
|
110
|
+
</th>
|
|
111
|
+
<th>
|
|
112
|
+
<nobr>新表图片</nobr>
|
|
113
|
+
</th>
|
|
114
|
+
</tr>
|
|
115
|
+
</template>
|
|
116
|
+
<template partial='body' partial='list' v-ref:grid>
|
|
117
|
+
<tr>
|
|
118
|
+
<td style="text-align: center;">
|
|
119
|
+
<nobr>{{ row.f_type }}</nobr>
|
|
120
|
+
</td>
|
|
121
|
+
<td style="text-align: center;">
|
|
122
|
+
<nobr>{{ row.f_using_base_old }}</nobr>
|
|
123
|
+
</td>
|
|
124
|
+
<td style="text-align: center;">
|
|
125
|
+
<nobr>{{ row.f_initial_base_new }}</nobr>
|
|
126
|
+
</td>
|
|
127
|
+
<td style="text-align: center;">
|
|
128
|
+
<nobr>{{ row.f_remanent_gas }}</nobr>
|
|
129
|
+
</td>
|
|
130
|
+
<td style="text-align: center;">
|
|
131
|
+
<nobr>{{ row.f_meter_brand_old }}</nobr>
|
|
132
|
+
</td>
|
|
133
|
+
<td style="text-align: center;">
|
|
134
|
+
<nobr>{{ row.f_meter_brand }}</nobr>
|
|
135
|
+
</td>
|
|
136
|
+
<td style="text-align: center;">
|
|
137
|
+
<nobr>{{ row.f_meternumber_old }}</nobr>
|
|
138
|
+
</td>
|
|
139
|
+
<td style="text-align: center;">
|
|
140
|
+
<nobr>{{ row.f_meternumber }}</nobr>
|
|
141
|
+
</td>
|
|
142
|
+
<td style="text-align: center;">
|
|
143
|
+
<nobr>{{ row.f_changemeter_fee }}</nobr>
|
|
144
|
+
</td>
|
|
145
|
+
<td style="text-align: center;">
|
|
146
|
+
<nobr>{{ row.f_operator }}</nobr>
|
|
147
|
+
</td>
|
|
148
|
+
<td style="text-align: center;">
|
|
149
|
+
<nobr>{{ row.f_state }}</nobr>
|
|
150
|
+
</td>
|
|
151
|
+
<td style="text-align: center;">
|
|
152
|
+
<nobr>{{ row.f_change_operator }}</nobr>
|
|
153
|
+
</td>
|
|
154
|
+
<td style="text-align: center;">
|
|
155
|
+
<nobr>{{ row.f_operate_date }}</nobr>
|
|
156
|
+
</td>
|
|
157
|
+
<td style="text-align: center;">
|
|
158
|
+
<nobr>
|
|
159
|
+
<span v-if="row.f_changetables_reason">{{ row.f_changetables_reason }}/</span>
|
|
160
|
+
<span v-if="row.f_reason">{{ row.f_reason }}/</span>
|
|
161
|
+
<span v-if="row.f_othereason">{{ row.f_othereason }}/</span>
|
|
162
|
+
<span v-if="row.f_comments">{{ row.f_comments }}</span>
|
|
163
|
+
</nobr>
|
|
164
|
+
</td>
|
|
165
|
+
<td style="text-align: center;">
|
|
166
|
+
<nobr>{{ row.f_metertitles }}</nobr>
|
|
167
|
+
</td>
|
|
168
|
+
<td style="text-align: center;">
|
|
169
|
+
<nobr>
|
|
170
|
+
<button v-if="row.f_table_path_old"
|
|
171
|
+
class="btn btn-link"
|
|
172
|
+
@click.stop="$parent.$parent.$parent.imgShow(row.f_table_path_old)">
|
|
173
|
+
旧表图片
|
|
174
|
+
</button>
|
|
175
|
+
</nobr>
|
|
176
|
+
</td>
|
|
177
|
+
<td style="text-align: center;">
|
|
178
|
+
<nobr>
|
|
179
|
+
<button v-if="row.f_table_path_new"
|
|
180
|
+
class="btn btn-link"
|
|
181
|
+
@click.stop="$parent.$parent.$parent.imgShow(row.f_table_path_new)">
|
|
182
|
+
新表图片
|
|
183
|
+
</button>
|
|
184
|
+
</nobr>
|
|
185
|
+
</td>
|
|
186
|
+
</tr>
|
|
187
|
+
</template>
|
|
188
|
+
<template partial='foot'></template>
|
|
189
|
+
</data-grid>
|
|
190
|
+
</criteria-paged>
|
|
191
|
+
</div>
|
|
192
|
+
<modal :show.sync="imageShow" v-ref:modal :backdrop="true" coverstyle="modalContentRight">
|
|
193
|
+
<header slot="modal-header" class="modal-header">
|
|
194
|
+
抄表图像识别照片
|
|
195
|
+
</header>
|
|
196
|
+
<article slot="modal-body" class="modal-body">
|
|
197
|
+
<div class="from-group">
|
|
198
|
+
<img-self-sale-plus :src="imageSrc" :list="imageSrc" :width="750" :height="750">
|
|
199
|
+
</img-self-sale-plus>
|
|
200
|
+
</div>
|
|
201
|
+
</article>
|
|
202
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
203
|
+
<button type="button" class="btn btn-success" @click='imgClose'>关闭</button>
|
|
204
|
+
</footer>
|
|
205
|
+
</modal>
|
|
206
|
+
</div>
|
|
207
|
+
</template>
|
|
208
|
+
|
|
209
|
+
<script>
|
|
210
|
+
import {HttpResetClass, PagedList} from 'vue-client'
|
|
211
|
+
|
|
212
|
+
export default {
|
|
213
|
+
title: '换表查询',
|
|
214
|
+
data () {
|
|
215
|
+
return {
|
|
216
|
+
condition: '1=1',
|
|
217
|
+
model: new PagedList('api/af-revenue/sql/sale_ChangeMeterQuery', 20),
|
|
218
|
+
// 控制单选
|
|
219
|
+
radio: [],
|
|
220
|
+
// 选中的页
|
|
221
|
+
all: [],
|
|
222
|
+
imageSrc: '',
|
|
223
|
+
imageShow: false,
|
|
224
|
+
isstates: this.$appdata.getParam('是否有效') ? [{
|
|
225
|
+
label: '全部',
|
|
226
|
+
value: ''
|
|
227
|
+
}, ...this.$appdata.getParam('是否有效')] : [],
|
|
228
|
+
// row数据
|
|
229
|
+
rowsdata: [],
|
|
230
|
+
fields: {
|
|
231
|
+
'f_userinfo_code': '客户编号',
|
|
232
|
+
'f_user_name': '客户姓名',
|
|
233
|
+
'f_type': '换表类型',
|
|
234
|
+
'f_meter_base': '旧表底数',
|
|
235
|
+
'f_newmeter_base': '新表底数',
|
|
236
|
+
'f_changemeter_fee': '换表费',
|
|
237
|
+
'f_operator': '操作员',
|
|
238
|
+
'f_metertitles': '新表封号',
|
|
239
|
+
'f_changemeter_date': '换表日期'
|
|
240
|
+
},
|
|
241
|
+
defaultfield: [
|
|
242
|
+
'f_userinfo_code', 'f_user_name', 'f_type', 'f_meter_base', 'f_newmeter_base', 'f_changemeter_fee', 'f_operator', 'f_changemeter_date'
|
|
243
|
+
],
|
|
244
|
+
printModel: {
|
|
245
|
+
rows: []
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
},
|
|
249
|
+
props: ['row'],
|
|
250
|
+
ready () {
|
|
251
|
+
this.$refs.paged.$refs.criteria.search()
|
|
252
|
+
},
|
|
253
|
+
methods: {
|
|
254
|
+
async search () {
|
|
255
|
+
this.condition = `${this.$refs.paged.$refs.criteria.condition} and f_user_id = '${this.row.f_user_id}'`
|
|
256
|
+
this.model.search(this.condition, this.model)
|
|
257
|
+
let http = new HttpResetClass()
|
|
258
|
+
let res = await http.load('POST', 'api/af-revenue/sql/sale_ChangeMeterQuery', {
|
|
259
|
+
data: {
|
|
260
|
+
condition: this.condition
|
|
261
|
+
}
|
|
262
|
+
}, {resolveMsg: null, rejectMsg: null})
|
|
263
|
+
this.printModel.rows = res.data
|
|
264
|
+
},
|
|
265
|
+
// 多选框初始化
|
|
266
|
+
selectInit () {
|
|
267
|
+
this.rowsdata = []
|
|
268
|
+
this.all = []
|
|
269
|
+
this.radio = []
|
|
270
|
+
},
|
|
271
|
+
print () {
|
|
272
|
+
this.selectInit()
|
|
273
|
+
},
|
|
274
|
+
imgClose () {
|
|
275
|
+
this.imageShow = false
|
|
276
|
+
this.imageSrc = ''
|
|
277
|
+
},
|
|
278
|
+
imgShow (val) {
|
|
279
|
+
this.imageSrc = `api/af-revenue/file/image/` + val
|
|
280
|
+
this.imageShow = true
|
|
281
|
+
},
|
|
282
|
+
select () {
|
|
283
|
+
let index = this.model.pageIndex - 1
|
|
284
|
+
if (!this.radio[index]) {
|
|
285
|
+
this.radio.$set(index, [])
|
|
286
|
+
}
|
|
287
|
+
if (this.all[index]) {
|
|
288
|
+
// 数据
|
|
289
|
+
this.rowsdata[index] = Object.assign([], this.model.rows)
|
|
290
|
+
// 勾选
|
|
291
|
+
for (let i = 0; i < this.model.rows.length; i++) {
|
|
292
|
+
this.radio[index].$set(i, true)
|
|
293
|
+
}
|
|
294
|
+
} else {
|
|
295
|
+
// 数据
|
|
296
|
+
this.rowsdata[index] = []
|
|
297
|
+
// 不勾选
|
|
298
|
+
for (let i = 0; i < this.model.rows.length; i++) {
|
|
299
|
+
this.radio[index].$set(i, false)
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
let z = 0
|
|
303
|
+
for (let i = 0; i < this.all.length; i++) {
|
|
304
|
+
for (let j = 0; this.rowsdata[i] && j < this.rowsdata[i].length; j++) {
|
|
305
|
+
this.printModel.rows[z++] = this.rowsdata[i][j]
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
},
|
|
309
|
+
selectOne (event, row, i) {
|
|
310
|
+
let index = this.model.pageIndex - 1
|
|
311
|
+
if (!this.rowsdata[index]) {
|
|
312
|
+
this.rowsdata[index] = []
|
|
313
|
+
}
|
|
314
|
+
if (!this.radio[index]) {
|
|
315
|
+
this.radio.$set(index, [])
|
|
316
|
+
}
|
|
317
|
+
if (event.target.checked) {
|
|
318
|
+
// 数据
|
|
319
|
+
this.rowsdata[index][i] = row
|
|
320
|
+
// 勾选
|
|
321
|
+
this.radio[index].$set(i, true)
|
|
322
|
+
// 判断是否全部选中
|
|
323
|
+
var allState = true
|
|
324
|
+
if (this.model.rows.length != this.radio[index].length) {
|
|
325
|
+
allState = false
|
|
326
|
+
}
|
|
327
|
+
for (var state of this.radio[index]) {
|
|
328
|
+
if (!state) {
|
|
329
|
+
allState = false
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
if (allState) {
|
|
333
|
+
this.all.$set(index, true)
|
|
334
|
+
} else {
|
|
335
|
+
this.all.$set(index, false)
|
|
336
|
+
}
|
|
337
|
+
} else {
|
|
338
|
+
// 数据
|
|
339
|
+
this.rowsdata[index][i] = []
|
|
340
|
+
// 不勾选
|
|
341
|
+
this.radio[index].$set(i, false)
|
|
342
|
+
// 任意取消一个则全选状态设为false
|
|
343
|
+
this.all.$set(index, false)
|
|
344
|
+
}
|
|
345
|
+
let z = 0
|
|
346
|
+
this.printModel.rows = []
|
|
347
|
+
for (let i = 0; i < this.all.length; i++) {
|
|
348
|
+
for (let j = 0; this.rowsdata[i] && j < this.rowsdata[i].length; j++) {
|
|
349
|
+
if (this.rowsdata[i][j] && this.rowsdata[i][j].f_user_id) {
|
|
350
|
+
this.printModel.rows[z++] = this.rowsdata[i][j]
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
},
|
|
356
|
+
computed: {
|
|
357
|
+
ischecked () {
|
|
358
|
+
return function (index, i) {
|
|
359
|
+
if (!this.radio[index]) {
|
|
360
|
+
return false
|
|
361
|
+
}
|
|
362
|
+
return this.radio[index][i]
|
|
363
|
+
}
|
|
364
|
+
},
|
|
365
|
+
changeType () {
|
|
366
|
+
return [{label: '全部', value: ''}, ...this.$appdata.getParam('换表类型')]
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
</script>
|