manage-client 3.1.39 → 3.1.43

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 (98) hide show
  1. package/.gradle/5.2.1/executionHistory/executionHistory.bin +0 -0
  2. package/.gradle/5.2.1/executionHistory/executionHistory.lock +0 -0
  3. package/.gradle/5.2.1/fileChanges/last-build.bin +0 -0
  4. package/.gradle/5.2.1/fileHashes/fileHashes.bin +0 -0
  5. package/.gradle/5.2.1/fileHashes/fileHashes.lock +0 -0
  6. package/.gradle/5.2.1/gc.properties +0 -0
  7. package/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  8. package/build/dev-server.js +174 -181
  9. package/package.json +1 -1
  10. package/src/App.vue +28 -29
  11. package/src/components/BasisEcharts/BarChart.vue +247 -247
  12. package/src/components/BasisEcharts/RingChart.vue +196 -196
  13. package/src/components/SellReport/BusinessClassify.vue +317 -293
  14. package/src/components/SellReport/ChargePrick.vue +284 -284
  15. package/src/components/SellReport/DepartmentPrick.vue +288 -288
  16. package/src/components/SellReport/FinanceSellType.vue +254 -254
  17. package/src/components/SellReport/GasBaozhuangFee.vue +237 -237
  18. package/src/components/SellReport/GasPrice.vue +244 -244
  19. package/src/components/SellReport/ManageBusSummary.vue +242 -242
  20. package/src/components/SellReport/ManageHandInputtor.vue +281 -281
  21. package/src/components/SellReport/ManageOtherCharge.vue +250 -250
  22. package/src/components/SellReport/ManageSellType.vue +284 -284
  23. package/src/components/SellReport/ManageUserCount.vue +347 -347
  24. package/src/components/SellReport/MarketMonth.vue +297 -251
  25. package/src/components/SellReport/SaleMonthReport.vue +227 -227
  26. package/src/components/SellReport/SellingTable.vue +220 -220
  27. package/src/components/SellReport/UserClassify.vue +271 -251
  28. package/src/components/SellReport/UserSellingGas.vue +251 -251
  29. package/src/components/daping/CallCenter.vue +366 -366
  30. package/src/components/daping/DataManagement.vue +537 -537
  31. package/src/components/daping/GMap.vue +636 -636
  32. package/src/components/daping/ManageMain.vue +270 -270
  33. package/src/components/daping/NetWork.vue +238 -238
  34. package/src/components/daping/RedactDaPing.vue +468 -468
  35. package/src/components/daping/Ring.vue +212 -212
  36. package/src/components/daping/SafeCheck.vue +446 -446
  37. package/src/components/daping/SafeCheckRing.vue +166 -166
  38. package/src/components/daping/SafecheckBarChart.vue +233 -233
  39. package/src/components/daping/WuHaiMap.vue +418 -418
  40. package/src/components/qinhua/BarChart.vue +256 -256
  41. package/src/components/qinhua/Pie.vue +132 -132
  42. package/src/components/qinhua/SellEcharts.vue +115 -115
  43. package/src/components/qinhua/qinHuaMap.vue +414 -414
  44. package/src/components/sale/businessquery/CollectManage.vue +135 -135
  45. package/src/components/sale/businessquery/FMYGasQuery.vue +713 -713
  46. package/src/components/sale/businessquery/MonthGasQuery.vue +467 -467
  47. package/src/components/sale/businessquery/OtherChargeQuery.vue +619 -619
  48. package/src/components/sale/businessquery/ProceedsOper.vue +377 -377
  49. package/src/components/sale/businessquery/YingShouMingXi.vue +525 -525
  50. package/src/components/sale/filesquery/DeviceQuery.vue +45 -11
  51. package/src/components/statistical/StatisticalAnalysis.vue +247 -247
  52. package/src/components/webmeter/DrillData/LostContactAnalysisList.vue +633 -633
  53. package/src/components/webmeter/DrillData/LostContactEcharts.vue +177 -177
  54. package/src/components/webmeter/DrillData/UserGasAll.vue +597 -597
  55. package/src/components/webmeter/DrillData/UserGasEcharts.vue +210 -210
  56. package/src/components/webmeter/DrillData/UserGasEform.vue +227 -227
  57. package/src/components/webmeter/DrillData/UserLostContactAnalysis.vue +585 -585
  58. package/src/components/webmeter/newwebmeter/NewException/NewContactEcharts.vue +171 -170
  59. package/src/components/webmeter/newwebmeter/NewException/NewEchartsAll.vue +111 -111
  60. package/src/components/webmeter/newwebmeter/NewException/NewExceptionEcharsTotal.vue +275 -903
  61. package/src/components/webmeter/newwebmeter/NewException/NewGasEcharts.vue +209 -209
  62. package/src/components/webmeter/newwebmeter/NewException/NewHandplanEcharts.vue +213 -238
  63. package/src/components/webmeter/newwebmeter/NewException/NewInstructEcharts.vue +240 -266
  64. package/src/components/webmeter/newwebmeter/NewException/TotalExceptionByMeter.vue +607 -607
  65. package/src/components/webmeter/newwebmeter/UserGasEchartsList.vue +218 -218
  66. package/src/components/webmeter/newwebmeter/UserGasList.vue +438 -438
  67. package/src/components/webmeter/newwebmeter/UserInstructEchartsList.vue +2 -46
  68. package/src/components/webmeter/newwebmeter/UserInstructList.vue +332 -332
  69. package/src/components/webmeter/newwebmeter/signAnalysisEcharts.vue +266 -266
  70. package/src/components/webmeter/newwebmeter/signAnalysisEform.vue +175 -175
  71. package/src/components/webmeter/newwebmeter/signAnalysisListMain.vue +387 -387
  72. package/src/filiale/alashan/SellingTable.vue +234 -234
  73. package/src/filiale/alashan/reportManage.js +10 -10
  74. package/src/filiale/jingwei/RecordInfoQuery.vue +14 -14
  75. package/src/filiale/jingzhou/ChargeQuery.vue +1243 -1243
  76. package/src/filiale/jingzhou/config/exportConfig.js +861 -861
  77. package/src/filiale/liaoyuan/ChargeQuery.vue +6 -0
  78. package/src/filiale/liaoyuan/exportConfig.js +1 -1
  79. package/src/filiale/meihekou/UserGasEform.vue +267 -267
  80. package/src/filiale/meihekou/sale.js +26 -26
  81. package/src/filiale/rongcheng/exportConfig.js +257 -257
  82. package/src/filiale/rongchuang/SellingTable.vue +250 -250
  83. package/src/filiale/rongchuang/reportManage.js +11 -11
  84. package/src/filiale/shaoguan/config/exportConfig.js +433 -433
  85. package/src/filiale/shaoguan/sale/businessquery/oldList.vue +41 -0
  86. package/src/filiale/shaoguan/sale/businessquery/oldMeterList.vue +290 -0
  87. package/src/filiale/shaoguan/sale.js +3 -1
  88. package/src/filiale/tongchuan/ManageBusSummary.vue +302 -301
  89. package/src/filiale/tongchuan/ReportList.vue +456 -0
  90. package/src/filiale/tongchuan/ResSelectGroupNew.vue +7 -2
  91. package/src/filiale/tongchuan/reportManage.js +6 -5
  92. package/src/main.js +66 -66
  93. package/src/newmanage.js +525 -525
  94. package/src/reportManage.js +462 -462
  95. package/src/saleManage.js +2 -3
  96. package/static/wuhai.json +1610 -1610
  97. package/src/components/SellReport/SellCollect.vue +0 -183
  98. 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>