manage-client-xy 3.2.28 → 3.2.30

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 (31) hide show
  1. package/build/dev-server.js +2 -2
  2. package/package.json +1 -1
  3. package/src/components/SellReport/FinancialStatement.vue +30 -0
  4. package/src/components/SellReport/ManageBusSummary.vue +241 -241
  5. package/src/components/SellReport/SmartKitchenSummary.vue +275 -275
  6. package/src/components/SellReport/UserNumber.vue +30 -0
  7. package/src/components/SellReport/XianYangNewCharge.vue +355 -355
  8. package/src/components/sale/businessquery/AreaGeneralQuery.vue +715 -700
  9. package/src/components/sale/businessquery/CMHGasQuery.vue +441 -411
  10. package/src/components/sale/businessquery/ChangeMeterQuery.vue +659 -630
  11. package/src/components/sale/businessquery/ChangeUserQuery.vue +403 -373
  12. package/src/components/sale/businessquery/ChargeQuery.vue +1027 -997
  13. package/src/components/sale/businessquery/DisableQuery.vue +433 -403
  14. package/src/components/sale/businessquery/EnableQuery.vue +422 -392
  15. package/src/components/sale/businessquery/FMYGasQuery.vue +440 -410
  16. package/src/components/sale/businessquery/FillCardQuery.vue +522 -492
  17. package/src/components/sale/businessquery/FillGasQuery.vue +506 -476
  18. package/src/components/sale/businessquery/HandplanQuery.vue +728 -698
  19. package/src/components/sale/businessquery/LogQuery.vue +301 -269
  20. package/src/components/sale/businessquery/NewAccountQuery.vue +518 -488
  21. package/src/components/sale/businessquery/OtherChargeQuery.vue +432 -402
  22. package/src/components/sale/businessquery/RecordQuery.vue +399 -369
  23. package/src/components/sale/businessquery/ResidentialQuery.vue +417 -387
  24. package/src/components/sale/businessquery/ReverseQuery.vue +459 -429
  25. package/src/components/sale/businessquery/SellingHand.vue +408 -378
  26. package/src/components/sale/businessquery/TransferQuery.vue +589 -559
  27. package/src/components/sale/businessquery/cancelAccountQuery.vue +518 -488
  28. package/src/components/sale/filesquery/DeviceQuery.vue +30 -0
  29. package/src/components/sale/filesquery/MeterQuery.vue +30 -0
  30. package/src/components/sale/filesquery/UserQuery.vue +796 -764
  31. package/src/components/webmeter/DrillData/UserGasAll.vue +30 -1
@@ -1,402 +1,432 @@
1
- <template>
2
- <div id="unit" class="flex-row">
3
- <div class="basic-main" @keyup.enter="search">
4
- <div class="flex" v-if="!show">
5
-
6
- <criteria-paged :model="model" v-ref:paged>
7
- <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
8
- <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
9
- <div class="row">
10
- <div class="col-sm-2 form-group">
11
- <label class="font_normal_body">客户编号</label>
12
- <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
13
- condition="f_userinfo_code = '{}' " placeholder="客户编号">
14
- </div>
15
- <div class="col-sm-2 form-group">
16
- <label class="font_normal_body">客户名称</label>
17
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
18
- condition="f_user_name like '%{}%'" placeholder="客户名称">
19
- </div>
20
- <div class="col-sm-2 form-group">
21
- <label for="startDate" class="font_normal_body">开始日期</label>
22
- <datepicker id="startDate" placeholder="开始日期" style="width:60%"
23
- v-model="model.startDate"
24
- :value.sync="model.startDate"
25
- :format="'yyyy-MM-dd HH:mm:ss'"
26
- :show-reset-button="true"
27
- condition="f_operate_date >= to_date('{}','yyyy-mm-dd hh24:mi:ss')">
28
- </datepicker>
29
- </div>
30
- <div class="col-sm-2 form-group">
31
- <label for="endDate" class="font_normal_body">结束日期</label>
32
- <datepicker id="endDate" placeholder="结束日期" style="width:60%"
33
- v-model="model.endDate"
34
- :value.sync="model.endDate"
35
- :format="'yyyy-MM-dd HH:mm:ss'"
36
- :show-reset-button="true"
37
- condition="f_operate_date <= to_date('{}','yyyy-mm-dd hh24:mi:ss')">
38
- </datepicker>
39
- </div>
40
- <div class="span" style="float:right;">
41
- <button class="button_search button_spacing" @click="search()">查询</button>
42
- <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
43
- <!--<button class="btn btn-default" @click="$parent.$parent.stamp()">打印</button>-->
44
-
45
- <export-excel :data="$parent.$parent.getCondition"
46
- :field="$parent.$parent.getfield"
47
- sqlurl="rs/logic/exportfile" sql-name="otherChargeQuery" template-name='其他收费查询导出'
48
- :choose-col="true"></export-excel>
49
-
50
- <div style="float: right" class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.hidden()"></div>
51
- </div>
52
- </div>
53
- <div class="row">
54
- <res-select-group style="col-sm-2 form-group" :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
55
- <div class="col-sm-2 form-group">
56
- <label class="font_normal_body">客户地址</label>
57
- <input type="text" style="width: 60%;" class="input_search" v-model="model.f_address"
58
- condition="f_address like '%{}%'" placeholder='客户地址'>
59
- </div>
60
- <div class="col-sm-2 form-group">
61
- <label class="font_normal_body">收费状态</label>
62
- <v-select id="f_state"
63
- v-model="model.f_state"
64
- placeholder='请选择'
65
- condition="f_state ='{}'"
66
- :value.sync="model.f_state"
67
- :options='$parent.$parent.chargeState'
68
- close-on-select clear-button>
69
- </v-select>
70
- </div>
71
- </div>
72
- <div class="row" v-show="$parent.$parent.criteriaShow">
73
-
74
-
75
- <div class="col-sm-2 form-group">
76
- <label class="font_normal_body">付款方式</label>
77
- <v-select id="f_payment"
78
- v-model="model.f_payment"
79
- placeholder='请选择'
80
- condition="f_payment ='{}'"
81
- :value.sync="model.f_payment"
82
- :options='$parent.$parent.payments'
83
- close-on-select clear-button>
84
- </v-select>
85
- </div>
86
- <div class="col-sm-2 form-group">
87
- <label class="font_normal_body">是否<br/>手持设备</label>
88
- <v-select :value.sync="$parent.$parent.f_outlets"
89
- :options="$parent.$parent.isPos"
90
- :search="false"
91
- placeholder='请选择'
92
- condition="{}"
93
- close-on-select></v-select>
94
- </div>
95
- </div>
96
- </div>
97
- </criteria>
98
-
99
- <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
100
- <template partial='head'>
101
- <tr>
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
- <th>
115
- <nobr>付款方式</nobr>
116
- </th>
117
- <th>
118
- <nobr>状态</nobr>
119
- </th>
120
- <th>
121
- <nobr>收费日期</nobr>
122
- </th>
123
- <th>
124
- <nobr>订单号</nobr>
125
- </th>
126
- <th>
127
- <nobr>备注</nobr>
128
- </th>
129
- <th>
130
- <nobr>人员</nobr>
131
- </th>
132
- <th>
133
- <nobr>部门</nobr>
134
- </th>
135
- <th>
136
- <nobr>公司</nobr>
137
- </th>
138
- <th><nobr>查看详情</nobr></th>
139
- </tr>
140
- </template>
141
- <template partial='body'>
142
- <td style="text-align: center;">
143
- <nobr>
144
- <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
145
- </td>
146
- <td style="text-align: center;">
147
- <nobr>{{row.f_user_name}}</nobr>
148
- </td>
149
- <td style="text-align: center;">
150
- <nobr>{{row.f_address}}</nobr>
151
- </td>
152
- <td style="text-align: center;">
153
- <nobr>{{row.f_collection}}</nobr>
154
- </td>
155
- <td style="text-align: center;">
156
- <nobr>{{row.f_payment}}</nobr>
157
- </td>
158
- <td style="text-align: center;">
159
- <nobr>{{row.f_state}}</nobr>
160
- </td>
161
- <td style="text-align: center;">
162
- <nobr>{{row.f_operate_date}}</nobr>
163
- </td>
164
- <td style="text-align: center;">
165
- <nobr>{{row.f_serial_id}}</nobr>
166
- </td>
167
- <td style="text-align: center;">
168
- <nobr>{{row.f_comments}}</nobr>
169
- </td>
170
- <td style="text-align: center;">
171
- <nobr>{{row.f_operator}}</nobr>
172
- </td>
173
- <td style="text-align: center;">
174
- <nobr>{{row.f_depname}}</nobr>
175
- </td>
176
- <td style="text-align: center;">
177
- <nobr>{{row.f_orgname}}</nobr>
178
- </td>
179
- <td style="text-align: center;">
180
- <button class="btn btn-link" @click.stop="$parent.$parent.$parent.showchargedetail(row)">查看</button>
181
- </td>
182
- </template>
183
- <template partial='foot'></template>
184
- </data-grid>
185
-
186
- </criteria-paged>
187
-
188
- <table class="table-hover">
189
- <tr style="position: relative" class="table-bordered">
190
- <td
191
- style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
192
- 汇总信息
193
- </td>
194
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
195
- 收款合计:&emsp;{{sumsmodel.f_collection}}
196
- </td>
197
- </tr>
198
- </table>
199
-
200
- </div>
201
- <div v-if="show">
202
- <user-info-detail-manage :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage>
203
- </div>
204
- <div v-if="showAttachment">
205
- <attachment-viewer :business-id="currentRow && currentRow.id" table-name="t_othercharge" @close="closeAttachment"></attachment-viewer>
206
- </div>
207
- </div>
208
- </div>
209
-
210
- <modal v-if="showdetail" :show.sync="showdetail" title="详细记录" v-ref:modal large backdrop="false">
211
- <article slot="modal-body" class="modal-body">
212
- <other-charge-detail-query :otherchargeid="otherchargeid" ></other-charge-detail-query>
213
- </article>
214
- <footer slot="modal-footer" class="modal-footer">
215
- </footer>
216
- </modal>
217
-
218
- </template>
219
-
220
- <script>
221
- import {PagedList} from 'vue-client'
222
- import defaultPrint from '../config/DefaultPrint'
223
- import exportConfig from '../config/exportConfig'
224
- import OtherChargeDetailQuery from "./OtherChargeDetailQuery";
225
- import AttachmentViewer from './AttachmentViewer.vue'
226
- let readySomething = async function (self) {
227
- self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
228
- self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
229
- // await self.$refs.paged.$refs.cri.search()
230
- await self.$MagLoadParams.loadParam()
231
-
232
- self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
233
- }
234
- export default {
235
- components: {
236
- OtherChargeDetailQuery,
237
- AttachmentViewer
238
- },
239
- data() {
240
- return {
241
- data: {},
242
- model: new PagedList('rs/sql/otherChargeQuery', 20, {}, {f_collection: 0}),
243
- criteriaShow: false,
244
- orgCondtionStr: '',
245
- modelval: [],
246
- printshow: false,
247
- all: false,
248
- fields: {},
249
- thead: '',
250
- tfoot: '',
251
- initres: {
252
- org:[this.$login.f.orgid],
253
- dep:[],
254
- user:[],
255
- },
256
- show:false,
257
- showdetail:false,
258
- isPos: [{label: '全部', value: ''}, {label: '是', value: '是'}, {label: '否', value: '否'}],
259
- f_outlets: [],
260
- otherchargeid:'',
261
- rowdata:{},
262
- //合计数据
263
- sumsmodel: {},
264
- showAttachment: false,
265
- currentRow: null,
266
- }
267
- },
268
- ready() {
269
- readySomething(this).then(() => {
270
- this.$emit('ready')
271
- }).catch((error) => {
272
- this.$emit('error', error)
273
- })
274
- },
275
- methods: {
276
- search(){
277
- this.$refs.paged.$refs.cri.search()
278
- },
279
- selfSearch(args) {
280
- // 手持设备查询条件
281
- if(this.f_outlets[0] === '是'){
282
- args.condition += ` and f_outlets = '手持设备'`
283
- } else if (this.f_outlets[0] === '否'){
284
- args.condition += ` and f_outlets is null`
285
- }
286
- args.condition = `${args.condition}` + this.orgCondtionStr
287
- this.model.search(args.condition, args.model)
288
- this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
289
- },
290
- clear() {
291
- //清空部门和人员
292
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
293
- //部门和人员变为全选
294
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
295
- this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
296
- Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
297
- this.$refs.paged.$refs.cri.model[key] = ''
298
- })
299
- },
300
- show() {
301
- this.criteriaShow = true
302
- },
303
- hidden() {
304
- this.criteriaShow = !this.criteriaShow
305
- },
306
- getRes(obj) {
307
- this.orgCondtionStr = obj
308
- },
309
- cancel() {
310
- this.show = false
311
- },
312
- dealmsg(val) {
313
- console.log('---------------dealmsg')
314
- this.rowdata=val
315
- this.show=true
316
- val.model = this.model.model
317
- this.$dispatch('deal-msg', val)
318
- },
319
- stamp() {
320
- this.all = false
321
- //默认选择要打印的列
322
- this.modelval = defaultPrint.config
323
- this.fields = this.getfield
324
- console.log('所有打印字段', this.fields)
325
- this.printshow = true
326
- this.put()
327
- },
328
- put() {
329
- // 对Modelval进行排序
330
- this.sortModelval()
331
- this.thead = `<tr><th colspan=${this.modelval.length}>其他收费查询统计报表</th></tr><tr>`
332
- for (let key of this.modelval) {
333
- this.thead += '<th>' + this.fields[key] + '</th>'
334
- }
335
- this.thead += '</tr>'
336
- },
337
- print() {
338
- this.$refs.print.PrintAsFile()
339
- this.printshow = false
340
- },
341
- close() {
342
- this.printshow = false
343
- this.all = false
344
- },
345
- // 对选择的列进行排序
346
- sortModelval() {
347
- let sortModel = []
348
- Object.keys(this.fields).forEach((key) => {
349
- if (this.modelval.includes(key)) {
350
- sortModel.push(key)
351
- }
352
- })
353
- this.modelval = sortModel
354
- console.log('选择的打印的字段', this.modelval)
355
- },
356
- showchargedetail(row){
357
- this.showdetail=true
358
- this.otherchargeid=row.id
359
- },
360
- view(row) {
361
- this.currentRow = row;
362
- this.showAttachment = true;
363
- },
364
- closeAttachment() {
365
- this.showAttachment = false;
366
- }
367
- },
368
- watch: {
369
- 'all'(val) {
370
- if (val) {
371
- this.modelval = this.bodyData
372
- } else {
373
- this.modelval = defaultPrint.config
374
- this.put()
375
- }
376
- },
377
- 'modelval.length'() {
378
- this.put()
379
- },
380
- },
381
- computed: {
382
- getCondition() {
383
- return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr}
384
- },
385
- service_person() {
386
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('服务人员')]
387
- },
388
- getfield() {
389
- return exportConfig.otherchargeConfig
390
- },
391
- chargetype() {
392
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('品名及规格')]
393
- },
394
- chargeState() {
395
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('收费状态')]
396
- },
397
- payments() {
398
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('付款方式')]
399
- }
400
- }
401
- }
402
- </script>
1
+ <template>
2
+ <div id="unit" class="flex-row">
3
+ <div class="basic-main" @keyup.enter="search">
4
+ <div class="flex" v-if="!show">
5
+
6
+ <criteria-paged :model="model" v-ref:paged>
7
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
8
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
9
+ <div class="row">
10
+ <div class="col-sm-2 form-group">
11
+ <label class="font_normal_body">客户编号</label>
12
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
13
+ condition="f_userinfo_code = '{}' " placeholder="客户编号">
14
+ </div>
15
+ <div class="col-sm-2 form-group">
16
+ <label class="font_normal_body">客户名称</label>
17
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
18
+ condition="f_user_name like '%{}%'" placeholder="客户名称">
19
+ </div>
20
+ <div class="col-sm-2 form-group">
21
+ <label for="startDate" class="font_normal_body">开始日期</label>
22
+ <datepicker id="startDate" placeholder="开始日期" style="width:60%"
23
+ v-model="model.startDate"
24
+ :value.sync="model.startDate"
25
+ :format="'yyyy-MM-dd HH:mm:ss'"
26
+ :show-reset-button="true"
27
+ condition="f_operate_date >= to_date('{}','yyyy-mm-dd hh24:mi:ss')">
28
+ </datepicker>
29
+ </div>
30
+ <div class="col-sm-2 form-group">
31
+ <label for="endDate" class="font_normal_body">结束日期</label>
32
+ <datepicker id="endDate" placeholder="结束日期" style="width:60%"
33
+ v-model="model.endDate"
34
+ :value.sync="model.endDate"
35
+ :format="'yyyy-MM-dd HH:mm:ss'"
36
+ :show-reset-button="true"
37
+ condition="f_operate_date <= to_date('{}','yyyy-mm-dd hh24:mi:ss')">
38
+ </datepicker>
39
+ </div>
40
+ <div class="span" style="float:right;">
41
+ <button class="button_search button_spacing" @click="search()">查询</button>
42
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
43
+ <!--<button class="btn btn-default" @click="$parent.$parent.stamp()">打印</button>-->
44
+
45
+ <export-excel :data="$parent.$parent.getCondition"
46
+ :field="$parent.$parent.getfield"
47
+ sqlurl="rs/logic/exportfile" sql-name="otherChargeQuery" template-name='其他收费查询导出'
48
+ :choose-col="true"></export-excel>
49
+
50
+ <div style="float: right" class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.hidden()"></div>
51
+ </div>
52
+ </div>
53
+ <div class="row">
54
+ <res-select-group style="col-sm-2 form-group" :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
55
+ <div class="col-sm-2 form-group">
56
+ <label class="font_normal_body">客户地址</label>
57
+ <input type="text" style="width: 60%;" class="input_search" v-model="model.f_address"
58
+ condition="f_address like '%{}%'" placeholder='客户地址'>
59
+ </div>
60
+ <div class="col-sm-2 form-group">
61
+ <label class="font_normal_body">收费状态</label>
62
+ <v-select id="f_state"
63
+ v-model="model.f_state"
64
+ placeholder='请选择'
65
+ condition="f_state ='{}'"
66
+ :value.sync="model.f_state"
67
+ :options='$parent.$parent.chargeState'
68
+ close-on-select clear-button>
69
+ </v-select>
70
+ </div>
71
+ </div>
72
+ <div class="row" v-show="$parent.$parent.criteriaShow">
73
+
74
+
75
+ <div class="col-sm-2 form-group">
76
+ <label class="font_normal_body">付款方式</label>
77
+ <v-select id="f_payment"
78
+ v-model="model.f_payment"
79
+ placeholder='请选择'
80
+ condition="f_payment ='{}'"
81
+ :value.sync="model.f_payment"
82
+ :options='$parent.$parent.payments'
83
+ close-on-select clear-button>
84
+ </v-select>
85
+ </div>
86
+ <div class="col-sm-2 form-group">
87
+ <label class="font_normal_body">是否<br/>手持设备</label>
88
+ <v-select :value.sync="$parent.$parent.f_outlets"
89
+ :options="$parent.$parent.isPos"
90
+ :search="false"
91
+ placeholder='请选择'
92
+ condition="{}"
93
+ close-on-select></v-select>
94
+ </div>
95
+ <div class="col-sm-2 form-group">
96
+ <label class="font_normal_body">房产地址</label>
97
+ <input class="input_search" condition="f_house_address = '{}'"
98
+ placeholder='房产地址'
99
+ style="width:60%" type="text" v-model="model.f_house_address">
100
+ </div>
101
+ <div class="col-sm-2 form-group">
102
+ <label class="font_normal_body">用途</label>
103
+ <input class="input_search" condition="f_property_usage = '{}'"
104
+ placeholder='用途'
105
+ style="width:60%" type="text" v-model="model.f_property_usage">
106
+ </div>
107
+ <div class="col-sm-2 form-group">
108
+ <label class="font_normal_body">房型</label>
109
+ <input class="input_search" condition="f_house_type = '{}'"
110
+ placeholder='房型'
111
+ style="width:60%" type="text" v-model="model.f_house_type">
112
+ </div>
113
+ <div class="col-sm-2 form-group">
114
+ <label class="font_normal_body">是否一户多表</label>
115
+ <input class="input_search" condition="f_is_multi_meter = '{}'"
116
+ placeholder='是否一户多表'
117
+ style="width:60%" type="text" v-model="model.f_is_multi_meter">
118
+ </div>
119
+ <div class="col-sm-2 form-group">
120
+ <label class="font_normal_body">关联ID</label>
121
+ <input class="input_search" condition="f_house_id = '{}'"
122
+ placeholder='关联ID'
123
+ style="width:60%" type="text" v-model="model.f_house_id">
124
+ </div>
125
+ </div>
126
+ </div>
127
+ </criteria>
128
+
129
+ <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
130
+ <template partial='head'>
131
+ <tr>
132
+ <th>
133
+ <nobr>客户编号</nobr>
134
+ </th>
135
+ <th>
136
+ <nobr>客户名称</nobr>
137
+ </th>
138
+ <th>
139
+ <nobr>客户地址</nobr>
140
+ </th>
141
+ <th>
142
+ <nobr>收款</nobr>
143
+ </th>
144
+ <th>
145
+ <nobr>付款方式</nobr>
146
+ </th>
147
+ <th>
148
+ <nobr>状态</nobr>
149
+ </th>
150
+ <th>
151
+ <nobr>收费日期</nobr>
152
+ </th>
153
+ <th>
154
+ <nobr>订单号</nobr>
155
+ </th>
156
+ <th>
157
+ <nobr>备注</nobr>
158
+ </th>
159
+ <th>
160
+ <nobr>人员</nobr>
161
+ </th>
162
+ <th>
163
+ <nobr>部门</nobr>
164
+ </th>
165
+ <th>
166
+ <nobr>公司</nobr>
167
+ </th>
168
+ <th><nobr>查看详情</nobr></th>
169
+ </tr>
170
+ </template>
171
+ <template partial='body'>
172
+ <td style="text-align: center;">
173
+ <nobr>
174
+ <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
175
+ </td>
176
+ <td style="text-align: center;">
177
+ <nobr>{{row.f_user_name}}</nobr>
178
+ </td>
179
+ <td style="text-align: center;">
180
+ <nobr>{{row.f_address}}</nobr>
181
+ </td>
182
+ <td style="text-align: center;">
183
+ <nobr>{{row.f_collection}}</nobr>
184
+ </td>
185
+ <td style="text-align: center;">
186
+ <nobr>{{row.f_payment}}</nobr>
187
+ </td>
188
+ <td style="text-align: center;">
189
+ <nobr>{{row.f_state}}</nobr>
190
+ </td>
191
+ <td style="text-align: center;">
192
+ <nobr>{{row.f_operate_date}}</nobr>
193
+ </td>
194
+ <td style="text-align: center;">
195
+ <nobr>{{row.f_serial_id}}</nobr>
196
+ </td>
197
+ <td style="text-align: center;">
198
+ <nobr>{{row.f_comments}}</nobr>
199
+ </td>
200
+ <td style="text-align: center;">
201
+ <nobr>{{row.f_operator}}</nobr>
202
+ </td>
203
+ <td style="text-align: center;">
204
+ <nobr>{{row.f_depname}}</nobr>
205
+ </td>
206
+ <td style="text-align: center;">
207
+ <nobr>{{row.f_orgname}}</nobr>
208
+ </td>
209
+ <td style="text-align: center;">
210
+ <button class="btn btn-link" @click.stop="$parent.$parent.$parent.showchargedetail(row)">查看</button>
211
+ </td>
212
+ </template>
213
+ <template partial='foot'></template>
214
+ </data-grid>
215
+
216
+ </criteria-paged>
217
+
218
+ <table class="table-hover">
219
+ <tr style="position: relative" class="table-bordered">
220
+ <td
221
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
222
+ 汇总信息
223
+ </td>
224
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px">
225
+ 收款合计:&emsp;{{sumsmodel.f_collection}}
226
+ </td>
227
+ </tr>
228
+ </table>
229
+
230
+ </div>
231
+ <div v-if="show">
232
+ <user-info-detail-manage :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage>
233
+ </div>
234
+ <div v-if="showAttachment">
235
+ <attachment-viewer :business-id="currentRow && currentRow.id" table-name="t_othercharge" @close="closeAttachment"></attachment-viewer>
236
+ </div>
237
+ </div>
238
+ </div>
239
+
240
+ <modal v-if="showdetail" :show.sync="showdetail" title="详细记录" v-ref:modal large backdrop="false">
241
+ <article slot="modal-body" class="modal-body">
242
+ <other-charge-detail-query :otherchargeid="otherchargeid" ></other-charge-detail-query>
243
+ </article>
244
+ <footer slot="modal-footer" class="modal-footer">
245
+ </footer>
246
+ </modal>
247
+
248
+ </template>
249
+
250
+ <script>
251
+ import {PagedList} from 'vue-client'
252
+ import defaultPrint from '../config/DefaultPrint'
253
+ import exportConfig from '../config/exportConfig'
254
+ import OtherChargeDetailQuery from "./OtherChargeDetailQuery";
255
+ import AttachmentViewer from './AttachmentViewer.vue'
256
+ let readySomething = async function (self) {
257
+ self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
258
+ self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
259
+ // await self.$refs.paged.$refs.cri.search()
260
+ await self.$MagLoadParams.loadParam()
261
+
262
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
263
+ }
264
+ export default {
265
+ components: {
266
+ OtherChargeDetailQuery,
267
+ AttachmentViewer
268
+ },
269
+ data() {
270
+ return {
271
+ data: {},
272
+ model: new PagedList('rs/sql/otherChargeQuery', 20, {}, {f_collection: 0}),
273
+ criteriaShow: false,
274
+ orgCondtionStr: '',
275
+ modelval: [],
276
+ printshow: false,
277
+ all: false,
278
+ fields: {},
279
+ thead: '',
280
+ tfoot: '',
281
+ initres: {
282
+ org:[this.$login.f.orgid],
283
+ dep:[],
284
+ user:[],
285
+ },
286
+ show:false,
287
+ showdetail:false,
288
+ isPos: [{label: '全部', value: ''}, {label: '是', value: '是'}, {label: '否', value: '否'}],
289
+ f_outlets: [],
290
+ otherchargeid:'',
291
+ rowdata:{},
292
+ //合计数据
293
+ sumsmodel: {},
294
+ showAttachment: false,
295
+ currentRow: null,
296
+ }
297
+ },
298
+ ready() {
299
+ readySomething(this).then(() => {
300
+ this.$emit('ready')
301
+ }).catch((error) => {
302
+ this.$emit('error', error)
303
+ })
304
+ },
305
+ methods: {
306
+ search(){
307
+ this.$refs.paged.$refs.cri.search()
308
+ },
309
+ selfSearch(args) {
310
+ // 手持设备查询条件
311
+ if(this.f_outlets[0] === '是'){
312
+ args.condition += ` and f_outlets = '手持设备'`
313
+ } else if (this.f_outlets[0] === ''){
314
+ args.condition += ` and f_outlets is null`
315
+ }
316
+ args.condition = `${args.condition}` + this.orgCondtionStr
317
+ this.model.search(args.condition, args.model)
318
+ this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
319
+ },
320
+ clear() {
321
+ //清空部门和人员
322
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
323
+ //部门和人员变为全选
324
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
325
+ this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
326
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
327
+ this.$refs.paged.$refs.cri.model[key] = ''
328
+ })
329
+ },
330
+ show() {
331
+ this.criteriaShow = true
332
+ },
333
+ hidden() {
334
+ this.criteriaShow = !this.criteriaShow
335
+ },
336
+ getRes(obj) {
337
+ this.orgCondtionStr = obj
338
+ },
339
+ cancel() {
340
+ this.show = false
341
+ },
342
+ dealmsg(val) {
343
+ console.log('---------------dealmsg')
344
+ this.rowdata=val
345
+ this.show=true
346
+ val.model = this.model.model
347
+ this.$dispatch('deal-msg', val)
348
+ },
349
+ stamp() {
350
+ this.all = false
351
+ //默认选择要打印的列
352
+ this.modelval = defaultPrint.config
353
+ this.fields = this.getfield
354
+ console.log('所有打印字段', this.fields)
355
+ this.printshow = true
356
+ this.put()
357
+ },
358
+ put() {
359
+ // 对Modelval进行排序
360
+ this.sortModelval()
361
+ this.thead = `<tr><th colspan=${this.modelval.length}>其他收费查询统计报表</th></tr><tr>`
362
+ for (let key of this.modelval) {
363
+ this.thead += '<th>' + this.fields[key] + '</th>'
364
+ }
365
+ this.thead += '</tr>'
366
+ },
367
+ print() {
368
+ this.$refs.print.PrintAsFile()
369
+ this.printshow = false
370
+ },
371
+ close() {
372
+ this.printshow = false
373
+ this.all = false
374
+ },
375
+ // 对选择的列进行排序
376
+ sortModelval() {
377
+ let sortModel = []
378
+ Object.keys(this.fields).forEach((key) => {
379
+ if (this.modelval.includes(key)) {
380
+ sortModel.push(key)
381
+ }
382
+ })
383
+ this.modelval = sortModel
384
+ console.log('选择的打印的字段', this.modelval)
385
+ },
386
+ showchargedetail(row){
387
+ this.showdetail=true
388
+ this.otherchargeid=row.id
389
+ },
390
+ view(row) {
391
+ this.currentRow = row;
392
+ this.showAttachment = true;
393
+ },
394
+ closeAttachment() {
395
+ this.showAttachment = false;
396
+ }
397
+ },
398
+ watch: {
399
+ 'all'(val) {
400
+ if (val) {
401
+ this.modelval = this.bodyData
402
+ } else {
403
+ this.modelval = defaultPrint.config
404
+ this.put()
405
+ }
406
+ },
407
+ 'modelval.length'() {
408
+ this.put()
409
+ },
410
+ },
411
+ computed: {
412
+ getCondition() {
413
+ return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr}
414
+ },
415
+ service_person() {
416
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('服务人员')]
417
+ },
418
+ getfield() {
419
+ return exportConfig.otherchargeConfig
420
+ },
421
+ chargetype() {
422
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('品名及规格')]
423
+ },
424
+ chargeState() {
425
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('收费状态')]
426
+ },
427
+ payments() {
428
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('付款方式')]
429
+ }
430
+ }
431
+ }
432
+ </script>