manage-client 3.1.47 → 3.1.50

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 (104) hide show
  1. package/.gradle/6.1.1/fileContent/fileContent.lock +0 -0
  2. package/.gradle/7.1/dependencies-accessors/dependencies-accessors.lock +0 -0
  3. package/.gradle/7.1/dependencies-accessors/gc.properties +0 -0
  4. package/.gradle/7.1/executionHistory/executionHistory.bin +0 -0
  5. package/.gradle/7.1/executionHistory/executionHistory.lock +0 -0
  6. package/.gradle/7.1/fileChanges/last-build.bin +0 -0
  7. package/.gradle/7.1/fileHashes/fileHashes.bin +0 -0
  8. package/.gradle/7.1/fileHashes/fileHashes.lock +0 -0
  9. package/.gradle/7.1/gc.properties +0 -0
  10. package/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  11. package/build/dev-server.js +20 -28
  12. package/build/libs/ManageClient-3.1.0-17.jar +0 -0
  13. package/build/tmp/jar/MANIFEST.MF +2 -0
  14. package/package.json +1 -1
  15. package/src/App.vue +28 -29
  16. package/src/components/BasisEcharts/BarChart.vue +247 -247
  17. package/src/components/BasisEcharts/RingChart.vue +196 -196
  18. package/src/components/SellReport/AmountDay.vue +257 -0
  19. package/src/components/SellReport/BusinessClassify.vue +317 -317
  20. package/src/components/SellReport/ChargePrick.vue +284 -284
  21. package/src/components/SellReport/DepartmentPrick.vue +288 -288
  22. package/src/components/SellReport/FinanceSellType.vue +254 -254
  23. package/src/components/SellReport/GasBaozhuangFee.vue +237 -237
  24. package/src/components/SellReport/GasMoneyReport.vue +254 -254
  25. package/src/components/SellReport/GasPrice.vue +244 -244
  26. package/src/components/SellReport/ManageBusSummary.vue +242 -242
  27. package/src/components/SellReport/ManageHandInputtor.vue +281 -281
  28. package/src/components/SellReport/ManageOtherCharge.vue +250 -250
  29. package/src/components/SellReport/ManageSellType.vue +284 -284
  30. package/src/components/SellReport/ManageUserCount.vue +347 -347
  31. package/src/components/SellReport/MarketMonth.vue +297 -297
  32. package/src/components/SellReport/OperatorCheckoutReport.vue +250 -0
  33. package/src/components/SellReport/OperatorCheckoutTwo.vue +250 -0
  34. package/src/components/SellReport/ReportComponrnt/TieAnAccount.vue +381 -66
  35. package/src/components/SellReport/SaleMonthReport.vue +227 -227
  36. package/src/components/SellReport/SellDepReport.vue +266 -251
  37. package/src/components/SellReport/SellingTable.vue +220 -220
  38. package/src/components/SellReport/UserClassify.vue +271 -271
  39. package/src/components/SellReport/UserSellingGas.vue +251 -251
  40. package/src/components/daping/CallCenter.vue +366 -366
  41. package/src/components/daping/DataManagement.vue +537 -537
  42. package/src/components/daping/GMap.vue +636 -636
  43. package/src/components/daping/ManageMain.vue +270 -270
  44. package/src/components/daping/NetWork.vue +238 -238
  45. package/src/components/daping/RedactDaPing.vue +486 -468
  46. package/src/components/daping/Ring.vue +212 -212
  47. package/src/components/daping/SafeCheck.vue +446 -446
  48. package/src/components/daping/SafeCheckRing.vue +166 -166
  49. package/src/components/daping/SafecheckBarChart.vue +233 -233
  50. package/src/components/daping/WuHaiMap.vue +420 -418
  51. package/src/components/qinhua/BarChart.vue +258 -256
  52. package/src/components/qinhua/Pie.vue +139 -132
  53. package/src/components/qinhua/SellEcharts.vue +115 -115
  54. package/src/components/qinhua/qinHuaMap.vue +414 -414
  55. package/src/components/sale/businessquery/AccountQuery/ExpectGasList.vue +500 -500
  56. package/src/components/sale/businessquery/AccountQuery/PreGasList.vue +13 -6
  57. package/src/components/sale/businessquery/AccountQuery/SellingGasList.vue +12 -5
  58. package/src/components/sale/businessquery/BusinessManage.vue +3 -0
  59. package/src/components/sale/businessquery/CardHandplanQuery.vue +1 -1
  60. package/src/components/sale/businessquery/CollectManage.vue +135 -135
  61. package/src/components/sale/businessquery/FMYGasQuery.vue +713 -713
  62. package/src/components/sale/businessquery/MonthGasQuery.vue +467 -467
  63. package/src/components/sale/businessquery/OtherChargeQuery.vue +619 -619
  64. package/src/components/sale/businessquery/PrickBillQuery.vue +332 -0
  65. package/src/components/sale/businessquery/ProceedsOper.vue +377 -377
  66. package/src/components/sale/businessquery/YingShouMingXi.vue +525 -525
  67. package/src/components/sale/config/exportConfig.js +5 -0
  68. package/src/components/statistical/StatisticalAnalysis.vue +247 -247
  69. package/src/components/webmeter/DrillData/LostContactAnalysisList.vue +633 -633
  70. package/src/components/webmeter/DrillData/LostContactEcharts.vue +177 -177
  71. package/src/components/webmeter/DrillData/UserGasAll.vue +597 -597
  72. package/src/components/webmeter/DrillData/UserGasEcharts.vue +220 -220
  73. package/src/components/webmeter/DrillData/UserGasEform.vue +227 -227
  74. package/src/components/webmeter/DrillData/UserLostContactAnalysis.vue +585 -585
  75. package/src/components/webmeter/newwebmeter/NewException/NewContactEcharts.vue +171 -171
  76. package/src/components/webmeter/newwebmeter/NewException/NewEchartsAll.vue +111 -111
  77. package/src/components/webmeter/newwebmeter/NewException/NewExceptionEcharsTotal.vue +288 -288
  78. package/src/components/webmeter/newwebmeter/NewException/NewGasEcharts.vue +209 -209
  79. package/src/components/webmeter/newwebmeter/NewException/NewHandplanEcharts.vue +213 -213
  80. package/src/components/webmeter/newwebmeter/NewException/NewInstructEcharts.vue +240 -240
  81. package/src/components/webmeter/newwebmeter/NewException/TotalExceptionByMeter.vue +607 -607
  82. package/src/components/webmeter/newwebmeter/UserGasEchartsList.vue +283 -283
  83. package/src/components/webmeter/newwebmeter/UserGasList.vue +438 -438
  84. package/src/components/webmeter/newwebmeter/UserInstructEchartsList.vue +242 -242
  85. package/src/components/webmeter/newwebmeter/UserInstructList.vue +332 -332
  86. package/src/components/webmeter/newwebmeter/signAnalysisEcharts.vue +266 -266
  87. package/src/components/webmeter/newwebmeter/signAnalysisEform.vue +175 -175
  88. package/src/components/webmeter/newwebmeter/signAnalysisListMain.vue +387 -387
  89. package/src/filiale/alashan/SellingTable.vue +234 -234
  90. package/src/filiale/alashan/reportManage.js +10 -10
  91. package/src/filiale/jingzhou/ChargeQuery.vue +1243 -1243
  92. package/src/filiale/jingzhou/config/exportConfig.js +861 -861
  93. package/src/filiale/meihekou/UserGasEform.vue +267 -267
  94. package/src/filiale/meihekou/sale.js +26 -26
  95. package/src/filiale/rongcheng/exportConfig.js +257 -257
  96. package/src/filiale/rongchuang/SellingTable.vue +250 -250
  97. package/src/filiale/rongchuang/reportManage.js +11 -11
  98. package/src/filiale/shaoguan/config/exportConfig.js +433 -433
  99. package/src/filiale/tongchuan/ManageBusSummary.vue +302 -302
  100. package/src/main.js +66 -66
  101. package/src/newmanage.js +525 -525
  102. package/src/reportManage.js +12 -0
  103. package/src/saleManage.js +3 -0
  104. package/static/wuhai.json +1610 -1610
@@ -1,387 +1,387 @@
1
- <template>
2
- <div id='app' class="basic-main" style="height: 98%;" v-show="(!echarts)&&(!isActiveTotalForm)">
3
- <criteria-paged :model="model" :pager='true' v-ref:paged>
4
- <criteria partial='criteria' @condition-changed='$parent.search' v-ref:cri>
5
- <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
6
- <div class="row">
7
- <div class="col-sm-2">
8
- <label class="font_normal_body">表&nbsp;钢&nbsp;号&nbsp;</label>
9
- <input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_meternumber" placeholder='表钢号'
10
- condition="p.f_meternumber like '%{}%'" v-next-el='meternumber' v-el:meternumber
11
- >
12
- </div>
13
- <div class="col-sm-2 ">
14
- <label class="font_normal_body">组织机构</label>
15
- <res-select :initresid="$parent.$parent.orgid"
16
- style="width:60%"
17
- @res-select="$parent.$parent.getRes"
18
- restype='organization'>
19
- </res-select>
20
- </div>
21
- <div class="col-sm-2">
22
- <label class="font_normal_body">客户编号</label>
23
- <input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_userinfo_code" placeholder='客户编号'
24
- condition="u.f_userinfo_code like '%{}%'" v-next-el='f_userinfo_code' v-el:meternumber
25
- >
26
- </div>
27
- <div class="col-sm-2">
28
- <label class="font_normal_body">客户名称</label>
29
- <input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_username" placeholder='客户名称'
30
- condition="u.f_user_name like '%{}%'" v-next-el='userid' v-el:username>
31
- </div>
32
- <div class="span" style="float:right;">
33
-
34
- <button class="button_search button_spacing" @click="search()">查询</button>
35
- <button class="button_clear button_spacing" @click="$parent.$parent.clearmsg">清空</button>
36
- <export-excel :data="$parent.$parent.getCondition" class="button_export button_spacing"
37
- :field="$parent.$parent.getfield"
38
- sqlurl="rs/logic/exportfile" sql-name="selectSignAnalysisList" template-name='标记分析'
39
- :choose-col="true"></export-excel>
40
- <button class="button_search button_spacing" @click="$parent.$parent.showEcharts()">显示图表</button>
41
- <button class="button_export button_spacing" style="width: max-content" @click="$parent.$parent.showEform()">显示汇总</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
- <div class="col-sm-2">
47
- <label class="font_normal_body">客户地址</label>
48
- <input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_address" placeholder='地址'
49
- condition="a.f_address like '%{}%'" v-el:xq v-next-el='address' v-el:area
50
- >
51
- </div>
52
- <div class="col-sm-2">
53
- <label class="font_normal_body">客户类型</label>
54
- <v-select style="width:60%" id="f_user_type"
55
- v-model="model.f_user_type"
56
- placeholder='客户类型'
57
- :value.sync="model.f_user_type"
58
- :options='$parent.$parent.usertypes'
59
- condition="f_user_type = '{}'"
60
- close-on-select>
61
- </v-select>
62
- </div>
63
- <div class="col-sm-2">
64
- <label class="font_normal_body">用气性质</label>
65
- <v-select style="width:60%" id="f_gasproperties"
66
- v-model="model.f_gasproperties"
67
- placeholder='用气性质'
68
- :value.sync="model.f_gasproperties"
69
- :options='$parent.$parent.Gasproperties'
70
- condition="f_gasproperties = '{}'"
71
- close-on-select>
72
- </v-select>
73
- </div>
74
- <div class="col-sm-2">
75
- <label class="font_normal_body">安装时间</label>
76
- <datepicker style="width:60%" id="startDate" placeholder="开始时间"
77
- v-model="model.start_f_parameter_date"
78
- :value.sync="model.start_f_parameter_date"
79
- :disabled-days-of-Week="[]"
80
- condition="f.f_install_date >='{}'"
81
- :format="'yyyy-MM-dd HH:mm:ss'"
82
- :show-reset-button="reset">
83
- </datepicker>
84
- </div>
85
- <div class="col-sm-2">
86
- <label class="font_normal_body" style="word-break:keep-all;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;</label>
87
- <datepicker style="width:60%" id="endDate" placeholder="结束日期"
88
- v-model="model.end_f_parameter_date"
89
- :value.sync="model.end_f_parameter_date"
90
- :disabled-days-of-Week="[]"
91
- :format="'yyyy-MM-dd HH:mm:ss'"
92
- condition="f.f_install_date <='{}'"
93
- :show-reset-button="reset">
94
- </datepicker>
95
- </div>
96
- </div>
97
-
98
- </div>
99
- </criteria>
100
- <data-grid id="usergasall" :model="model" partial='list' class="list_area table_sy" v-ref:grid>
101
- <template partial='head'>
102
- <tr>
103
- <th style="text-align:center">
104
- <nobr>序号</nobr>
105
- </th>
106
- <th style="text-align:center">
107
- <nobr>组织机构</nobr>
108
- </th>
109
- <th style="text-align:center">
110
- <nobr>表钢号</nobr>
111
- </th>
112
- <th style="text-align:center">
113
- <nobr>客户编号</nobr>
114
- </th>
115
- <th style="text-align:center">
116
- <nobr>客户名称</nobr>
117
- </th>
118
- <th style="text-align:center">
119
- <nobr>客户类型</nobr>
120
- </th>
121
- <th style="text-align:center">
122
- <nobr>用气性质</nobr>
123
- </th>
124
- <th style="text-align:center">
125
- <nobr>地址</nobr>
126
- </th>
127
- <th style="text-align:center">
128
- <nobr>安装时间</nobr>
129
- </th>
130
- <th style="text-align:center">
131
- <nobr>待处理数量</nobr>
132
- </th>
133
- <th style="text-align:center">
134
- <nobr>已处理数量</nobr>
135
- </th>
136
- <th style="text-align:center">
137
- <nobr>最早上报时间</nobr>
138
- </th>
139
- <th style="text-align:center">
140
- <nobr>最晚上报时间</nobr>
141
- </th>
142
- </tr>
143
-
144
-
145
- </template>
146
- <template partial='body'>
147
- <td style="text-align:center"><nobr>{{$index+1}}</nobr></td>
148
- <td style="text-align:center"><nobr>{{row.f_orgname}}</nobr></td>
149
- <td style="text-align:center"><nobr>{{row.f_meternumber}}</nobr></td>
150
- <td style="text-align:center"><nobr>{{row.f_userinfo_code}}</nobr></td>
151
- <td style="text-align:center"><nobr>{{row.f_user_name}}</nobr></td>
152
- <td style="text-align:center"><nobr>{{row.f_user_type}}</nobr></td>
153
- <td style="text-align:center"><nobr>{{row.f_gasproperties}}</nobr></td>
154
- <td><nobr>{{row.f_address}}</nobr></td>
155
- <td style="text-align:center"><nobr>{{row.f_install_date}}</nobr></td>
156
- <td style="text-align:center"><nobr>{{row.type1}}</nobr></td>
157
- <td style="text-align:center"><nobr>{{row.type2}}</nobr></td>
158
- <td style="text-align:center"><nobr>{{row.mindate}}</nobr></td>
159
- <td style="text-align:center"><nobr>{{row.maxdate}}</nobr></td>
160
- </template>
161
- </data-grid>
162
- </criteria-paged>
163
- </div>
164
- <!-- <div style="height: 40px;width: 100%;" v-show="echarts">-->
165
- <!--&lt;!&ndash; <div style="display: inline-block;">&ndash;&gt;-->
166
- <!--&lt;!&ndash; <button class="button_search button_spacing" @click="notShowEcharts()">隐藏图表</button>&ndash;&gt;-->
167
- <!--&lt;!&ndash; </div>&ndash;&gt;-->
168
- <!-- &lt;!&ndash; 图显示模板&ndash;&gt;-->
169
-
170
- <!-- </div>-->
171
- <div style="width: 100%;height: 100%;" v-show="echarts">
172
- <sign-analysis-echarts :condition="condition" :startdate="startDate" :groupname="groupname[0]"
173
- :enddate="endDate" :echarts="echarts"></sign-analysis-echarts>
174
- </div>
175
- <!-- <div style="height: 40px;width: 100%;" v-show="isActiveTotalForm">-->
176
- <!-- &lt;!&ndash; <div style="display: inline-block;">&ndash;&gt;-->
177
- <!-- &lt;!&ndash; <button class="button_search button_spacing" @click="notShowEform()">隐藏汇总</button>&ndash;&gt;-->
178
- <!-- &lt;!&ndash; </div>&ndash;&gt;-->
179
- <!-- &lt;!&ndash; 汇总显示模板&ndash;&gt;-->
180
- <!-- <div class="mystyle row" style="display: inline-block;">-->
181
- <!-- <label class="font_normal_body">汇总统计项</label>-->
182
- <!-- <v-select style="width:60%" id="signtype" v-model="signtype"-->
183
- <!-- placeholder='分组项'-->
184
- <!-- value-single="true"-->
185
- <!-- :value.sync="signtype"-->
186
- <!-- :options='getSignType'-->
187
- <!-- close-on-select></v-select>-->
188
- <!-- </div>-->
189
- <!--</div>-->
190
- <div style="width: 100%;height: 100%;" v-show="isActiveTotalForm">
191
- <sign-analysis-eform :signtype="signtype[0]" :condition="condition"></sign-analysis-eform>
192
- </div>
193
- </template>
194
-
195
- <script>
196
- import {PagedList} from 'vue-client'
197
- import signAnalysisEcharts from './signAnalysisEcharts'
198
- import * as Util from '../../../Util'
199
- import getLodop from '../../../plugins/LodopFuncs'
200
- import plugins from '../../../plugins/GetLoginInfoService'
201
- export default {
202
- title: '标记分析',
203
- props: ['data'],
204
- components: {signAnalysisEcharts},
205
- data() {
206
- return {
207
- model: new PagedList('rs/sql/selectSignAnalysisList', 20),
208
- groupname: ['year'],
209
- getgroupname: [
210
- {label: '年份', value: 'year'},
211
- {label: '月份', value: 'month'},
212
- {label: '周', value: 'week'},
213
- {label: '天', value: 'day'}
214
- ],
215
- orgid:[this.$login.f.orgid],
216
- criteriaShow:false,
217
- orgCondtionStr: '(' + this.$login.f.orgid + ')',
218
- reportStr: null,
219
- show: false,
220
- outlets: [],
221
- operator: [],
222
- filename: '',
223
- echarts: false,
224
- searchshow: false,
225
- startDate: '',
226
- endDate: '',
227
- isActiveTotalForm: false,
228
- condition: '1=1',
229
-
230
- signtype:['type1'],
231
- getfield:{"f_orgname":"组织机构","f_meternumber":"表钢号",
232
- "f_userinfo_code":"客户编号",
233
- "f_user_name":"客户名称","f_user_type":"客户类型",
234
- "f_gasproperties":"用气性质",
235
- "f_address":"地址","f_install_date":"安装时间",
236
- "type1":"待处理数量",
237
- "type2":"已处理数量",
238
- "mindate":"最早上报时间",
239
- "maxdate":"最晚上报时间"
240
- },
241
- getSignType:[
242
- {label: '频繁磁干扰', value: 'type1'},
243
- {label: '间断性失联', value: 'type2'},
244
- {label: '间断性指令失败', value: 'type3'},
245
- {label: '锂电低电故障', value: 'type4'},
246
- {label: '频繁报拆表', value: 'type5'},
247
- {label: '未装电池', value: 'type6'},
248
- {label: '拆电池了', value: 'type7'},
249
- {label: '电池低压', value: 'type8'},
250
- {label: '锂电低电', value: 'type9'},
251
- {label: '连续失联', value: 'type10'},
252
- {label: '频繁报过流保护关阀', value: 'type11'},
253
- {label: '负值故障', value: 'type12'},
254
- {label: '其他', value: 'type13'}
255
- ],
256
- obj: {
257
- userid: this.$login.f.id,
258
- source: `tool.getFullTree(this.getRights().where(row.getType() == $organization$))`,
259
- res: this.$login.f.f_fengongsi,
260
- resids: this.$login.f.f_orgids
261
- }
262
- }
263
- },
264
- ready() {
265
- this.$refs.paged.$refs.cri.model.start_f_parameter_date = Util.toStandardDateString() + ' 00:00:00'
266
- this.$refs.paged.$refs.cri.model.end_f_parameter_date = Util.toStandardDateString() + ' 23:59:59'
267
- this.$refs.paged.$refs.cri.search()
268
- },
269
- methods: {
270
- hidden() {
271
- this.criteriaShow = !this.criteriaShow
272
- },
273
- // 查询开关
274
- seachchange() {
275
- this.searchshow = !this.searchshow
276
- },
277
- // SaveAsFile(str) {
278
- // this.$showMessage('您是否需要导出本页数据?', ['confirm', 'cancel']).then((res) => {
279
- // if (res === 'confirm') {
280
- // let style = '<style>' +
281
- // 'td {border-width: 1px;padding: 2px;border-style: solid; border-color:black; border-collapse:collapse;} .tdright{text-align: right;} .tdcenter{text-align: center;}</style>';
282
- // let strHtml = style + document.getElementById(str).innerHTML;
283
- // console.log(strHtml);
284
- // let LODOP = getLodop();
285
- // LODOP.PRINT_INIT('');
286
- // LODOP.ADD_PRINT_TABLE(5, 5, '99%', '100%', strHtml);
287
- // LODOP.SAVE_TO_FILE('标记分析.xls')
288
- // }
289
- // })
290
- // },
291
- clearmsg() {
292
- this.$refs.paged.$refs.cri.model = {}
293
- },
294
-
295
- search(args) {
296
- this.startDate = this.$refs.paged.$refs.cri.model.start_f_parameter_date
297
- this.endDate = this.$refs.paged.$refs.cri.model.end_f_parameter_date
298
- if (this.orgCondtionStr)
299
- this.condition = this.$refs.paged.$refs.cri.condition + `and u.f_orgid in ${this.orgCondtionStr}`
300
- else
301
- this.condition = this.$refs.paged.$refs.cri.condition
302
- console.log("~~~~~~~~~~~~~~~~~~")
303
- console.log(this.condition)
304
- args.condition = this.condition
305
- this.model.search(args.condition, args.model)
306
- },
307
- // 显示柱状图
308
- showEcharts() {
309
- this.echarts = true
310
- this.isActiveTotalForm=false
311
- },
312
- // 不显示柱状图
313
- notShowEcharts() {
314
- this.echarts = false
315
- this.isActiveTotalForm=false
316
- },
317
- // 显示汇总
318
- showEform() {
319
- this.echarts = false
320
- this.isActiveTotalForm=true
321
- },
322
- // 不显示汇总
323
- notShowEform() {
324
- this.echarts = false
325
- this.isActiveTotalForm=false
326
- },
327
- close() {
328
- this.show = false
329
- },
330
- getRes(obj) {
331
- this.orgCondtionStr = plugins.convertToIn(obj)
332
- }
333
- },
334
- watch: {
335
- 'data'(val) {
336
- if (val.f_files_path) {
337
- this.getFileContent(val.f_files_path)
338
- } else {
339
- this.reportStr = null
340
- }
341
- }
342
- },
343
- computed: {
344
- getCondition() {
345
- var con=""
346
- if (this.orgCondtionStr) {
347
- con= `${this.$refs.paged.$refs.cri.condition} and u.f_orgid in ${this.orgCondtionStr}`
348
- }
349
- else{
350
- con= `${this.$refs.paged.$refs.cri.condition} `
351
- }
352
- return {
353
- condition: con ,
354
- startDate:`${this.$refs.paged.$refs.cri.model.startDate}`,
355
- endDate:`${this.$refs.paged.$refs.cri.model.endDate}`
356
- }
357
-
358
- },
359
- usertypes() {
360
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
361
- },
362
- valveStatus() {
363
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('气表类型')]
364
- },
365
- Gasproperties() {
366
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')]
367
- },
368
- Getuserstyle() {
369
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气类型')]
370
- }
371
- }
372
- }
373
- </script>
374
- <style>
375
- .mystyle {
376
- float: right;
377
- padding-right: 10%;
378
- }
379
-
380
- .datapanel {
381
- color: #333;
382
- background-color: white;
383
- box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
384
- padding: 10px 10px 10px 10px;
385
- border-radius: 15px;
386
- }
387
- </style>
1
+ <template>
2
+ <div id='app' class="basic-main" style="height: 98%;" v-show="(!echarts)&&(!isActiveTotalForm)">
3
+ <criteria-paged :model="model" :pager='true' v-ref:paged>
4
+ <criteria partial='criteria' @condition-changed='$parent.search' v-ref:cri>
5
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
6
+ <div class="row">
7
+ <div class="col-sm-2">
8
+ <label class="font_normal_body">表&nbsp;钢&nbsp;号&nbsp;</label>
9
+ <input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_meternumber" placeholder='表钢号'
10
+ condition="p.f_meternumber like '%{}%'" v-next-el='meternumber' v-el:meternumber
11
+ >
12
+ </div>
13
+ <div class="col-sm-2 ">
14
+ <label class="font_normal_body">组织机构</label>
15
+ <res-select :initresid="$parent.$parent.orgid"
16
+ style="width:60%"
17
+ @res-select="$parent.$parent.getRes"
18
+ restype='organization'>
19
+ </res-select>
20
+ </div>
21
+ <div class="col-sm-2">
22
+ <label class="font_normal_body">客户编号</label>
23
+ <input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_userinfo_code" placeholder='客户编号'
24
+ condition="u.f_userinfo_code like '%{}%'" v-next-el='f_userinfo_code' v-el:meternumber
25
+ >
26
+ </div>
27
+ <div class="col-sm-2">
28
+ <label class="font_normal_body">客户名称</label>
29
+ <input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_username" placeholder='客户名称'
30
+ condition="u.f_user_name like '%{}%'" v-next-el='userid' v-el:username>
31
+ </div>
32
+ <div class="span" style="float:right;">
33
+
34
+ <button class="button_search button_spacing" @click="search()">查询</button>
35
+ <button class="button_clear button_spacing" @click="$parent.$parent.clearmsg">清空</button>
36
+ <export-excel :data="$parent.$parent.getCondition" class="button_export button_spacing"
37
+ :field="$parent.$parent.getfield"
38
+ sqlurl="rs/logic/exportfile" sql-name="selectSignAnalysisList" template-name='标记分析'
39
+ :choose-col="true"></export-excel>
40
+ <button class="button_search button_spacing" @click="$parent.$parent.showEcharts()">显示图表</button>
41
+ <button class="button_export button_spacing" style="width: max-content" @click="$parent.$parent.showEform()">显示汇总</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
+ <div class="col-sm-2">
47
+ <label class="font_normal_body">客户地址</label>
48
+ <input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_address" placeholder='地址'
49
+ condition="a.f_address like '%{}%'" v-el:xq v-next-el='address' v-el:area
50
+ >
51
+ </div>
52
+ <div class="col-sm-2">
53
+ <label class="font_normal_body">客户类型</label>
54
+ <v-select style="width:60%" id="f_user_type"
55
+ v-model="model.f_user_type"
56
+ placeholder='客户类型'
57
+ :value.sync="model.f_user_type"
58
+ :options='$parent.$parent.usertypes'
59
+ condition="f_user_type = '{}'"
60
+ close-on-select>
61
+ </v-select>
62
+ </div>
63
+ <div class="col-sm-2">
64
+ <label class="font_normal_body">用气性质</label>
65
+ <v-select style="width:60%" id="f_gasproperties"
66
+ v-model="model.f_gasproperties"
67
+ placeholder='用气性质'
68
+ :value.sync="model.f_gasproperties"
69
+ :options='$parent.$parent.Gasproperties'
70
+ condition="f_gasproperties = '{}'"
71
+ close-on-select>
72
+ </v-select>
73
+ </div>
74
+ <div class="col-sm-2">
75
+ <label class="font_normal_body">安装时间</label>
76
+ <datepicker style="width:60%" id="startDate" placeholder="开始时间"
77
+ v-model="model.start_f_parameter_date"
78
+ :value.sync="model.start_f_parameter_date"
79
+ :disabled-days-of-Week="[]"
80
+ condition="f.f_install_date >='{}'"
81
+ :format="'yyyy-MM-dd HH:mm:ss'"
82
+ :show-reset-button="reset">
83
+ </datepicker>
84
+ </div>
85
+ <div class="col-sm-2">
86
+ <label class="font_normal_body" style="word-break:keep-all;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;</label>
87
+ <datepicker style="width:60%" id="endDate" placeholder="结束日期"
88
+ v-model="model.end_f_parameter_date"
89
+ :value.sync="model.end_f_parameter_date"
90
+ :disabled-days-of-Week="[]"
91
+ :format="'yyyy-MM-dd HH:mm:ss'"
92
+ condition="f.f_install_date <='{}'"
93
+ :show-reset-button="reset">
94
+ </datepicker>
95
+ </div>
96
+ </div>
97
+
98
+ </div>
99
+ </criteria>
100
+ <data-grid id="usergasall" :model="model" partial='list' class="list_area table_sy" v-ref:grid>
101
+ <template partial='head'>
102
+ <tr>
103
+ <th style="text-align:center">
104
+ <nobr>序号</nobr>
105
+ </th>
106
+ <th style="text-align:center">
107
+ <nobr>组织机构</nobr>
108
+ </th>
109
+ <th style="text-align:center">
110
+ <nobr>表钢号</nobr>
111
+ </th>
112
+ <th style="text-align:center">
113
+ <nobr>客户编号</nobr>
114
+ </th>
115
+ <th style="text-align:center">
116
+ <nobr>客户名称</nobr>
117
+ </th>
118
+ <th style="text-align:center">
119
+ <nobr>客户类型</nobr>
120
+ </th>
121
+ <th style="text-align:center">
122
+ <nobr>用气性质</nobr>
123
+ </th>
124
+ <th style="text-align:center">
125
+ <nobr>地址</nobr>
126
+ </th>
127
+ <th style="text-align:center">
128
+ <nobr>安装时间</nobr>
129
+ </th>
130
+ <th style="text-align:center">
131
+ <nobr>待处理数量</nobr>
132
+ </th>
133
+ <th style="text-align:center">
134
+ <nobr>已处理数量</nobr>
135
+ </th>
136
+ <th style="text-align:center">
137
+ <nobr>最早上报时间</nobr>
138
+ </th>
139
+ <th style="text-align:center">
140
+ <nobr>最晚上报时间</nobr>
141
+ </th>
142
+ </tr>
143
+
144
+
145
+ </template>
146
+ <template partial='body'>
147
+ <td style="text-align:center"><nobr>{{$index+1}}</nobr></td>
148
+ <td style="text-align:center"><nobr>{{row.f_orgname}}</nobr></td>
149
+ <td style="text-align:center"><nobr>{{row.f_meternumber}}</nobr></td>
150
+ <td style="text-align:center"><nobr>{{row.f_userinfo_code}}</nobr></td>
151
+ <td style="text-align:center"><nobr>{{row.f_user_name}}</nobr></td>
152
+ <td style="text-align:center"><nobr>{{row.f_user_type}}</nobr></td>
153
+ <td style="text-align:center"><nobr>{{row.f_gasproperties}}</nobr></td>
154
+ <td><nobr>{{row.f_address}}</nobr></td>
155
+ <td style="text-align:center"><nobr>{{row.f_install_date}}</nobr></td>
156
+ <td style="text-align:center"><nobr>{{row.type1}}</nobr></td>
157
+ <td style="text-align:center"><nobr>{{row.type2}}</nobr></td>
158
+ <td style="text-align:center"><nobr>{{row.mindate}}</nobr></td>
159
+ <td style="text-align:center"><nobr>{{row.maxdate}}</nobr></td>
160
+ </template>
161
+ </data-grid>
162
+ </criteria-paged>
163
+ </div>
164
+ <!-- <div style="height: 40px;width: 100%;" v-show="echarts">-->
165
+ <!--&lt;!&ndash; <div style="display: inline-block;">&ndash;&gt;-->
166
+ <!--&lt;!&ndash; <button class="button_search button_spacing" @click="notShowEcharts()">隐藏图表</button>&ndash;&gt;-->
167
+ <!--&lt;!&ndash; </div>&ndash;&gt;-->
168
+ <!-- &lt;!&ndash; 图显示模板&ndash;&gt;-->
169
+
170
+ <!-- </div>-->
171
+ <div style="width: 100%;height: 100%;" v-show="echarts">
172
+ <sign-analysis-echarts :condition="condition" :startdate="startDate" :groupname="groupname[0]"
173
+ :enddate="endDate" :echarts="echarts"></sign-analysis-echarts>
174
+ </div>
175
+ <!-- <div style="height: 40px;width: 100%;" v-show="isActiveTotalForm">-->
176
+ <!-- &lt;!&ndash; <div style="display: inline-block;">&ndash;&gt;-->
177
+ <!-- &lt;!&ndash; <button class="button_search button_spacing" @click="notShowEform()">隐藏汇总</button>&ndash;&gt;-->
178
+ <!-- &lt;!&ndash; </div>&ndash;&gt;-->
179
+ <!-- &lt;!&ndash; 汇总显示模板&ndash;&gt;-->
180
+ <!-- <div class="mystyle row" style="display: inline-block;">-->
181
+ <!-- <label class="font_normal_body">汇总统计项</label>-->
182
+ <!-- <v-select style="width:60%" id="signtype" v-model="signtype"-->
183
+ <!-- placeholder='分组项'-->
184
+ <!-- value-single="true"-->
185
+ <!-- :value.sync="signtype"-->
186
+ <!-- :options='getSignType'-->
187
+ <!-- close-on-select></v-select>-->
188
+ <!-- </div>-->
189
+ <!--</div>-->
190
+ <div style="width: 100%;height: 100%;" v-show="isActiveTotalForm">
191
+ <sign-analysis-eform :signtype="signtype[0]" :condition="condition"></sign-analysis-eform>
192
+ </div>
193
+ </template>
194
+
195
+ <script>
196
+ import {PagedList} from 'vue-client'
197
+ import signAnalysisEcharts from './signAnalysisEcharts'
198
+ import * as Util from '../../../Util'
199
+ import getLodop from '../../../plugins/LodopFuncs'
200
+ import plugins from '../../../plugins/GetLoginInfoService'
201
+ export default {
202
+ title: '标记分析',
203
+ props: ['data'],
204
+ components: {signAnalysisEcharts},
205
+ data() {
206
+ return {
207
+ model: new PagedList('rs/sql/selectSignAnalysisList', 20),
208
+ groupname: ['year'],
209
+ getgroupname: [
210
+ {label: '年份', value: 'year'},
211
+ {label: '月份', value: 'month'},
212
+ {label: '周', value: 'week'},
213
+ {label: '天', value: 'day'}
214
+ ],
215
+ orgid:[this.$login.f.orgid],
216
+ criteriaShow:false,
217
+ orgCondtionStr: '(' + this.$login.f.orgid + ')',
218
+ reportStr: null,
219
+ show: false,
220
+ outlets: [],
221
+ operator: [],
222
+ filename: '',
223
+ echarts: false,
224
+ searchshow: false,
225
+ startDate: '',
226
+ endDate: '',
227
+ isActiveTotalForm: false,
228
+ condition: '1=1',
229
+
230
+ signtype:['type1'],
231
+ getfield:{"f_orgname":"组织机构","f_meternumber":"表钢号",
232
+ "f_userinfo_code":"客户编号",
233
+ "f_user_name":"客户名称","f_user_type":"客户类型",
234
+ "f_gasproperties":"用气性质",
235
+ "f_address":"地址","f_install_date":"安装时间",
236
+ "type1":"待处理数量",
237
+ "type2":"已处理数量",
238
+ "mindate":"最早上报时间",
239
+ "maxdate":"最晚上报时间"
240
+ },
241
+ getSignType:[
242
+ {label: '频繁磁干扰', value: 'type1'},
243
+ {label: '间断性失联', value: 'type2'},
244
+ {label: '间断性指令失败', value: 'type3'},
245
+ {label: '锂电低电故障', value: 'type4'},
246
+ {label: '频繁报拆表', value: 'type5'},
247
+ {label: '未装电池', value: 'type6'},
248
+ {label: '拆电池了', value: 'type7'},
249
+ {label: '电池低压', value: 'type8'},
250
+ {label: '锂电低电', value: 'type9'},
251
+ {label: '连续失联', value: 'type10'},
252
+ {label: '频繁报过流保护关阀', value: 'type11'},
253
+ {label: '负值故障', value: 'type12'},
254
+ {label: '其他', value: 'type13'}
255
+ ],
256
+ obj: {
257
+ userid: this.$login.f.id,
258
+ source: `tool.getFullTree(this.getRights().where(row.getType() == $organization$))`,
259
+ res: this.$login.f.f_fengongsi,
260
+ resids: this.$login.f.f_orgids
261
+ }
262
+ }
263
+ },
264
+ ready() {
265
+ this.$refs.paged.$refs.cri.model.start_f_parameter_date = Util.toStandardDateString() + ' 00:00:00'
266
+ this.$refs.paged.$refs.cri.model.end_f_parameter_date = Util.toStandardDateString() + ' 23:59:59'
267
+ this.$refs.paged.$refs.cri.search()
268
+ },
269
+ methods: {
270
+ hidden() {
271
+ this.criteriaShow = !this.criteriaShow
272
+ },
273
+ // 查询开关
274
+ seachchange() {
275
+ this.searchshow = !this.searchshow
276
+ },
277
+ // SaveAsFile(str) {
278
+ // this.$showMessage('您是否需要导出本页数据?', ['confirm', 'cancel']).then((res) => {
279
+ // if (res === 'confirm') {
280
+ // let style = '<style>' +
281
+ // 'td {border-width: 1px;padding: 2px;border-style: solid; border-color:black; border-collapse:collapse;} .tdright{text-align: right;} .tdcenter{text-align: center;}</style>';
282
+ // let strHtml = style + document.getElementById(str).innerHTML;
283
+ // console.log(strHtml);
284
+ // let LODOP = getLodop();
285
+ // LODOP.PRINT_INIT('');
286
+ // LODOP.ADD_PRINT_TABLE(5, 5, '99%', '100%', strHtml);
287
+ // LODOP.SAVE_TO_FILE('标记分析.xls')
288
+ // }
289
+ // })
290
+ // },
291
+ clearmsg() {
292
+ this.$refs.paged.$refs.cri.model = {}
293
+ },
294
+
295
+ search(args) {
296
+ this.startDate = this.$refs.paged.$refs.cri.model.start_f_parameter_date
297
+ this.endDate = this.$refs.paged.$refs.cri.model.end_f_parameter_date
298
+ if (this.orgCondtionStr)
299
+ this.condition = this.$refs.paged.$refs.cri.condition + `and u.f_orgid in ${this.orgCondtionStr}`
300
+ else
301
+ this.condition = this.$refs.paged.$refs.cri.condition
302
+ console.log("~~~~~~~~~~~~~~~~~~")
303
+ console.log(this.condition)
304
+ args.condition = this.condition
305
+ this.model.search(args.condition, args.model)
306
+ },
307
+ // 显示柱状图
308
+ showEcharts() {
309
+ this.echarts = true
310
+ this.isActiveTotalForm=false
311
+ },
312
+ // 不显示柱状图
313
+ notShowEcharts() {
314
+ this.echarts = false
315
+ this.isActiveTotalForm=false
316
+ },
317
+ // 显示汇总
318
+ showEform() {
319
+ this.echarts = false
320
+ this.isActiveTotalForm=true
321
+ },
322
+ // 不显示汇总
323
+ notShowEform() {
324
+ this.echarts = false
325
+ this.isActiveTotalForm=false
326
+ },
327
+ close() {
328
+ this.show = false
329
+ },
330
+ getRes(obj) {
331
+ this.orgCondtionStr = plugins.convertToIn(obj)
332
+ }
333
+ },
334
+ watch: {
335
+ 'data'(val) {
336
+ if (val.f_files_path) {
337
+ this.getFileContent(val.f_files_path)
338
+ } else {
339
+ this.reportStr = null
340
+ }
341
+ }
342
+ },
343
+ computed: {
344
+ getCondition() {
345
+ var con=""
346
+ if (this.orgCondtionStr) {
347
+ con= `${this.$refs.paged.$refs.cri.condition} and u.f_orgid in ${this.orgCondtionStr}`
348
+ }
349
+ else{
350
+ con= `${this.$refs.paged.$refs.cri.condition} `
351
+ }
352
+ return {
353
+ condition: con ,
354
+ startDate:`${this.$refs.paged.$refs.cri.model.startDate}`,
355
+ endDate:`${this.$refs.paged.$refs.cri.model.endDate}`
356
+ }
357
+
358
+ },
359
+ usertypes() {
360
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
361
+ },
362
+ valveStatus() {
363
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('气表类型')]
364
+ },
365
+ Gasproperties() {
366
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')]
367
+ },
368
+ Getuserstyle() {
369
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气类型')]
370
+ }
371
+ }
372
+ }
373
+ </script>
374
+ <style>
375
+ .mystyle {
376
+ float: right;
377
+ padding-right: 10%;
378
+ }
379
+
380
+ .datapanel {
381
+ color: #333;
382
+ background-color: white;
383
+ box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
384
+ padding: 10px 10px 10px 10px;
385
+ border-radius: 15px;
386
+ }
387
+ </style>