manage-client 3.1.35 → 3.1.39

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 (94) hide show
  1. package/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  2. package/.gradle/buildOutputCleanup/cache.properties +2 -2
  3. package/ManageClient.iml +13 -13
  4. package/build/dev-server.js +29 -22
  5. package/package.json +1 -1
  6. package/src/App.vue +29 -28
  7. package/src/components/BasisEcharts/BarChart.vue +247 -247
  8. package/src/components/BasisEcharts/RingChart.vue +196 -196
  9. package/src/components/SellReport/BusinessClassify.vue +293 -251
  10. package/src/components/SellReport/ChargePrick.vue +284 -279
  11. package/src/components/SellReport/DepartmentPrick.vue +288 -261
  12. package/src/components/SellReport/FinanceSellType.vue +254 -254
  13. package/src/components/SellReport/GasBaozhuangFee.vue +237 -237
  14. package/src/components/SellReport/GasPrice.vue +244 -244
  15. package/src/components/SellReport/ManageBusSummary.vue +242 -242
  16. package/src/components/SellReport/ManageHandInputtor.vue +281 -281
  17. package/src/components/SellReport/ManageOtherCharge.vue +250 -250
  18. package/src/components/SellReport/ManageSellType.vue +284 -284
  19. package/src/components/SellReport/ManageUserCount.vue +347 -347
  20. package/src/components/SellReport/MarketMonth.vue +251 -251
  21. package/src/components/SellReport/SaleMonthReport.vue +227 -227
  22. package/src/components/SellReport/SellCollect.vue +183 -0
  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/NewHandplanQuery.vue +995 -0
  45. package/src/components/sale/businessquery/OtherChargeQuery.vue +619 -619
  46. package/src/components/sale/businessquery/ProceedsOper.vue +377 -377
  47. package/src/components/sale/businessquery/YingShouMingXi.vue +525 -525
  48. package/src/components/statistical/StatisticalAnalysis.vue +247 -247
  49. package/src/components/webmeter/DrillData/LostContactAnalysisList.vue +633 -633
  50. package/src/components/webmeter/DrillData/LostContactEcharts.vue +177 -177
  51. package/src/components/webmeter/DrillData/UserGasAll.vue +597 -596
  52. package/src/components/webmeter/DrillData/UserGasEcharts.vue +210 -210
  53. package/src/components/webmeter/DrillData/UserGasEform.vue +227 -227
  54. package/src/components/webmeter/DrillData/UserLostContactAnalysis.vue +585 -585
  55. package/src/components/webmeter/instruction/NewQueryInstruct.vue +445 -445
  56. package/src/components/webmeter/newwebmeter/NewException/NewContactEcharts.vue +170 -170
  57. package/src/components/webmeter/newwebmeter/NewException/NewEchartsAll.vue +111 -111
  58. package/src/components/webmeter/newwebmeter/NewException/NewExceptionEcharsTotal.vue +903 -899
  59. package/src/components/webmeter/newwebmeter/NewException/NewGasEcharts.vue +209 -209
  60. package/src/components/webmeter/newwebmeter/NewException/NewHandplanEcharts.vue +238 -238
  61. package/src/components/webmeter/newwebmeter/NewException/NewInstructEcharts.vue +266 -266
  62. package/src/components/webmeter/newwebmeter/NewException/TotalExceptionByMeter.vue +607 -606
  63. package/src/components/webmeter/newwebmeter/UserGasEchartsList.vue +218 -252
  64. package/src/components/webmeter/newwebmeter/UserGasList.vue +438 -440
  65. package/src/components/webmeter/newwebmeter/UserInstructList.vue +332 -332
  66. package/src/components/webmeter/newwebmeter/signAnalysisEcharts.vue +266 -266
  67. package/src/components/webmeter/newwebmeter/signAnalysisEform.vue +175 -175
  68. package/src/components/webmeter/newwebmeter/signAnalysisListMain.vue +387 -387
  69. package/src/filiale/alashan/SellingTable.vue +234 -234
  70. package/src/filiale/alashan/reportManage.js +10 -10
  71. package/src/filiale/jingwei/ChargeQuery.vue +1235 -0
  72. package/src/filiale/jingwei/sale.js +2 -0
  73. package/src/filiale/jingzhou/ChargeQuery.vue +1243 -1243
  74. package/src/filiale/jingzhou/config/exportConfig.js +861 -861
  75. package/src/filiale/meihekou/UserGasEform.vue +267 -267
  76. package/src/filiale/meihekou/sale.js +26 -26
  77. package/src/filiale/rongcheng/exportConfig.js +257 -257
  78. package/src/filiale/rongchuang/SellingTable.vue +250 -250
  79. package/src/filiale/rongchuang/reportManage.js +11 -11
  80. package/src/filiale/shaoguan/config/exportConfig.js +433 -433
  81. package/src/filiale/tongchuan/FillGasQuery.vue +508 -0
  82. package/src/filiale/tongchuan/ManageBusSummary.vue +301 -0
  83. package/src/filiale/tongchuan/reportManage.js +5 -0
  84. package/src/filiale/tongchuan/sale.js +2 -1
  85. package/src/main.js +66 -66
  86. package/src/newmanage.js +525 -525
  87. package/src/reportManage.js +462 -462
  88. package/static/wuhai.json +1610 -1610
  89. package/.gradle/5.5/fileChanges/last-build.bin +0 -0
  90. package/.gradle/5.5/fileHashes/fileHashes.lock +0 -0
  91. package/.gradle/5.5/gc.properties +0 -0
  92. package/.npmignore +0 -10
  93. package/build/.npmignore +0 -1
  94. package/package-lock.json +0 -11184
@@ -1,332 +1,332 @@
1
- <template>
2
- <div class="flex-row binary" id="unit">
3
- <div class="basic-main" @keyup.enter="search1">
4
- <div class="flex">
5
- <div class="flex" style="flex:1;" v-show="!echarts">
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
-
11
- <div class="col-sm-2 form-group">
12
- <label class="font_normal_body">客户编号</label>
13
- <input style="width:60%" class="input_search" condition="u.f_userinfo_code like '%{}%'" placeholder='客户编号' type="text"
14
- v-el:meternumber v-model="model.f_userinfo_code" v-next-el='f_userinfo_code'
15
- >
16
- </div>
17
- <div class="col-sm-2 form-group">
18
- <label class="font_normal_body">客户名称</label>
19
- <input style="width:60%" class="input_search" condition="u.f_user_name like '%{}%'" placeholder='客户名称' type="text"
20
- v-el:username v-model="model.f_username" v-next-el='userid'>
21
- </div>
22
- <div class="col-sm-2 form-group">
23
- <label class="font_normal_body">客户地址</label>
24
- <input style="width:60%" class="input_search" condition="a.f_address like '%{}%'" placeholder='地址' type="text"
25
- v-el:area v-el:xq v-model="model.f_address" v-next-el='address'
26
- >
27
- </div>
28
- <div class="col-sm-2 form-group">
29
- <label class="font_normal_body">表&emsp;&emsp;号</label>
30
- <input style="width:60%" class="input_search" condition="uf.f_meternumber like '%{}%'" placeholder='表钢号' type="text"
31
- v-el:meternumber v-model="model.f_meternumber" v-next-el='meternumber'
32
- >
33
- </div>
34
- <div class="span" style="float:right;">
35
- <button @click="search()" class="button_search button_spacing">查询</button>
36
- <button @click="$parent.$parent.clearmsg" class="button_clear button_spacing">清空</button>
37
- <export-excel :data="$parent.$parent.getCondition" class="button_export button_spacing"
38
- :field="$parent.$parent.getfield"
39
- sqlurl="rs/logic/exportfile" sql-name="webmeter_getNewInstructChanceList" template-name='指令分析'
40
- :choose-col="true"></export-excel>
41
- <button @click="$parent.$parent.showEcharts()" class="button_export button_spacing">显示图表</button>
42
- <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>
43
- </div>
44
- </div>
45
- <div class="row" v-show="$parent.$parent.criteriaShow">
46
-
47
- <div class="col-sm-2 form-group">
48
- <!-- <label class="font_normal_body">组织机构</label>-->
49
- <!-- <res-select :initresid="$parent.$parent.orgid"-->
50
- <!-- @res-select="$parent.$parent.getRes"-->
51
- <!-- restype='organization'style="width: 60%">-->
52
- <!-- </res-select>-->
53
- <label class="font_normal_body">公&emsp;&emsp;司</label>
54
- <right-tree @re-res="$parent.$parent.getRes"
55
- :initresid='$parent.$parent.orgid'></right-tree>
56
- </div>
57
- <div class="col-sm-2 form-group">
58
- <label class="font_normal_body">用户类型</label>
59
- <v-select :options='$parent.$parent.usertypes'
60
- :value.sync="model.f_user_type"
61
- close-on-select
62
- style="width:60%"
63
- condition="uf.f_user_type = '{}'"
64
- @change="$parent.$parent.userTypeChange()"
65
- id="f_user_type"
66
- placeholder='用户类型'
67
- v-model="model.f_user_type">
68
- </v-select>
69
- </div>
70
- <div class="col-sm-2 form-group">
71
- <label class="font_normal_body">用气性质</label>
72
- <v-select :options='$parent.$parent.gasproperties'
73
- :value.sync="model.f_gasproperties"
74
- close-on-select
75
- style="width:60%"
76
- condition="uf.f_gasproperties = '{}'"
77
- id="f_gasproperties"
78
- placeholder='用气性质'
79
- v-model="model.f_gasproperties">
80
- </v-select>
81
- </div>
82
- <div class="col-sm-2 form-group">
83
- <label class="font_normal_body" style="word-break:keep-all;">上报时间</label>
84
- <datepicker :format="'yyyy-MM-dd HH:mm:ss'"
85
- :value.sync="model.startDate"
86
- style="width:60%"
87
- placeholder="起始时间"
88
- v-model="model.startDate"
89
- ></datepicker>
90
- </div>
91
- <div class="col-sm-2 form-group">
92
- <label class="font_normal_body" style="word-break:keep-all;">&emsp;&ensp;至&emsp;</label>
93
- <datepicker :format="'yyyy-MM-dd HH:mm:ss'"
94
- :value.sync="model.endDate"
95
- placeholder="结束时间"
96
- style="width:60%"
97
- v-model="model.endDate"
98
- ></datepicker>
99
- </div>
100
-
101
- </div>
102
- </div>
103
- </criteria>
104
- <data-grid :model="model" id="reportgas" partial='list' class="list_area table_sy" v-ref:grid>
105
- <template partial='head'>
106
- <tr>
107
- <th style="text-align:center">序号</th>
108
- <th style="text-align:center">
109
- <nobr>上报日期</nobr>
110
- </th>
111
- <th style="text-align:center" title="在用户数:表具状态为正常的用户数">
112
- <nobr>在用户数</nobr>
113
- </th>
114
- <th style="text-align:center" title="停用户数:表具状态为停用的用户数">
115
- <nobr>停用户数</nobr>
116
- </th>
117
-
118
- <th style="text-align:center" title="指令下发成功表具数">
119
- <nobr>指令下发成功表具数</nobr>
120
- </th>
121
- <th style="text-align:center" title="指令下发总表具数">
122
- <nobr>指令下发总表具数</nobr>
123
- </th>
124
- <th style="text-align:center" title="表具指令成功率=指令上报成功表具数/指令上报总表具数">
125
- <nobr>表具指令成功率</nobr>
126
- </th>
127
- <th style="text-align:center" title="成功指令数">
128
- <nobr>成功指令数</nobr>
129
- </th>
130
- <th style="text-align:center" title="总指令数">
131
- <nobr>总指令数</nobr>
132
- </th>
133
- <th style="text-align:center" title="指令成功率=成功指令数/总指令数">
134
- <nobr>指令成功率</nobr>
135
- </th>
136
- <th style="text-align:center" title="综合指令成功率=指令下发总表具数/在用户数">
137
- <nobr>综合指令成功率</nobr>
138
- </th>
139
- </tr>
140
- </template>
141
- <template partial='body' partial='list' v-ref:grid>
142
- <tr>
143
- <td style="text-align:center">{{$index + 1}}</td>
144
- <td style="text-align:center;width: 170px;">
145
- <nobr>{{row.f_insert_date}}</nobr>
146
- </td>
147
- <td style="text-align:center">{{row.zaiyong}}</td>
148
- <th style="text-align:center">{{row.tingyong}}</th>
149
-
150
- <td style="text-align:center">{{row.c0}}</td>
151
- <th style="text-align:center">{{row.c}}</th>
152
- <th style="text-align:center">{{row.f_bv1}}</th>
153
- <td style="text-align:center">
154
- <nobr>{{row.success}}</nobr>
155
- </td>
156
- <td style="text-align:center">
157
- <nobr>{{row.c1}}</nobr>
158
- </td>
159
- <td style="text-align:center">
160
- <nobr>{{row.f_bv2}}</nobr>
161
- </td>
162
- <td style="text-align:center">
163
- <nobr>{{row.f_bv0}}</nobr>
164
- </td>
165
- </tr>
166
- </template>
167
- <template partial='foot'></template>
168
- </data-grid>
169
- </criteria-paged>
170
- </div>
171
- <div style="height: 40px;width: 100%;" v-show="echarts">
172
- <button @click="showEcharts()" class="button_search button_spacing">隐藏图表</button>
173
- </div>
174
- <!-- 图显示模板-->
175
- <div class="span " style="width: 100%;" v-show="echarts">
176
- <user-instruct-echarts-list :condition="condition" :echarts="echarts"
177
- :enddate="endDate" :startdate="startDate"></user-instruct-echarts-list>
178
- </div>
179
- </div>
180
- </div>
181
- </div>
182
- </template>
183
- <script>
184
- import {PagedList} from 'vue-client'
185
- import * as Util from '../../../Util'
186
- import getLodop from '../../../plugins/LodopFuncs'
187
- import UserInstructEchartsList from './UserInstructEchartsList'
188
- import plugins from '../../../plugins/GetLoginInfoService'
189
- import plugin from 'system-clients/src/plugins/GetLoginInfoService'
190
-
191
- export default {
192
- title: '指令分析',
193
- props: ['data'],
194
- components: {UserInstructEchartsList},
195
- data() {
196
- return {
197
- model: new PagedList('rs/sql/webmeter_getNewInstructChanceList', 100, {
198
- startDate: 'this.model.startDate',
199
- endDate: 'this.model.endDate'
200
- }),
201
- condition: '1=1',
202
- startDate: '',
203
- gasproperties:[{label: '全部', value: ''}],
204
- endDate: '',
205
- getfield:{"f_insert_date":"上报日期","zaiyong":"在用户数",
206
- "tingyong":"停用户数",
207
- "c0":"指令下发成功表具数","c":"指令下发总表具数",
208
- "f_bv1":"表具指令成功率",
209
- "success":"成功指令数","c1":"总指令数",
210
- "f_bv2":"指令成功率",
211
- "f_bv0":"综合指令成功率"
212
- },
213
- criteriaShow: false,
214
- echarts: false,
215
- searchshow: false,
216
- orgCondtionStr: '(' + this.$login.f.orgid + ')',
217
- orgid: [this.$login.f.orgid]
218
- }
219
- },
220
- ready() {
221
- this.$refs.paged.$refs.cri.model.startDate = Util.toStandardDateString() + ' 00:00:00'
222
- this.$refs.paged.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
223
- this.getdata()
224
- },
225
- methods: {
226
- userTypeChange () {
227
- this.gasproperties=[{label: '全部', value: ''}]
228
- if(this.$refs.paged.$refs.cri.model !==null) {
229
- this.$refs.paged.$refs.cri.model.f_gasproperties=''
230
-
231
- console.log(this.$refs.paged.$refs.cri.model.f_user_type[0])
232
- this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
233
- // this.gasproperties.push({label: '全部', value: ''})
234
- }
235
- else{
236
- this.gasproperties =[{label: '全部', value: ''}]
237
- }
238
- },
239
- search1(){
240
- this.$refs.paged.$refs.cri.search()
241
- },
242
- // 查询开关
243
- hidden() {
244
- this.criteriaShow = !this.criteriaShow
245
- },
246
- getdata() {
247
- this.startDate = this.$refs.paged.$refs.cri.model.startDate
248
- this.endDate = this.$refs.paged.$refs.cri.model.endDate
249
- if (this.orgCondtionStr)
250
- this.condition = this.$refs.paged.$refs.cri.condition + 'and uf.f_orgid in ' + this.orgCondtionStr
251
- this.$refs.paged.$refs.cri.search()
252
- },
253
- // 显示柱状图
254
- showEcharts() {
255
- this.echarts = !this.echarts
256
- },
257
- close() {
258
- this.show = false
259
- },
260
- // SaveAsFile(str) {
261
- // this.$showMessage('您是否需要导出本页数据?', ['confirm', 'cancel']).then((res) => {
262
- // if (res === 'confirm') {
263
- // let style = '<style>' +
264
- // 'td {border-width: 1px;padding: 2px;border-style: solid; border-color:black; border-collapse:collapse;} .tdright{text-align: right;} .tdcenter{text-align: center;}</style>';
265
- // let strHtml = style + document.getElementById(str).innerHTML;
266
- // console.log(strHtml);
267
- // let LODOP = getLodop();
268
- // LODOP.PRINT_INIT('');
269
- // LODOP.ADD_PRINT_TABLE(5, 5, '99%', '100%', strHtml);
270
- // LODOP.SAVE_TO_FILE('抄表统计.xls')
271
- // }
272
- // })
273
- // },
274
- clearmsg() {
275
- this.$refs.paged.$refs.cri.model = {}
276
- },
277
- search(args) {
278
- this.startDate = this.$refs.paged.$refs.cri.model.startDate
279
- this.endDate = this.$refs.paged.$refs.cri.model.endDate
280
- if (this.endDate == '' || this.startDate == '') {
281
- return this.$showMessage("时间区间的开始和结束时间不能为空!")
282
- }
283
- if (this.orgCondtionStr)
284
- args.condition = `${args.condition}` + 'and uf.f_orgid in ' + this.orgCondtionStr
285
- this.condition = args.condition
286
- this.model.search(args.condition, args.model)
287
- },
288
- getRes (obj) {
289
- this.orgCondtionStr = plugins.convertToIn(obj.resids)?plugin.convertToIn(obj.resids):'(' + this.$login.f.orgid + ')'
290
- }
291
- // getRes(obj) {
292
- // this.orgCondtionStr = plugins.convertToIn(obj)
293
- // }
294
- },
295
- computed: {
296
- getCondition() {
297
- var con=""
298
- if (this.orgCondtionStr) {
299
- con= `${this.$refs.paged.$refs.cri.condition} and u.f_orgid in ${this.orgCondtionStr}`
300
- }
301
- else{
302
- con= `${this.$refs.paged.$refs.cri.condition} `
303
- }
304
- return {
305
- condition: con ,
306
- startDate:`${this.$refs.paged.$refs.cri.model.startDate}`,
307
- endDate:`${this.$refs.paged.$refs.cri.model.endDate}`
308
- }
309
-
310
- },
311
- usertypes() {
312
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
313
- },
314
- Getuserstyle() {
315
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气类型')]
316
- }
317
- }
318
- }
319
- </script>
320
- <style>
321
- .mystyle {
322
- margin-left: 80px;
323
- }
324
-
325
- .datapanel {
326
- color: #333;
327
- background-color: white;
328
- box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
329
- padding: 10px 10px 10px 10px;
330
- border-radius: 15px;
331
- }
332
- </style>
1
+ <template>
2
+ <div class="flex-row binary" id="unit">
3
+ <div class="basic-main" @keyup.enter="search1">
4
+ <div class="flex">
5
+ <div class="flex" style="flex:1;" v-show="!echarts">
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
+
11
+ <div class="col-sm-2 form-group">
12
+ <label class="font_normal_body">客户编号</label>
13
+ <input style="width:60%" class="input_search" condition="u.f_userinfo_code like '%{}%'" placeholder='客户编号' type="text"
14
+ v-el:meternumber v-model="model.f_userinfo_code" v-next-el='f_userinfo_code'
15
+ >
16
+ </div>
17
+ <div class="col-sm-2 form-group">
18
+ <label class="font_normal_body">客户名称</label>
19
+ <input style="width:60%" class="input_search" condition="u.f_user_name like '%{}%'" placeholder='客户名称' type="text"
20
+ v-el:username v-model="model.f_username" v-next-el='userid'>
21
+ </div>
22
+ <div class="col-sm-2 form-group">
23
+ <label class="font_normal_body">客户地址</label>
24
+ <input style="width:60%" class="input_search" condition="a.f_address like '%{}%'" placeholder='地址' type="text"
25
+ v-el:area v-el:xq v-model="model.f_address" v-next-el='address'
26
+ >
27
+ </div>
28
+ <div class="col-sm-2 form-group">
29
+ <label class="font_normal_body">表&emsp;&emsp;号</label>
30
+ <input style="width:60%" class="input_search" condition="uf.f_meternumber like '%{}%'" placeholder='表钢号' type="text"
31
+ v-el:meternumber v-model="model.f_meternumber" v-next-el='meternumber'
32
+ >
33
+ </div>
34
+ <div class="span" style="float:right;">
35
+ <button @click="search()" class="button_search button_spacing">查询</button>
36
+ <button @click="$parent.$parent.clearmsg" class="button_clear button_spacing">清空</button>
37
+ <export-excel :data="$parent.$parent.getCondition" class="button_export button_spacing"
38
+ :field="$parent.$parent.getfield"
39
+ sqlurl="rs/logic/exportfile" sql-name="webmeter_getNewInstructChanceList" template-name='指令分析'
40
+ :choose-col="true"></export-excel>
41
+ <button @click="$parent.$parent.showEcharts()" class="button_export button_spacing">显示图表</button>
42
+ <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>
43
+ </div>
44
+ </div>
45
+ <div class="row" v-show="$parent.$parent.criteriaShow">
46
+
47
+ <div class="col-sm-2 form-group">
48
+ <!-- <label class="font_normal_body">组织机构</label>-->
49
+ <!-- <res-select :initresid="$parent.$parent.orgid"-->
50
+ <!-- @res-select="$parent.$parent.getRes"-->
51
+ <!-- restype='organization'style="width: 60%">-->
52
+ <!-- </res-select>-->
53
+ <label class="font_normal_body">公&emsp;&emsp;司</label>
54
+ <right-tree @re-res="$parent.$parent.getRes"
55
+ :initresid='$parent.$parent.orgid'></right-tree>
56
+ </div>
57
+ <div class="col-sm-2 form-group">
58
+ <label class="font_normal_body">用户类型</label>
59
+ <v-select :options='$parent.$parent.usertypes'
60
+ :value.sync="model.f_user_type"
61
+ close-on-select
62
+ style="width:60%"
63
+ condition="uf.f_user_type = '{}'"
64
+ @change="$parent.$parent.userTypeChange()"
65
+ id="f_user_type"
66
+ placeholder='用户类型'
67
+ v-model="model.f_user_type">
68
+ </v-select>
69
+ </div>
70
+ <div class="col-sm-2 form-group">
71
+ <label class="font_normal_body">用气性质</label>
72
+ <v-select :options='$parent.$parent.gasproperties'
73
+ :value.sync="model.f_gasproperties"
74
+ close-on-select
75
+ style="width:60%"
76
+ condition="uf.f_gasproperties = '{}'"
77
+ id="f_gasproperties"
78
+ placeholder='用气性质'
79
+ v-model="model.f_gasproperties">
80
+ </v-select>
81
+ </div>
82
+ <div class="col-sm-2 form-group">
83
+ <label class="font_normal_body" style="word-break:keep-all;">上报时间</label>
84
+ <datepicker :format="'yyyy-MM-dd HH:mm:ss'"
85
+ :value.sync="model.startDate"
86
+ style="width:60%"
87
+ placeholder="起始时间"
88
+ v-model="model.startDate"
89
+ ></datepicker>
90
+ </div>
91
+ <div class="col-sm-2 form-group">
92
+ <label class="font_normal_body" style="word-break:keep-all;">&emsp;&ensp;至&emsp;</label>
93
+ <datepicker :format="'yyyy-MM-dd HH:mm:ss'"
94
+ :value.sync="model.endDate"
95
+ placeholder="结束时间"
96
+ style="width:60%"
97
+ v-model="model.endDate"
98
+ ></datepicker>
99
+ </div>
100
+
101
+ </div>
102
+ </div>
103
+ </criteria>
104
+ <data-grid :model="model" id="reportgas" partial='list' class="list_area table_sy" v-ref:grid>
105
+ <template partial='head'>
106
+ <tr>
107
+ <th style="text-align:center">序号</th>
108
+ <th style="text-align:center">
109
+ <nobr>上报日期</nobr>
110
+ </th>
111
+ <th style="text-align:center" title="在用户数:表具状态为正常的用户数">
112
+ <nobr>在用户数</nobr>
113
+ </th>
114
+ <th style="text-align:center" title="停用户数:表具状态为停用的用户数">
115
+ <nobr>停用户数</nobr>
116
+ </th>
117
+
118
+ <th style="text-align:center" title="指令下发成功表具数">
119
+ <nobr>指令下发成功表具数</nobr>
120
+ </th>
121
+ <th style="text-align:center" title="指令下发总表具数">
122
+ <nobr>指令下发总表具数</nobr>
123
+ </th>
124
+ <th style="text-align:center" title="表具指令成功率=指令上报成功表具数/指令上报总表具数">
125
+ <nobr>表具指令成功率</nobr>
126
+ </th>
127
+ <th style="text-align:center" title="成功指令数">
128
+ <nobr>成功指令数</nobr>
129
+ </th>
130
+ <th style="text-align:center" title="总指令数">
131
+ <nobr>总指令数</nobr>
132
+ </th>
133
+ <th style="text-align:center" title="指令成功率=成功指令数/总指令数">
134
+ <nobr>指令成功率</nobr>
135
+ </th>
136
+ <th style="text-align:center" title="综合指令成功率=指令下发总表具数/在用户数">
137
+ <nobr>综合指令成功率</nobr>
138
+ </th>
139
+ </tr>
140
+ </template>
141
+ <template partial='body' partial='list' v-ref:grid>
142
+ <tr>
143
+ <td style="text-align:center">{{$index + 1}}</td>
144
+ <td style="text-align:center;width: 170px;">
145
+ <nobr>{{row.f_insert_date}}</nobr>
146
+ </td>
147
+ <td style="text-align:center">{{row.zaiyong}}</td>
148
+ <th style="text-align:center">{{row.tingyong}}</th>
149
+
150
+ <td style="text-align:center">{{row.c0}}</td>
151
+ <th style="text-align:center">{{row.c}}</th>
152
+ <th style="text-align:center">{{row.f_bv1}}</th>
153
+ <td style="text-align:center">
154
+ <nobr>{{row.success}}</nobr>
155
+ </td>
156
+ <td style="text-align:center">
157
+ <nobr>{{row.c1}}</nobr>
158
+ </td>
159
+ <td style="text-align:center">
160
+ <nobr>{{row.f_bv2}}</nobr>
161
+ </td>
162
+ <td style="text-align:center">
163
+ <nobr>{{row.f_bv0}}</nobr>
164
+ </td>
165
+ </tr>
166
+ </template>
167
+ <template partial='foot'></template>
168
+ </data-grid>
169
+ </criteria-paged>
170
+ </div>
171
+ <div style="height: 40px;width: 100%;" v-show="echarts">
172
+ <button @click="showEcharts()" class="button_search button_spacing">隐藏图表</button>
173
+ </div>
174
+ <!-- 图显示模板-->
175
+ <div class="span " style="width: 100%;" v-show="echarts">
176
+ <user-instruct-echarts-list :condition="condition" :echarts="echarts"
177
+ :enddate="endDate" :startdate="startDate"></user-instruct-echarts-list>
178
+ </div>
179
+ </div>
180
+ </div>
181
+ </div>
182
+ </template>
183
+ <script>
184
+ import {PagedList} from 'vue-client'
185
+ import * as Util from '../../../Util'
186
+ import getLodop from '../../../plugins/LodopFuncs'
187
+ import UserInstructEchartsList from './UserInstructEchartsList'
188
+ import plugins from '../../../plugins/GetLoginInfoService'
189
+ import plugin from 'system-clients/src/plugins/GetLoginInfoService'
190
+
191
+ export default {
192
+ title: '指令分析',
193
+ props: ['data'],
194
+ components: {UserInstructEchartsList},
195
+ data() {
196
+ return {
197
+ model: new PagedList('rs/sql/webmeter_getNewInstructChanceList', 100, {
198
+ startDate: 'this.model.startDate',
199
+ endDate: 'this.model.endDate'
200
+ }),
201
+ condition: '1=1',
202
+ startDate: '',
203
+ gasproperties:[{label: '全部', value: ''}],
204
+ endDate: '',
205
+ getfield:{"f_insert_date":"上报日期","zaiyong":"在用户数",
206
+ "tingyong":"停用户数",
207
+ "c0":"指令下发成功表具数","c":"指令下发总表具数",
208
+ "f_bv1":"表具指令成功率",
209
+ "success":"成功指令数","c1":"总指令数",
210
+ "f_bv2":"指令成功率",
211
+ "f_bv0":"综合指令成功率"
212
+ },
213
+ criteriaShow: false,
214
+ echarts: false,
215
+ searchshow: false,
216
+ orgCondtionStr: '(' + this.$login.f.orgid + ')',
217
+ orgid: [this.$login.f.orgid]
218
+ }
219
+ },
220
+ ready() {
221
+ this.$refs.paged.$refs.cri.model.startDate = Util.addDate(new Date(),-6).substring(0,10) + ' 00:00:00'
222
+ this.$refs.paged.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
223
+ this.getdata()
224
+ },
225
+ methods: {
226
+ userTypeChange () {
227
+ this.gasproperties=[{label: '全部', value: ''}]
228
+ if(this.$refs.paged.$refs.cri.model !==null) {
229
+ this.$refs.paged.$refs.cri.model.f_gasproperties=''
230
+
231
+ console.log(this.$refs.paged.$refs.cri.model.f_user_type[0])
232
+ this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
233
+ // this.gasproperties.push({label: '全部', value: ''})
234
+ }
235
+ else{
236
+ this.gasproperties =[{label: '全部', value: ''}]
237
+ }
238
+ },
239
+ search1(){
240
+ this.$refs.paged.$refs.cri.search()
241
+ },
242
+ // 查询开关
243
+ hidden() {
244
+ this.criteriaShow = !this.criteriaShow
245
+ },
246
+ getdata() {
247
+ this.startDate = this.$refs.paged.$refs.cri.model.startDate
248
+ this.endDate = this.$refs.paged.$refs.cri.model.endDate
249
+ if (this.orgCondtionStr)
250
+ this.condition = this.$refs.paged.$refs.cri.condition + 'and uf.f_orgid in ' + this.orgCondtionStr
251
+ this.$refs.paged.$refs.cri.search()
252
+ },
253
+ // 显示柱状图
254
+ showEcharts() {
255
+ this.echarts = !this.echarts
256
+ },
257
+ close() {
258
+ this.show = false
259
+ },
260
+ // SaveAsFile(str) {
261
+ // this.$showMessage('您是否需要导出本页数据?', ['confirm', 'cancel']).then((res) => {
262
+ // if (res === 'confirm') {
263
+ // let style = '<style>' +
264
+ // 'td {border-width: 1px;padding: 2px;border-style: solid; border-color:black; border-collapse:collapse;} .tdright{text-align: right;} .tdcenter{text-align: center;}</style>';
265
+ // let strHtml = style + document.getElementById(str).innerHTML;
266
+ // console.log(strHtml);
267
+ // let LODOP = getLodop();
268
+ // LODOP.PRINT_INIT('');
269
+ // LODOP.ADD_PRINT_TABLE(5, 5, '99%', '100%', strHtml);
270
+ // LODOP.SAVE_TO_FILE('抄表统计.xls')
271
+ // }
272
+ // })
273
+ // },
274
+ clearmsg() {
275
+ this.$refs.paged.$refs.cri.model = {}
276
+ },
277
+ search(args) {
278
+ this.startDate = this.$refs.paged.$refs.cri.model.startDate
279
+ this.endDate = this.$refs.paged.$refs.cri.model.endDate
280
+ if (this.endDate == '' || this.startDate == '') {
281
+ return this.$showMessage("时间区间的开始和结束时间不能为空!")
282
+ }
283
+ if (this.orgCondtionStr)
284
+ args.condition = `${args.condition}` + 'and uf.f_orgid in ' + this.orgCondtionStr
285
+ this.condition = args.condition
286
+ this.model.search(args.condition, args.model)
287
+ },
288
+ getRes (obj) {
289
+ this.orgCondtionStr = plugins.convertToIn(obj.resids)?plugin.convertToIn(obj.resids):'(' + this.$login.f.orgid + ')'
290
+ }
291
+ // getRes(obj) {
292
+ // this.orgCondtionStr = plugins.convertToIn(obj)
293
+ // }
294
+ },
295
+ computed: {
296
+ getCondition() {
297
+ var con=""
298
+ if (this.orgCondtionStr) {
299
+ con= `${this.$refs.paged.$refs.cri.condition} and u.f_orgid in ${this.orgCondtionStr}`
300
+ }
301
+ else{
302
+ con= `${this.$refs.paged.$refs.cri.condition} `
303
+ }
304
+ return {
305
+ condition: con ,
306
+ startDate:`${this.$refs.paged.$refs.cri.model.startDate}`,
307
+ endDate:`${this.$refs.paged.$refs.cri.model.endDate}`
308
+ }
309
+
310
+ },
311
+ usertypes() {
312
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
313
+ },
314
+ Getuserstyle() {
315
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气类型')]
316
+ }
317
+ }
318
+ }
319
+ </script>
320
+ <style>
321
+ .mystyle {
322
+ margin-left: 80px;
323
+ }
324
+
325
+ .datapanel {
326
+ color: #333;
327
+ background-color: white;
328
+ box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
329
+ padding: 10px 10px 10px 10px;
330
+ border-radius: 15px;
331
+ }
332
+ </style>