sale-client 4.2.98 → 4.2.100

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.
Files changed (68) hide show
  1. package/build/dev-server.js +62 -40
  2. package/index.html +7 -2
  3. package/package.json +1 -1
  4. package/src/App.vue +1 -1
  5. package/src/components/common/userinfo_detail/ic_detail/WebHandQueryUser.vue +2 -2
  6. package/src/components/revenue/HandManager/MeterBookUser.vue +726 -726
  7. package/src/components/revenue/comprehen/ComprehenOperation/QrPay/QrPaymentDetailed.vue +423 -423
  8. package/src/components/revenue/comprehen/Maintenance/hand/handOperate.vue +469 -469
  9. package/src/components/revenue/machineHandManage/ArrearsQuery.vue +938 -938
  10. package/src/components/revenue/machineHandManage/machineDown.vue +10 -0
  11. package/src/filiale/alashan/eticket/EticketRecordList.vue +428 -428
  12. package/src/filiale/bayan/ChargeList.vue +1010 -1010
  13. package/src/filiale/bayan/StockListmain.vue +543 -543
  14. package/src/filiale/bazhong/UserInfoDetailManageNew.vue +245 -245
  15. package/src/filiale/bazhong/ic_detail/ChangeMeterQueryUser.vue +370 -370
  16. package/src/filiale/bazhong/sale.js +8 -8
  17. package/src/filiale/beifangshiye/OtherChargeNew.vue +625 -625
  18. package/src/filiale/lixianV3/ArrearsQuery.vue +938 -938
  19. package/src/filiale/lixianV3/InsuranceChargesDetails.vue +425 -425
  20. package/src/filiale/meihekou/HandManager.vue +1 -1
  21. package/src/filiale/meihekou/UserBaseInfoNew.vue +413 -367
  22. package/src/filiale/meihekou/UserPriceChangeManage.vue +689 -0
  23. package/src/filiale/meihekou/common/userinfo_detail/ic_detail/MachineRecordQuery.vue +281 -281
  24. package/src/filiale/meihekou/handAudit/MeterReadAudit.vue +17 -7
  25. package/src/filiale/meihekou/sale.js +2 -0
  26. package/src/filiale/ronghao/ArrearsQuery.vue +974 -974
  27. package/src/filiale/ronghao/CardService.js +2144 -2144
  28. package/src/filiale/ronghao/InsuranceManage.vue +58 -58
  29. package/src/filiale/ronghao/MachineChargeService.js +149 -149
  30. package/src/filiale/ronghao/PaymentCode.vue +174 -174
  31. package/src/filiale/ronghao/PriceChangeCompensation/CompensationManage.vue +26 -26
  32. package/src/filiale/ronghao/PriceChangeCompensation/IotCompensation.vue +318 -318
  33. package/src/filiale/ronghao/PriceChangeCompensation/JbCompensation.vue +343 -343
  34. package/src/filiale/ronghao/PriceChangeCompensation/SurplusRecordDetail.vue +74 -74
  35. package/src/filiale/ronghao/ReplaceCardManage.vue +415 -415
  36. package/src/filiale/ronghao/Upload.vue +654 -654
  37. package/src/filiale/ronghao/cardDown.vue +1141 -1141
  38. package/src/filiale/ronghao/changemeterOperate.vue +315 -315
  39. package/src/filiale/ronghao/fillgasSpecific.vue +313 -313
  40. package/src/filiale/ronghao/ic_detail/ChargeRecordQuery.vue +106 -106
  41. package/src/filiale/ronghao/ic_detail/WatchCollection.vue +115 -115
  42. package/src/filiale/ronghao/ic_detail/WebHandQueryUser.vue +411 -411
  43. package/src/filiale/ronghao/machineDown.vue +1176 -1176
  44. package/src/filiale/ronghao/replacementSingleInfoOperation.vue +315 -315
  45. package/src/filiale/ronghao/specificInformation.vue +537 -537
  46. package/src/filiale/yangchun/ChargeList.vue +954 -954
  47. package/src/filiale/yuncheng/changemeterListMaintain.vue +504 -504
  48. package/src/filiale/zhongsheng/BlackListList.vue +293 -293
  49. package/src/filiale/zhongyi/HandQueryUser.vue +389 -389
  50. package/src/main.js +2 -2
  51. package/.gradle/5.2.1/fileChanges/last-build.bin +0 -0
  52. package/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
  53. package/.gradle/5.2.1/gc.properties +0 -0
  54. package/.gradle/8.10/checksums/checksums.lock +0 -0
  55. package/.gradle/8.10/dependencies-accessors/gc.properties +0 -0
  56. package/.gradle/8.10/executionHistory/executionHistory.bin +0 -0
  57. package/.gradle/8.10/executionHistory/executionHistory.lock +0 -0
  58. package/.gradle/8.10/fileChanges/last-build.bin +0 -0
  59. package/.gradle/8.10/fileHashes/fileHashes.bin +0 -0
  60. package/.gradle/8.10/fileHashes/fileHashes.lock +0 -0
  61. package/.gradle/8.10/gc.properties +0 -0
  62. package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  63. package/.gradle/buildOutputCleanup/cache.properties +0 -2
  64. package/.gradle/file-system.probe +0 -0
  65. package/.gradle/vcs-1/gc.properties +0 -0
  66. package/.npmignore +0 -12
  67. package/src/.npmignore +0 -1
  68. package/yarn.lock +0 -12221
@@ -1,281 +1,281 @@
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
-
7
- <div class="form-horizontal select-overspread container-fluid auto " novalidate partial>
8
- <div class="row">
9
-
10
- <div class="col-sm-2 form-group">
11
- <label class="font_normal_body">开始时间</label>
12
- <datepicker :format="'yyyy-MM-dd'" :value.sync="model.f_start_date"
13
- class="datepicker"
14
- condition="f_operate_date >= '{} 00:00:00' "
15
- placeholder="起始时间"
16
- style="width:60%"
17
- v-model="model.f_start_date"
18
- ></datepicker>
19
- </div>
20
- <div class="col-sm-2 form-group" >
21
- <label class="font_normal_body" >结束时间</label>
22
- <datepicker :format="'yyyy-MM-dd'" :value.sync="model.f_end_date"
23
- class="datepicker"
24
- condition="f_operate_date <= '{} 23:59:59' "
25
- placeholder="结束时间"
26
- style="width:60%"
27
- v-model="model.f_end_date"
28
- ></datepicker>
29
- </div>
30
- <div class="col-sm-2 form-group">
31
- <label class="font_normal_body">是否有效</label>
32
- <v-select :value.sync="model.f_state" v-model='model.f_state'
33
- style="width:60%"
34
- :options='$parent.$parent.isstates' placeholder='是否有效'
35
- close-on-select
36
- condition="f_state = '{}'"></v-select>
37
- </div>
38
-
39
-
40
- <div style="float: right">
41
- <button @click="search()" class="button_search" style="margin-right: 10px" v-el:cba>查询</button>
42
- <print-data :defaultfield="$parent.$parent.defaultfield" :field="$parent.$parent.fields" :printview="true" :is-selected="true" :model="$parent.$parent.model"
43
- @print-close="$parent.$parent.print()" @print-data="$parent.$parent.print()" print-name="购气流水"></print-data>
44
- <export-excel
45
- :data="{condition: $parent.$parent.model.condition}"
46
- :field="$parent.$parent.fields"
47
- sqlurl="api/af-revenue/logic/saleExport"sql-name="machineRecordQuery"
48
- template-name='机表流水查询'
49
- :choose-col="true">
50
- </export-excel>
51
- </div>
52
- </div>
53
-
54
- </div>
55
- </criteria>
56
- <data-grid :model="model" class="list_area table_sy" partial='list' v-ref:grid>
57
- <template partial='head'>
58
- <tr>
59
- <th><nobr>用户编号</nobr></th>
60
- <th><nobr>姓名</nobr></th>
61
- <th><nobr>住址</nobr></th>
62
- <th><nobr>上期底数</nobr></th>
63
- <th><nobr>本期底数</nobr></th>
64
- <th><nobr>气量</nobr></th>
65
- <th><nobr>应交</nobr></th>
66
- <th><nobr>缴费金额 </nobr></th>
67
- <th><nobr>上期结余</nobr></th>
68
- <th><nobr>本期结余</nobr></th>
69
- <th><nobr>操作类型</nobr></th>
70
- <th><nobr>操作员 </nobr></th>
71
- <th><nobr>操作时间 </nobr></th>
72
- <th><nobr>状态 </nobr></th>
73
- <th><nobr>备注</nobr></th>
74
- </tr>
75
- </template>
76
- <template partial='body' partial='list' v-ref:grid>
77
- <tr >
78
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_userinfo_code}}</td>
79
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_user_name}}</td>
80
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_address}}</td>
81
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_last_tablebase}}</td>
82
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_tablebase}}</td>
83
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_type== '机表收费'? '' : row.gas}}</td>
84
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center;white-space:nowrap;">{{row.f_type == '机表收费'? '' : row.fee}}</td>
85
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center;white-space:nowrap;">{{row.f_type == '抄表记录'? '' : row.f_collection}}</td>
86
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center;white-space:nowrap;">{{row.f_balance}}</td>
87
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center;white-space:nowrap;">{{ row.f_curbalance }}</td>
88
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_type}}</td>
89
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_operator}}</td>
90
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_operate_date}}</td>
91
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_state}}</td>
92
- <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_comments}}</td>
93
- </tr>
94
- </template>
95
- <template partial='foot'></template>
96
- </data-grid>
97
- </criteria-paged>
98
- </div>
99
- <table class="table-hover">
100
- <tr class="table-bordered" style="position: relative">
101
- <td
102
- style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
103
- 汇总信息
104
- </td>
105
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
106
- 气量合计:&emsp;{{model.sums.gas.toFixed(2)}}
107
- </td>
108
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
109
- 金额合计:&emsp;{{model.sums.fee.toFixed(2)}}
110
- </td>
111
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
112
- 缴费合计:&emsp;{{model.sums.collection.toFixed(2)}}
113
- </td>
114
- </tr>
115
- </table>
116
- </div>
117
- </template>
118
-
119
- <script>
120
- import {HttpResetClass, PagedList} from 'vue-client'
121
-
122
- export default {
123
- title: '操作查询',
124
- data () {
125
- return {
126
- condition: '1=1',
127
- model: new PagedList('api/af-revenue/sql/machineRecordQuery', 20, {}, {
128
- fee: 0,
129
- gas: 0
130
- }),
131
- isstates: this.$appdata.getParam('是否有效') ? [{
132
- label: '全部',
133
- value: ''
134
- }, ...this.$appdata.getParam('是否有效')] : [],
135
- // 控制单选
136
- radio: [],
137
- // 选中的页
138
- all: [],
139
- searchValue: 'f_userfiles_id',
140
- // row数据
141
- rowsdata: [],
142
- fields: {'f_userinfo_code': '客户编号', 'f_user_name': '客户姓名', 'f_address': '地址','f_last_tablebase': '上期底数','f_tablebase': '本期底数', 'fee': '金额', 'gas': '气量', 'f_type': '类型', 'f_operator': '操作员', 'f_operate_date': '操作时间'},
143
- defaultfield: [
144
- 'f_userinfo_code', 'f_user_name', 'fee', 'gas', 'f_type', 'f_operate_date'
145
- ],
146
- printModel: {
147
- rows: []
148
- }
149
- }
150
- },
151
- props: ['row'],
152
- ready () {
153
- this.$refs.paged.$refs.criteria.model.f_state = ['有效']
154
- this.$refs.paged.$refs.criteria.search()
155
- },
156
- methods: {
157
- async search () {
158
- this.condition = `${this.$refs.paged.$refs.criteria.condition} and ${this.searchValue} = '${this.row[this.searchValue]}' `
159
- this.model.search(this.condition, this.model)
160
- let http = new HttpResetClass()
161
- let res = await http.load('POST', 'api/af-revenue/sql/machineRecordQuery', {
162
- data: {
163
- condition: this.condition
164
- }
165
- }, {resolveMsg: null, rejectMsg: null})
166
- // 计算不包含 "机表收费" 的 gas 总和
167
- let gasTotal = res.data.reduce((sum, row) => {
168
- return row.f_type === '机表收费' ? sum : sum + (row.gas || 0);
169
- }, 0);
170
-
171
- // 计算费用总和
172
- let feeTotal = res.data.reduce((sum, row) => {
173
- return row.f_type === '机表收费' ? sum : sum + (row.fee || 0);
174
- }, 0);
175
- // 计算缴费总和
176
- let collectionTotal = res.data.reduce((sum, row) => {
177
- return sum + (row.f_collection || 0)
178
- }, 0)
179
-
180
- this.printModel.rows = res.data
181
- this.model.sums = {
182
- gas: gasTotal,
183
- fee: feeTotal,
184
- collection: collectionTotal
185
- }
186
- },
187
- // 多选框初始化
188
- selectInit () {
189
- this.rowsdata = []
190
- this.all = []
191
- this.radio = []
192
- },
193
- print () {
194
- this.selectInit()
195
- },
196
- select () {
197
- let index = this.model.pageIndex - 1
198
- if (!this.radio[index]) {
199
- this.radio.$set(index, [])
200
- }
201
- if (this.all[index]) {
202
- // 数据
203
- this.rowsdata[index] = Object.assign([], this.model.rows)
204
- // 勾选
205
- for (var i = 0; i < this.model.rows.length; i++) {
206
- this.radio[index].$set(i, true)
207
- }
208
- } else {
209
- // 数据
210
- this.rowsdata[index] = []
211
- // 不勾选
212
- for (var i = 0; i < this.model.rows.length; i++) {
213
- this.radio[index].$set(i, false)
214
- }
215
- }
216
- let z = 0
217
- this.printModel.rows = []
218
- for (let i = 0; i < this.all.length; i++) {
219
- for (let j = 0; this.rowsdata[i] && j < this.rowsdata[i].length; j++) {
220
- if (this.rowsdata[i][j] && this.rowsdata[i][j].f_user_id) {
221
- this.printModel.rows[z++] = this.rowsdata[i][j]
222
- }
223
- }
224
- }
225
- },
226
- selectOne (event, row, i) {
227
- let index = this.model.pageIndex - 1
228
- if (!this.rowsdata[index]) {
229
- this.rowsdata[index] = []
230
- }
231
- if (!this.radio[index]) {
232
- this.radio.$set(index, [])
233
- }
234
- if (event.target.checked) {
235
- // 数据
236
- this.rowsdata[index][i] = row
237
- // 勾选
238
- this.radio[index].$set(i, true)
239
- // 判断是否全部选中
240
- var allState = true
241
- if (this.model.rows.length != this.radio[index].length) {
242
- allState = false
243
- }
244
- for (var state of this.radio[index]) {
245
- if (!state) {
246
- allState = false
247
- }
248
- }
249
- this.all.$set(index, allState)
250
- } else {
251
- // 数据
252
- this.rowsdata[index][i] = []
253
- // 不勾选
254
- this.radio[index].$set(i, false)
255
- // 任意取消一个则全选状态设为false
256
- this.all.$set(index, false)
257
- }
258
- let z = 0
259
- this.printModel.rows = []
260
- for (let i = 0; i < this.all.length; i++) {
261
- for (let j = 0; this.rowsdata[i] && j < this.rowsdata[i].length; j++) {
262
- if (this.rowsdata[i][j] && this.rowsdata[i][j].f_user_id) {
263
- this.printModel.rows[z++] = this.rowsdata[i][j]
264
- }
265
- }
266
- }
267
- }
268
- },
269
- computed: {
270
- ischecked () {
271
- return function (index, i) {
272
- if (!this.radio[index]) {
273
- return false
274
- }
275
- return this.radio[index][i]
276
- }
277
- }
278
- }
279
- }
280
- </script>
281
-
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
+
7
+ <div class="form-horizontal select-overspread container-fluid auto " novalidate partial>
8
+ <div class="row">
9
+
10
+ <div class="col-sm-2 form-group">
11
+ <label class="font_normal_body">开始时间</label>
12
+ <datepicker :format="'yyyy-MM-dd'" :value.sync="model.f_start_date"
13
+ class="datepicker"
14
+ condition="f_operate_date >= '{} 00:00:00' "
15
+ placeholder="起始时间"
16
+ style="width:60%"
17
+ v-model="model.f_start_date"
18
+ ></datepicker>
19
+ </div>
20
+ <div class="col-sm-2 form-group" >
21
+ <label class="font_normal_body" >结束时间</label>
22
+ <datepicker :format="'yyyy-MM-dd'" :value.sync="model.f_end_date"
23
+ class="datepicker"
24
+ condition="f_operate_date <= '{} 23:59:59' "
25
+ placeholder="结束时间"
26
+ style="width:60%"
27
+ v-model="model.f_end_date"
28
+ ></datepicker>
29
+ </div>
30
+ <div class="col-sm-2 form-group">
31
+ <label class="font_normal_body">是否有效</label>
32
+ <v-select :value.sync="model.f_state" v-model='model.f_state'
33
+ style="width:60%"
34
+ :options='$parent.$parent.isstates' placeholder='是否有效'
35
+ close-on-select
36
+ condition="f_state = '{}'"></v-select>
37
+ </div>
38
+
39
+
40
+ <div style="float: right">
41
+ <button @click="search()" class="button_search" style="margin-right: 10px" v-el:cba>查询</button>
42
+ <print-data :defaultfield="$parent.$parent.defaultfield" :field="$parent.$parent.fields" :printview="true" :is-selected="true" :model="$parent.$parent.model"
43
+ @print-close="$parent.$parent.print()" @print-data="$parent.$parent.print()" print-name="购气流水"></print-data>
44
+ <export-excel
45
+ :data="{condition: $parent.$parent.model.condition}"
46
+ :field="$parent.$parent.fields"
47
+ sqlurl="api/af-revenue/logic/saleExport"sql-name="machineRecordQuery"
48
+ template-name='机表流水查询'
49
+ :choose-col="true">
50
+ </export-excel>
51
+ </div>
52
+ </div>
53
+
54
+ </div>
55
+ </criteria>
56
+ <data-grid :model="model" class="list_area table_sy" partial='list' v-ref:grid>
57
+ <template partial='head'>
58
+ <tr>
59
+ <th><nobr>用户编号</nobr></th>
60
+ <th><nobr>姓名</nobr></th>
61
+ <th><nobr>住址</nobr></th>
62
+ <th><nobr>上期底数</nobr></th>
63
+ <th><nobr>本期底数</nobr></th>
64
+ <th><nobr>气量</nobr></th>
65
+ <th><nobr>应交</nobr></th>
66
+ <th><nobr>缴费金额 </nobr></th>
67
+ <th><nobr>上期结余</nobr></th>
68
+ <th><nobr>本期结余</nobr></th>
69
+ <th><nobr>操作类型</nobr></th>
70
+ <th><nobr>操作员 </nobr></th>
71
+ <th><nobr>操作时间 </nobr></th>
72
+ <th><nobr>状态 </nobr></th>
73
+ <th><nobr>备注</nobr></th>
74
+ </tr>
75
+ </template>
76
+ <template partial='body' partial='list' v-ref:grid>
77
+ <tr >
78
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_userinfo_code}}</td>
79
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_user_name}}</td>
80
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_address}}</td>
81
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_last_tablebase}}</td>
82
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_tablebase}}</td>
83
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_type== '机表收费'? '' : row.gas}}</td>
84
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center;white-space:nowrap;">{{row.f_type == '机表收费'? '' : row.fee}}</td>
85
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center;white-space:nowrap;">{{row.f_type == '抄表记录'? '' : row.f_collection}}</td>
86
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center;white-space:nowrap;">{{row.f_balance}}</td>
87
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center;white-space:nowrap;">{{ row.f_curbalance }}</td>
88
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_type}}</td>
89
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_operator}}</td>
90
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_operate_date}}</td>
91
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_state}}</td>
92
+ <td :class="{'bg-danger' : row.f_whether_pay === '否' }" style="text-align:center">{{row.f_comments}}</td>
93
+ </tr>
94
+ </template>
95
+ <template partial='foot'></template>
96
+ </data-grid>
97
+ </criteria-paged>
98
+ </div>
99
+ <table class="table-hover">
100
+ <tr class="table-bordered" style="position: relative">
101
+ <td
102
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
103
+ 汇总信息
104
+ </td>
105
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
106
+ 气量合计:&emsp;{{model.sums.gas.toFixed(2)}}
107
+ </td>
108
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
109
+ 金额合计:&emsp;{{model.sums.fee.toFixed(2)}}
110
+ </td>
111
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
112
+ 缴费合计:&emsp;{{model.sums.collection.toFixed(2)}}
113
+ </td>
114
+ </tr>
115
+ </table>
116
+ </div>
117
+ </template>
118
+
119
+ <script>
120
+ import {HttpResetClass, PagedList} from 'vue-client'
121
+
122
+ export default {
123
+ title: '操作查询',
124
+ data () {
125
+ return {
126
+ condition: '1=1',
127
+ model: new PagedList('api/af-revenue/sql/machineRecordQuery', 20, {}, {
128
+ fee: 0,
129
+ gas: 0
130
+ }),
131
+ isstates: this.$appdata.getParam('是否有效') ? [{
132
+ label: '全部',
133
+ value: ''
134
+ }, ...this.$appdata.getParam('是否有效')] : [],
135
+ // 控制单选
136
+ radio: [],
137
+ // 选中的页
138
+ all: [],
139
+ searchValue: 'f_userfiles_id',
140
+ // row数据
141
+ rowsdata: [],
142
+ fields: {'f_userinfo_code': '客户编号', 'f_user_name': '客户姓名', 'f_address': '地址','f_last_tablebase': '上期底数','f_tablebase': '本期底数', 'fee': '金额', 'gas': '气量', 'f_type': '类型', 'f_operator': '操作员', 'f_operate_date': '操作时间'},
143
+ defaultfield: [
144
+ 'f_userinfo_code', 'f_user_name', 'fee', 'gas', 'f_type', 'f_operate_date'
145
+ ],
146
+ printModel: {
147
+ rows: []
148
+ }
149
+ }
150
+ },
151
+ props: ['row'],
152
+ ready () {
153
+ this.$refs.paged.$refs.criteria.model.f_state = ['有效']
154
+ this.$refs.paged.$refs.criteria.search()
155
+ },
156
+ methods: {
157
+ async search () {
158
+ this.condition = `${this.$refs.paged.$refs.criteria.condition} and ${this.searchValue} = '${this.row[this.searchValue]}' `
159
+ this.model.search(this.condition, this.model)
160
+ let http = new HttpResetClass()
161
+ let res = await http.load('POST', 'api/af-revenue/sql/machineRecordQuery', {
162
+ data: {
163
+ condition: this.condition
164
+ }
165
+ }, {resolveMsg: null, rejectMsg: null})
166
+ // 计算不包含 "机表收费" 的 gas 总和
167
+ let gasTotal = res.data.reduce((sum, row) => {
168
+ return row.f_type === '机表收费' ? sum : sum + (row.gas || 0);
169
+ }, 0);
170
+
171
+ // 计算费用总和
172
+ let feeTotal = res.data.reduce((sum, row) => {
173
+ return row.f_type === '机表收费' ? sum : sum + (row.fee || 0);
174
+ }, 0);
175
+ // 计算缴费总和
176
+ let collectionTotal = res.data.reduce((sum, row) => {
177
+ return sum + (row.f_collection || 0)
178
+ }, 0)
179
+
180
+ this.printModel.rows = res.data
181
+ this.model.sums = {
182
+ gas: gasTotal,
183
+ fee: feeTotal,
184
+ collection: collectionTotal
185
+ }
186
+ },
187
+ // 多选框初始化
188
+ selectInit () {
189
+ this.rowsdata = []
190
+ this.all = []
191
+ this.radio = []
192
+ },
193
+ print () {
194
+ this.selectInit()
195
+ },
196
+ select () {
197
+ let index = this.model.pageIndex - 1
198
+ if (!this.radio[index]) {
199
+ this.radio.$set(index, [])
200
+ }
201
+ if (this.all[index]) {
202
+ // 数据
203
+ this.rowsdata[index] = Object.assign([], this.model.rows)
204
+ // 勾选
205
+ for (var i = 0; i < this.model.rows.length; i++) {
206
+ this.radio[index].$set(i, true)
207
+ }
208
+ } else {
209
+ // 数据
210
+ this.rowsdata[index] = []
211
+ // 不勾选
212
+ for (var i = 0; i < this.model.rows.length; i++) {
213
+ this.radio[index].$set(i, false)
214
+ }
215
+ }
216
+ let z = 0
217
+ this.printModel.rows = []
218
+ for (let i = 0; i < this.all.length; i++) {
219
+ for (let j = 0; this.rowsdata[i] && j < this.rowsdata[i].length; j++) {
220
+ if (this.rowsdata[i][j] && this.rowsdata[i][j].f_user_id) {
221
+ this.printModel.rows[z++] = this.rowsdata[i][j]
222
+ }
223
+ }
224
+ }
225
+ },
226
+ selectOne (event, row, i) {
227
+ let index = this.model.pageIndex - 1
228
+ if (!this.rowsdata[index]) {
229
+ this.rowsdata[index] = []
230
+ }
231
+ if (!this.radio[index]) {
232
+ this.radio.$set(index, [])
233
+ }
234
+ if (event.target.checked) {
235
+ // 数据
236
+ this.rowsdata[index][i] = row
237
+ // 勾选
238
+ this.radio[index].$set(i, true)
239
+ // 判断是否全部选中
240
+ var allState = true
241
+ if (this.model.rows.length != this.radio[index].length) {
242
+ allState = false
243
+ }
244
+ for (var state of this.radio[index]) {
245
+ if (!state) {
246
+ allState = false
247
+ }
248
+ }
249
+ this.all.$set(index, allState)
250
+ } else {
251
+ // 数据
252
+ this.rowsdata[index][i] = []
253
+ // 不勾选
254
+ this.radio[index].$set(i, false)
255
+ // 任意取消一个则全选状态设为false
256
+ this.all.$set(index, false)
257
+ }
258
+ let z = 0
259
+ this.printModel.rows = []
260
+ for (let i = 0; i < this.all.length; i++) {
261
+ for (let j = 0; this.rowsdata[i] && j < this.rowsdata[i].length; j++) {
262
+ if (this.rowsdata[i][j] && this.rowsdata[i][j].f_user_id) {
263
+ this.printModel.rows[z++] = this.rowsdata[i][j]
264
+ }
265
+ }
266
+ }
267
+ }
268
+ },
269
+ computed: {
270
+ ischecked () {
271
+ return function (index, i) {
272
+ if (!this.radio[index]) {
273
+ return false
274
+ }
275
+ return this.radio[index][i]
276
+ }
277
+ }
278
+ }
279
+ }
280
+ </script>
281
+
@@ -18,7 +18,7 @@
18
18
  :options='$parent.$parent.states'
19
19
  close-on-select
20
20
  condition=" {} "
21
- @change="$parent.$parent.search">
21
+ @change="$parent.$parent.handStateChange">
22
22
  </v-select>
23
23
  </div>
24
24
  <div class="col-sm-2 form-group">
@@ -49,12 +49,12 @@
49
49
  </div>
50
50
  <div class="row" v-show="$parent.$parent.criteriaShow">
51
51
  <div class="col-sm-2 form-group">
52
- <label class="font_normal_body" title="档案抄表员">抄&ensp;表&ensp;员</label>
52
+ <label class="font_normal_body" title="档案抄表员">档案抄表员</label>
53
53
  <v-select :value.sync="model.f_userfiles_inputtor" v-model='model.f_userfiles_inputtor'
54
54
  style="width:60%"
55
55
  multiple="true"
56
56
  condition="f_userfiles_inputtor in {}"
57
- :options='$parent.$parent.inputtores' placeholder='抄表员'
57
+ :options='$parent.$parent.inputtores' placeholder='档案抄表员'
58
58
  close-on-select
59
59
  v-el:cc></v-select>
60
60
  </div>
@@ -228,6 +228,7 @@ export default {
228
228
  show: false,
229
229
  pushdata: {openid: '', cause: ''},
230
230
  row: null,
231
+ isInitializing: true,
231
232
  model: new PagedList('api/af-revenue/sql/meterReadAudit', 20),
232
233
  states: [{label: '待审核', value: ` f_meter_state = '待审核' and f_hand_state ='有效'`}, {
233
234
  label: '未通过',
@@ -239,13 +240,22 @@ export default {
239
240
  ready () {
240
241
  readyGen(this)
241
242
  this.$refs.paged.$refs.cri.model.f_hand_state[0] = ` f_meter_state = '待审核'`
243
+ this.$nextTick(() => {
244
+ this.isInitializing = false
245
+ })
242
246
  },
243
247
  methods: {
244
- defImg(row){
245
- let img = event.srcElement //当前元素
248
+ handStateChange (val) {
249
+ console.log(val, this.isInitializing)
250
+ if (val.length > 0 && !this.isInitializing) {
251
+ this.search()
252
+ }
253
+ },
254
+ defImg (row) {
255
+ let img = event.srcElement // 当前元素
246
256
  let imgsrc = row.f_handplan_image
247
- img.src = imgsrc.replace(/mhrqwxjf.cn/g, "")
248
- img.onerror = null //防止闪图
257
+ img.src = imgsrc.replace(/mhrqwxjf.cn/g, '')
258
+ img.onerror = null // 防止闪图
249
259
  },
250
260
  loadMeterBooks () {
251
261
  this.meterbooks = [...this.meterbooks, ...this.$GetSaleParam.getMeterBooks()]
@@ -73,4 +73,6 @@ export default function () {
73
73
  Vue.component('specific-information', (resolve) => { require(['./specificInformation.vue'], resolve) })
74
74
  // 单条记录维护界面
75
75
  Vue.component('replacement-single-info-operation', (resolve) => { require(['./replacementSingleInfoOperation'], resolve) })
76
+ // 单户调价
77
+ Vue.component('user-pricechange-manage', (resolve) => { require(['./UserPriceChangeManage'], resolve) })
76
78
  }