manage-client 3.2.32 → 3.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.
Files changed (59) hide show
  1. package/.gradle/5.4.1/fileChanges/last-build.bin +0 -0
  2. package/.gradle/5.4.1/fileHashes/fileHashes.lock +0 -0
  3. package/.gradle/5.4.1/gc.properties +0 -0
  4. package/build/dev-server.js +28 -9
  5. package/gradle/wrapper/gradle-wrapper.properties +5 -5
  6. package/package.json +1 -1
  7. package/src/.idea/misc.xml +9 -0
  8. package/src/.idea/modules.xml +8 -0
  9. package/src/.idea/src.iml +9 -0
  10. package/src/.idea/vcs.xml +6 -0
  11. package/src/.idea/workspace.xml +93 -0
  12. package/src/components/sale/businessquery/AreaChargeQuery.vue +380 -0
  13. package/src/components/sale/businessquery/BusinesQuery.vue +358 -358
  14. package/src/components/sale/businessquery/ChangeMeterQuery.vue +632 -632
  15. package/src/components/sale/businessquery/ChangeUserQuery.vue +357 -357
  16. package/src/components/sale/businessquery/ChargeQuery.vue +8 -3
  17. package/src/components/sale/businessquery/CollectManage.vue +3 -0
  18. package/src/components/sale/businessquery/DisableQuery.vue +451 -451
  19. package/src/components/sale/businessquery/EnableQuery.vue +408 -408
  20. package/src/components/sale/businessquery/FillCardQuery.vue +486 -486
  21. package/src/components/sale/businessquery/FillGasQuery.vue +511 -511
  22. package/src/components/sale/businessquery/InspectListUser.vue +412 -433
  23. package/src/components/sale/businessquery/OtherChargeQuery.vue +634 -634
  24. package/src/components/sale/businessquery/ReverseQuery.vue +402 -402
  25. package/src/components/sale/businessquery/SalesGasClassification.vue +168 -168
  26. package/src/components/sale/businessquery/TransferQuery.vue +418 -418
  27. package/src/components/sale/businessquery/iotStateSearch/iotStateQuery.vue +308 -308
  28. package/src/components/sale/config/exportConfig.js +3 -0
  29. package/src/components/sale/filesquery/ArchivesManage.vue +57 -57
  30. package/src/components/sale/filesquery/DeviceQuery.vue +534 -534
  31. package/src/components/sale/filesquery/FireQuery.vue +477 -477
  32. package/src/components/sale/filesquery/RecordInfoQuery.vue +1260 -1260
  33. package/src/components/sale/report/aode/YearByUserType.vue +272 -272
  34. package/src/components/statistical/DendrogramManage.vue +239 -204
  35. package/src/filiale/WEINAN/OtherChargeQuery.vue +521 -521
  36. package/src/filiale/WEINAN/config/tableConfig.js +20 -20
  37. package/src/filiale/jingwei/RecordInfoQuery.vue +1142 -1142
  38. package/src/filiale/liaoyuan/ReportList.vue +421 -421
  39. package/src/filiale/macheng/RecordInfoQuery.vue +1023 -1023
  40. package/src/filiale/meihekou/DeviceQuery.vue +545 -545
  41. package/src/filiale/meihekou/RecordInfoQuery.vue +1168 -1168
  42. package/src/filiale/meihekou/config/exportConfig.js +831 -831
  43. package/src/filiale/meihekou/sale.js +31 -31
  44. package/src/filiale/pingxiang/sale.js +9 -9
  45. package/src/filiale/qingtongxia/sale.js +13 -13
  46. package/src/filiale/rongcheng/UserQuery.vue +827 -827
  47. package/src/filiale/shaoguan/HandplanQuery.vue +1314 -1314
  48. package/src/filiale/shaoguan/TransferQuery.vue +403 -403
  49. package/src/filiale/shaoguan/config/exportConfig.js +433 -433
  50. package/src/filiale/shaoguan/errorHandplanQuery.vue +366 -366
  51. package/src/filiale/shaoguan/sale/businessquery/ExemptQuery.vue +314 -314
  52. package/src/filiale/shaoguan/sale/businessquery/FMYGasQuery.vue +687 -687
  53. package/src/filiale/shaoguan/sale/businessquery/PaymentChangeQuery.vue +338 -338
  54. package/src/filiale/shaoguan/sale/businessquery/ReconcileQuery.vue +426 -426
  55. package/src/filiale/tongchuan/ChargeQuery.vue +1270 -1270
  56. package/src/filiale/tongchuan/FillGasQuery.vue +523 -523
  57. package/src/filiale/tongchuan/config/exportConfig.js +857 -857
  58. package/src/main.js +10 -10
  59. package/src/saleManage.js +533 -529
@@ -1,511 +1,511 @@
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 for="startDate" class="font_normal_body">开始日期</label>
12
- <datepicker id="startDate" placeholder="开始日期" style="width:60%"
13
- v-model="model.startDate"
14
- :value.sync="model.startDate"
15
- :format="'yyyy-MM-dd HH:mm:ss'"
16
- :show-reset-button="true"
17
- condition="f_operate_date >= '{}'">
18
- </datepicker>
19
- </div>
20
- <div class="col-sm-2 form-group">
21
- <label for="endDate" class="font_normal_body">结束日期</label>
22
- <datepicker id="endDate" placeholder="结束日期" style="width:60%"
23
- v-model="model.endDate"
24
- :value.sync="model.endDate"
25
- :format="'yyyy-MM-dd HH:mm:ss'"
26
- :show-reset-button="true"
27
- condition="f_operate_date <= '{}'">
28
- </datepicker>
29
- </div>
30
- <div class="col-sm-2 form-group">
31
- <label class="font_normal_body">客户编号</label>
32
- <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
33
- condition="f_userinfo_code = '{}' " placeholder="客户编号">
34
- </div>
35
- <div class="col-sm-2 form-group">
36
- <label class="font_normal_body">客户名称</label>
37
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
38
- condition="f_user_name like '%{}%'" placeholder="客户名称">
39
- </div>
40
-
41
- <div class="span" style="float:right;">
42
- <button class="button_search button_spacing" @click="search()">查询</button>
43
- <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
44
- <!--<button class="btn btn-default" @click="$parent.$parent.stamp()">打印</button>-->
45
-
46
- <export-excel :data="$parent.$parent.getCondition"
47
- :field="$parent.$parent.getfield"
48
- :footer="$parent.$parent.footer"
49
- :header="$parent.$parent.other"
50
- sqlurl="rs/logic/exportfile" sql-name="fillGasQuery" template-name='补气查询导出'
51
- :choose-col="true"></export-excel>
52
- <print-data :sum-field="$parent.$parent.getfield" :model="$parent.model" :field="$parent.$parent.getfield"
53
- :defaultfield="$parent.$parent.defaultfield"
54
- titletable="补气记录"
55
- :sumsmodel="$parent.$parent.sumsmodel"></print-data>
56
- <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>
57
- </div>
58
- </div>
59
-
60
- <div class="row" v-show="$parent.$parent.criteriaShow">
61
- <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
62
- <div class="col-sm-2 form-group">
63
- <label class="font_normal_body">客户电话</label>
64
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_phone"
65
- condition="f_user_phone like '%{}%'" placeholder="客户电话">
66
- </div>
67
- <div class="col-sm-2 form-group">
68
- <label class="font_normal_body">客户地址</label>
69
- <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
70
- condition="f_address like '%{}%'" placeholder='客户地址'>
71
- </div>
72
- <div class="col-sm-2 form-group">
73
- <label class="font_normal_body">补气类型</label>
74
- <v-select :value.sync="model.f_type"
75
- v-model="model.f_type"
76
- :multiple="true"
77
- :options='$parent.$parent.fillGasTypes' placeholder='请选择'
78
- condition="f_fill_type in {}"
79
- close-on-select></v-select>
80
- </div>
81
-
82
- <div class="col-sm-2 form-group">
83
- <label class="font_normal_body">卡&emsp;&emsp;号</label>
84
- <input type="text" style="width:60%" class="input_search" v-model="model.f_card_id"
85
- condition="f_card_id like '%{}%'" placeholder='卡号'>
86
- </div>
87
- <div class="col-sm-2 form-group">
88
- <label class="font_normal_body">表&emsp;&emsp;号</label>
89
- <input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
90
- condition="f_meternumber = '{}'" placeholder='表号'>
91
- </div>
92
- <div class="col-sm-2 form-group">
93
- <label class="font_normal_body">气表类型</label>
94
- <v-select :value.sync="model.f_meter_type" multiple
95
- :options='$parent.$parent.metertypes' placeholder='请选择' v-model="model.f_meter_type"
96
- condition="f_meter_type in {}"
97
- close-on-select></v-select>
98
- </div>
99
- <div class="col-sm-2 form-group">
100
- <label class="font_normal_body">气表品牌</label>
101
- <v-select :value.sync="model.f_meter_brand"
102
- v-model="model.f_meter_brand"
103
- :options='$parent.$parent.meterbrands' placeholder='请选择'
104
- condition="f_meter_brand = '{}'"
105
- close-on-select></v-select>
106
- </div>
107
- <div class="col-sm-2 form-group">
108
- <label class="font_normal_body">补气状态</label>
109
- <v-select :value.sync="model.f_state"
110
- v-model="model.f_state"
111
- :options='$parent.$parent.chargeState' placeholder='请选择'
112
- condition="f_state = '{}'"
113
- close-on-select></v-select>
114
- </div>
115
- <div class="col-sm-2 form-group">
116
- <label class="font_normal_body">用户类型</label>
117
- <v-select :value.sync="model.f_user_type" v-model="model.f_user_type"
118
- :options='$parent.$parent.usertypes' placeholder='请选择'
119
- @change="$parent.$parent.userTypeChange()"
120
- condition="f_user_type = '{}'"
121
- close-on-select></v-select>
122
- </div>
123
- <div class="col-sm-2 form-group">
124
- <label class="font_normal_body">用气性质</label>
125
- <v-select :value.sync="model.f_gasproperties" v-model="model.f_gasproperties"
126
- :options='$parent.$parent.gasproperties' placeholder='请选择'
127
- condition="f_gasproperties = '{}'"
128
- close-on-select></v-select>
129
- </div>
130
- </div>
131
-
132
- </div>
133
- </criteria>
134
-
135
- <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
136
- <template partial='head'>
137
- <tr>
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>
169
- <nobr>补气日期</nobr>
170
- </th>
171
- <th>
172
- <nobr>补气原因</nobr>
173
- </th>
174
- <th>
175
- <nobr>操作员</nobr>
176
- </th>
177
- <th>
178
- <nobr>部门</nobr>
179
- </th>
180
- <th>
181
- <nobr>公司</nobr>
182
- </th>
183
- <th><nobr>附件</nobr></th>
184
- </tr>
185
- </template>
186
- <template partial='body'>
187
- <td style="text-align: center;">
188
- <nobr>
189
- <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
190
- </td>
191
- <td style="text-align: center;">
192
- <nobr>{{row.f_user_name}}</nobr>
193
- </td>
194
- <td style="text-align: center;">
195
- <nobr>{{row.f_user_type}}</nobr>
196
- </td>
197
- <td style="text-align: center;">
198
- <nobr>{{row.f_user_phone}}</nobr>
199
- </td>
200
- <td style="text-align: center;">
201
- <nobr>{{row.f_address}}</nobr>
202
- </td>
203
- <td style="text-align: center;">
204
- <nobr>{{row.f_card_id}}</nobr>
205
- </td>
206
- <td style="text-align: center;">
207
- <nobr>{{row.f_meter_brand}}</nobr>
208
- </td>
209
- <td style="text-align: center;">
210
- <nobr>{{row.f_pregas}}</nobr>
211
- </td>
212
- <td style="text-align: center;">
213
- <nobr>{{row.f_preamount}}</nobr>
214
- </td>
215
- <td style="text-align: center;">
216
- <nobr>{{row.f_type}}</nobr>
217
- </td>
218
- <td style="text-align: center;">
219
- <nobr>{{row.f_operate_date}}</nobr>
220
- </td>
221
- <td style="text-align: center;">
222
- <nobr>{{row.f_comments}}</nobr>
223
- </td>
224
- <td style="text-align: center;">
225
- <nobr>{{row.f_operator}}</nobr>
226
- </td>
227
- <td style="text-align: center;">
228
- <nobr>{{row.f_depname}}</nobr>
229
- </td>
230
- <td style="text-align: center;">
231
- <nobr>{{row.f_orgname}}</nobr>
232
- </td>
233
- <td style="text-align: center;"><nobr>
234
- <button class="button_search button_spacing width-60" @click.stop="$parent.$parent.$parent.view(row)">查看</button>
235
- </nobr></td>
236
- </template>
237
- <template partial='foot'></template>
238
- </data-grid>
239
- </criteria-paged>
240
-
241
- <table class="table-hover">
242
- <tr style="position: relative" class="table-bordered">
243
- <td
244
- style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
245
- 汇总信息
246
- </td>
247
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
248
- 补气量合计:&emsp;{{sumsmodel.f_pregas}}
249
- </td>
250
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
251
- 补气金额合计:&emsp;{{sumsmodel.f_preamount}}
252
- </td>
253
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
254
- 户数合计:&emsp;{{sumsmodel.hushu}}
255
- </td>
256
- </tr>
257
- </table>
258
- </div>
259
- <div class="flex" v-if="show">
260
- <user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage-new>
261
- </div>
262
- </div>
263
- <modal :show.sync="showupload" v-if="showupload" width="80%" style="width:auto;" v-ref:modal middle backdrop="false">
264
- <article slot="modal-body">
265
- <upload :blodid="selected.f_userinfo_id" v-ref:upload isupload="false" takeimg="false" fusetype="补气" :isremark="false" style="width:auto" ></upload>
266
- </article>
267
- <footer slot="modal-footer" class="modal-footer">
268
- </footer>
269
- </modal>
270
- </div>
271
- </template>
272
-
273
- <script>
274
- import {PagedList} from 'vue-client'
275
- import defaultPrint from '../config/DefaultPrint'
276
- import exportConfig from '../config/exportConfig'
277
-
278
- let readySomething = async function (self) {
279
-
280
- self.$refs.paged.$refs.cri.model.startDate = self.data ? self.data.startDate : self.$login.toStandardDateString() + ' 00:00:00'
281
- self.$refs.paged.$refs.cri.model.endDate = self.data ? self.data.endDate : self.$login.toStandardDateString() + ' 23:59:59'
282
- // self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
283
- // self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
284
- // await self.$refs.paged.$refs.cri.search()
285
- self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
286
- self.initParams()
287
- await self.$MagLoadParams.loadParam()
288
- self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
289
- }
290
- export default {
291
- props:['data'],
292
- title: '补气查询',
293
- data() {
294
- return {
295
- data: {},
296
- other:[],
297
- footer:[],
298
- model: new PagedList('rs/sql/fillGasQuery', 20, {}, {f_pregas: 0,f_preamount: 0,hushu:0}),
299
- criteriaShow: false,
300
- headData: ["客户编号", "客户名称", "客户电话", "身份证号", "地址", "补气类型", "表编号", "卡号", "气表品牌", "气表状态", "补气量", "补气日期", "操作员", "部门", "公司"],
301
- bodyData: ["f_userinfo_code", "f_user_name", "f_user_phone", "f_idnumber", "address", "f_type", "f_user_id", "f_card_id", "f_meter_brand", "f_table_state", "f_fillgas", "f_operate_date", "f_operator", "f_depname", "f_orgname"],
302
- orgCondtionStr: '',
303
- config: {
304
- defaultPrint: ['f_userinfo_code', 'f_user_name', 'f_user_phone', 'f_idnumber', 'f_type', 'f_meter_brand', 'f_fillgas','f_operate_date', 'f_operator']
305
- },
306
- //默认打印列
307
- defaultfield: [],
308
- modelval: [],
309
- printshow: false,
310
- all: false,
311
- fields: {},
312
- thead: '',
313
- tfoot: '',
314
- show:false,
315
- rowdata:{},
316
- meterbrands: [],
317
- initres: {
318
- org:[this.$login.f.orgid],
319
- dep:[],
320
- user:[],
321
- },
322
- showupload:false,
323
- selected:{},
324
- gasproperties:[],
325
- //合计数据
326
- sumsmodel: {},
327
- metertypes: this.$appdata.getParam('气表类型')?[{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('气表类型')]:[]
328
-
329
- }
330
- },
331
- ready() {
332
- readySomething(this).then(() => {
333
- this.$emit('ready')
334
- }).catch((error) => {
335
- this.$emit('error', error)
336
- })
337
- },
338
- methods: {
339
- view(row){
340
- this.showupload = true
341
- this.selected= row
342
- },
343
- getotherfooter(){
344
- // this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
345
- // this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
346
- this.other=[];
347
- this.footer=[];
348
- let exportdata = this.getCondition;
349
- let otherInData=[];
350
- otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
351
- let footerData=[],exportfield=this.getfield;
352
- footerData.push("合计");
353
- let self = this;
354
- for(var field in self.sumsmodel){
355
- footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
356
- }
357
- this.footer.push(footerData);
358
- this.other.push(otherInData);
359
- },
360
- search(){
361
- this.$refs.paged.$refs.cri.search()
362
- },
363
- initParams() {
364
- // 初始化气表品牌
365
- let brandArr = []
366
- this.$MagGetSaleParam.getGasbrand().forEach((item) => {
367
- let temp = {}
368
- temp.label = item.label
369
- temp.value = item.value.f_meter_brand
370
- brandArr.push(temp)
371
- })
372
- this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
373
- },
374
- selfSearch(args) {
375
- if (this.data) {
376
- this.$parent.$parent.$parent.data.startDate=this.$refs.paged.$refs.cri.model.startDate
377
- this.$parent.$parent.$parent.data.endDate=this.$refs.paged.$refs.cri.model.endDate
378
- }
379
- args.condition = `${args.condition}` + this.orgCondtionStr
380
- this.model.search(args.condition, args.model)
381
- this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
382
- this.sumsmodel.hushu=[...new Set(this.$refs.paged.$refs.grid.model.rows.map(item => item.f_userinfo_code))].length
383
- console.log("this.sumsmodel",this.sumsmodel,this.$refs.paged.$refs.grid)
384
- },
385
- clear() {
386
- //清空部门和人员
387
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
388
- //部门和人员变为全选
389
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
390
- this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
391
- Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
392
- this.$refs.paged.$refs.cri.model[key] = []
393
- })
394
- },
395
- show() {
396
- this.criteriaShow = true
397
- },
398
- hidden() {
399
- this.criteriaShow = !this.criteriaShow
400
- },
401
- getRes(condition) {
402
- this.orgCondtionStr = condition
403
- },
404
- stamp() {
405
- this.all = false
406
- //默认选择要打印的列
407
- this.modelval = defaultPrint.config
408
- this.fields = this.getfield
409
- console.log('所有打印字段', this.fields)
410
- this.printshow = true
411
- this.put()
412
- },
413
- cancel() {
414
- this.show = false
415
- },
416
- dealmsg(val) {
417
- console.log('---------------dealmsg')
418
- this.rowdata=val
419
- this.show=true
420
- val.model = this.model.model
421
- this.$dispatch('deal-msg', val)
422
- },
423
- put() {
424
- // 对Modelval进行排序
425
- this.sortModelval()
426
- this.thead = `<tr><th colspan=${this.modelval.length}>补气查询统计报表</th></tr><tr>`
427
- for (let key of this.modelval) {
428
- this.thead += '<th>' + this.fields[key] + '</th>'
429
- }
430
- this.thead += '</tr>'
431
- },
432
- print() {
433
- this.$refs.print.PrintAsFile()
434
- this.printshow = false
435
- },
436
- close() {
437
- this.printshow = false
438
- this.all = false
439
- },
440
- // 对选择的列进行排序
441
- sortModelval() {
442
- let sortModel = []
443
- Object.keys(this.fields).forEach((key) => {
444
- if (this.modelval.includes(key)) {
445
- sortModel.push(key)
446
- }
447
- })
448
- this.modelval = sortModel
449
- console.log('选择的打印的字段', this.modelval)
450
- },
451
- async updateParams() {
452
- await this.$MagLoadParams.loadParam(this.f_filialeid)
453
- this.initParams()
454
- },
455
- userTypeChange () {
456
- this.gasproperties=[]
457
- if(this.$refs.paged.$refs.cri.model !==null) {
458
- this.$refs.paged.$refs.cri.model.f_gasproperties=''
459
- this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
460
- }
461
- else{
462
- this.gasproperties =[{label: '全部', value: ''}]
463
- }
464
- }
465
- },
466
- watch: {
467
- 'all'(val) {
468
- if (val) {
469
- this.modelval = this.bodyData
470
- } else {
471
- this.modelval = defaultPrint.config
472
- this.put()
473
- }
474
- },
475
- 'modelval.length'() {
476
- this.put()
477
- },
478
- sumsmodel:{
479
- handler: function(val) {
480
- this.getotherfooter();
481
- },
482
- deep: true
483
- },
484
- 'orgCondtionStr'(val) {
485
- let res = val.match(/'(.*?)'/)
486
- console.log('正则提取:',res && res[1])
487
- if (res) {
488
- this.f_filialeid = res[1]
489
- this.updateParams()
490
- }
491
- }
492
- },
493
- computed: {
494
- getCondition() {
495
- return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr}
496
- },
497
- getfield() {
498
- return exportConfig.fillgasConfig
499
- },
500
- fillGasTypes() {
501
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('补气类型')]
502
- },
503
- chargeState() {
504
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('补气状态')]
505
- },
506
- usertypes() {
507
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
508
- }
509
- }
510
- }
511
- </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 for="startDate" class="font_normal_body">开始日期</label>
12
+ <datepicker id="startDate" placeholder="开始日期" style="width:60%"
13
+ v-model="model.startDate"
14
+ :value.sync="model.startDate"
15
+ :format="'yyyy-MM-dd HH:mm:ss'"
16
+ :show-reset-button="true"
17
+ condition="f_operate_date >= '{}'">
18
+ </datepicker>
19
+ </div>
20
+ <div class="col-sm-2 form-group">
21
+ <label for="endDate" class="font_normal_body">结束日期</label>
22
+ <datepicker id="endDate" placeholder="结束日期" style="width:60%"
23
+ v-model="model.endDate"
24
+ :value.sync="model.endDate"
25
+ :format="'yyyy-MM-dd HH:mm:ss'"
26
+ :show-reset-button="true"
27
+ condition="f_operate_date <= '{}'">
28
+ </datepicker>
29
+ </div>
30
+ <div class="col-sm-2 form-group">
31
+ <label class="font_normal_body">客户编号</label>
32
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
33
+ condition="f_userinfo_code = '{}' " placeholder="客户编号">
34
+ </div>
35
+ <div class="col-sm-2 form-group">
36
+ <label class="font_normal_body">客户名称</label>
37
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
38
+ condition="f_user_name like '%{}%'" placeholder="客户名称">
39
+ </div>
40
+
41
+ <div class="span" style="float:right;">
42
+ <button class="button_search button_spacing" @click="search()">查询</button>
43
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
44
+ <!--<button class="btn btn-default" @click="$parent.$parent.stamp()">打印</button>-->
45
+
46
+ <export-excel :data="$parent.$parent.getCondition"
47
+ :field="$parent.$parent.getfield"
48
+ :footer="$parent.$parent.footer"
49
+ :header="$parent.$parent.other"
50
+ sqlurl="rs/logic/exportfile" sql-name="fillGasQuery" template-name='补气查询导出'
51
+ :choose-col="true"></export-excel>
52
+ <print-data :sum-field="$parent.$parent.getfield" :model="$parent.model" :field="$parent.$parent.getfield"
53
+ :defaultfield="$parent.$parent.defaultfield"
54
+ titletable="补气记录"
55
+ :sumsmodel="$parent.$parent.sumsmodel"></print-data>
56
+ <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>
57
+ </div>
58
+ </div>
59
+
60
+ <div class="row" v-show="$parent.$parent.criteriaShow">
61
+ <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
62
+ <div class="col-sm-2 form-group">
63
+ <label class="font_normal_body">客户电话</label>
64
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_phone"
65
+ condition="f_user_phone like '%{}%'" placeholder="客户电话">
66
+ </div>
67
+ <div class="col-sm-2 form-group">
68
+ <label class="font_normal_body">客户地址</label>
69
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
70
+ condition="f_address like '%{}%'" placeholder='客户地址'>
71
+ </div>
72
+ <div class="col-sm-2 form-group">
73
+ <label class="font_normal_body">补气类型</label>
74
+ <v-select :value.sync="model.f_type"
75
+ v-model="model.f_type"
76
+ :multiple="true"
77
+ :options='$parent.$parent.fillGasTypes' placeholder='请选择'
78
+ condition="f_fill_type in {}"
79
+ close-on-select></v-select>
80
+ </div>
81
+
82
+ <div class="col-sm-2 form-group">
83
+ <label class="font_normal_body">卡&emsp;&emsp;号</label>
84
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_card_id"
85
+ condition="f_card_id like '%{}%'" placeholder='卡号'>
86
+ </div>
87
+ <div class="col-sm-2 form-group">
88
+ <label class="font_normal_body">表&emsp;&emsp;号</label>
89
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
90
+ condition="f_meternumber = '{}'" placeholder='表号'>
91
+ </div>
92
+ <div class="col-sm-2 form-group">
93
+ <label class="font_normal_body">气表类型</label>
94
+ <v-select :value.sync="model.f_meter_type" multiple
95
+ :options='$parent.$parent.metertypes' placeholder='请选择' v-model="model.f_meter_type"
96
+ condition="f_meter_type in {}"
97
+ close-on-select></v-select>
98
+ </div>
99
+ <div class="col-sm-2 form-group">
100
+ <label class="font_normal_body">气表品牌</label>
101
+ <v-select :value.sync="model.f_meter_brand"
102
+ v-model="model.f_meter_brand"
103
+ :options='$parent.$parent.meterbrands' placeholder='请选择'
104
+ condition="f_meter_brand = '{}'"
105
+ close-on-select></v-select>
106
+ </div>
107
+ <div class="col-sm-2 form-group">
108
+ <label class="font_normal_body">补气状态</label>
109
+ <v-select :value.sync="model.f_state"
110
+ v-model="model.f_state"
111
+ :options='$parent.$parent.chargeState' placeholder='请选择'
112
+ condition="f_state = '{}'"
113
+ close-on-select></v-select>
114
+ </div>
115
+ <div class="col-sm-2 form-group">
116
+ <label class="font_normal_body">用户类型</label>
117
+ <v-select :value.sync="model.f_user_type" v-model="model.f_user_type"
118
+ :options='$parent.$parent.usertypes' placeholder='请选择'
119
+ @change="$parent.$parent.userTypeChange()"
120
+ condition="f_user_type = '{}'"
121
+ close-on-select></v-select>
122
+ </div>
123
+ <div class="col-sm-2 form-group">
124
+ <label class="font_normal_body">用气性质</label>
125
+ <v-select :value.sync="model.f_gasproperties" v-model="model.f_gasproperties"
126
+ :options='$parent.$parent.gasproperties' placeholder='请选择'
127
+ condition="f_gasproperties = '{}'"
128
+ close-on-select></v-select>
129
+ </div>
130
+ </div>
131
+
132
+ </div>
133
+ </criteria>
134
+
135
+ <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
136
+ <template partial='head'>
137
+ <tr>
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>
169
+ <nobr>补气日期</nobr>
170
+ </th>
171
+ <th>
172
+ <nobr>补气原因</nobr>
173
+ </th>
174
+ <th>
175
+ <nobr>操作员</nobr>
176
+ </th>
177
+ <th>
178
+ <nobr>部门</nobr>
179
+ </th>
180
+ <th>
181
+ <nobr>公司</nobr>
182
+ </th>
183
+ <th><nobr>附件</nobr></th>
184
+ </tr>
185
+ </template>
186
+ <template partial='body'>
187
+ <td style="text-align: center;">
188
+ <nobr>
189
+ <span @click="$parent.$parent.$parent.dealmsg(row)"><a>{{row.f_userinfo_code}}</a></span></nobr>
190
+ </td>
191
+ <td style="text-align: center;">
192
+ <nobr>{{row.f_user_name}}</nobr>
193
+ </td>
194
+ <td style="text-align: center;">
195
+ <nobr>{{row.f_user_type}}</nobr>
196
+ </td>
197
+ <td style="text-align: center;">
198
+ <nobr>{{row.f_user_phone}}</nobr>
199
+ </td>
200
+ <td style="text-align: center;">
201
+ <nobr>{{row.f_address}}</nobr>
202
+ </td>
203
+ <td style="text-align: center;">
204
+ <nobr>{{row.f_card_id}}</nobr>
205
+ </td>
206
+ <td style="text-align: center;">
207
+ <nobr>{{row.f_meter_brand}}</nobr>
208
+ </td>
209
+ <td style="text-align: center;">
210
+ <nobr>{{row.f_pregas}}</nobr>
211
+ </td>
212
+ <td style="text-align: center;">
213
+ <nobr>{{row.f_preamount}}</nobr>
214
+ </td>
215
+ <td style="text-align: center;">
216
+ <nobr>{{row.f_type}}</nobr>
217
+ </td>
218
+ <td style="text-align: center;">
219
+ <nobr>{{row.f_operate_date}}</nobr>
220
+ </td>
221
+ <td style="text-align: center;">
222
+ <nobr>{{row.f_comments}}</nobr>
223
+ </td>
224
+ <td style="text-align: center;">
225
+ <nobr>{{row.f_operator}}</nobr>
226
+ </td>
227
+ <td style="text-align: center;">
228
+ <nobr>{{row.f_depname}}</nobr>
229
+ </td>
230
+ <td style="text-align: center;">
231
+ <nobr>{{row.f_orgname}}</nobr>
232
+ </td>
233
+ <td style="text-align: center;"><nobr>
234
+ <button class="button_search button_spacing width-60" @click.stop="$parent.$parent.$parent.view(row)">查看</button>
235
+ </nobr></td>
236
+ </template>
237
+ <template partial='foot'></template>
238
+ </data-grid>
239
+ </criteria-paged>
240
+
241
+ <table class="table-hover">
242
+ <tr style="position: relative" class="table-bordered">
243
+ <td
244
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
245
+ 汇总信息
246
+ </td>
247
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
248
+ 补气量合计:&emsp;{{sumsmodel.f_pregas}}
249
+ </td>
250
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
251
+ 补气金额合计:&emsp;{{sumsmodel.f_preamount}}
252
+ </td>
253
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
254
+ 户数合计:&emsp;{{sumsmodel.hushu}}
255
+ </td>
256
+ </tr>
257
+ </table>
258
+ </div>
259
+ <div class="flex" v-if="show">
260
+ <user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage-new>
261
+ </div>
262
+ </div>
263
+ <modal :show.sync="showupload" v-if="showupload" width="80%" style="width:auto;" v-ref:modal middle backdrop="false">
264
+ <article slot="modal-body">
265
+ <upload :blodid="selected.f_userinfo_id" v-ref:upload isupload="false" takeimg="false" fusetype="补气" :isremark="false" style="width:auto" ></upload>
266
+ </article>
267
+ <footer slot="modal-footer" class="modal-footer">
268
+ </footer>
269
+ </modal>
270
+ </div>
271
+ </template>
272
+
273
+ <script>
274
+ import {PagedList} from 'vue-client'
275
+ import defaultPrint from '../config/DefaultPrint'
276
+ import exportConfig from '../config/exportConfig'
277
+
278
+ let readySomething = async function (self) {
279
+
280
+ self.$refs.paged.$refs.cri.model.startDate = self.data ? self.data.startDate : self.$login.toStandardDateString() + ' 00:00:00'
281
+ self.$refs.paged.$refs.cri.model.endDate = self.data ? self.data.endDate : self.$login.toStandardDateString() + ' 23:59:59'
282
+ // self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
283
+ // self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
284
+ // await self.$refs.paged.$refs.cri.search()
285
+ self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
286
+ self.initParams()
287
+ await self.$MagLoadParams.loadParam()
288
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
289
+ }
290
+ export default {
291
+ props:['data'],
292
+ title: '补气查询',
293
+ data() {
294
+ return {
295
+ data: {},
296
+ other:[],
297
+ footer:[],
298
+ model: new PagedList('rs/sql/fillGasQuery', 20, {}, {f_pregas: 0,f_preamount: 0,hushu:0}),
299
+ criteriaShow: false,
300
+ headData: ["客户编号", "客户名称", "客户电话", "身份证号", "地址", "补气类型", "表编号", "卡号", "气表品牌", "气表状态", "补气量", "补气日期", "操作员", "部门", "公司"],
301
+ bodyData: ["f_userinfo_code", "f_user_name", "f_user_phone", "f_idnumber", "address", "f_type", "f_user_id", "f_card_id", "f_meter_brand", "f_table_state", "f_fillgas", "f_operate_date", "f_operator", "f_depname", "f_orgname"],
302
+ orgCondtionStr: '',
303
+ config: {
304
+ defaultPrint: ['f_userinfo_code', 'f_user_name', 'f_user_phone', 'f_idnumber', 'f_type', 'f_meter_brand', 'f_fillgas','f_operate_date', 'f_operator']
305
+ },
306
+ //默认打印列
307
+ defaultfield: [],
308
+ modelval: [],
309
+ printshow: false,
310
+ all: false,
311
+ fields: {},
312
+ thead: '',
313
+ tfoot: '',
314
+ show:false,
315
+ rowdata:{},
316
+ meterbrands: [],
317
+ initres: {
318
+ org:[this.$login.f.orgid],
319
+ dep:[],
320
+ user:[],
321
+ },
322
+ showupload:false,
323
+ selected:{},
324
+ gasproperties:[],
325
+ //合计数据
326
+ sumsmodel: {},
327
+ metertypes: this.$appdata.getParam('气表类型')?[{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('气表类型')]:[]
328
+
329
+ }
330
+ },
331
+ ready() {
332
+ readySomething(this).then(() => {
333
+ this.$emit('ready')
334
+ }).catch((error) => {
335
+ this.$emit('error', error)
336
+ })
337
+ },
338
+ methods: {
339
+ view(row){
340
+ this.showupload = true
341
+ this.selected= row
342
+ },
343
+ getotherfooter(){
344
+ // this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
345
+ // this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
346
+ this.other=[];
347
+ this.footer=[];
348
+ let exportdata = this.getCondition;
349
+ let otherInData=[];
350
+ otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
351
+ let footerData=[],exportfield=this.getfield;
352
+ footerData.push("合计");
353
+ let self = this;
354
+ for(var field in self.sumsmodel){
355
+ footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
356
+ }
357
+ this.footer.push(footerData);
358
+ this.other.push(otherInData);
359
+ },
360
+ search(){
361
+ this.$refs.paged.$refs.cri.search()
362
+ },
363
+ initParams() {
364
+ // 初始化气表品牌
365
+ let brandArr = []
366
+ this.$MagGetSaleParam.getGasbrand().forEach((item) => {
367
+ let temp = {}
368
+ temp.label = item.label
369
+ temp.value = item.value.f_meter_brand
370
+ brandArr.push(temp)
371
+ })
372
+ this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
373
+ },
374
+ selfSearch(args) {
375
+ if (this.data) {
376
+ this.$parent.$parent.$parent.data.startDate=this.$refs.paged.$refs.cri.model.startDate
377
+ this.$parent.$parent.$parent.data.endDate=this.$refs.paged.$refs.cri.model.endDate
378
+ }
379
+ args.condition = `${args.condition}` + this.orgCondtionStr
380
+ this.model.search(args.condition, args.model)
381
+ this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
382
+ this.sumsmodel.hushu=[...new Set(this.$refs.paged.$refs.grid.model.rows.map(item => item.f_userinfo_code))].length
383
+ console.log("this.sumsmodel",this.sumsmodel,this.$refs.paged.$refs.grid)
384
+ },
385
+ clear() {
386
+ //清空部门和人员
387
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
388
+ //部门和人员变为全选
389
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
390
+ this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
391
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
392
+ this.$refs.paged.$refs.cri.model[key] = []
393
+ })
394
+ },
395
+ show() {
396
+ this.criteriaShow = true
397
+ },
398
+ hidden() {
399
+ this.criteriaShow = !this.criteriaShow
400
+ },
401
+ getRes(condition) {
402
+ this.orgCondtionStr = condition
403
+ },
404
+ stamp() {
405
+ this.all = false
406
+ //默认选择要打印的列
407
+ this.modelval = defaultPrint.config
408
+ this.fields = this.getfield
409
+ console.log('所有打印字段', this.fields)
410
+ this.printshow = true
411
+ this.put()
412
+ },
413
+ cancel() {
414
+ this.show = false
415
+ },
416
+ dealmsg(val) {
417
+ console.log('---------------dealmsg')
418
+ this.rowdata=val
419
+ this.show=true
420
+ val.model = this.model.model
421
+ this.$dispatch('deal-msg', val)
422
+ },
423
+ put() {
424
+ // 对Modelval进行排序
425
+ this.sortModelval()
426
+ this.thead = `<tr><th colspan=${this.modelval.length}>补气查询统计报表</th></tr><tr>`
427
+ for (let key of this.modelval) {
428
+ this.thead += '<th>' + this.fields[key] + '</th>'
429
+ }
430
+ this.thead += '</tr>'
431
+ },
432
+ print() {
433
+ this.$refs.print.PrintAsFile()
434
+ this.printshow = false
435
+ },
436
+ close() {
437
+ this.printshow = false
438
+ this.all = false
439
+ },
440
+ // 对选择的列进行排序
441
+ sortModelval() {
442
+ let sortModel = []
443
+ Object.keys(this.fields).forEach((key) => {
444
+ if (this.modelval.includes(key)) {
445
+ sortModel.push(key)
446
+ }
447
+ })
448
+ this.modelval = sortModel
449
+ console.log('选择的打印的字段', this.modelval)
450
+ },
451
+ async updateParams() {
452
+ await this.$MagLoadParams.loadParam(this.f_filialeid)
453
+ this.initParams()
454
+ },
455
+ userTypeChange () {
456
+ this.gasproperties=[]
457
+ if(this.$refs.paged.$refs.cri.model !==null) {
458
+ this.$refs.paged.$refs.cri.model.f_gasproperties=''
459
+ this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
460
+ }
461
+ else{
462
+ this.gasproperties =[{label: '全部', value: ''}]
463
+ }
464
+ }
465
+ },
466
+ watch: {
467
+ 'all'(val) {
468
+ if (val) {
469
+ this.modelval = this.bodyData
470
+ } else {
471
+ this.modelval = defaultPrint.config
472
+ this.put()
473
+ }
474
+ },
475
+ 'modelval.length'() {
476
+ this.put()
477
+ },
478
+ sumsmodel:{
479
+ handler: function(val) {
480
+ this.getotherfooter();
481
+ },
482
+ deep: true
483
+ },
484
+ 'orgCondtionStr'(val) {
485
+ let res = val.match(/'(.*?)'/)
486
+ console.log('正则提取:',res && res[1])
487
+ if (res) {
488
+ this.f_filialeid = res[1]
489
+ this.updateParams()
490
+ }
491
+ }
492
+ },
493
+ computed: {
494
+ getCondition() {
495
+ return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr}
496
+ },
497
+ getfield() {
498
+ return exportConfig.fillgasConfig
499
+ },
500
+ fillGasTypes() {
501
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('补气类型')]
502
+ },
503
+ chargeState() {
504
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('补气状态')]
505
+ },
506
+ usertypes() {
507
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
508
+ }
509
+ }
510
+ }
511
+ </script>