manage-client 3.1.39 → 3.1.40

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 (86) hide show
  1. package/.gradle/3.5.1/file-changes/last-build.bin +0 -0
  2. package/.gradle/3.5.1/taskHistory/taskHistory.lock +0 -0
  3. package/.gradle/buildOutputCleanup/built.bin +0 -0
  4. package/.gradle/buildOutputCleanup/cache.properties.lock +1 -0
  5. package/build/dev-server.js +22 -29
  6. package/package.json +1 -1
  7. package/src/App.vue +28 -29
  8. package/src/components/BasisEcharts/BarChart.vue +247 -247
  9. package/src/components/BasisEcharts/RingChart.vue +196 -196
  10. package/src/components/SellReport/BusinessClassify.vue +293 -293
  11. package/src/components/SellReport/ChargePrick.vue +284 -284
  12. package/src/components/SellReport/DepartmentPrick.vue +288 -288
  13. package/src/components/SellReport/FinanceSellType.vue +254 -254
  14. package/src/components/SellReport/GasBaozhuangFee.vue +237 -237
  15. package/src/components/SellReport/GasPrice.vue +244 -244
  16. package/src/components/SellReport/ManageBusSummary.vue +242 -242
  17. package/src/components/SellReport/ManageHandInputtor.vue +281 -281
  18. package/src/components/SellReport/ManageOtherCharge.vue +250 -250
  19. package/src/components/SellReport/ManageSellType.vue +284 -284
  20. package/src/components/SellReport/ManageUserCount.vue +347 -347
  21. package/src/components/SellReport/MarketMonth.vue +277 -251
  22. package/src/components/SellReport/SaleMonthReport.vue +227 -227
  23. package/src/components/SellReport/SellingTable.vue +220 -220
  24. package/src/components/SellReport/UserClassify.vue +251 -251
  25. package/src/components/SellReport/UserSellingGas.vue +251 -251
  26. package/src/components/daping/CallCenter.vue +366 -366
  27. package/src/components/daping/DataManagement.vue +537 -537
  28. package/src/components/daping/GMap.vue +636 -636
  29. package/src/components/daping/ManageMain.vue +270 -270
  30. package/src/components/daping/NetWork.vue +238 -238
  31. package/src/components/daping/RedactDaPing.vue +468 -468
  32. package/src/components/daping/Ring.vue +212 -212
  33. package/src/components/daping/SafeCheck.vue +446 -446
  34. package/src/components/daping/SafeCheckRing.vue +166 -166
  35. package/src/components/daping/SafecheckBarChart.vue +233 -233
  36. package/src/components/daping/WuHaiMap.vue +418 -418
  37. package/src/components/qinhua/BarChart.vue +256 -256
  38. package/src/components/qinhua/Pie.vue +132 -132
  39. package/src/components/qinhua/SellEcharts.vue +115 -115
  40. package/src/components/qinhua/qinHuaMap.vue +414 -414
  41. package/src/components/sale/businessquery/CollectManage.vue +135 -135
  42. package/src/components/sale/businessquery/FMYGasQuery.vue +713 -713
  43. package/src/components/sale/businessquery/MonthGasQuery.vue +467 -467
  44. package/src/components/sale/businessquery/OtherChargeQuery.vue +619 -619
  45. package/src/components/sale/businessquery/ProceedsOper.vue +377 -377
  46. package/src/components/sale/businessquery/YingShouMingXi.vue +525 -525
  47. package/src/components/statistical/StatisticalAnalysis.vue +247 -247
  48. package/src/components/webmeter/DrillData/LostContactAnalysisList.vue +633 -633
  49. package/src/components/webmeter/DrillData/LostContactEcharts.vue +177 -177
  50. package/src/components/webmeter/DrillData/UserGasAll.vue +597 -597
  51. package/src/components/webmeter/DrillData/UserGasEcharts.vue +210 -210
  52. package/src/components/webmeter/DrillData/UserGasEform.vue +227 -227
  53. package/src/components/webmeter/DrillData/UserLostContactAnalysis.vue +585 -585
  54. package/src/components/webmeter/newwebmeter/NewException/NewContactEcharts.vue +170 -170
  55. package/src/components/webmeter/newwebmeter/NewException/NewEchartsAll.vue +111 -111
  56. package/src/components/webmeter/newwebmeter/NewException/NewExceptionEcharsTotal.vue +903 -903
  57. package/src/components/webmeter/newwebmeter/NewException/NewGasEcharts.vue +209 -209
  58. package/src/components/webmeter/newwebmeter/NewException/NewHandplanEcharts.vue +238 -238
  59. package/src/components/webmeter/newwebmeter/NewException/NewInstructEcharts.vue +266 -266
  60. package/src/components/webmeter/newwebmeter/NewException/TotalExceptionByMeter.vue +607 -607
  61. package/src/components/webmeter/newwebmeter/UserGasEchartsList.vue +218 -218
  62. package/src/components/webmeter/newwebmeter/UserGasList.vue +438 -438
  63. package/src/components/webmeter/newwebmeter/UserInstructList.vue +332 -332
  64. package/src/components/webmeter/newwebmeter/signAnalysisEcharts.vue +266 -266
  65. package/src/components/webmeter/newwebmeter/signAnalysisEform.vue +175 -175
  66. package/src/components/webmeter/newwebmeter/signAnalysisListMain.vue +387 -387
  67. package/src/filiale/alashan/SellingTable.vue +234 -234
  68. package/src/filiale/alashan/reportManage.js +10 -10
  69. package/src/filiale/jingzhou/ChargeQuery.vue +1243 -1243
  70. package/src/filiale/jingzhou/config/exportConfig.js +861 -861
  71. package/src/filiale/meihekou/UserGasEform.vue +267 -267
  72. package/src/filiale/meihekou/sale.js +26 -26
  73. package/src/filiale/rongcheng/exportConfig.js +257 -257
  74. package/src/filiale/rongchuang/SellingTable.vue +250 -250
  75. package/src/filiale/rongchuang/reportManage.js +11 -11
  76. package/src/filiale/shaoguan/config/exportConfig.js +433 -433
  77. package/src/filiale/tongchuan/ManageBusSummary.vue +301 -301
  78. package/src/filiale/tongchuan/ResSelectGroupNew.vue +181 -176
  79. package/src/filiale/tongchuan/reportManage.js +5 -5
  80. package/src/main.js +2 -2
  81. package/src/newmanage.js +525 -525
  82. package/src/reportManage.js +462 -462
  83. package/src/saleManage.js +521 -522
  84. package/static/wuhai.json +1610 -1610
  85. package/src/components/SellReport/SellCollect.vue +0 -183
  86. package/src/components/sale/businessquery/NewHandplanQuery.vue +0 -995
@@ -1,597 +1,597 @@
1
- <template>
2
- <div class="flex-row" id="unit" v-show="(!echarts)&&(!isActiveTotalForm)">
3
- <div class="basic-main" @keyup.enter="search">
4
- <div class="flex">
5
- <div class="flex" style="flex:1;">
6
- <criteria-paged :model="model" :pager='true' v-ref:paged>
7
- <criteria @condition-changed='$parent.search' partial='criteria' v-ref:cri>
8
- <div class="form-horizontal select-overspread container-fluid auto" novalidate partial>
9
- <div class="row" width="100%">
10
- <div class="col-sm-2 form-group">
11
- <label class="font_normal_body">客户编号</label>
12
- <input style="width:60%" class="input_search" condition="f_userinfo_code like '%{}%'" placeholder='客户编号' type="text"
13
- v-el:meternumber v-model="model.f_userinfo_code" v-next-el='f_userinfo_code'
14
- >
15
- </div>
16
- <div class="col-sm-2 form-group">
17
- <label class="font_normal_body">客户名称</label>
18
- <input style="width:60%" class="input_search" condition="f_user_name like '%{}%'" placeholder='客户名称' type="text"
19
- v-el:username v-model="model.f_username" v-next-el='userid'>
20
- </div>
21
- <div class="col-sm-2 form-group">
22
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;小区&nbsp;&nbsp;&nbsp;</label>
23
- <v-select :value.sync="model.f_residential_area"
24
- class="select_list select"
25
- v-model="model.f_residential_area"
26
- style="width: 60%"
27
- multiple
28
- condition="f_residential_area in {}"
29
- :options='$parent.$parent.residentialArea' placeholder='选择小区'
30
- close-on-select>
31
-
32
- </v-select>
33
- </div>
34
- <div class="col-sm-2 form-group">
35
- <label class="font_normal_body">用气地址</label>
36
- <input style="width:60%" class="input_search" condition="f_address like '%{}%'" placeholder='用气地址' type="text"
37
- v-el:area v-el:xq v-model="model.f_address" v-next-el='address'
38
- >
39
- </div>
40
- <div class="col-sm-2 form-group">
41
- <label class="font_normal_body">表&emsp;&emsp;号</label>
42
- <input style="width:60%" class="input_search" condition="f_meternumber = '{}'" placeholder='表号' type="text"
43
- v-el:meternumber v-model="model.f_meternumber" v-next-el='meternumber'
44
- >
45
- </div>
46
- <div class="col-sm-4 form-group button-range">
47
- <button @click="search()" class="button_search button_spacing">查询</button>
48
- <button @click="$parent.$parent.clearmsg" class="button_clear button_spacing">清空</button>
49
- <export-excel :data="$parent.$parent.getCondition()"
50
- :field="$parent.$parent.getfield"
51
- sqlurl="rs/logic/exportfile" sql-name="webmeter_getUserGasList" template-name='用气分析'
52
- v-ref:exports
53
- :choose-col="true"></export-excel>
54
- <button class="button_export button_spacing" style="width: max-content" @click="$parent.$parent.showTotalForm()" >显示汇总</button>
55
- <button class="button_export button_spacing" @click="$parent.$parent.showEcharts()">显示图表</button>
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
- <div class="row" v-show="$parent.$parent.criteriaShow">
60
-
61
- <!--<div class="col-sm-2 form-group" >
62
- <label class="font_normal_body">用气属性</label>
63
- <v-select
64
- placeholder='用气属性'
65
- value-single="true"
66
- :value.sync="model.f_gasproperties2"
67
- v-model="model.f_gasproperties2"
68
- :options='$parent.$parent.Gasproperties2'
69
- close-on-select condition="uf.f_gasproperties2 {}">
70
- </v-select>
71
- </div>-->
72
- <!-- <res-select-group :show-component="['company']" :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>-->
73
-
74
- <div class="col-sm-2">
75
- <label class="font_normal_body">公&emsp;&emsp;司</label>
76
- <right-tree @re-res="$parent.$parent.getorg"
77
- :initresid='$parent.$parent.orgid'></right-tree>
78
- </div>
79
- <!-- <div class="col-sm-2 form-group">-->
80
- <!-- <label class="font_normal_body">组织机构</label>-->
81
- <!-- <res-select :initresid="$parent.$parent.orgid"-->
82
- <!-- style="width:60%"-->
83
- <!-- @res-select="$parent.$parent.getRes"-->
84
- <!-- restype='organization'>-->
85
- <!-- </res-select>-->
86
- <!-- </div>-->
87
-
88
- <div class="col-sm-2 form-group">
89
- <label class="font_normal_body">客户类型</label>
90
- <v-select :options='$parent.$parent.Gasusertype'
91
- :value.sync="model.f_user_type"
92
- close-on-select
93
- style="width:60%"
94
- condition="f_user_type = '{}'"
95
- id="f_user_type"
96
- placeholder='客户类型'
97
- v-model="model.f_user_type"
98
- value-single="true">
99
- </v-select>
100
- </div>
101
- <div class="col-sm-2 form-group">
102
- <label class="font_normal_body">用气性质</label>
103
- <v-select :options='$parent.$parent.Gasproperties'
104
- :value.sync="model.f_gasproperties"
105
- close-on-select
106
- condition="f_gasproperties = '{}'"
107
- id="f_gasproperties"
108
- placeholder='用气性质'
109
- style="width:60%"
110
- v-model="model.f_gasproperties"
111
- value-single="true">
112
- </v-select>
113
- </div>
114
- <div class="col-sm-2 form-group">
115
- <label class="font_normal_body">气表品牌</label>
116
- <v-select :value.sync="model.f_meter_brand"
117
- v-model="model.f_meter_brand"
118
- :options='$parent.$parent.meterbrands' placeholder='请选择'
119
- condition="f_meter_brand = '{}'"
120
- close-on-select></v-select>
121
- </div>
122
- <div class="col-sm-2 form-group">
123
- <label class="font_normal_body">时间区间</label>
124
- <datepicker :disabled-days-of-Week="[]" :format="'yyyy-MM-dd HH:mm:ss'"
125
- :show-reset-button="reset"
126
- :value.sync="model.startDate"
127
- id="startDate"
128
- style="width:60%"
129
- placeholder="开始时间"
130
- v-model="model.startDate">
131
- </datepicker>
132
- </div>
133
- <div class="col-sm-2 form-group">
134
- <label class="font_normal_body" style="word-break:keep-all;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;</label>
135
- <datepicker :disabled-days-of-Week="[]" :format="'yyyy-MM-dd HH:mm:ss'"
136
- :show-reset-button="reset"
137
- :value.sync="model.endDate"
138
- style="width:60%"
139
- id="endDate"
140
- style="width:60%"
141
- placeholder="结束日期"
142
- v-model="model.endDate">
143
- </datepicker>
144
- </div>
145
- <div class="col-sm-2 form-group flex-row" style="white-space: nowrap">
146
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;用气量&nbsp;</label>
147
- <div class="row">
148
- <input type="text" style="width:27%" class="input_search" v-model="model.f_oughtamount1"
149
- condition="f_oughtamount >= {} " placeholder="">
150
- <label class="font_normal_body"> ≤ x ≤ </label>
151
- <input type="text" style="width:27%" class="input_search" v-model="model.f_oughtamount2"
152
- condition="f_oughtamount <= {} " placeholder="">
153
- </div>
154
- </div>
155
- <!--<div class="col-sm-2 form-group">
156
- <label class="font_normal_body">用&nbsp;气&nbsp;量&nbsp;</label>
157
- <input type="text" style="width:60%" class="input_search"
158
- v-model="model.f_start_oughtamount" placeholder='起始气量'
159
- >
160
- </div>
161
- <div class="col-sm-2 form-group">
162
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;</label>
163
- <input type="text" style="width:60%" class="input_search"
164
- v-model="model.f_end_oughtamount" placeholder='结束气量'
165
- >
166
- </div>-->
167
- <div class="col-sm-2 form-group">
168
- <label class="font_normal_body">壁&ensp;挂&ensp;炉</label>
169
- <v-select id="f_meter_brand"
170
- v-model="model.f_usetype"
171
- placeholder=''
172
- :value.sync="model.f_usetype"
173
- :options='$parent.$parent.usetypes'
174
- condition="f_usetype {}" :search="false"
175
- close-on-select style="width: 60%">
176
- </v-select>
177
- </div>
178
- <div class="col-sm-2 form-group">
179
- <label class="font_normal_body">房屋类型</label>
180
- <v-select :value.sync="model.f_house_type" v-model="model.f_house_type"
181
- :options='$parent.$parent.houseTypes' placeholder='请选择'
182
- close-on-select
183
- condition="f_house_type = '{}'"></v-select>
184
- </div>
185
- <div class="col-sm-2 form-group">
186
- <label class="font_normal_body">安装位置</label>
187
- <v-select :value.sync="model.f_position" v-model="model.f_position"
188
- :options='$parent.$parent.positions' placeholder='请选择'
189
- condition="f_position = '{}'"
190
- close-on-select></v-select>
191
- </div>
192
- <div class="col-sm-2 form-group flex-row" style="white-space: nowrap">
193
- <label class="font_normal_body">期末结余</label>
194
- <div class="row">
195
- <input type="text" style="width:27%" class="input_search" v-model="model.f_curbalance1"
196
- condition="f_curbalance >= {} " placeholder="">
197
- <label class="font_normal_body"> ≤ x ≤ </label>
198
- <input type="text" style="width:27%" class="input_search" v-model="model.f_curbalance2"
199
- condition="f_curbalance <= {} " placeholder="">
200
- </div>
201
- </div>
202
- </div>
203
- </div>
204
- </criteria>
205
- <data-grid :model="model" id="usergasall" partial='list' class="list_area table_sy" v-ref:grid>
206
- <template partial='head'>
207
- <tr>
208
- <th style="text-align:center">
209
- <nobr>客户编号</nobr>
210
- </th>
211
- <th style="text-align:center">
212
- <nobr>客户类型</nobr>
213
- </th>
214
- <th style="text-align:center">
215
- <nobr>用气性质</nobr>
216
- </th>
217
- <th style="text-align:center">
218
- <nobr>用户电话</nobr>
219
- </th>
220
- <!--<th style="text-align:center"><nobr>用气属性</nobr></th>-->
221
- <th style="text-align:center">
222
- <nobr>客户名称</nobr>
223
- </th>
224
- <th style="text-align:center">
225
- <nobr>小区</nobr>
226
- </th>
227
- <th style="text-align:center">
228
- <nobr>用气单价</nobr>
229
- </th>
230
- <th style="text-align:center">
231
- <nobr>累购气量</nobr>
232
- </th>
233
- <th style="text-align:center">
234
- <nobr>累购金额</nobr>
235
- </th>
236
- <th style="text-align:center">
237
- <nobr>账号结余</nobr>
238
- </th>
239
- <th style="text-align:center">
240
- <nobr>气表名称</nobr>
241
- </th>
242
- <th style="text-align:center">
243
- <nobr>用气地址</nobr>
244
- </th>
245
- <th style="text-align:center">
246
- <nobr>表号</nobr>
247
- </th>
248
- <th style="text-align:center">
249
- <nobr>期初余额(元)</nobr>
250
- </th>
251
- <th style="text-align:center">
252
- <nobr>上期底数</nobr>
253
- </th>
254
- <th style="text-align:center">
255
- <nobr>本期底数</nobr>
256
- </th>
257
- <!-- <th style="text-align:center"><nobr>气价(元/m³)</nobr></th>-->
258
- <th style="text-align:center">
259
- <nobr>用气量(m³)</nobr>
260
- </th>
261
- <th style="text-align:center">
262
- <nobr>用气金额(元)</nobr>
263
- </th>
264
- <!-- <th style="text-align:center">-->
265
- <!-- <nobr>充值金额(元)</nobr>-->
266
- <!-- </th>-->
267
- <th style="text-align:center">
268
- <nobr>期末结余(元)</nobr>
269
- </th>
270
- </tr>
271
-
272
-
273
- </template>
274
- <template partial='body'>
275
- <td>{{row.f_userinfo_code}}</td>
276
- <td style="text-align:center">{{row.f_user_type}}</td>
277
- <td style="text-align:center">{{row.f_gasproperties}}</td>
278
- <td style="text-align:center">{{row.f_user_phone}}</td>
279
- <!--<td style="text-align:center">{{row.f_gasproperties2}}</td>-->
280
- <td style="text-align:center">
281
- <nobr>{{row.f_user_name}}</nobr>
282
- </td>
283
- <td style="text-align:center">
284
- <nobr>{{row.f_residential_area}}</nobr>
285
- </td>
286
- <td style="text-align:center">
287
- <nobr>{{row.f_price}}</nobr>
288
- </td>
289
- <td style="text-align:center">{{row.f_total_gas}}</td>
290
- <td style="text-align:center">{{row.f_total_fee}}</td>
291
- <td style="text-align:center">{{row.f_balance_amount}}</td>
292
- <td style="text-align:center">{{row.f_meter_brand}}</td>
293
- <td>
294
- <nobr>{{row.f_address}}</nobr>
295
- </td>
296
- <td>{{row.f_meternumber}}</td>
297
- <td style="text-align:center">{{row.f_balance}}</td>
298
- <td style="text-align:center">{{row.f_last_tablebase}}</td>
299
- <td style="text-align:center">{{row.f_tablebase}}</td>
300
- <!--<td style="text-align:center">{{row.f_avg_price}}</td>-->
301
- <td style="text-align:center">{{row.f_oughtamount}}</td>
302
- <td style="text-align:center">{{row.f_oughtfee}}</td>
303
- <!-- <td style="text-align:center">{{row.f_collection}}</td>-->
304
- <td style="text-align:center">{{row.f_curbalance}}</td>
305
- </template>
306
- </data-grid>
307
- </criteria-paged>
308
- <table class="table-hover">
309
- <tr style="position: relative" class="table-bordered">
310
- <td
311
- style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
312
- 汇总信息
313
- </td>
314
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
315
- 总累购气量:&emsp;{{model.sums.f_total_gas}}
316
- </td>
317
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
318
- 总累购金额:&emsp;{{model.sums.f_total_fee}}
319
- </td>
320
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
321
- 总账户结余:&emsp;{{model.sums.f_balance_amount}}
322
- </td>
323
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
324
- 本期用气量合计:&emsp;{{model.sums.f_oughtamount}}
325
- </td>
326
- <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
327
- 本期用气金额合计:&emsp;{{model.sums.f_oughtfee}}
328
- </td>
329
- </tr>
330
- </table>
331
- </div>
332
- </div>
333
- </div>
334
- </div>
335
- <div class="flex-row" v-show="echarts">
336
- <user-gas-echarts :condition="condition" :echarts="echarts" :enddate="endDate"
337
- :groupname="groupname[0]" :startdate="startDate"></user-gas-echarts>
338
- </div>
339
- <!--汇总表显示模板-->
340
- <div class="flex-row" v-if="isActiveTotalForm">
341
- <user-gas-eform :condition="condition" :enddate="endDate" :startdate="startDate"></user-gas-eform>
342
- </div>
343
- </template>
344
-
345
- <script>
346
- import {HttpResetClass, PagedList} from 'vue-client'
347
- import UserGasEcharts from './UserGasEcharts'
348
- import * as Util from '../../../Util'
349
- import getLodop from '../../../plugins/LodopFuncs'
350
- import plugins from '../../../plugins/GetLoginInfoService'
351
- import plugin from 'system-clients/src/plugins/GetLoginInfoService'
352
- let readyGen = async function (self) {
353
- await self.$MagLoadParams.loadParam()
354
- self.initParams()
355
- self.getaddress()
356
- }
357
-
358
- export default {
359
- title: '用气分析',
360
- props: ['data'],
361
- components: {UserGasEcharts},
362
- data() {
363
- return {
364
- model: new PagedList('rs/sql/webmeter_getUserGasList', 20, {startDate: 'this.model.startDate', endDate: 'this.model.endDate'}, {
365
- f_oughtamount: 0,
366
- f_oughtfee: 0,
367
- f_total_gas: 0,
368
- f_total_fee: 0,
369
- f_balance_amount: 0
370
- }),
371
- getGroupNameByDate: [
372
- {label: '年份', value: 'year'},
373
- {label: '月份', value: 'month'},
374
- {label: '周', value: 'week'}
375
- ],
376
- meterbrands: [],
377
- residentialArea: [],
378
- criteriaShow: false,
379
- reportStr: null,
380
- show: false,
381
- initres: {
382
- org:[this.$login.f.orgid],
383
- dep:[],
384
- user:[]
385
- },
386
- outlets: [],
387
- operator: [],
388
- filename: '',
389
- searchshow: true,
390
- startDate: '',
391
- endDate: '',
392
- echarts: false,
393
- isActiveTotalForm: false,
394
- condition: '1=1',
395
- getfield: {},
396
- config: {
397
- excelHeaders: {
398
- 'f_userinfo_code':'客户编号',
399
- 'f_user_type':'客户类型',
400
- 'f_gasproperties': '用气性质',
401
- 'f_user_name': '客户名称',
402
- 'f_user_phone':'客户电话',
403
- 'f_residential_area': '小区',
404
- 'f_price':'用气单价',
405
- 'f_address':'用气地址',
406
- 'f_meternumber': '表号',
407
- 'f_meter_brand':'气表品牌',
408
- 'f_balance':'期初余额(元)',
409
- 'f_last_tablebase': '上期底数',
410
- 'f_tablebase':'本期底数',
411
- 'f_oughtamount':'用气量(m³)',
412
- 'f_oughtfee':'用气金额(元)',
413
- 'f_curbalance':'期末结余(元)'
414
-
415
- }
416
- },
417
- groupname: ['day'],
418
- getgroupname: [
419
- {label: '年份', value: 'year'},
420
- {label: '月份', value: 'month'},
421
- {label: '周', value: 'week'},
422
- {label: '日', value: 'day'}
423
- ],
424
- // orgCondtionStr: ' and h.f_orgid in (' + this.$login.f.orgid + ')',
425
- orgCondtionStr: '(' + this.$login.f.orgid + ')',
426
- orgid:[this.$login.f.orgid],
427
- usetypes: [{label: '全部', value: ''},{label: '是', value: `= '壁挂炉'`},{label: '否', value: `!= '壁挂炉'`}]
428
- }
429
- },
430
- ready() {
431
- readyGen(this)
432
- console.log('444444444', Util.addDate(new Date(),-6).substring(0,10))
433
- this.$refs.paged.$refs.cri.model.startDate = Util.addDate(new Date(),-6).substring(0,10) + ' 00:00:00'
434
- this.$refs.paged.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
435
- this.$refs.paged.$refs.cri.search()
436
- this.getfield = this.config.excelHeaders
437
- },
438
- methods: {
439
- // 查询开关
440
- hidden() {
441
- this.criteriaShow = !this.criteriaShow
442
- },
443
- async getaddress(){
444
- let HttpReset = new HttpResetClass()
445
- var data = await HttpReset.load('POST', 'rs/sql/manage_getarealist', {
446
- data: {
447
- condition: `1=1 and s.f_orgid = '${this.$login.f.orgid}'`
448
- }
449
- }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
450
- console.log('小区',data)
451
- let house = [{label: '全部', value: ''}]
452
- for (let row of data.data){
453
- house.push({label: row.f_residential_area, value: row.f_residential_area})
454
- }
455
- this.residentialArea = house
456
- },
457
- SaveAsFile(str) {
458
- this.$showMessage('您是否需要导出本页数据?', ['confirm', 'cancel']).then((res) => {
459
- if (res === 'confirm') {
460
- let style = '<style>' +
461
- 'td {border-width: 1px;padding: 2px;border-style: solid; border-color:black; border-collapse:collapse;} .tdright{text-align: right;} .tdcenter{text-align: center;}</style>';
462
- let strHtml = style + document.getElementById(str).innerHTML;
463
- console.log(strHtml);
464
- let LODOP = getLodop();
465
- LODOP.PRINT_INIT('');
466
- LODOP.ADD_PRINT_TABLE(5, 5, '99%', '100%', strHtml);
467
- LODOP.SAVE_TO_FILE('用气分析.xls')
468
- }
469
- })
470
- },
471
- clearmsg() {
472
- this.$refs.paged.$refs.cri.model = {}
473
- },
474
- initParams() {
475
- // 初始化气表品牌
476
- let brandArr = []
477
- this.$MagGetSaleParam.getGasbrand().forEach((item) => {
478
- if (item.value.f_meter_type == '物联网表') {
479
- let temp = {}
480
- temp.label = item.label
481
- temp.value = item.value.f_meter_brand
482
- brandArr.push(temp)
483
- }
484
- })
485
- this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
486
-
487
- },
488
- search(args) {
489
- this.startDate = this.$refs.paged.$refs.cri.model.startDate
490
- this.endDate = this.$refs.paged.$refs.cri.model.endDate
491
- if (this.endDate == '' || this.startDate == '') {
492
- return this.$showMessage("时间区间的开始和结束时间不能为空!")
493
- }
494
- // this.condition = this.$refs.paged.$refs.cri.condition + ` ${this.orgCondtionStr}`
495
- if (this.orgCondtionStr)
496
- this.condition = this.$refs.paged.$refs.cri.condition + ` and f_orgid in ${this.orgCondtionStr}`
497
- else
498
- this.condition = this.$refs.paged.$refs.cri.condition + ` and f_orgid = ${this.$login.f.orgid}`
499
- args.condition = this.condition
500
- this.model.search(args.condition, args.model)
501
- },
502
- // 显示柱状图
503
- showEcharts() {
504
- this.echarts = true
505
- this.isActiveTotalForm = false
506
- },
507
- notShowTotalForm() {
508
- this.echarts = false
509
- this.isActiveTotalForm = false
510
- },
511
- // 不显示柱状图
512
- notShowEcharts() {
513
- this.echarts = false
514
- this.isActiveTotalForm = false
515
- },
516
- // 显示汇总数据表格
517
- showTotalForm() {
518
- this.echarts = false
519
- this.isActiveTotalForm = true
520
- },
521
- close() {
522
- this.show = false
523
- },
524
- getRes(obj) {
525
- this.orgCondtionStr = plugins.convertToIn(obj)
526
- },
527
- getorg(obj) {
528
- this.orgCondtionStr = plugin.convertToIn(obj.resids)?plugin.convertToIn(obj.resids):'(' + this.$login.f.orgid + ')'
529
- },
530
- getCondition () {
531
- return {
532
- condition: this.condition,
533
- startDate: this.startDate,
534
- endDate: this.endDate
535
- }
536
- }
537
- // getRes(condition,obj) {
538
- // this.orgCondtionStr = condition
539
- // this.orgname = obj.orgnames[0]
540
- // this.depname = obj.depnames[0]
541
- // }
542
- },
543
- watch: {
544
- 'data'(val) {
545
- if (val.f_files_path) {
546
- this.getFileContent(val.f_files_path)
547
- } else {
548
- this.reportStr = null
549
- }
550
- }
551
- },
552
- computed: {
553
- houseTypes() {
554
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('房屋类型')]
555
- },
556
- positions() {
557
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('安装位置')]
558
- },
559
- Gasusertype() {
560
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
561
- },
562
- valveStatus() {
563
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('气表类型')]
564
- },
565
- Gasproperties() {
566
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')]
567
- }
568
- }
569
- }
570
- </script>
571
- <style>
572
- .mystyle {
573
- float: right;
574
- padding-right: 10%;
575
- }
576
-
577
- .mystyle1 {
578
- padding-top: 10px;
579
-
580
- }
581
-
582
- .mystyle2 {
583
- width: 100%;
584
- height: 35px;
585
- /*background: #00A3F0;*/
586
- padding-left: 15px;
587
- float: left;
588
- }
589
-
590
- .datapanel {
591
- color: #333;
592
- background-color: white;
593
- box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
594
- padding: 10px 10px 10px 10px;
595
- border-radius: 15px;
596
- }
597
- </style>
1
+ <template>
2
+ <div class="flex-row" id="unit" v-show="(!echarts)&&(!isActiveTotalForm)">
3
+ <div class="basic-main" @keyup.enter="search">
4
+ <div class="flex">
5
+ <div class="flex" style="flex:1;">
6
+ <criteria-paged :model="model" :pager='true' v-ref:paged>
7
+ <criteria @condition-changed='$parent.search' partial='criteria' v-ref:cri>
8
+ <div class="form-horizontal select-overspread container-fluid auto" novalidate partial>
9
+ <div class="row" width="100%">
10
+ <div class="col-sm-2 form-group">
11
+ <label class="font_normal_body">客户编号</label>
12
+ <input style="width:60%" class="input_search" condition="f_userinfo_code like '%{}%'" placeholder='客户编号' type="text"
13
+ v-el:meternumber v-model="model.f_userinfo_code" v-next-el='f_userinfo_code'
14
+ >
15
+ </div>
16
+ <div class="col-sm-2 form-group">
17
+ <label class="font_normal_body">客户名称</label>
18
+ <input style="width:60%" class="input_search" condition="f_user_name like '%{}%'" placeholder='客户名称' type="text"
19
+ v-el:username v-model="model.f_username" v-next-el='userid'>
20
+ </div>
21
+ <div class="col-sm-2 form-group">
22
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;小区&nbsp;&nbsp;&nbsp;</label>
23
+ <v-select :value.sync="model.f_residential_area"
24
+ class="select_list select"
25
+ v-model="model.f_residential_area"
26
+ style="width: 60%"
27
+ multiple
28
+ condition="f_residential_area in {}"
29
+ :options='$parent.$parent.residentialArea' placeholder='选择小区'
30
+ close-on-select>
31
+
32
+ </v-select>
33
+ </div>
34
+ <div class="col-sm-2 form-group">
35
+ <label class="font_normal_body">用气地址</label>
36
+ <input style="width:60%" class="input_search" condition="f_address like '%{}%'" placeholder='用气地址' type="text"
37
+ v-el:area v-el:xq v-model="model.f_address" v-next-el='address'
38
+ >
39
+ </div>
40
+ <div class="col-sm-2 form-group">
41
+ <label class="font_normal_body">表&emsp;&emsp;号</label>
42
+ <input style="width:60%" class="input_search" condition="f_meternumber = '{}'" placeholder='表号' type="text"
43
+ v-el:meternumber v-model="model.f_meternumber" v-next-el='meternumber'
44
+ >
45
+ </div>
46
+ <div class="col-sm-4 form-group button-range">
47
+ <button @click="search()" class="button_search button_spacing">查询</button>
48
+ <button @click="$parent.$parent.clearmsg" class="button_clear button_spacing">清空</button>
49
+ <export-excel :data="$parent.$parent.getCondition()"
50
+ :field="$parent.$parent.getfield"
51
+ sqlurl="rs/logic/exportfile" sql-name="webmeter_getUserGasList" template-name='用气分析'
52
+ v-ref:exports
53
+ :choose-col="true"></export-excel>
54
+ <button class="button_export button_spacing" style="width: max-content" @click="$parent.$parent.showTotalForm()" >显示汇总</button>
55
+ <button class="button_export button_spacing" @click="$parent.$parent.showEcharts()">显示图表</button>
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
+ <div class="row" v-show="$parent.$parent.criteriaShow">
60
+
61
+ <!--<div class="col-sm-2 form-group" >
62
+ <label class="font_normal_body">用气属性</label>
63
+ <v-select
64
+ placeholder='用气属性'
65
+ value-single="true"
66
+ :value.sync="model.f_gasproperties2"
67
+ v-model="model.f_gasproperties2"
68
+ :options='$parent.$parent.Gasproperties2'
69
+ close-on-select condition="uf.f_gasproperties2 {}">
70
+ </v-select>
71
+ </div>-->
72
+ <!-- <res-select-group :show-component="['company']" :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>-->
73
+
74
+ <div class="col-sm-2">
75
+ <label class="font_normal_body">公&emsp;&emsp;司</label>
76
+ <right-tree @re-res="$parent.$parent.getorg"
77
+ :initresid='$parent.$parent.orgid'></right-tree>
78
+ </div>
79
+ <!-- <div class="col-sm-2 form-group">-->
80
+ <!-- <label class="font_normal_body">组织机构</label>-->
81
+ <!-- <res-select :initresid="$parent.$parent.orgid"-->
82
+ <!-- style="width:60%"-->
83
+ <!-- @res-select="$parent.$parent.getRes"-->
84
+ <!-- restype='organization'>-->
85
+ <!-- </res-select>-->
86
+ <!-- </div>-->
87
+
88
+ <div class="col-sm-2 form-group">
89
+ <label class="font_normal_body">客户类型</label>
90
+ <v-select :options='$parent.$parent.Gasusertype'
91
+ :value.sync="model.f_user_type"
92
+ close-on-select
93
+ style="width:60%"
94
+ condition="f_user_type = '{}'"
95
+ id="f_user_type"
96
+ placeholder='客户类型'
97
+ v-model="model.f_user_type"
98
+ value-single="true">
99
+ </v-select>
100
+ </div>
101
+ <div class="col-sm-2 form-group">
102
+ <label class="font_normal_body">用气性质</label>
103
+ <v-select :options='$parent.$parent.Gasproperties'
104
+ :value.sync="model.f_gasproperties"
105
+ close-on-select
106
+ condition="f_gasproperties = '{}'"
107
+ id="f_gasproperties"
108
+ placeholder='用气性质'
109
+ style="width:60%"
110
+ v-model="model.f_gasproperties"
111
+ value-single="true">
112
+ </v-select>
113
+ </div>
114
+ <div class="col-sm-2 form-group">
115
+ <label class="font_normal_body">气表品牌</label>
116
+ <v-select :value.sync="model.f_meter_brand"
117
+ v-model="model.f_meter_brand"
118
+ :options='$parent.$parent.meterbrands' placeholder='请选择'
119
+ condition="f_meter_brand = '{}'"
120
+ close-on-select></v-select>
121
+ </div>
122
+ <div class="col-sm-2 form-group">
123
+ <label class="font_normal_body">时间区间</label>
124
+ <datepicker :disabled-days-of-Week="[]" :format="'yyyy-MM-dd HH:mm:ss'"
125
+ :show-reset-button="reset"
126
+ :value.sync="model.startDate"
127
+ id="startDate"
128
+ style="width:60%"
129
+ placeholder="开始时间"
130
+ v-model="model.startDate">
131
+ </datepicker>
132
+ </div>
133
+ <div class="col-sm-2 form-group">
134
+ <label class="font_normal_body" style="word-break:keep-all;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;</label>
135
+ <datepicker :disabled-days-of-Week="[]" :format="'yyyy-MM-dd HH:mm:ss'"
136
+ :show-reset-button="reset"
137
+ :value.sync="model.endDate"
138
+ style="width:60%"
139
+ id="endDate"
140
+ style="width:60%"
141
+ placeholder="结束日期"
142
+ v-model="model.endDate">
143
+ </datepicker>
144
+ </div>
145
+ <div class="col-sm-2 form-group flex-row" style="white-space: nowrap">
146
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;用气量&nbsp;</label>
147
+ <div class="row">
148
+ <input type="text" style="width:27%" class="input_search" v-model="model.f_oughtamount1"
149
+ condition="f_oughtamount >= {} " placeholder="">
150
+ <label class="font_normal_body"> ≤ x ≤ </label>
151
+ <input type="text" style="width:27%" class="input_search" v-model="model.f_oughtamount2"
152
+ condition="f_oughtamount <= {} " placeholder="">
153
+ </div>
154
+ </div>
155
+ <!--<div class="col-sm-2 form-group">
156
+ <label class="font_normal_body">用&nbsp;气&nbsp;量&nbsp;</label>
157
+ <input type="text" style="width:60%" class="input_search"
158
+ v-model="model.f_start_oughtamount" placeholder='起始气量'
159
+ >
160
+ </div>
161
+ <div class="col-sm-2 form-group">
162
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;</label>
163
+ <input type="text" style="width:60%" class="input_search"
164
+ v-model="model.f_end_oughtamount" placeholder='结束气量'
165
+ >
166
+ </div>-->
167
+ <div class="col-sm-2 form-group">
168
+ <label class="font_normal_body">壁&ensp;挂&ensp;炉</label>
169
+ <v-select id="f_meter_brand"
170
+ v-model="model.f_usetype"
171
+ placeholder=''
172
+ :value.sync="model.f_usetype"
173
+ :options='$parent.$parent.usetypes'
174
+ condition="f_usetype {}" :search="false"
175
+ close-on-select style="width: 60%">
176
+ </v-select>
177
+ </div>
178
+ <div class="col-sm-2 form-group">
179
+ <label class="font_normal_body">房屋类型</label>
180
+ <v-select :value.sync="model.f_house_type" v-model="model.f_house_type"
181
+ :options='$parent.$parent.houseTypes' placeholder='请选择'
182
+ close-on-select
183
+ condition="f_house_type = '{}'"></v-select>
184
+ </div>
185
+ <div class="col-sm-2 form-group">
186
+ <label class="font_normal_body">安装位置</label>
187
+ <v-select :value.sync="model.f_position" v-model="model.f_position"
188
+ :options='$parent.$parent.positions' placeholder='请选择'
189
+ condition="f_position = '{}'"
190
+ close-on-select></v-select>
191
+ </div>
192
+ <div class="col-sm-2 form-group flex-row" style="white-space: nowrap">
193
+ <label class="font_normal_body">期末结余</label>
194
+ <div class="row">
195
+ <input type="text" style="width:27%" class="input_search" v-model="model.f_curbalance1"
196
+ condition="f_curbalance >= {} " placeholder="">
197
+ <label class="font_normal_body"> ≤ x ≤ </label>
198
+ <input type="text" style="width:27%" class="input_search" v-model="model.f_curbalance2"
199
+ condition="f_curbalance <= {} " placeholder="">
200
+ </div>
201
+ </div>
202
+ </div>
203
+ </div>
204
+ </criteria>
205
+ <data-grid :model="model" id="usergasall" partial='list' class="list_area table_sy" v-ref:grid>
206
+ <template partial='head'>
207
+ <tr>
208
+ <th style="text-align:center">
209
+ <nobr>客户编号</nobr>
210
+ </th>
211
+ <th style="text-align:center">
212
+ <nobr>客户类型</nobr>
213
+ </th>
214
+ <th style="text-align:center">
215
+ <nobr>用气性质</nobr>
216
+ </th>
217
+ <th style="text-align:center">
218
+ <nobr>用户电话</nobr>
219
+ </th>
220
+ <!--<th style="text-align:center"><nobr>用气属性</nobr></th>-->
221
+ <th style="text-align:center">
222
+ <nobr>客户名称</nobr>
223
+ </th>
224
+ <th style="text-align:center">
225
+ <nobr>小区</nobr>
226
+ </th>
227
+ <th style="text-align:center">
228
+ <nobr>用气单价</nobr>
229
+ </th>
230
+ <th style="text-align:center">
231
+ <nobr>累购气量</nobr>
232
+ </th>
233
+ <th style="text-align:center">
234
+ <nobr>累购金额</nobr>
235
+ </th>
236
+ <th style="text-align:center">
237
+ <nobr>账号结余</nobr>
238
+ </th>
239
+ <th style="text-align:center">
240
+ <nobr>气表名称</nobr>
241
+ </th>
242
+ <th style="text-align:center">
243
+ <nobr>用气地址</nobr>
244
+ </th>
245
+ <th style="text-align:center">
246
+ <nobr>表号</nobr>
247
+ </th>
248
+ <th style="text-align:center">
249
+ <nobr>期初余额(元)</nobr>
250
+ </th>
251
+ <th style="text-align:center">
252
+ <nobr>上期底数</nobr>
253
+ </th>
254
+ <th style="text-align:center">
255
+ <nobr>本期底数</nobr>
256
+ </th>
257
+ <!-- <th style="text-align:center"><nobr>气价(元/m³)</nobr></th>-->
258
+ <th style="text-align:center">
259
+ <nobr>用气量(m³)</nobr>
260
+ </th>
261
+ <th style="text-align:center">
262
+ <nobr>用气金额(元)</nobr>
263
+ </th>
264
+ <!-- <th style="text-align:center">-->
265
+ <!-- <nobr>充值金额(元)</nobr>-->
266
+ <!-- </th>-->
267
+ <th style="text-align:center">
268
+ <nobr>期末结余(元)</nobr>
269
+ </th>
270
+ </tr>
271
+
272
+
273
+ </template>
274
+ <template partial='body'>
275
+ <td>{{row.f_userinfo_code}}</td>
276
+ <td style="text-align:center">{{row.f_user_type}}</td>
277
+ <td style="text-align:center">{{row.f_gasproperties}}</td>
278
+ <td style="text-align:center">{{row.f_user_phone}}</td>
279
+ <!--<td style="text-align:center">{{row.f_gasproperties2}}</td>-->
280
+ <td style="text-align:center">
281
+ <nobr>{{row.f_user_name}}</nobr>
282
+ </td>
283
+ <td style="text-align:center">
284
+ <nobr>{{row.f_residential_area}}</nobr>
285
+ </td>
286
+ <td style="text-align:center">
287
+ <nobr>{{row.f_price}}</nobr>
288
+ </td>
289
+ <td style="text-align:center">{{row.f_total_gas}}</td>
290
+ <td style="text-align:center">{{row.f_total_fee}}</td>
291
+ <td style="text-align:center">{{row.f_balance_amount}}</td>
292
+ <td style="text-align:center">{{row.f_meter_brand}}</td>
293
+ <td>
294
+ <nobr>{{row.f_address}}</nobr>
295
+ </td>
296
+ <td>{{row.f_meternumber}}</td>
297
+ <td style="text-align:center">{{row.f_balance}}</td>
298
+ <td style="text-align:center">{{row.f_last_tablebase}}</td>
299
+ <td style="text-align:center">{{row.f_tablebase}}</td>
300
+ <!--<td style="text-align:center">{{row.f_avg_price}}</td>-->
301
+ <td style="text-align:center">{{row.f_oughtamount}}</td>
302
+ <td style="text-align:center">{{row.f_oughtfee}}</td>
303
+ <!-- <td style="text-align:center">{{row.f_collection}}</td>-->
304
+ <td style="text-align:center">{{row.f_curbalance}}</td>
305
+ </template>
306
+ </data-grid>
307
+ </criteria-paged>
308
+ <table class="table-hover">
309
+ <tr style="position: relative" class="table-bordered">
310
+ <td
311
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
312
+ 汇总信息
313
+ </td>
314
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
315
+ 总累购气量:&emsp;{{model.sums.f_total_gas}}
316
+ </td>
317
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
318
+ 总累购金额:&emsp;{{model.sums.f_total_fee}}
319
+ </td>
320
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
321
+ 总账户结余:&emsp;{{model.sums.f_balance_amount}}
322
+ </td>
323
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
324
+ 本期用气量合计:&emsp;{{model.sums.f_oughtamount}}
325
+ </td>
326
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
327
+ 本期用气金额合计:&emsp;{{model.sums.f_oughtfee}}
328
+ </td>
329
+ </tr>
330
+ </table>
331
+ </div>
332
+ </div>
333
+ </div>
334
+ </div>
335
+ <div class="flex-row" v-show="echarts">
336
+ <user-gas-echarts :condition="condition" :echarts="echarts" :enddate="endDate"
337
+ :groupname="groupname[0]" :startdate="startDate"></user-gas-echarts>
338
+ </div>
339
+ <!--汇总表显示模板-->
340
+ <div class="flex-row" v-if="isActiveTotalForm">
341
+ <user-gas-eform :condition="condition" :enddate="endDate" :startdate="startDate"></user-gas-eform>
342
+ </div>
343
+ </template>
344
+
345
+ <script>
346
+ import {HttpResetClass, PagedList} from 'vue-client'
347
+ import UserGasEcharts from './UserGasEcharts'
348
+ import * as Util from '../../../Util'
349
+ import getLodop from '../../../plugins/LodopFuncs'
350
+ import plugins from '../../../plugins/GetLoginInfoService'
351
+ import plugin from 'system-clients/src/plugins/GetLoginInfoService'
352
+ let readyGen = async function (self) {
353
+ await self.$MagLoadParams.loadParam()
354
+ self.initParams()
355
+ self.getaddress()
356
+ }
357
+
358
+ export default {
359
+ title: '用气分析',
360
+ props: ['data'],
361
+ components: {UserGasEcharts},
362
+ data() {
363
+ return {
364
+ model: new PagedList('rs/sql/webmeter_getUserGasList', 20, {startDate: 'this.model.startDate', endDate: 'this.model.endDate'}, {
365
+ f_oughtamount: 0,
366
+ f_oughtfee: 0,
367
+ f_total_gas: 0,
368
+ f_total_fee: 0,
369
+ f_balance_amount: 0
370
+ }),
371
+ getGroupNameByDate: [
372
+ {label: '年份', value: 'year'},
373
+ {label: '月份', value: 'month'},
374
+ {label: '周', value: 'week'}
375
+ ],
376
+ meterbrands: [],
377
+ residentialArea: [],
378
+ criteriaShow: false,
379
+ reportStr: null,
380
+ show: false,
381
+ initres: {
382
+ org:[this.$login.f.orgid],
383
+ dep:[],
384
+ user:[]
385
+ },
386
+ outlets: [],
387
+ operator: [],
388
+ filename: '',
389
+ searchshow: true,
390
+ startDate: '',
391
+ endDate: '',
392
+ echarts: false,
393
+ isActiveTotalForm: false,
394
+ condition: '1=1',
395
+ getfield: {},
396
+ config: {
397
+ excelHeaders: {
398
+ 'f_userinfo_code':'客户编号',
399
+ 'f_user_type':'客户类型',
400
+ 'f_gasproperties': '用气性质',
401
+ 'f_user_name': '客户名称',
402
+ 'f_user_phone':'客户电话',
403
+ 'f_residential_area': '小区',
404
+ 'f_price':'用气单价',
405
+ 'f_address':'用气地址',
406
+ 'f_meternumber': '表号',
407
+ 'f_meter_brand':'气表品牌',
408
+ 'f_balance':'期初余额(元)',
409
+ 'f_last_tablebase': '上期底数',
410
+ 'f_tablebase':'本期底数',
411
+ 'f_oughtamount':'用气量(m³)',
412
+ 'f_oughtfee':'用气金额(元)',
413
+ 'f_curbalance':'期末结余(元)'
414
+
415
+ }
416
+ },
417
+ groupname: ['day'],
418
+ getgroupname: [
419
+ {label: '年份', value: 'year'},
420
+ {label: '月份', value: 'month'},
421
+ {label: '周', value: 'week'},
422
+ {label: '日', value: 'day'}
423
+ ],
424
+ // orgCondtionStr: ' and h.f_orgid in (' + this.$login.f.orgid + ')',
425
+ orgCondtionStr: '(' + this.$login.f.orgid + ')',
426
+ orgid:[this.$login.f.orgid],
427
+ usetypes: [{label: '全部', value: ''},{label: '是', value: `= '壁挂炉'`},{label: '否', value: `!= '壁挂炉'`}]
428
+ }
429
+ },
430
+ ready() {
431
+ readyGen(this)
432
+ console.log('444444444', Util.addDate(new Date(),-6).substring(0,10))
433
+ this.$refs.paged.$refs.cri.model.startDate = Util.addDate(new Date(),-6).substring(0,10) + ' 00:00:00'
434
+ this.$refs.paged.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
435
+ this.$refs.paged.$refs.cri.search()
436
+ this.getfield = this.config.excelHeaders
437
+ },
438
+ methods: {
439
+ // 查询开关
440
+ hidden() {
441
+ this.criteriaShow = !this.criteriaShow
442
+ },
443
+ async getaddress(){
444
+ let HttpReset = new HttpResetClass()
445
+ var data = await HttpReset.load('POST', 'rs/sql/manage_getarealist', {
446
+ data: {
447
+ condition: `1=1 and s.f_orgid = '${this.$login.f.orgid}'`
448
+ }
449
+ }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
450
+ console.log('小区',data)
451
+ let house = [{label: '全部', value: ''}]
452
+ for (let row of data.data){
453
+ house.push({label: row.f_residential_area, value: row.f_residential_area})
454
+ }
455
+ this.residentialArea = house
456
+ },
457
+ SaveAsFile(str) {
458
+ this.$showMessage('您是否需要导出本页数据?', ['confirm', 'cancel']).then((res) => {
459
+ if (res === 'confirm') {
460
+ let style = '<style>' +
461
+ 'td {border-width: 1px;padding: 2px;border-style: solid; border-color:black; border-collapse:collapse;} .tdright{text-align: right;} .tdcenter{text-align: center;}</style>';
462
+ let strHtml = style + document.getElementById(str).innerHTML;
463
+ console.log(strHtml);
464
+ let LODOP = getLodop();
465
+ LODOP.PRINT_INIT('');
466
+ LODOP.ADD_PRINT_TABLE(5, 5, '99%', '100%', strHtml);
467
+ LODOP.SAVE_TO_FILE('用气分析.xls')
468
+ }
469
+ })
470
+ },
471
+ clearmsg() {
472
+ this.$refs.paged.$refs.cri.model = {}
473
+ },
474
+ initParams() {
475
+ // 初始化气表品牌
476
+ let brandArr = []
477
+ this.$MagGetSaleParam.getGasbrand().forEach((item) => {
478
+ if (item.value.f_meter_type == '物联网表') {
479
+ let temp = {}
480
+ temp.label = item.label
481
+ temp.value = item.value.f_meter_brand
482
+ brandArr.push(temp)
483
+ }
484
+ })
485
+ this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
486
+
487
+ },
488
+ search(args) {
489
+ this.startDate = this.$refs.paged.$refs.cri.model.startDate
490
+ this.endDate = this.$refs.paged.$refs.cri.model.endDate
491
+ if (this.endDate == '' || this.startDate == '') {
492
+ return this.$showMessage("时间区间的开始和结束时间不能为空!")
493
+ }
494
+ // this.condition = this.$refs.paged.$refs.cri.condition + ` ${this.orgCondtionStr}`
495
+ if (this.orgCondtionStr)
496
+ this.condition = this.$refs.paged.$refs.cri.condition + ` and f_orgid in ${this.orgCondtionStr}`
497
+ else
498
+ this.condition = this.$refs.paged.$refs.cri.condition + ` and f_orgid = ${this.$login.f.orgid}`
499
+ args.condition = this.condition
500
+ this.model.search(args.condition, args.model)
501
+ },
502
+ // 显示柱状图
503
+ showEcharts() {
504
+ this.echarts = true
505
+ this.isActiveTotalForm = false
506
+ },
507
+ notShowTotalForm() {
508
+ this.echarts = false
509
+ this.isActiveTotalForm = false
510
+ },
511
+ // 不显示柱状图
512
+ notShowEcharts() {
513
+ this.echarts = false
514
+ this.isActiveTotalForm = false
515
+ },
516
+ // 显示汇总数据表格
517
+ showTotalForm() {
518
+ this.echarts = false
519
+ this.isActiveTotalForm = true
520
+ },
521
+ close() {
522
+ this.show = false
523
+ },
524
+ getRes(obj) {
525
+ this.orgCondtionStr = plugins.convertToIn(obj)
526
+ },
527
+ getorg(obj) {
528
+ this.orgCondtionStr = plugin.convertToIn(obj.resids)?plugin.convertToIn(obj.resids):'(' + this.$login.f.orgid + ')'
529
+ },
530
+ getCondition () {
531
+ return {
532
+ condition: this.condition,
533
+ startDate: this.startDate,
534
+ endDate: this.endDate
535
+ }
536
+ }
537
+ // getRes(condition,obj) {
538
+ // this.orgCondtionStr = condition
539
+ // this.orgname = obj.orgnames[0]
540
+ // this.depname = obj.depnames[0]
541
+ // }
542
+ },
543
+ watch: {
544
+ 'data'(val) {
545
+ if (val.f_files_path) {
546
+ this.getFileContent(val.f_files_path)
547
+ } else {
548
+ this.reportStr = null
549
+ }
550
+ }
551
+ },
552
+ computed: {
553
+ houseTypes() {
554
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('房屋类型')]
555
+ },
556
+ positions() {
557
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('安装位置')]
558
+ },
559
+ Gasusertype() {
560
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
561
+ },
562
+ valveStatus() {
563
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('气表类型')]
564
+ },
565
+ Gasproperties() {
566
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')]
567
+ }
568
+ }
569
+ }
570
+ </script>
571
+ <style>
572
+ .mystyle {
573
+ float: right;
574
+ padding-right: 10%;
575
+ }
576
+
577
+ .mystyle1 {
578
+ padding-top: 10px;
579
+
580
+ }
581
+
582
+ .mystyle2 {
583
+ width: 100%;
584
+ height: 35px;
585
+ /*background: #00A3F0;*/
586
+ padding-left: 15px;
587
+ float: left;
588
+ }
589
+
590
+ .datapanel {
591
+ color: #333;
592
+ background-color: white;
593
+ box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
594
+ padding: 10px 10px 10px 10px;
595
+ border-radius: 15px;
596
+ }
597
+ </style>