manage-client 3.2.33 → 3.2.34

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 (67) hide show
  1. package/.gradle/{4.4 → 5.5}/fileChanges/last-build.bin +0 -0
  2. package/.gradle/5.5/fileHashes/fileHashes.lock +0 -0
  3. package/.gradle/5.5/gc.properties +0 -0
  4. package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  5. package/.gradle/buildOutputCleanup/cache.properties +2 -2
  6. package/build/dev-server.js +4 -6
  7. package/package.json +1 -1
  8. package/src/components/BasisEcharts/BarChart.vue +247 -247
  9. package/src/components/SellReport/BonSummary.vue +178 -178
  10. package/src/components/SellReport/ChargePrick.vue +205 -205
  11. package/src/components/SellReport/GasBaozhuangFee.vue +237 -237
  12. package/src/components/SellReport/ManageBusSummary.vue +219 -219
  13. package/src/components/SellReport/ManageGasPrice.vue +176 -176
  14. package/src/components/SellReport/NonResidentGas.vue +203 -203
  15. package/src/components/SellReport/OutletTable.vue +258 -258
  16. package/src/components/SellReport/QibiaoShouqi.vue +242 -242
  17. package/src/components/SellReport/ReportComponrnt/TieAnAccount.vue +501 -501
  18. package/src/components/SellReport/SaleMonthReport.vue +153 -153
  19. package/src/components/SellReport/SellingTable.vue +220 -220
  20. package/src/components/SellReport/UserSellingGas.vue +228 -228
  21. package/src/components/TelReport/ZhiHuanservice.vue +162 -162
  22. package/src/components/daping/GMap.vue +636 -636
  23. package/src/components/sale/businessquery/AccountQuery/ExpectGasList.vue +504 -504
  24. package/src/components/sale/businessquery/AccountQuery/PreGasList.vue +371 -371
  25. package/src/components/sale/businessquery/AccountQuery/SellingGasList.vue +404 -404
  26. package/src/components/sale/businessquery/ChargeQuery.vue +1250 -1245
  27. package/src/components/sale/businessquery/FMYGasQuery.vue +713 -713
  28. package/src/components/sale/businessquery/InspectListUser.vue +412 -412
  29. package/src/components/sale/businessquery/MonthGasQuery.vue +467 -467
  30. package/src/components/sale/businessquery/ProceedsOper.vue +417 -417
  31. package/src/components/sale/businessquery/YingShouMingXi.vue +525 -525
  32. package/src/components/sale/businessquery/usergas.vue +311 -311
  33. package/src/components/statistical/StatisticalAnalysis.vue +252 -252
  34. package/src/components/webmeter/DrillData/LostContactAnalysisList.vue +633 -633
  35. package/src/components/webmeter/DrillData/LostContactEcharts.vue +177 -177
  36. package/src/components/webmeter/DrillData/UserGasAll.vue +607 -607
  37. package/src/components/webmeter/DrillData/UserGasEform.vue +227 -227
  38. package/src/components/webmeter/DrillData/UserLostContactAnalysis.vue +585 -585
  39. package/src/components/webmeter/newwebmeter/NewException/NewGasEcharts.vue +208 -208
  40. package/src/components/webmeter/newwebmeter/NewException/TotalExceptionByMeter.vue +607 -607
  41. package/src/components/webmeter/newwebmeter/UserGasEchartsList.vue +284 -284
  42. package/src/components/webmeter/newwebmeter/UserGasList.vue +438 -438
  43. package/src/components/webmeter/newwebmeter/UserInstructEchartsList.vue +242 -242
  44. package/src/components/webmeter/newwebmeter/signAnalysisEcharts.vue +266 -266
  45. package/src/components/webmeter/newwebmeter/signAnalysisEform.vue +175 -175
  46. package/src/components/webmeter/newwebmeter/signAnalysisListMain.vue +387 -387
  47. package/src/filiale/WEINAN/EchartsBox.vue +110 -110
  48. package/src/filiale/WEINAN/ReportDataQuery.vue +325 -325
  49. package/src/filiale/WEINAN/SiteManager.vue +191 -191
  50. package/src/filiale/WEINAN/UserGasAll.vue +577 -577
  51. package/src/filiale/WEINAN/UserGasEcharts.vue +281 -281
  52. package/src/filiale/WEINAN/UserGasList.vue +438 -438
  53. package/src/filiale/WEINAN/reportManage.js +12 -12
  54. package/src/filiale/WEINAN/sale.js +36 -36
  55. package/src/filiale/alashan/reportManage.js +10 -10
  56. package/src/filiale/jingzhou/ChargeQuery.vue +1243 -1243
  57. package/src/filiale/jingzhou/config/exportConfig.js +861 -861
  58. package/src/filiale/meihekou/UserGasEform.vue +267 -267
  59. package/src/filiale/meihekou/YingShouMingXi.vue +538 -538
  60. package/src/filiale/rongchuang/SellingTable.vue +250 -250
  61. package/src/filiale/rongchuang/reportManage.js +11 -11
  62. package/src/filiale/tongchuan/ManageBusSummary.vue +240 -240
  63. package/src/filiale/tongchuan/reportManage.js +5 -5
  64. package/src/main.js +2 -2
  65. package/static/wuhai.json +1610 -1610
  66. package/.gradle/4.4/fileHashes/fileHashes.bin +0 -0
  67. package/.gradle/4.4/fileHashes/fileHashes.lock +0 -0
@@ -1,412 +1,412 @@
1
- <template>
2
- <div id="unit" class="flex-row">
3
- <div class="basic-main">
4
- <div class="flex" v-if="!show">
5
- <criteria-paged :model="model" v-ref:paged>
6
- <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
7
- <div novalidate class="form-horizontal select-overspread container-fluid auto" partial >
8
- <div class="row">
9
- <div class="col-sm-2">
10
- <label class="font_normal_body">&emsp;&emsp;公司</label>
11
- <right-tree @re-res="$parent.$parent.getorg"
12
- :initresid='$parent.$parent.org'></right-tree>
13
- </div>
14
- <div class="col-sm-2 ">
15
- <label for="f_gasproperties"class="font_normal_body">用气性质</label>
16
- <v-select id="f_gasproperties"
17
- style="width:60%"
18
- v-model="model.f_gasproperties"
19
- placeholder='用气性质'
20
- :value.sync="model.f_gasproperties"
21
- :options='$parent.$parent.gasproperties'
22
- condition="f_gasproperties = '{}'"
23
- close-on-select >
24
- </v-select>
25
- </div>
26
- <div class="col-sm-2 flex-row" style="white-space: nowrap">
27
- <label class="font_normal_body" v-if="['卡表','物联网表'].includes($parent.$parent.meter_classify)" >未购天数</label>
28
- <label class="font_normal_body" v-else>未抄天数</label>
29
- <div class="row">
30
- <input type="text" style="width:30%" class="input_search" v-model="model.diffdaymin"
31
- condition="diffday >= {} " placeholder="">
32
- <label class="font_normal_body"> ≤ x ≤ </label>
33
- <input type="text" style="width:30%" class="input_search" v-model="model.diffdaymax"
34
- condition="diffday <= {} " placeholder="">
35
- </div>
36
-
37
- </div>
38
- <div class="col-sm-2 ">
39
- <label class="font_normal_body">截止时间</label>
40
- <datepicker id="endDate" placeholder="截止时间"
41
- v-model="model.endDate"
42
- style="width:60%"
43
- :value.sync="model.endDate"
44
- :disabled-days-of-Week="[]"
45
- :format="'yyyy-MM-dd'"
46
- :show-reset-button="reset">
47
- </datepicker>
48
- </div>
49
-
50
- <div class="span" style="float:right;">
51
- <button class="btn button_search" @click="search()">查询</button>
52
- <button class="btn button_clear" @click="$parent.$parent.clear()">清空</button>
53
- <export-excel :data="$parent.$parent.getCondition"
54
- :field="$parent.$parent.getfield"
55
- :footer="$parent.$parent.footer"
56
- :header="$parent.$parent.other"
57
- sqlurl="rs/logic/exportfile"
58
- :sql-name="$parent.$parent.sqlName"
59
- template-name='用户稽查导出' :choose-col="true"></export-excel>
60
- <print-data :model="$parent.model" :field="$parent.$parent.getfield" :defaultfield="$parent.$parent.defaultfield" print-name="稽查查询打印" :sumsmodel="$parent.$parent.sumsmodel" ></print-data>
61
- <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>
62
-
63
- </div>
64
- </div>
65
- <div class="row" v-show="$parent.$parent.criteriaShow">
66
- <div class="col-sm-2 ">
67
- <label for="f_meter_classify"class="font_normal_body">气表类型</label>
68
- <v-select id="f_meter_classify"
69
- v-model="$parent.$parent.meter_classify"
70
- placeholder='气表类型'
71
- style="width:70%"
72
- :value.sync="$parent.$parent.meter_classify"
73
- :options='$parent.$parent.f_meter_classify'
74
- :value-single="true"
75
- close-on-select >
76
- </v-select>
77
- </div>
78
-
79
- <div class="col-sm-2 ">
80
- <label for="f_table_state"class="font_normal_body">&emsp;表状态</label>
81
- <v-select id="f_table_state"
82
- style="width:60%"
83
- v-model="model.f_table_state"
84
- placeholder='表状态'
85
- :value.sync="model.f_table_state"
86
- :options='$parent.$parent.tablestate'
87
- condition="f_table_state = '{}'"
88
- close-on-select >
89
- </v-select>
90
- </div>
91
- <div class="col-sm-2 flex-row" style="white-space: nowrap" >
92
- <label class="font_normal_body" v-if="['卡表','物联网表'].includes($parent.$parent.meter_classify)">总购次数</label>
93
- <label class="font_normal_body" v-else>抄表次数</label>
94
- <div class="row">
95
- <input type="text" style="width:30%" class="input_search" v-model="model.cishumin"
96
- condition="cishu >= {} " placeholder="">
97
- <label class="font_normal_body"> ≤ x ≤ </label>
98
- <input type="text" style="width:30%" class="input_search" v-model="model.cishumax"
99
- condition="cishu <= {} " placeholder="">
100
- </div>
101
- </div>
102
- <div class="col-sm-2 flex-row" style="white-space: nowrap" >
103
- <label class="font_normal_body" v-if="$parent.$parent.meter_classify === '卡表'">总购气量</label>
104
- <label class="font_normal_body" v-if="$parent.$parent.meter_classify === '机表'">总用气量</label>
105
- <label class="font_normal_body" v-if="$parent.$parent.meter_classify === '物联网表'">总购金额</label>
106
- <div class="row">
107
- <input type="text" style="width:30%" class="input_search" v-model="model.pregasmin"
108
- condition="pregas >= {} " placeholder="">
109
- <label class="font_normal_body"> ≤ x ≤ </label>
110
- <input type="text" style="width:30%" class="input_search" v-model="model.pregasmax"
111
- condition="pregas <= {} " placeholder="">
112
- </div>
113
- </div>
114
-
115
- <div class="col-sm-2">
116
- <label class="font_normal_body">&emsp;&emsp;表号</label>
117
- <input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
118
- condition="f_meternumber = '{}'" placeholder='表号'>
119
- </div>
120
- <div class="col-sm-2 ">
121
- <label class="font_normal_body">用户类型</label>
122
- <v-select :value.sync="model.f_user_type"
123
- @change="$parent.$parent.userTypeChange()"
124
- :options='$parent.$parent.usertypes' placeholder='请选择' v-model="model.f_user_type"
125
- condition="f_user_type = '{}'"
126
- close-on-select></v-select>
127
- </div>
128
-
129
- <div class="col-sm-2">
130
- <label class="font_normal_body">客户名称</label>
131
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
132
- condition="f_user_name like '%{}%'" placeholder="客户名称">
133
- </div>
134
- <div class="col-sm-2">
135
- <label class="font_normal_body">客户编号</label>
136
- <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
137
- condition="f_userinfo_code = '{}' " placeholder="客户编号">
138
- </div>
139
- <div class="col-sm-2">
140
- <label class="font_normal_body">客户地址</label>
141
- <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
142
- condition="f_address like '%{}%'" placeholder='客户地址'>
143
- </div>
144
- <div class="col-sm-2">
145
- <label class="font_normal_body">客户电话</label>
146
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_phone"
147
- condition="f_user_phone like '%{}%'" placeholder="客户电话">
148
- </div>
149
-
150
-
151
- </div>
152
-
153
- </div>
154
- </criteria>
155
- <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
156
- <template partial='head'>
157
- <tr>
158
- <th><nobr>序号</nobr></th>
159
- <th><nobr>客户编号</nobr></th>
160
- <th><nobr>客户电话</nobr></th>
161
- <th><nobr>表号</nobr></th>
162
- <th><nobr>客户名称</nobr></th>
163
- <th><nobr>地址</nobr></th>
164
- <th><nobr>用户类型</nobr></th>
165
- <th><nobr>用气性质</nobr></th>
166
- <th><nobr>表具状态</nobr></th>
167
- <th><nobr>气表品牌</nobr></th>
168
- <th><nobr>气价名称</nobr></th>
169
- <th><nobr>最后购气日期</nobr></th>
170
- <th v-show="['卡表','物联网表'].includes($parent.$parent.$parent.meter_classify)"><nobr>总购气次数</nobr></th>
171
- <th v-show="$parent.$parent.$parent.meter_classify === '机表'"><nobr>总抄表次数</nobr></th>
172
-
173
- <th v-show="$parent.$parent.$parent.meter_classify === '卡表'"><nobr>总购气量</nobr></th>
174
- <th v-show="$parent.$parent.$parent.meter_classify === '物联网表'"><nobr>总购金额</nobr></th>
175
- <th v-show="$parent.$parent.$parent.meter_classify === '机表'"><nobr>总用气量</nobr></th>
176
-
177
- <th v-show="['卡表','物联网表'].includes($parent.$parent.$parent.meter_classify)"><nobr>累计未购气天数</nobr></th>
178
- <th v-show="$parent.$parent.$parent.meter_classify === '机表'"><nobr>累计未抄表天数</nobr></th>
179
- <th><nobr>组织机构</nobr></th>
180
- </tr>
181
- </template>
182
- <template partial='body'>
183
- <td style="text-align: center;"><nobr>{{$index+1}}</nobr></td>
184
- <td style="text-align: center;"><nobr>
185
- <span @click="$parent.$parent.$parent.showmsg(row)"><a>{{row.f_userinfo_code}}</a></span>
186
- </nobr> </td>
187
- <td style="text-align: center;"><nobr>{{row.f_user_phone}}</nobr></td>
188
- <td style="text-align: center;"><nobr>{{row.f_meternumber}}</nobr></td>
189
- <th style="text-align: center;"><nobr>{{row.f_user_name}}</nobr></th>
190
- <th style="text-align: center;"><nobr>{{row.f_address}}</nobr></th>
191
- <th style="text-align: center;"><nobr>{{row.f_user_type}}</nobr></th>
192
- <th style="text-align: center;"><nobr>{{row.f_gasproperties}}</nobr></th>
193
- <th style="text-align: center;"><nobr>{{row.f_table_state}}</nobr></th>
194
- <th style="text-align: center;"><nobr>{{row.f_meter_brand}}</nobr></th>
195
- <th style="text-align: center;"><nobr>{{row.f_price_name}}</nobr></th>
196
- <th style="text-align: center;"><nobr>{{row.delivery_date}}</nobr></th>
197
-
198
- <th style="text-align: center;"><nobr>{{row.cishu}}</nobr></th>
199
- <th style="text-align: center;"><nobr>{{row.pregas}}</nobr></th>
200
- <th style="text-align: center;"><nobr>{{row.diffday}}</nobr></th>
201
- <th style="text-align: center;"><nobr>{{row.f_orgname}}</nobr></th>
202
- </template>
203
- </data-grid>
204
- </criteria-paged>
205
- <table class="table-hover">
206
- <tr style="position: relative" class="table-bordered">
207
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">汇总信息</td>
208
- <td v-if="meter_classify === '卡表'" style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">总购气量合计:&emsp;&emsp;{{sumsmodel.pregas}}</td>
209
- <td v-if="meter_classify === '机表'" style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">总抄表气量合计:&emsp;&emsp;{{sumsmodel.pregas}}</td>
210
- <td v-if="meter_classify === '物联网表'" style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">总购金额合计:&emsp;&emsp;{{sumsmodel.pregas}}</td>
211
- </tr>
212
- </table>
213
- </div>
214
- <div class="flex" v-if="show">
215
- <user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage-new>
216
- </div>
217
- </div></div>
218
- </template>
219
- <script>
220
- /**
221
- *用户档案查询列表以及添加操作组件
222
- */
223
- import { PagedList } from 'vue-client'
224
- import Vue from 'vue'
225
- import plugin from 'system-clients/src/plugins/GetLoginInfoService'
226
-
227
- let readySomething = async function (self) {
228
-
229
- self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString()
230
-
231
- // await self.$refs.paged.$refs.cri.search()
232
- self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
233
- }
234
- export default {
235
- title: '用户稽查',
236
- data () {
237
- return {
238
- other:[],
239
- footer:[],
240
- org:[this.$login.f.orgid],
241
- criteriaShow: false,
242
- meter_classify:'卡表',
243
- filialeNameStr: null,
244
- filialeCodeStr: `and f_orgid = ${this.$login.f.orgid}`,
245
- userid: this.$login.f.id,
246
- source: `tool.getFullTree(this.getRights().where(row.getType() == $organization$))`,
247
- getfield:{"f_userinfo_code":"客户编号","f_meternumber":"表号","f_user_name":"客户名称","f_user_phone":"客户电话","f_address":"地址","f_user_type":"用户类型",
248
- "f_gasproperties":"用气性质","f_table_state":"表具状态","f_meter_brand":"气表品牌","f_price_name":"气价名称",
249
- "delivery_date":"最后购气日期","cishu":"总购气次数","pregas":"总购气量",
250
- "diffday":"未购气总天数"},
251
- model: new PagedList('rs/sql/inspectList', 50,{endDate:'this.model.endDate'},{pregas: 0}),
252
- rows: null,
253
- //orgid:'',
254
- show:false,
255
- sqlName:'inspectList',
256
- rowdata:{},
257
- sumsmodel: {},
258
- config: {
259
- defaultPrint: ['f_userinfo_code','f_user_id']
260
- },
261
- defaultfield: [],
262
- }
263
- },
264
- watch:{
265
- meter_classify(val){
266
- if (val === '卡表') {
267
- this.model.url = this.url = 'rs/sql/inspectList'
268
- this.sqlName = 'inspectList'
269
- this.getfield = {"f_userinfo_code":"客户编号","f_meternumber":"表号","f_user_name":"客户名称","f_user_phone":"客户电话","f_address":"地址","f_user_type":"用户类型",
270
- "f_gasproperties":"用气性质","f_table_state":"表具状态","f_meter_brand":"气表品牌","f_price_name":"气价名称",
271
- "delivery_date":"最后购气日期","cishu":"总购气次数","pregas":"总购气量",
272
- "diffday":"累计未购气天数"}
273
- }else if (val === '机表') {
274
- this.model.url = this.url = 'rs/sql/handinspectList'
275
- this.sqlName = 'handinspectList'
276
- this.getfield = {"f_userinfo_code":"客户编号","f_meternumber":"表号","f_user_name":"客户名称","f_user_phone":"客户电话","f_address":"地址","f_user_type":"用户类型",
277
- "f_gasproperties":"用气性质","f_table_state":"表具状态","f_meter_brand":"气表品牌","f_price_name":"气价名称",
278
- "delivery_date":"最后抄表日期","cishu":"总抄表次数","pregas":"抄表气量",
279
- "diffday":"累计未抄表天数"}
280
- } else if (val === '物联网表') {
281
- this.model.url = this.url = 'rs/sql/getWebMeterList'
282
- this.sqlName = 'getWebMeterList'
283
- this.getfield = {"f_userinfo_code":"客户编号","f_meternumber":"表号","f_user_name":"客户名称","f_user_phone":"客户电话","f_address":"地址","f_user_type":"用户类型",
284
- "f_gasproperties":"用气性质","f_table_state":"表具状态","f_meter_brand":"气表品牌","f_price_name":"气价名称",
285
- "delivery_date":"最后购气日期","cishu":"总购气次数","f_collection":"总购金额",
286
- "diffday":"累计未购气天数"}
287
- }
288
- this.clear()
289
- this.model.rows = []
290
- for(let key in this.model.sums){
291
- this.model.sums[key] = 0
292
- }
293
-
294
- },
295
- sumsmodel:{
296
- handler: function(val) {
297
- this.getotherfooter();
298
- },
299
- deep: true
300
- }
301
- },
302
- ready () {
303
-
304
- readySomething(this).then(() => {
305
- this.$emit('ready')
306
- }).catch((error) => {
307
- this.$emit('error', error)
308
- })
309
- },
310
- methods: {
311
- getotherfooter(){
312
- // this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
313
- // this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
314
- this.other=[];
315
- this.footer=[];
316
- let exportdata = this.getCondition;
317
- let otherInData=[];
318
- otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
319
- let footerData=[],exportfield=this.getfield;
320
- footerData.push("合计");
321
- let self = this;
322
- for(var field in self.sumsmodel){
323
- footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
324
- }
325
- this.footer.push(footerData);
326
- this.other.push(otherInData);
327
- },
328
- getorg (obj) {
329
- if(obj.resids.length>0){
330
- this.filialeCodeStr =" and f_orgid in " + plugin.convertToIn(obj.resids)
331
- }
332
- else{
333
- this.filialeCodeStr= " and f_orgid = " + this.$login.f.orgid
334
- }
335
- },
336
- userTypeChange () {
337
- this.gasproperties=[]
338
- if(this.$refs.paged.$refs.cri.model !==null) {
339
- this.$refs.paged.$refs.cri.model.f_gasproperties=''
340
- this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
341
- }
342
- else{
343
- this.gasproperties =[{label: '全部', value: ''}]
344
- }
345
- },
346
-
347
- cancel() {
348
- this.show = false
349
- },
350
- showmsg(obj){
351
- this.rowdata=obj
352
- this.show=true
353
- },
354
- search () {
355
- this.$refs.paged.$refs.cri.search()
356
- },
357
- selfSearch (args) {
358
- if (!this.meter_classify) {
359
- this.$showMessage('请选择气表类型。。。')
360
- return
361
- }
362
- args.condition = args.condition+ ` ${this.filialeCodeStr}`
363
- this.model.search(args.condition, args.model)
364
- },
365
- hidden(){
366
- this.criteriaShow = !this.criteriaShow
367
- },
368
- clear(){
369
- Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
370
- if(key != 'startDate' && key != 'endDate')
371
- this.$refs.paged.$refs.cri.model[key] = []
372
- })
373
- this.$refs.paged.$refs.cri.model.endDate = this.$login.toStandardDateString()
374
- }
375
- },
376
- computed: {
377
- gasproperties() {
378
- return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('用气性质')]
379
- },
380
- usertypes() {
381
- return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('用户类型')]
382
- },
383
- tablestate () {
384
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('气表状态')]
385
- },
386
- f_meter_classify(){
387
- return [{label: '机表', value: '机表'},{label: '卡表', value: '卡表'},{label: '物联网表', value: '物联网表'}]
388
- // return [{label: '卡表', value: '卡表'}]
389
- },
390
-
391
- getCondition () {
392
- let result = {
393
- condition: '',
394
- diffDay:' 1=1 ',
395
- endDate: this.$refs.paged.$refs.cri.model.endDate,
396
- }
397
- result.condition = this.$refs.paged.$refs.cri.condition + this.filialeCodeStr
398
-
399
- return result
400
- }
401
- }
402
- }
403
- </script>
404
- <style media="screen">
405
- .divtext {
406
- min-width: 50px;
407
- max-width: 200px;
408
- border: 1px solid green;
409
- display: inline-block;
410
- }
411
- </style>
412
-
1
+ <template>
2
+ <div id="unit" class="flex-row">
3
+ <div class="basic-main">
4
+ <div class="flex" v-if="!show">
5
+ <criteria-paged :model="model" v-ref:paged>
6
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
7
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial >
8
+ <div class="row">
9
+ <div class="col-sm-2">
10
+ <label class="font_normal_body">&emsp;&emsp;公司</label>
11
+ <right-tree @re-res="$parent.$parent.getorg"
12
+ :initresid='$parent.$parent.org'></right-tree>
13
+ </div>
14
+ <div class="col-sm-2 ">
15
+ <label for="f_gasproperties"class="font_normal_body">用气性质</label>
16
+ <v-select id="f_gasproperties"
17
+ style="width:60%"
18
+ v-model="model.f_gasproperties"
19
+ placeholder='用气性质'
20
+ :value.sync="model.f_gasproperties"
21
+ :options='$parent.$parent.gasproperties'
22
+ condition="f_gasproperties = '{}'"
23
+ close-on-select >
24
+ </v-select>
25
+ </div>
26
+ <div class="col-sm-2 flex-row" style="white-space: nowrap">
27
+ <label class="font_normal_body" v-if="['卡表','物联网表'].includes($parent.$parent.meter_classify)" >未购天数</label>
28
+ <label class="font_normal_body" v-else>未抄天数</label>
29
+ <div class="row">
30
+ <input type="text" style="width:30%" class="input_search" v-model="model.diffdaymin"
31
+ condition="diffday >= {} " placeholder="">
32
+ <label class="font_normal_body"> ≤ x ≤ </label>
33
+ <input type="text" style="width:30%" class="input_search" v-model="model.diffdaymax"
34
+ condition="diffday <= {} " placeholder="">
35
+ </div>
36
+
37
+ </div>
38
+ <div class="col-sm-2 ">
39
+ <label class="font_normal_body">截止时间</label>
40
+ <datepicker id="endDate" placeholder="截止时间"
41
+ v-model="model.endDate"
42
+ style="width:60%"
43
+ :value.sync="model.endDate"
44
+ :disabled-days-of-Week="[]"
45
+ :format="'yyyy-MM-dd'"
46
+ :show-reset-button="reset">
47
+ </datepicker>
48
+ </div>
49
+
50
+ <div class="span" style="float:right;">
51
+ <button class="btn button_search" @click="search()">查询</button>
52
+ <button class="btn button_clear" @click="$parent.$parent.clear()">清空</button>
53
+ <export-excel :data="$parent.$parent.getCondition"
54
+ :field="$parent.$parent.getfield"
55
+ :footer="$parent.$parent.footer"
56
+ :header="$parent.$parent.other"
57
+ sqlurl="rs/logic/exportfile"
58
+ :sql-name="$parent.$parent.sqlName"
59
+ template-name='用户稽查导出' :choose-col="true"></export-excel>
60
+ <print-data :model="$parent.model" :field="$parent.$parent.getfield" :defaultfield="$parent.$parent.defaultfield" print-name="稽查查询打印" :sumsmodel="$parent.$parent.sumsmodel" ></print-data>
61
+ <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>
62
+
63
+ </div>
64
+ </div>
65
+ <div class="row" v-show="$parent.$parent.criteriaShow">
66
+ <div class="col-sm-2 ">
67
+ <label for="f_meter_classify"class="font_normal_body">气表类型</label>
68
+ <v-select id="f_meter_classify"
69
+ v-model="$parent.$parent.meter_classify"
70
+ placeholder='气表类型'
71
+ style="width:70%"
72
+ :value.sync="$parent.$parent.meter_classify"
73
+ :options='$parent.$parent.f_meter_classify'
74
+ :value-single="true"
75
+ close-on-select >
76
+ </v-select>
77
+ </div>
78
+
79
+ <div class="col-sm-2 ">
80
+ <label for="f_table_state"class="font_normal_body">&emsp;表状态</label>
81
+ <v-select id="f_table_state"
82
+ style="width:60%"
83
+ v-model="model.f_table_state"
84
+ placeholder='表状态'
85
+ :value.sync="model.f_table_state"
86
+ :options='$parent.$parent.tablestate'
87
+ condition="f_table_state = '{}'"
88
+ close-on-select >
89
+ </v-select>
90
+ </div>
91
+ <div class="col-sm-2 flex-row" style="white-space: nowrap" >
92
+ <label class="font_normal_body" v-if="['卡表','物联网表'].includes($parent.$parent.meter_classify)">总购次数</label>
93
+ <label class="font_normal_body" v-else>抄表次数</label>
94
+ <div class="row">
95
+ <input type="text" style="width:30%" class="input_search" v-model="model.cishumin"
96
+ condition="cishu >= {} " placeholder="">
97
+ <label class="font_normal_body"> ≤ x ≤ </label>
98
+ <input type="text" style="width:30%" class="input_search" v-model="model.cishumax"
99
+ condition="cishu <= {} " placeholder="">
100
+ </div>
101
+ </div>
102
+ <div class="col-sm-2 flex-row" style="white-space: nowrap" >
103
+ <label class="font_normal_body" v-if="$parent.$parent.meter_classify === '卡表'">总购气量</label>
104
+ <label class="font_normal_body" v-if="$parent.$parent.meter_classify === '机表'">总用气量</label>
105
+ <label class="font_normal_body" v-if="$parent.$parent.meter_classify === '物联网表'">总购金额</label>
106
+ <div class="row">
107
+ <input type="text" style="width:30%" class="input_search" v-model="model.pregasmin"
108
+ condition="pregas >= {} " placeholder="">
109
+ <label class="font_normal_body"> ≤ x ≤ </label>
110
+ <input type="text" style="width:30%" class="input_search" v-model="model.pregasmax"
111
+ condition="pregas <= {} " placeholder="">
112
+ </div>
113
+ </div>
114
+
115
+ <div class="col-sm-2">
116
+ <label class="font_normal_body">&emsp;&emsp;表号</label>
117
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
118
+ condition="f_meternumber = '{}'" placeholder='表号'>
119
+ </div>
120
+ <div class="col-sm-2 ">
121
+ <label class="font_normal_body">用户类型</label>
122
+ <v-select :value.sync="model.f_user_type"
123
+ @change="$parent.$parent.userTypeChange()"
124
+ :options='$parent.$parent.usertypes' placeholder='请选择' v-model="model.f_user_type"
125
+ condition="f_user_type = '{}'"
126
+ close-on-select></v-select>
127
+ </div>
128
+
129
+ <div class="col-sm-2">
130
+ <label class="font_normal_body">客户名称</label>
131
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
132
+ condition="f_user_name like '%{}%'" placeholder="客户名称">
133
+ </div>
134
+ <div class="col-sm-2">
135
+ <label class="font_normal_body">客户编号</label>
136
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
137
+ condition="f_userinfo_code = '{}' " placeholder="客户编号">
138
+ </div>
139
+ <div class="col-sm-2">
140
+ <label class="font_normal_body">客户地址</label>
141
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
142
+ condition="f_address like '%{}%'" placeholder='客户地址'>
143
+ </div>
144
+ <div class="col-sm-2">
145
+ <label class="font_normal_body">客户电话</label>
146
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_phone"
147
+ condition="f_user_phone like '%{}%'" placeholder="客户电话">
148
+ </div>
149
+
150
+
151
+ </div>
152
+
153
+ </div>
154
+ </criteria>
155
+ <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
156
+ <template partial='head'>
157
+ <tr>
158
+ <th><nobr>序号</nobr></th>
159
+ <th><nobr>客户编号</nobr></th>
160
+ <th><nobr>客户电话</nobr></th>
161
+ <th><nobr>表号</nobr></th>
162
+ <th><nobr>客户名称</nobr></th>
163
+ <th><nobr>地址</nobr></th>
164
+ <th><nobr>用户类型</nobr></th>
165
+ <th><nobr>用气性质</nobr></th>
166
+ <th><nobr>表具状态</nobr></th>
167
+ <th><nobr>气表品牌</nobr></th>
168
+ <th><nobr>气价名称</nobr></th>
169
+ <th><nobr>最后购气日期</nobr></th>
170
+ <th v-show="['卡表','物联网表'].includes($parent.$parent.$parent.meter_classify)"><nobr>总购气次数</nobr></th>
171
+ <th v-show="$parent.$parent.$parent.meter_classify === '机表'"><nobr>总抄表次数</nobr></th>
172
+
173
+ <th v-show="$parent.$parent.$parent.meter_classify === '卡表'"><nobr>总购气量</nobr></th>
174
+ <th v-show="$parent.$parent.$parent.meter_classify === '物联网表'"><nobr>总购金额</nobr></th>
175
+ <th v-show="$parent.$parent.$parent.meter_classify === '机表'"><nobr>总用气量</nobr></th>
176
+
177
+ <th v-show="['卡表','物联网表'].includes($parent.$parent.$parent.meter_classify)"><nobr>累计未购气天数</nobr></th>
178
+ <th v-show="$parent.$parent.$parent.meter_classify === '机表'"><nobr>累计未抄表天数</nobr></th>
179
+ <th><nobr>组织机构</nobr></th>
180
+ </tr>
181
+ </template>
182
+ <template partial='body'>
183
+ <td style="text-align: center;"><nobr>{{$index+1}}</nobr></td>
184
+ <td style="text-align: center;"><nobr>
185
+ <span @click="$parent.$parent.$parent.showmsg(row)"><a>{{row.f_userinfo_code}}</a></span>
186
+ </nobr> </td>
187
+ <td style="text-align: center;"><nobr>{{row.f_user_phone}}</nobr></td>
188
+ <td style="text-align: center;"><nobr>{{row.f_meternumber}}</nobr></td>
189
+ <th style="text-align: center;"><nobr>{{row.f_user_name}}</nobr></th>
190
+ <th style="text-align: center;"><nobr>{{row.f_address}}</nobr></th>
191
+ <th style="text-align: center;"><nobr>{{row.f_user_type}}</nobr></th>
192
+ <th style="text-align: center;"><nobr>{{row.f_gasproperties}}</nobr></th>
193
+ <th style="text-align: center;"><nobr>{{row.f_table_state}}</nobr></th>
194
+ <th style="text-align: center;"><nobr>{{row.f_meter_brand}}</nobr></th>
195
+ <th style="text-align: center;"><nobr>{{row.f_price_name}}</nobr></th>
196
+ <th style="text-align: center;"><nobr>{{row.delivery_date}}</nobr></th>
197
+
198
+ <th style="text-align: center;"><nobr>{{row.cishu}}</nobr></th>
199
+ <th style="text-align: center;"><nobr>{{row.pregas}}</nobr></th>
200
+ <th style="text-align: center;"><nobr>{{row.diffday}}</nobr></th>
201
+ <th style="text-align: center;"><nobr>{{row.f_orgname}}</nobr></th>
202
+ </template>
203
+ </data-grid>
204
+ </criteria-paged>
205
+ <table class="table-hover">
206
+ <tr style="position: relative" class="table-bordered">
207
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">汇总信息</td>
208
+ <td v-if="meter_classify === '卡表'" style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">总购气量合计:&emsp;&emsp;{{sumsmodel.pregas}}</td>
209
+ <td v-if="meter_classify === '机表'" style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">总抄表气量合计:&emsp;&emsp;{{sumsmodel.pregas}}</td>
210
+ <td v-if="meter_classify === '物联网表'" style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">总购金额合计:&emsp;&emsp;{{sumsmodel.pregas}}</td>
211
+ </tr>
212
+ </table>
213
+ </div>
214
+ <div class="flex" v-if="show">
215
+ <user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage-new>
216
+ </div>
217
+ </div></div>
218
+ </template>
219
+ <script>
220
+ /**
221
+ *用户档案查询列表以及添加操作组件
222
+ */
223
+ import { PagedList } from 'vue-client'
224
+ import Vue from 'vue'
225
+ import plugin from 'system-clients/src/plugins/GetLoginInfoService'
226
+
227
+ let readySomething = async function (self) {
228
+
229
+ self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString()
230
+
231
+ // await self.$refs.paged.$refs.cri.search()
232
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
233
+ }
234
+ export default {
235
+ title: '用户稽查',
236
+ data () {
237
+ return {
238
+ other:[],
239
+ footer:[],
240
+ org:[this.$login.f.orgid],
241
+ criteriaShow: false,
242
+ meter_classify:'卡表',
243
+ filialeNameStr: null,
244
+ filialeCodeStr: `and f_orgid = ${this.$login.f.orgid}`,
245
+ userid: this.$login.f.id,
246
+ source: `tool.getFullTree(this.getRights().where(row.getType() == $organization$))`,
247
+ getfield:{"f_userinfo_code":"客户编号","f_meternumber":"表号","f_user_name":"客户名称","f_user_phone":"客户电话","f_address":"地址","f_user_type":"用户类型",
248
+ "f_gasproperties":"用气性质","f_table_state":"表具状态","f_meter_brand":"气表品牌","f_price_name":"气价名称",
249
+ "delivery_date":"最后购气日期","cishu":"总购气次数","pregas":"总购气量",
250
+ "diffday":"未购气总天数"},
251
+ model: new PagedList('rs/sql/inspectList', 50,{endDate:'this.model.endDate'},{pregas: 0}),
252
+ rows: null,
253
+ //orgid:'',
254
+ show:false,
255
+ sqlName:'inspectList',
256
+ rowdata:{},
257
+ sumsmodel: {},
258
+ config: {
259
+ defaultPrint: ['f_userinfo_code','f_user_id']
260
+ },
261
+ defaultfield: [],
262
+ }
263
+ },
264
+ watch:{
265
+ meter_classify(val){
266
+ if (val === '卡表') {
267
+ this.model.url = this.url = 'rs/sql/inspectList'
268
+ this.sqlName = 'inspectList'
269
+ this.getfield = {"f_userinfo_code":"客户编号","f_meternumber":"表号","f_user_name":"客户名称","f_user_phone":"客户电话","f_address":"地址","f_user_type":"用户类型",
270
+ "f_gasproperties":"用气性质","f_table_state":"表具状态","f_meter_brand":"气表品牌","f_price_name":"气价名称",
271
+ "delivery_date":"最后购气日期","cishu":"总购气次数","pregas":"总购气量",
272
+ "diffday":"累计未购气天数"}
273
+ }else if (val === '机表') {
274
+ this.model.url = this.url = 'rs/sql/handinspectList'
275
+ this.sqlName = 'handinspectList'
276
+ this.getfield = {"f_userinfo_code":"客户编号","f_meternumber":"表号","f_user_name":"客户名称","f_user_phone":"客户电话","f_address":"地址","f_user_type":"用户类型",
277
+ "f_gasproperties":"用气性质","f_table_state":"表具状态","f_meter_brand":"气表品牌","f_price_name":"气价名称",
278
+ "delivery_date":"最后抄表日期","cishu":"总抄表次数","pregas":"抄表气量",
279
+ "diffday":"累计未抄表天数"}
280
+ } else if (val === '物联网表') {
281
+ this.model.url = this.url = 'rs/sql/getWebMeterList'
282
+ this.sqlName = 'getWebMeterList'
283
+ this.getfield = {"f_userinfo_code":"客户编号","f_meternumber":"表号","f_user_name":"客户名称","f_user_phone":"客户电话","f_address":"地址","f_user_type":"用户类型",
284
+ "f_gasproperties":"用气性质","f_table_state":"表具状态","f_meter_brand":"气表品牌","f_price_name":"气价名称",
285
+ "delivery_date":"最后购气日期","cishu":"总购气次数","f_collection":"总购金额",
286
+ "diffday":"累计未购气天数"}
287
+ }
288
+ this.clear()
289
+ this.model.rows = []
290
+ for(let key in this.model.sums){
291
+ this.model.sums[key] = 0
292
+ }
293
+
294
+ },
295
+ sumsmodel:{
296
+ handler: function(val) {
297
+ this.getotherfooter();
298
+ },
299
+ deep: true
300
+ }
301
+ },
302
+ ready () {
303
+
304
+ readySomething(this).then(() => {
305
+ this.$emit('ready')
306
+ }).catch((error) => {
307
+ this.$emit('error', error)
308
+ })
309
+ },
310
+ methods: {
311
+ getotherfooter(){
312
+ // this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
313
+ // this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
314
+ this.other=[];
315
+ this.footer=[];
316
+ let exportdata = this.getCondition;
317
+ let otherInData=[];
318
+ otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
319
+ let footerData=[],exportfield=this.getfield;
320
+ footerData.push("合计");
321
+ let self = this;
322
+ for(var field in self.sumsmodel){
323
+ footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
324
+ }
325
+ this.footer.push(footerData);
326
+ this.other.push(otherInData);
327
+ },
328
+ getorg (obj) {
329
+ if(obj.resids.length>0){
330
+ this.filialeCodeStr =" and f_orgid in " + plugin.convertToIn(obj.resids)
331
+ }
332
+ else{
333
+ this.filialeCodeStr= " and f_orgid = " + this.$login.f.orgid
334
+ }
335
+ },
336
+ userTypeChange () {
337
+ this.gasproperties=[]
338
+ if(this.$refs.paged.$refs.cri.model !==null) {
339
+ this.$refs.paged.$refs.cri.model.f_gasproperties=''
340
+ this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
341
+ }
342
+ else{
343
+ this.gasproperties =[{label: '全部', value: ''}]
344
+ }
345
+ },
346
+
347
+ cancel() {
348
+ this.show = false
349
+ },
350
+ showmsg(obj){
351
+ this.rowdata=obj
352
+ this.show=true
353
+ },
354
+ search () {
355
+ this.$refs.paged.$refs.cri.search()
356
+ },
357
+ selfSearch (args) {
358
+ if (!this.meter_classify) {
359
+ this.$showMessage('请选择气表类型。。。')
360
+ return
361
+ }
362
+ args.condition = args.condition+ ` ${this.filialeCodeStr}`
363
+ this.model.search(args.condition, args.model)
364
+ },
365
+ hidden(){
366
+ this.criteriaShow = !this.criteriaShow
367
+ },
368
+ clear(){
369
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
370
+ if(key != 'startDate' && key != 'endDate')
371
+ this.$refs.paged.$refs.cri.model[key] = []
372
+ })
373
+ this.$refs.paged.$refs.cri.model.endDate = this.$login.toStandardDateString()
374
+ }
375
+ },
376
+ computed: {
377
+ gasproperties() {
378
+ return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('用气性质')]
379
+ },
380
+ usertypes() {
381
+ return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('用户类型')]
382
+ },
383
+ tablestate () {
384
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('气表状态')]
385
+ },
386
+ f_meter_classify(){
387
+ return [{label: '机表', value: '机表'},{label: '卡表', value: '卡表'},{label: '物联网表', value: '物联网表'}]
388
+ // return [{label: '卡表', value: '卡表'}]
389
+ },
390
+
391
+ getCondition () {
392
+ let result = {
393
+ condition: '',
394
+ diffDay:' 1=1 ',
395
+ endDate: this.$refs.paged.$refs.cri.model.endDate,
396
+ }
397
+ result.condition = this.$refs.paged.$refs.cri.condition + this.filialeCodeStr
398
+
399
+ return result
400
+ }
401
+ }
402
+ }
403
+ </script>
404
+ <style media="screen">
405
+ .divtext {
406
+ min-width: 50px;
407
+ max-width: 200px;
408
+ border: 1px solid green;
409
+ display: inline-block;
410
+ }
411
+ </style>
412
+