manage-client 3.3.217 → 3.3.218

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 (193) hide show
  1. package/.gradle/7.4/checksums/checksums.lock +0 -0
  2. package/.gradle/7.4/dependencies-accessors/dependencies-accessors.lock +0 -0
  3. package/.gradle/7.4/dependencies-accessors/gc.properties +0 -0
  4. package/.gradle/7.4/executionHistory/executionHistory.lock +0 -0
  5. package/.gradle/7.4/fileChanges/last-build.bin +0 -0
  6. package/.gradle/7.4/fileHashes/fileHashes.lock +0 -0
  7. package/.gradle/7.4/gc.properties +0 -0
  8. package/.npmignore +10 -0
  9. package/build/.npmignore +1 -0
  10. package/build/dev-server.js +190 -190
  11. package/gradle/wrapper/gradle-wrapper.properties +5 -5
  12. package/gradlew +234 -234
  13. package/gradlew.bat +89 -89
  14. package/hs_err_pid13052.log +206 -206
  15. package/package-lock.json +10123 -0
  16. package/package.json +111 -111
  17. package/src/components/SellReport/BusinessClassify.vue +292 -292
  18. package/src/components/SellReport/GasMoneyPublicConReport.vue +231 -231
  19. package/src/components/SellReport/ManageSellType.vue +267 -267
  20. package/src/components/SellReport/yangchun/YcBusSummaryes.vue +229 -229
  21. package/src/components/handReport/WebGastypeMonthReport.vue +190 -190
  22. package/src/components/sale/businessquery/AreaChargeQuery.vue +384 -384
  23. package/src/components/sale/businessquery/AreaGeneralQuery.vue +637 -637
  24. package/src/components/sale/businessquery/ArrearsQuery.vue +983 -983
  25. package/src/components/sale/businessquery/BalanceTable.vue +482 -482
  26. package/src/components/sale/businessquery/BusinessManage.vue +212 -212
  27. package/src/components/sale/businessquery/CancellationQuery.vue +428 -428
  28. package/src/components/sale/businessquery/CardHandplanQuery.vue +546 -546
  29. package/src/components/sale/businessquery/ChangeMeterQuery.vue +699 -699
  30. package/src/components/sale/businessquery/ChargeQuery.vue +1435 -1435
  31. package/src/components/sale/businessquery/CollectManage.vue +6 -6
  32. package/src/components/sale/businessquery/CommunityPaymen.vue +307 -307
  33. package/src/components/sale/businessquery/DisableQuery.vue +523 -523
  34. package/src/components/sale/businessquery/EnableQuery.vue +462 -462
  35. package/src/components/sale/businessquery/FMYGasQuery.vue +813 -813
  36. package/src/components/sale/businessquery/FillCardQuery.vue +573 -573
  37. package/src/components/sale/businessquery/FillGasQuery.vue +593 -593
  38. package/src/components/sale/businessquery/GroupChargeQuery.vue +492 -492
  39. package/src/components/sale/businessquery/HandBookQuery.vue +692 -692
  40. package/src/components/sale/businessquery/HandBookTwoQuery.vue +704 -704
  41. package/src/components/sale/businessquery/HandGasPropertiesQuery.vue +671 -671
  42. package/src/components/sale/businessquery/HandPeopleQuery.vue +719 -719
  43. package/src/components/sale/businessquery/HandRateQuery.vue +524 -524
  44. package/src/components/sale/businessquery/Handgasquery.vue +477 -477
  45. package/src/components/sale/businessquery/HandplanQuery.vue +1376 -1376
  46. package/src/components/sale/businessquery/MonthGasQuery.vue +482 -482
  47. package/src/components/sale/businessquery/NoBusinessQuery.vue +778 -778
  48. package/src/components/sale/businessquery/PlotSummaryQuery.vue +499 -499
  49. package/src/components/sale/businessquery/ProceedsOper.vue +415 -415
  50. package/src/components/sale/businessquery/ResidentialCardQuery.vue +377 -377
  51. package/src/components/sale/businessquery/ResidentialQuery.vue +415 -415
  52. package/src/components/sale/businessquery/SellOrgnameQuery.vue +680 -680
  53. package/src/components/sale/businessquery/SellPeopleQuery.vue +752 -752
  54. package/src/components/sale/businessquery/SellingHand.vue +421 -421
  55. package/src/components/sale/businessquery/TransferQuery.vue +502 -502
  56. package/src/components/sale/businessquery/UnhandBusiness.vue +328 -328
  57. package/src/components/sale/businessquery/UserSellHeadDetail.vue +579 -579
  58. package/src/components/sale/businessquery/WebHandplanQuery.vue +987 -987
  59. package/src/components/sale/businessquery/WebMeterMonthUserGasQuery.vue +471 -471
  60. package/src/components/sale/businessquery/YingShouMingXi.vue +524 -524
  61. package/src/components/sale/businessquery/YonghuJieyu.vue +358 -358
  62. package/src/components/sale/businessquery/usergas.vue +315 -315
  63. package/src/components/sale/config/exportConfig.js +2761 -2761
  64. package/src/components/sale/config/tableConfig.js +59 -59
  65. package/src/components/sale/filesquery/FireQuery.vue +539 -539
  66. package/src/components/sale/filesquery/RecordInfoQuery.vue +1443 -1443
  67. package/src/components/sale/filesquery/UserQuery.vue +977 -977
  68. package/src/components/webmeter/DrillData/GetNoMetereadData.vue +423 -423
  69. package/src/components/webmeter/DrillData/LostContactAnalysisList.vue +695 -695
  70. package/src/components/webmeter/DrillData/UserLostContactAnalysis.vue +646 -646
  71. package/src/components/webmeter/WebmeterQuery.vue +77 -77
  72. package/src/components/webmeter/gasAnalysis/WebmeterSettlementAnalysis.vue +456 -456
  73. package/src/components/webmeter/gasStatistics/GasStatistics.vue +526 -526
  74. package/src/components/webmeter/gasStatistics/NewGasStatistics.vue +542 -542
  75. package/src/components/webmeter/instruction/NewQueryInstruct.vue +606 -606
  76. package/src/components/webmeter/newwebmeter/NewException/MeterExceptionList.vue +552 -552
  77. package/src/components/webmeter/newwebmeter/WebhandMonthGas.vue +819 -819
  78. package/src/components/webmeter/recharge/RechargeList.vue +371 -371
  79. package/src/components/webmeter/report/ReportList.vue +453 -453
  80. package/src/components/webmeter/reportdata/ReportDataQuery.vue +339 -339
  81. package/src/filiale/WEINAN/InspectListGas.vue +616 -616
  82. package/src/filiale/ancheng/businessquery/FMYGasQuery.vue +12 -10
  83. package/src/filiale/ancheng/exportConfig.js +120 -120
  84. package/src/filiale/bayan/ChargeQuery.vue +1436 -1436
  85. package/src/filiale/bayan/PrintTableManage.vue +242 -242
  86. package/src/filiale/bayan/config/DefaultPrint.js +6 -6
  87. package/src/filiale/bayan/config/exportConfig.js +2642 -2642
  88. package/src/filiale/bayan/config/tableConfig.js +59 -59
  89. package/src/filiale/bayan/sale.js +8 -8
  90. package/src/filiale/bayan/webmeter/GetNoMetereadData.vue +425 -425
  91. package/src/filiale/bayan/webmeter/LostContactAnalysisList.vue +719 -719
  92. package/src/filiale/bayan/webmeter/MeterExceptionList.vue +591 -591
  93. package/src/filiale/bayan/webmeter/NewGasStatistics.vue +665 -665
  94. package/src/filiale/bayan/webmeter/NewQueryInstruct.vue +650 -650
  95. package/src/filiale/bayan/webmeter/NewWebmeterSettlementAnalysis.vue +464 -464
  96. package/src/filiale/bayan/webmeter/RechargeList.vue +430 -430
  97. package/src/filiale/bayan/webmeter/ReportDataQuery.vue +343 -343
  98. package/src/filiale/bayan/webmeter/ReportList.vue +555 -555
  99. package/src/filiale/bayan/webmeter/UserLostContactAnalysis.vue +674 -674
  100. package/src/filiale/bayan/webmeterManage.js +26 -26
  101. package/src/filiale/dingcheng/DefaultPrint.js +6 -6
  102. package/src/filiale/dingcheng/businessquery/ChangeMeterQuery.vue +798 -798
  103. package/src/filiale/dingcheng/exportConfig.js +2765 -2765
  104. package/src/filiale/dingcheng/sale.js +9 -9
  105. package/src/filiale/hantou/ChangeMeterQuery.vue +699 -699
  106. package/src/filiale/hantou/config/DefaultPrint.js +6 -6
  107. package/src/filiale/hantou/config/exportConfig.js +2667 -2667
  108. package/src/filiale/hantou/config/tableConfig.js +54 -54
  109. package/src/filiale/hantou/sale.js +8 -8
  110. package/src/filiale/jingyang/ChargeQuery.vue +1464 -1464
  111. package/src/filiale/jingyang/RechargeList.vue +346 -346
  112. package/src/filiale/jingyang/config/DefaultPrint.js +6 -6
  113. package/src/filiale/jingyang/config/exportConfig.js +2776 -2776
  114. package/src/filiale/jingyang/config/tableConfig.js +58 -58
  115. package/src/filiale/jingyang/sale.js +8 -8
  116. package/src/filiale/kelai/AreaChargeQuery.vue +398 -398
  117. package/src/filiale/kelai/GasStatistics.vue +561 -561
  118. package/src/filiale/kelai/NewAccountQuery.vue +417 -417
  119. package/src/filiale/kelai/NewGasStatistics.vue +542 -542
  120. package/src/filiale/kelai/feimin_style_kl.vue +400 -400
  121. package/src/filiale/kelai/reportManage.js +13 -13
  122. package/src/filiale/kelai/sale.js +17 -17
  123. package/src/filiale/liaoyuan/HandplanQuery.vue +1289 -1289
  124. package/src/filiale/lixianV3/RecordInfoQuery.vue +1474 -1474
  125. package/src/filiale/macheng/ArrearsQuery.vue +831 -831
  126. package/src/filiale/macheng/RecordInfoQuery.vue +1023 -1023
  127. package/src/filiale/macheng/config/exportConfig.js +79 -79
  128. package/src/filiale/meihekou/AreaGeneralQuery.vue +206 -206
  129. package/src/filiale/meihekou/CardHandplanQuery.vue +664 -664
  130. package/src/filiale/meihekou/ChargeQuery.vue +1274 -1274
  131. package/src/filiale/meihekou/CollectManage.vue +152 -152
  132. package/src/filiale/meihekou/HandplanQuery.vue +1248 -1248
  133. package/src/filiale/meihekou/OtherChargeQuery.vue +618 -618
  134. package/src/filiale/meihekou/UserSellHeadDetail.vue +516 -516
  135. package/src/filiale/meihekou/YingShouMingXi.vue +556 -556
  136. package/src/filiale/meihekou/config/exportConfig.js +829 -829
  137. package/src/filiale/meihekou/sale.js +39 -39
  138. package/src/filiale/ningjin/MeterExceptionList.vue +616 -616
  139. package/src/filiale/ningjin/UserLostContactAnalysis.vue +623 -623
  140. package/src/filiale/qianneng/WebmeterQuery.vue +70 -70
  141. package/src/filiale/qianneng/exportConfig.js +232 -232
  142. package/src/filiale/qingtongxia/ChargeQuery.vue +1209 -1209
  143. package/src/filiale/qingtongxia/config/exportConfig.js +712 -712
  144. package/src/filiale/rizhao/BusinessManage.vue +212 -212
  145. package/src/filiale/rizhao/sale.js +13 -13
  146. package/src/filiale/shangluo/HandplanQuery.vue +1376 -1376
  147. package/src/filiale/shangluo/sale.js +17 -17
  148. package/src/filiale/shangluo/webmeter/PriceInstructList.vue +303 -303
  149. package/src/filiale/shangluo/webmeter/UserInstructList.vue +304 -304
  150. package/src/filiale/shangluo/webmeter/WebmeterSettlementAnalysis.vue +432 -432
  151. package/src/filiale/shanxian/EchartsBox.vue +134 -134
  152. package/src/filiale/shaoguan/errorHandplanQuery.vue +386 -386
  153. package/src/filiale/shexian/ChangeMeterQuery.vue +797 -797
  154. package/src/filiale/taizhoukesi/ChangeMeterQuery.vue +683 -683
  155. package/src/filiale/taizhoukesi/NewGasStatistics.vue +539 -539
  156. package/src/filiale/taizhoukesi/config/exportConfig.js +2712 -2712
  157. package/src/filiale/taizhoukesi/sale.js +11 -11
  158. package/src/filiale/tongchuan/GasInspection.vue +716 -716
  159. package/src/filiale/tongchuan/InspectListGas.vue +700 -700
  160. package/src/filiale/tongchuan/MeterQuery.vue +1002 -1002
  161. package/src/filiale/tongchuan/ResSelectGroupNew.vue +188 -188
  162. package/src/filiale/tongchuan/config/exportConfig.js +858 -858
  163. package/src/filiale/wenxi/ChangeMeterQuery.vue +721 -721
  164. package/src/filiale/wenxi/ManageUserTypeSell.vue +173 -173
  165. package/src/filiale/wenxi/config/exportConfig.js +995 -995
  166. package/src/filiale/xinjiangdexin/ChargeQuery.vue +1435 -1435
  167. package/src/filiale/xinjiangdexin/config/exportConfig.js +2770 -2770
  168. package/src/filiale/xinjiangdexin/sale.js +7 -7
  169. package/src/filiale/yangchun/ChangeMeterQuery.vue +716 -716
  170. package/src/filiale/yangchun/ManageBusSummaryNew.vue +239 -239
  171. package/src/filiale/yangchun/OtherChargeDetailQuery.vue +74 -74
  172. package/src/filiale/yangchun/OtherChargeQuery.vue +755 -755
  173. package/src/filiale/yangchun/RecordInfoQuery.vue +1477 -1477
  174. package/src/filiale/yangchun/UserQuery.vue +980 -980
  175. package/src/filiale/yangchun/config/DefaultPrint.js +6 -6
  176. package/src/filiale/yangchun/config/exportConfig.js +1229 -1229
  177. package/src/filiale/yangchun/config/tableConfig.js +58 -58
  178. package/src/filiale/yangchun/reportManage.js +6 -6
  179. package/src/filiale/yangchun/sale.js +20 -20
  180. package/src/filiale/yangchun/webmeterManage.js +5 -5
  181. package/src/filiale/yuncheng/ChangeMeterQuery.vue +743 -743
  182. package/src/filiale/yuncheng/DeviceQuery.vue +611 -611
  183. package/src/filiale/yuncheng/LostContactAnalysisList.vue +700 -700
  184. package/src/filiale/yuncheng/MeterQuery.vue +995 -995
  185. package/src/filiale/yuncheng/config/exportConfig.js +2674 -2674
  186. package/src/filiale/yuncheng/sale.js +23 -23
  187. package/src/filiale/zhongyi/GasStatistics.vue +522 -522
  188. package/src/filiale/zhongyi/exportConfig.js +2554 -2554
  189. package/src/main.js +68 -68
  190. package/src/plugins/LodopFuncs.js +159 -159
  191. package/src/reportManage.js +773 -773
  192. package/src/saleManage.js +689 -689
  193. package/src/webmeterManage.js +130 -130
@@ -1,552 +1,552 @@
1
- <template>
2
- <div class="flex-row" v-if="!showdetail">
3
- <div id='app1' class="basic-main" v-show="(!echarts)&&(!isActiveTotalForm)">
4
- <criteria-paged :model="model" :pager='true' v-ref:paged>
5
- <criteria partial='criteria' @condition-changed='$parent.search' v-ref:cri>
6
- <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
7
- <div class="row">
8
- <div class="col-sm-2 form-group">
9
- <label class="font_normal_body">客户编号</label>
10
- <input style="width:60%" type="text" class="input_search"
11
- v-model="model.f_userinfo_code"
12
- placeholder='客户编号'
13
- @keyup.enter="search"
14
- condition="f_userinfo_code like '%{}%'"
15
- v-el:xq v-next-el='f_userinfo_code'
16
- v-el:username>
17
- </div>
18
- <div class="col-sm-2 form-group">
19
- <label class="font_normal_body">客户名称</label>
20
- <input style="width:60%" type="text" class="input_search"
21
- v-model="model.username"
22
- @keyup.enter="search"
23
- placeholder='客户名称'
24
- condition="username like '%{}%'"
25
- v-el:xq v-next-el='username'
26
- v-el:username>
27
- </div>
28
- <div class="col-sm-2 form-group">
29
- <label class="font_normal_body">客户地址</label>
30
- <input style="width:60%" type="text" class="input_search"
31
- v-model="model.address" placeholder='地址'
32
- condition="address like '%{}%'"
33
- @keyup.enter="search"
34
- v-el:xq v-next-el='address' v-el:area
35
- >
36
- </div>
37
- <div class="col-sm-2 form-group">
38
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;表号&nbsp;&nbsp;&nbsp;</label>
39
- <input style="width:60%" type="text" class="input_search"
40
- v-model="model.f_meternumber" placeholder='表号'
41
- @keyup.enter="search"
42
- condition="f_meternumber like '%{}%'"
43
- v-next-el='meternumber' v-el:meternumber>
44
- </div>
45
- <div style="float:right">
46
- <button class="button_search button_spacing" @click="search()">查询</button>
47
- <button class="button_clear button_spacing" @click="$parent.$parent.clearmsg">清空</button>
48
- <export-excel :data="$parent.$parent.getCondition" class="button_export button_spacing"
49
- :field="$parent.$parent.getfield"
50
- :header="$parent.$parent.other"
51
- sqlurl="api/af-revenue/logic/openapi/exportfile" sql-name="getExceptionList" template-name='异常查询'
52
- :choose-col="true"></export-excel>
53
- <!--<button class="button_export button_spacing" style="width: max-content" @click="$parent.$parent.showTotalForm()">显示汇总</button>-->
54
- <!-- <button class="button_search button_spacing" @click="$parent.$parent.showEcharts()">显示图表</button>-->
55
- <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>
56
- </div>
57
- </div>
58
- <div class="row" v-show="$parent.$parent.criteriaShow">
59
- <div class="col-sm-2 form-group">
60
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;公司&nbsp;&nbsp;&nbsp;</label>
61
- <right-tree @re-res="$parent.$parent.getorg"
62
- :initresid='$parent.$parent.org'></right-tree>
63
- </div>
64
- <div class="col-sm-2 form-group">
65
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;余额&nbsp;&nbsp;&nbsp;</label>
66
- <input type="number" style="width:30%" class="input_search" title="大于等于" v-model="model.f_balance_amount_small"
67
- condition="f_balance_amount >= '{}' " placeholder="大于等于">
68
- <input type="number" style="width:30%" class="input_search" title="小于等于" v-model="model.f_balance_amount_big"
69
- condition="f_balance_amount <= '{}' " placeholder="小于等于">
70
- </div>
71
- <div class="col-sm-2 form-group">
72
- <label class="font_normal_body">气表品牌</label>
73
- <v-select :value.sync="model.f_meter_brand"
74
- v-model="model.f_meter_brand"
75
- :options='$parent.$parent.meterbrands' placeholder='请选择'
76
- condition="f_meter_brand = '{}'"
77
- close-on-select></v-select>
78
- </div>
79
- <div class="col-sm-2 form-group">
80
- <label class="font_normal_body">上报区间</label>
81
- <datepicker style="width:60%" id="startdate" placeholder="开始时间"
82
- v-model="model.startDate"
83
- :value.sync="model.startDate"
84
- :disabled-days-of-Week="[]"
85
- :format="'yyyy-MM-dd HH:mm:ss'"
86
- :show-reset-button="reset">
87
- </datepicker>
88
- </div>
89
- <div class="col-sm-2 form-group">
90
- <label class="font_normal_body" style="word-break:keep-all;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;</label>
91
- <datepicker style="width:60%" id="enddate" placeholder="结束日期"
92
- v-model="model.endDate"
93
- :value.sync="model.endDate"
94
- :format="'yyyy-MM-dd HH:mm:ss'"
95
- :disabled-days-of-Week="[]"
96
- :show-reset-button="reset">
97
- </datepicker>
98
- </div>
99
- <div class="col-sm-2 form-group">
100
- <label class="font_normal_body">未抄表天数</label>
101
- <input type="number" style="width:30%" class="input_search" title="大于等于" v-model="model.f_day_small"
102
- condition="DateDiff(dd,f_hand_date,getdate()) >= {} " placeholder="大于等于">
103
- <input type="number" style="width:30%" class="input_search" title="小于等于" v-model="model.f_day_big"
104
- condition="DateDiff(dd,f_hand_date,getdate()) <= {} " placeholder="小于等于">
105
- </div>
106
- <div class="col-sm-2 form-group">
107
- <label class="font_normal_body">电池电量</label>
108
- <input type="number" style="width:30%" class="input_search" title="大于等于" v-model="model.f_electricity_small"
109
- condition="f_electricity >= '{}' " placeholder="大于等于">
110
- <input type="number" style="width:30%" class="input_search" title="小于等于" v-model="model.f_electricity_big"
111
- condition="f_electricity <= '{}' " placeholder="小于等于">
112
- </div>
113
- <div class="col-sm-2 form-group">
114
- <label class="font_normal_body">电池电压</label>
115
- <input type="number" style="width:30%" class="input_search" title="大于等于" v-model="model.f_batterylevel_small"
116
- condition="f_batterylevel >= '{}' " placeholder="大于等于">
117
- <input type="number" style="width:30%" class="input_search" title="小于等于" v-model="model.f_batterylevel_big"
118
- condition="f_batterylevel <= '{}' " placeholder="小于等于">
119
- </div>
120
- <div class="col-sm-2 form-group">
121
- <label class="font_normal_body">异常级别</label>
122
- <v-select style="width:60%"
123
- v-model="model.f_error_level"
124
- placeholder='异常级别'
125
- @change="$parent.$parent.getErrorInfo('f_error_type')"
126
- :value.sync="model.f_error_level"
127
- :options='$parent.$parent.GetErrorLevel'
128
- condition="f_error_level = '{}'"
129
- close-on-select>
130
- </v-select>
131
- </div>
132
- <div class="col-sm-2 form-group">
133
- <label class="font_normal_body">异常类型</label>
134
- <v-select style="width:60%"
135
- v-model="model.f_error_type"
136
- placeholder='异常类型'
137
- :value.sync="model.f_error_type"
138
- :options='$parent.$parent.GetErrorType'
139
- condition="f_error_type = '{}'"
140
- close-on-select>
141
- </v-select>
142
- </div>
143
- </div>
144
- </div>
145
- </criteria>
146
- <data-grid id="lostuserlist" :model="model" class="list_area table_sy" partial='list' v-ref:grid>
147
- <template partial='head'>
148
- <tr>
149
- <th style="text-align:center">
150
- <nobr>序号</nobr>
151
- </th>
152
- <th style="text-align:center">
153
- <nobr>客户编号</nobr>
154
- </th>
155
- <th style="text-align:center">
156
- <nobr>客户名称</nobr>
157
- </th>
158
- <th style="text-align:center">
159
- <nobr>小区</nobr>
160
- </th>
161
- <th style="text-align:center">
162
- <nobr>客户地址</nobr>
163
- </th>
164
- <th style="text-align:center">
165
- <nobr>账户余额</nobr>
166
- </th>
167
- <th style="text-align:center">
168
- <nobr>联系电话</nobr>
169
- </th>
170
- <th style="text-align:center">
171
- <nobr>表号</nobr>
172
- </th>
173
- <th style="text-align:center">
174
- <nobr>气表品牌</nobr>
175
- </th>
176
- <th style="text-align:center">
177
- <nobr>抄表日期</nobr>
178
- </th>
179
- <th style="text-align:center">
180
- <nobr>最后一次通讯时间</nobr>
181
- </th>
182
- <th style="text-align:center">
183
- <nobr>电池电量</nobr>
184
- </th>
185
- <th style="text-align:center">
186
- <nobr>电池电压</nobr>
187
- </th>
188
- <th style="text-align:center">
189
- <nobr>信号强度</nobr>
190
- </th>
191
- <th style="text-align:center">
192
- <nobr>磁干扰异常</nobr>
193
- </th>
194
- <th style="text-align:center">
195
- <nobr>阀门状态</nobr>
196
- </th>
197
- <th style="text-align:center">
198
- <nobr>异常类型</nobr>
199
- </th>
200
- <th style="text-align:center">
201
- <nobr>异常级别</nobr>
202
- </th>
203
- <th style="text-align:center">
204
- <nobr>分公司</nobr>
205
- </th>
206
-
207
- </tr>
208
-
209
- </template>
210
- <template partial='body'>
211
- <td style="text-align:center">
212
- <nobr>{{$index+1}}</nobr>
213
- </td>
214
- <td style="text-align: center;"><nobr>
215
- <span @click="$parent.$parent.$parent.showmsg(row)"><a>{{row.f_userinfo_code}}</a></span>
216
- </nobr> </td>
217
- <td style="text-align:center"><nobr>{{row.username}}</nobr></td>
218
- <td style="text-align:center"><nobr>{{row.f_residential_area}}</nobr></td>
219
- <td>
220
- <nobr>{{row.address}}</nobr>
221
- </td>
222
- <td style="text-align:center">{{row.f_balance_amount}}</td>
223
- <td style="text-align:center">{{row.f_user_phone}}</td>
224
- <td style="text-align:center"><nobr>{{row.f_meternumber}}</nobr></td>
225
- <td style="text-align:center">
226
- <nobr>{{row.f_meter_brand}}</nobr>
227
- </td>
228
- <td style="text-align:center">
229
- <nobr>{{row.f_hand_date}}</nobr>
230
- </td>
231
- <td style="text-align:center">
232
- <nobr>{{row.f_insert_date}}</nobr>
233
- </td>
234
- <td style="text-align:center">
235
- <nobr>{{row.f_electricity}}</nobr>
236
- </td>
237
- <td style="text-align:center">
238
- <nobr>{{row.f_batterylevel}}</nobr>
239
- </td>
240
- <td style="text-align:center">
241
- <nobr>{{row.f_signal}}</nobr>
242
- </td>
243
- <td style="text-align:center">
244
- <nobr>{{row.f_magneticInterference == 1 ? '异常' : '正常'}}</nobr>
245
- </td>
246
- <td style="text-align:center">
247
- <nobr>{{row.f_valvestate == 0 ? '开阀' : '关阀'}}</nobr>
248
- </td>
249
- <td style="text-align:center">
250
- <nobr>{{row.f_error_type}}</nobr>
251
- </td>
252
- <td style="text-align:center">
253
- <nobr>{{row.f_error_level}}</nobr>
254
- </td>
255
- <td style="text-align:center">
256
- <nobr>{{row.f_orgname}}</nobr>
257
- </td>
258
- </template>
259
- </data-grid>
260
- </criteria-paged>
261
- </div>
262
- <!--<div style="height: 40px;width: 100%;" v-show="echarts">
263
- <div style="display: inline-block;width: 20%;">
264
- <button class="button_search button_spacing" v-show="echarts" @click="notShowEcharts()">隐藏图表</button>
265
- <button class="button_search button_spacing" v-show="isActiveTotalForm" @click="notShowTotalForm()">隐藏汇总</button>
266
- </div>
267
- &lt;!&ndash;图显示模板&ndash;&gt;
268
- <div class="mystyle" style="display: inline-block;" >
269
- <label class="font_normal_body">图表统计项</label>
270
- <v-select style="width:60%" id="groupname" v-model="groupname"
271
- placeholder='分组项'
272
- value-single="true"
273
- :value.sync="groupname"
274
- :options='getgroupname'
275
- close-on-select></v-select>
276
- </div>
277
- </div>
278
- <div v-show="echarts" style="width: 100%;height: 90%;">
279
- <new-exception-echarts :condition="condition" :startdate="startDate" :groupname="groupname[0]"
280
- :enddate="endDate" :echarts="echarts"></new-exception-echarts>
281
- </div>
282
- <div v-show="isActiveTotalForm" style="width: 100%;height: 90%;">
283
- <new-exception-eform-total :condition="condition" :startdate="startDate"
284
- :enddate="endDate"></new-exception-eform-total>
285
- </div>-->
286
- </div>
287
- <div class="flex" v-if="showdetail">
288
- <user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage-new>
289
- </div>
290
- </template>
291
-
292
- <script>
293
- import {HttpResetClass, PagedList} from 'vue-client'
294
- import * as Util from '../../../../Util'
295
- import getLodop from '../../../../plugins/LodopFuncs'
296
- import plugin from 'system-clients/src/plugins/GetLoginInfoService'
297
-
298
- let readySomething = async function (self) {
299
- await self.$MagLoadParams.loadParam()
300
- self.initParams()
301
- self.sumsmodel = self.$refs.paged.$refs.grid.model.sums;
302
- }
303
- export default {
304
- title: '异常查看',
305
- props: ['data'],
306
- data() {
307
- return {
308
- model: new PagedList('/api/af-revenue/sql/getExceptionList',20,{startDate: 'this.model.startDate', endDate: 'this.model.endDate'}),
309
- // model: new PagedList('/api/af-revenue/sql/getExceptionList',20,{startDate: 'this.model.startDate', endDate: 'this.model.endDate'}),
310
- reportStr: null,
311
- show: false,
312
- startDate: '',
313
- endDate: '',
314
- meterbrands: [],
315
- other: [],
316
- sumsmodel: {},
317
- f_error_type:'',
318
- groupname: ['year'],
319
- getgroupname: [
320
- {label: '年份', value: 'year'},
321
- {label: '月份', value: 'month'},
322
- {label: '周', value: 'week'},
323
- {label: '日', value: 'day'}
324
- ],
325
- getfield:{
326
- "f_userinfo_code":"客户编号", "f_user_name":"客户名称","f_residential_area":"小区", "address":"客户地址","f_balance_amount":"账户余额","f_user_phone":"联系电话",
327
- "f_meternumber":"表号","f_meter_brand":"气表品牌","f_hand_date":"抄表日期","f_insert_date":"最后一次通讯时间","f_electricity":"电池电量","f_batterylevel":"电池电压",
328
- "f_signal":"信号强度","f_magneticInterference":"磁干扰异常","f_valvestate":"阀门状态","f_error_type":"异常类型","f_error_level":"异常级别","f_orgname":"分公司"
329
- },
330
- outlets: [],
331
- operator: [],
332
- showdetail:false,
333
- rowdata:{},
334
- filename: '',
335
- criteriaShow: false,
336
- echarts: false,
337
- searchshow: false,
338
- isActiveTotalForm: false,
339
- GetErrorLevel:[],
340
- GetErrorType:[],
341
- condition: '1=1 and f_error_type IS NOT NULL and f_error_level IS NOT NULL',
342
- org:[this.$login.f.orgid],
343
- orgCondtionStr: ` and f_orgid = ${this.$login.f.orgid} `
344
- }
345
- },
346
- ready() {
347
- readySomething(this)
348
- this.$refs.paged.$refs.cri.model.startDate = Util.toStandardDateString() + ' 00:00:00'
349
- this.$refs.paged.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
350
- // console.log("type:"+this.$refs.paged.$refs.cri.model.f_error_type)
351
- this.getErrorInfo('f_error_level')
352
- // console.log("type:"+this.$refs.paged.$refs.cri.model.f_error_type)
353
- },
354
- methods: {
355
- showmsg(obj){
356
- this.rowdata=obj
357
- this.showdetail=true
358
- },
359
- cancel() {
360
- this.showdetail = false
361
- },
362
- getorg(obj) {
363
- if (obj.resids.length>0) {
364
- this.orgCondtionStr = " and f_orgid in " + plugin.convertToIn(obj.resids) + " and f_error_type IS NOT NULL and f_error_level IS NOT NULL "
365
- }else
366
- {
367
- this.orgCondtionStr = " and f_orgid = " + this.$login.f.orgid + " and f_error_type IS NOT NULL and f_error_level IS NOT NULL "
368
- }
369
- },
370
- initParams () {
371
- let arr = []
372
- this.$MagGetSaleParam.getGasbrand().forEach((item) => {
373
- let temp = {}
374
- if(item.value.f_meter_type==='物联网表'){
375
- temp.label = item.label
376
- temp.value = item.value.f_meter_brand
377
- arr.push(temp )
378
- }
379
-
380
- })
381
- this.meterbrands = [{label: '全部', value: ''}, ...arr]
382
- },
383
- hidden(){
384
- this.criteriaShow = !this.criteriaShow
385
- },
386
- clickshow() {
387
- this.searchshow = !this.searchshow
388
- },
389
- getErrorInfo(items){
390
- let self = this
391
- let f_error_level=''
392
- if (items!='f_error_level') {
393
- if(this.$refs.paged.$refs.cri.model.f_error_level){
394
- f_error_level=this.$refs.paged.$refs.cri.model.f_error_level[0]
395
- }
396
- }
397
- let load = new HttpResetClass()
398
- load.load('POST', 'api/af-revenue/sql/singleTableParam', {
399
- data: {
400
- items:items+' f_type',
401
- tablename:'t_exception',
402
- condition:items=='f_error_level'?'1=1 group by '+items:`f_error_level='${f_error_level}' group by `+items
403
- }
404
- },{warnMsg:null,resolveMsg:null}).then((res) => {
405
- let i = 0
406
- let rows=res.data
407
- let array1=[]
408
- array1.push({label: '全部', value: ''})
409
- console.log("rows========",rows)
410
- for (i = 0; i < rows.length; i++) {
411
- let dr = {label: '全部', value: ''}
412
- dr.label=rows[i].f_type
413
- dr.value=rows[i].f_type
414
- array1.push(dr)
415
- console.log("rows[i]========",rows[i],dr)
416
- }
417
- console.log("array1========",array1)
418
- if (items=='f_error_level'){
419
- self.GetErrorLevel=array1
420
- }else {
421
- self.GetErrorType=array1
422
- }
423
- })
424
-
425
- },
426
- search(args) {
427
- this.startDate = this.$refs.paged.$refs.cri.model.startDate
428
- this.endDate = this.$refs.paged.$refs.cri.model.endDate
429
- this.f_error_type=this.$refs.paged.$refs.cri.model.f_error_type
430
- console.log('1231321312312321')
431
- /* if (this.endDate == '' || this.startDate == '') {
432
- return this.$showMessage("时间区间的开始和结束时间不能为空!")
433
- }*/
434
- this.condition = this.$refs.paged.$refs.cri.condition + this.orgCondtionStr
435
-
436
- args.condition = this.condition
437
- this.model.search(args.condition, args.model)
438
- },
439
- SaveAsFile(str) {
440
- this.$showMessage('您是否需要导出本页数据?', ['confirm', 'cancel']).then((res) => {
441
- if (res === 'confirm') {
442
- let style = '<style>' +
443
- 'td {border-width: 1px;padding: 2px;border-style: solid; border-color:black; border-collapse:collapse;} .tdright{text-align: right;} .tdcenter{text-align: center;}</style>';
444
- let strHtml = style + document.getElementById(str).innerHTML;
445
- console.log(strHtml);
446
- let LODOP = getLodop();
447
- LODOP.PRINT_INIT('');
448
- LODOP.ADD_PRINT_TABLE(5, 5, '99%', '100%', strHtml);
449
- LODOP.SAVE_TO_FILE('异常分析(表统计).xls')
450
- }
451
- })
452
- },
453
- clearmsg() {
454
- this.$refs.paged.$refs.cri.model = {}
455
- },
456
- close() {
457
- this.show = false
458
- },
459
- // 显示柱状图
460
- showEcharts() {
461
- this.echarts = true
462
- this.isActiveTotalForm = false
463
- },
464
- notShowTotalForm() {
465
- this.echarts = false
466
- this.isActiveTotalForm = false
467
- },
468
- // 不显示柱状图
469
- notShowEcharts() {
470
- this.echarts = false
471
- this.isActiveTotalForm = false
472
- },
473
- // 显示汇总数据表格
474
- showTotalForm() {
475
- this.echarts = false
476
- this.isActiveTotalForm = true
477
- },
478
- getotherfooter() {
479
- this.other = [];
480
-
481
- let firstLine = [`导出时间: ${this.$login.toStandardTimeString()}`];
482
-
483
-
484
- let secondLine = [
485
- `开始时间(上报区间): ${this.$refs.paged.$refs.cri.model.startDate}`,
486
- `结束时间: ${this.$refs.paged.$refs.cri.model.endDate}`
487
- ];
488
-
489
- this.other.push(firstLine);
490
- this.other.push(secondLine);
491
-
492
- console.log('Header Data:', this.other);
493
- },
494
- },
495
- watch: {
496
- 'data'(val) {
497
- if (val.f_files_path) {
498
- this.getFileContent(val.f_files_path)
499
- } else {
500
- this.reportStr = null
501
- }
502
- },
503
- sumsmodel:{
504
- handler: function(val) {
505
- this.getotherfooter();
506
- },
507
- deep: true
508
- },
509
- }, mounted() {
510
- this.getotherfooter();
511
- },
512
- computed: {
513
- getCondition() {
514
- let condition=this.$refs.paged.$refs.cri.condition + this.orgCondtionStr
515
- return {
516
- condition: condition,
517
- startDate: this.$refs.paged.$refs.cri.model.startDate,
518
- endDate: this.$refs.paged.$refs.cri.model.endDate
519
- }
520
- },
521
- usertypes() {
522
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
523
- },
524
- Gasproperties() {
525
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')]
526
- },
527
- abnormalstatus(){
528
- return this.$getParams('异常状态', [{label: '全部', value: ''}])
529
- }
530
-
531
- }
532
- }
533
- </script>
534
- <style>
535
- .form-input-group label {
536
- text-align: right;
537
- width: auto;
538
- }
539
-
540
- .mystyle {
541
- float: right;
542
- padding-right: 10%;
543
- }
544
-
545
- .datapanel {
546
- color: #333;
547
- background-color: white;
548
- box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
549
- padding: 10px 30px 10px 30px;
550
- border-radius: 15px;
551
- }
552
- </style>
1
+ <template>
2
+ <div class="flex-row" v-if="!showdetail">
3
+ <div id='app1' class="basic-main" v-show="(!echarts)&&(!isActiveTotalForm)">
4
+ <criteria-paged :model="model" :pager='true' v-ref:paged>
5
+ <criteria partial='criteria' @condition-changed='$parent.search' v-ref:cri>
6
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
7
+ <div class="row">
8
+ <div class="col-sm-2 form-group">
9
+ <label class="font_normal_body">客户编号</label>
10
+ <input style="width:60%" type="text" class="input_search"
11
+ v-model="model.f_userinfo_code"
12
+ placeholder='客户编号'
13
+ @keyup.enter="search"
14
+ condition="f_userinfo_code like '%{}%'"
15
+ v-el:xq v-next-el='f_userinfo_code'
16
+ v-el:username>
17
+ </div>
18
+ <div class="col-sm-2 form-group">
19
+ <label class="font_normal_body">客户名称</label>
20
+ <input style="width:60%" type="text" class="input_search"
21
+ v-model="model.username"
22
+ @keyup.enter="search"
23
+ placeholder='客户名称'
24
+ condition="username like '%{}%'"
25
+ v-el:xq v-next-el='username'
26
+ v-el:username>
27
+ </div>
28
+ <div class="col-sm-2 form-group">
29
+ <label class="font_normal_body">客户地址</label>
30
+ <input style="width:60%" type="text" class="input_search"
31
+ v-model="model.address" placeholder='地址'
32
+ condition="address like '%{}%'"
33
+ @keyup.enter="search"
34
+ v-el:xq v-next-el='address' v-el:area
35
+ >
36
+ </div>
37
+ <div class="col-sm-2 form-group">
38
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;表号&nbsp;&nbsp;&nbsp;</label>
39
+ <input style="width:60%" type="text" class="input_search"
40
+ v-model="model.f_meternumber" placeholder='表号'
41
+ @keyup.enter="search"
42
+ condition="f_meternumber like '%{}%'"
43
+ v-next-el='meternumber' v-el:meternumber>
44
+ </div>
45
+ <div style="float:right">
46
+ <button class="button_search button_spacing" @click="search()">查询</button>
47
+ <button class="button_clear button_spacing" @click="$parent.$parent.clearmsg">清空</button>
48
+ <export-excel :data="$parent.$parent.getCondition" class="button_export button_spacing"
49
+ :field="$parent.$parent.getfield"
50
+ :header="$parent.$parent.other"
51
+ sqlurl="api/af-revenue/logic/openapi/exportfile" sql-name="getExceptionList" template-name='异常查询'
52
+ :choose-col="true"></export-excel>
53
+ <!--<button class="button_export button_spacing" style="width: max-content" @click="$parent.$parent.showTotalForm()">显示汇总</button>-->
54
+ <!-- <button class="button_search button_spacing" @click="$parent.$parent.showEcharts()">显示图表</button>-->
55
+ <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>
56
+ </div>
57
+ </div>
58
+ <div class="row" v-show="$parent.$parent.criteriaShow">
59
+ <div class="col-sm-2 form-group">
60
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;公司&nbsp;&nbsp;&nbsp;</label>
61
+ <right-tree @re-res="$parent.$parent.getorg"
62
+ :initresid='$parent.$parent.org'></right-tree>
63
+ </div>
64
+ <div class="col-sm-2 form-group">
65
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;余额&nbsp;&nbsp;&nbsp;</label>
66
+ <input type="number" style="width:30%" class="input_search" title="大于等于" v-model="model.f_balance_amount_small"
67
+ condition="f_balance_amount >= '{}' " placeholder="大于等于">
68
+ <input type="number" style="width:30%" class="input_search" title="小于等于" v-model="model.f_balance_amount_big"
69
+ condition="f_balance_amount <= '{}' " placeholder="小于等于">
70
+ </div>
71
+ <div class="col-sm-2 form-group">
72
+ <label class="font_normal_body">气表品牌</label>
73
+ <v-select :value.sync="model.f_meter_brand"
74
+ v-model="model.f_meter_brand"
75
+ :options='$parent.$parent.meterbrands' placeholder='请选择'
76
+ condition="f_meter_brand = '{}'"
77
+ close-on-select></v-select>
78
+ </div>
79
+ <div class="col-sm-2 form-group">
80
+ <label class="font_normal_body">上报区间</label>
81
+ <datepicker style="width:60%" id="startdate" placeholder="开始时间"
82
+ v-model="model.startDate"
83
+ :value.sync="model.startDate"
84
+ :disabled-days-of-Week="[]"
85
+ :format="'yyyy-MM-dd HH:mm:ss'"
86
+ :show-reset-button="reset">
87
+ </datepicker>
88
+ </div>
89
+ <div class="col-sm-2 form-group">
90
+ <label class="font_normal_body" style="word-break:keep-all;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;</label>
91
+ <datepicker style="width:60%" id="enddate" placeholder="结束日期"
92
+ v-model="model.endDate"
93
+ :value.sync="model.endDate"
94
+ :format="'yyyy-MM-dd HH:mm:ss'"
95
+ :disabled-days-of-Week="[]"
96
+ :show-reset-button="reset">
97
+ </datepicker>
98
+ </div>
99
+ <div class="col-sm-2 form-group">
100
+ <label class="font_normal_body">未抄表天数</label>
101
+ <input type="number" style="width:30%" class="input_search" title="大于等于" v-model="model.f_day_small"
102
+ condition="DateDiff(dd,f_hand_date,getdate()) >= {} " placeholder="大于等于">
103
+ <input type="number" style="width:30%" class="input_search" title="小于等于" v-model="model.f_day_big"
104
+ condition="DateDiff(dd,f_hand_date,getdate()) <= {} " placeholder="小于等于">
105
+ </div>
106
+ <div class="col-sm-2 form-group">
107
+ <label class="font_normal_body">电池电量</label>
108
+ <input type="number" style="width:30%" class="input_search" title="大于等于" v-model="model.f_electricity_small"
109
+ condition="f_electricity >= '{}' " placeholder="大于等于">
110
+ <input type="number" style="width:30%" class="input_search" title="小于等于" v-model="model.f_electricity_big"
111
+ condition="f_electricity <= '{}' " placeholder="小于等于">
112
+ </div>
113
+ <div class="col-sm-2 form-group">
114
+ <label class="font_normal_body">电池电压</label>
115
+ <input type="number" style="width:30%" class="input_search" title="大于等于" v-model="model.f_batterylevel_small"
116
+ condition="f_batterylevel >= '{}' " placeholder="大于等于">
117
+ <input type="number" style="width:30%" class="input_search" title="小于等于" v-model="model.f_batterylevel_big"
118
+ condition="f_batterylevel <= '{}' " placeholder="小于等于">
119
+ </div>
120
+ <div class="col-sm-2 form-group">
121
+ <label class="font_normal_body">异常级别</label>
122
+ <v-select style="width:60%"
123
+ v-model="model.f_error_level"
124
+ placeholder='异常级别'
125
+ @change="$parent.$parent.getErrorInfo('f_error_type')"
126
+ :value.sync="model.f_error_level"
127
+ :options='$parent.$parent.GetErrorLevel'
128
+ condition="f_error_level = '{}'"
129
+ close-on-select>
130
+ </v-select>
131
+ </div>
132
+ <div class="col-sm-2 form-group">
133
+ <label class="font_normal_body">异常类型</label>
134
+ <v-select style="width:60%"
135
+ v-model="model.f_error_type"
136
+ placeholder='异常类型'
137
+ :value.sync="model.f_error_type"
138
+ :options='$parent.$parent.GetErrorType'
139
+ condition="f_error_type = '{}'"
140
+ close-on-select>
141
+ </v-select>
142
+ </div>
143
+ </div>
144
+ </div>
145
+ </criteria>
146
+ <data-grid id="lostuserlist" :model="model" class="list_area table_sy" partial='list' v-ref:grid>
147
+ <template partial='head'>
148
+ <tr>
149
+ <th style="text-align:center">
150
+ <nobr>序号</nobr>
151
+ </th>
152
+ <th style="text-align:center">
153
+ <nobr>客户编号</nobr>
154
+ </th>
155
+ <th style="text-align:center">
156
+ <nobr>客户名称</nobr>
157
+ </th>
158
+ <th style="text-align:center">
159
+ <nobr>小区</nobr>
160
+ </th>
161
+ <th style="text-align:center">
162
+ <nobr>客户地址</nobr>
163
+ </th>
164
+ <th style="text-align:center">
165
+ <nobr>账户余额</nobr>
166
+ </th>
167
+ <th style="text-align:center">
168
+ <nobr>联系电话</nobr>
169
+ </th>
170
+ <th style="text-align:center">
171
+ <nobr>表号</nobr>
172
+ </th>
173
+ <th style="text-align:center">
174
+ <nobr>气表品牌</nobr>
175
+ </th>
176
+ <th style="text-align:center">
177
+ <nobr>抄表日期</nobr>
178
+ </th>
179
+ <th style="text-align:center">
180
+ <nobr>最后一次通讯时间</nobr>
181
+ </th>
182
+ <th style="text-align:center">
183
+ <nobr>电池电量</nobr>
184
+ </th>
185
+ <th style="text-align:center">
186
+ <nobr>电池电压</nobr>
187
+ </th>
188
+ <th style="text-align:center">
189
+ <nobr>信号强度</nobr>
190
+ </th>
191
+ <th style="text-align:center">
192
+ <nobr>磁干扰异常</nobr>
193
+ </th>
194
+ <th style="text-align:center">
195
+ <nobr>阀门状态</nobr>
196
+ </th>
197
+ <th style="text-align:center">
198
+ <nobr>异常类型</nobr>
199
+ </th>
200
+ <th style="text-align:center">
201
+ <nobr>异常级别</nobr>
202
+ </th>
203
+ <th style="text-align:center">
204
+ <nobr>分公司</nobr>
205
+ </th>
206
+
207
+ </tr>
208
+
209
+ </template>
210
+ <template partial='body'>
211
+ <td style="text-align:center">
212
+ <nobr>{{$index+1}}</nobr>
213
+ </td>
214
+ <td style="text-align: center;"><nobr>
215
+ <span @click="$parent.$parent.$parent.showmsg(row)"><a>{{row.f_userinfo_code}}</a></span>
216
+ </nobr> </td>
217
+ <td style="text-align:center"><nobr>{{row.username}}</nobr></td>
218
+ <td style="text-align:center"><nobr>{{row.f_residential_area}}</nobr></td>
219
+ <td>
220
+ <nobr>{{row.address}}</nobr>
221
+ </td>
222
+ <td style="text-align:center">{{row.f_balance_amount}}</td>
223
+ <td style="text-align:center">{{row.f_user_phone}}</td>
224
+ <td style="text-align:center"><nobr>{{row.f_meternumber}}</nobr></td>
225
+ <td style="text-align:center">
226
+ <nobr>{{row.f_meter_brand}}</nobr>
227
+ </td>
228
+ <td style="text-align:center">
229
+ <nobr>{{row.f_hand_date}}</nobr>
230
+ </td>
231
+ <td style="text-align:center">
232
+ <nobr>{{row.f_insert_date}}</nobr>
233
+ </td>
234
+ <td style="text-align:center">
235
+ <nobr>{{row.f_electricity}}</nobr>
236
+ </td>
237
+ <td style="text-align:center">
238
+ <nobr>{{row.f_batterylevel}}</nobr>
239
+ </td>
240
+ <td style="text-align:center">
241
+ <nobr>{{row.f_signal}}</nobr>
242
+ </td>
243
+ <td style="text-align:center">
244
+ <nobr>{{row.f_magneticInterference == 1 ? '异常' : '正常'}}</nobr>
245
+ </td>
246
+ <td style="text-align:center">
247
+ <nobr>{{row.f_valvestate == 0 ? '开阀' : '关阀'}}</nobr>
248
+ </td>
249
+ <td style="text-align:center">
250
+ <nobr>{{row.f_error_type}}</nobr>
251
+ </td>
252
+ <td style="text-align:center">
253
+ <nobr>{{row.f_error_level}}</nobr>
254
+ </td>
255
+ <td style="text-align:center">
256
+ <nobr>{{row.f_orgname}}</nobr>
257
+ </td>
258
+ </template>
259
+ </data-grid>
260
+ </criteria-paged>
261
+ </div>
262
+ <!--<div style="height: 40px;width: 100%;" v-show="echarts">
263
+ <div style="display: inline-block;width: 20%;">
264
+ <button class="button_search button_spacing" v-show="echarts" @click="notShowEcharts()">隐藏图表</button>
265
+ <button class="button_search button_spacing" v-show="isActiveTotalForm" @click="notShowTotalForm()">隐藏汇总</button>
266
+ </div>
267
+ &lt;!&ndash;图显示模板&ndash;&gt;
268
+ <div class="mystyle" style="display: inline-block;" >
269
+ <label class="font_normal_body">图表统计项</label>
270
+ <v-select style="width:60%" id="groupname" v-model="groupname"
271
+ placeholder='分组项'
272
+ value-single="true"
273
+ :value.sync="groupname"
274
+ :options='getgroupname'
275
+ close-on-select></v-select>
276
+ </div>
277
+ </div>
278
+ <div v-show="echarts" style="width: 100%;height: 90%;">
279
+ <new-exception-echarts :condition="condition" :startdate="startDate" :groupname="groupname[0]"
280
+ :enddate="endDate" :echarts="echarts"></new-exception-echarts>
281
+ </div>
282
+ <div v-show="isActiveTotalForm" style="width: 100%;height: 90%;">
283
+ <new-exception-eform-total :condition="condition" :startdate="startDate"
284
+ :enddate="endDate"></new-exception-eform-total>
285
+ </div>-->
286
+ </div>
287
+ <div class="flex" v-if="showdetail">
288
+ <user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage-new>
289
+ </div>
290
+ </template>
291
+
292
+ <script>
293
+ import {HttpResetClass, PagedList} from 'vue-client'
294
+ import * as Util from '../../../../Util'
295
+ import getLodop from '../../../../plugins/LodopFuncs'
296
+ import plugin from 'system-clients/src/plugins/GetLoginInfoService'
297
+
298
+ let readySomething = async function (self) {
299
+ await self.$MagLoadParams.loadParam()
300
+ self.initParams()
301
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums;
302
+ }
303
+ export default {
304
+ title: '异常查看',
305
+ props: ['data'],
306
+ data() {
307
+ return {
308
+ model: new PagedList('/api/af-revenue/sql/getExceptionList',20,{startDate: 'this.model.startDate', endDate: 'this.model.endDate'}),
309
+ // model: new PagedList('/api/af-revenue/sql/getExceptionList',20,{startDate: 'this.model.startDate', endDate: 'this.model.endDate'}),
310
+ reportStr: null,
311
+ show: false,
312
+ startDate: '',
313
+ endDate: '',
314
+ meterbrands: [],
315
+ other: [],
316
+ sumsmodel: {},
317
+ f_error_type:'',
318
+ groupname: ['year'],
319
+ getgroupname: [
320
+ {label: '年份', value: 'year'},
321
+ {label: '月份', value: 'month'},
322
+ {label: '周', value: 'week'},
323
+ {label: '日', value: 'day'}
324
+ ],
325
+ getfield:{
326
+ "f_userinfo_code":"客户编号", "f_user_name":"客户名称","f_residential_area":"小区", "address":"客户地址","f_balance_amount":"账户余额","f_user_phone":"联系电话",
327
+ "f_meternumber":"表号","f_meter_brand":"气表品牌","f_hand_date":"抄表日期","f_insert_date":"最后一次通讯时间","f_electricity":"电池电量","f_batterylevel":"电池电压",
328
+ "f_signal":"信号强度","f_magneticInterference":"磁干扰异常","f_valvestate":"阀门状态","f_error_type":"异常类型","f_error_level":"异常级别","f_orgname":"分公司"
329
+ },
330
+ outlets: [],
331
+ operator: [],
332
+ showdetail:false,
333
+ rowdata:{},
334
+ filename: '',
335
+ criteriaShow: false,
336
+ echarts: false,
337
+ searchshow: false,
338
+ isActiveTotalForm: false,
339
+ GetErrorLevel:[],
340
+ GetErrorType:[],
341
+ condition: '1=1 and f_error_type IS NOT NULL and f_error_level IS NOT NULL',
342
+ org:[this.$login.f.orgid],
343
+ orgCondtionStr: ` and f_orgid = ${this.$login.f.orgid} `
344
+ }
345
+ },
346
+ ready() {
347
+ readySomething(this)
348
+ this.$refs.paged.$refs.cri.model.startDate = Util.toStandardDateString() + ' 00:00:00'
349
+ this.$refs.paged.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
350
+ // console.log("type:"+this.$refs.paged.$refs.cri.model.f_error_type)
351
+ this.getErrorInfo('f_error_level')
352
+ // console.log("type:"+this.$refs.paged.$refs.cri.model.f_error_type)
353
+ },
354
+ methods: {
355
+ showmsg(obj){
356
+ this.rowdata=obj
357
+ this.showdetail=true
358
+ },
359
+ cancel() {
360
+ this.showdetail = false
361
+ },
362
+ getorg(obj) {
363
+ if (obj.resids.length>0) {
364
+ this.orgCondtionStr = " and f_orgid in " + plugin.convertToIn(obj.resids) + " and f_error_type IS NOT NULL and f_error_level IS NOT NULL "
365
+ }else
366
+ {
367
+ this.orgCondtionStr = " and f_orgid = " + this.$login.f.orgid + " and f_error_type IS NOT NULL and f_error_level IS NOT NULL "
368
+ }
369
+ },
370
+ initParams () {
371
+ let arr = []
372
+ this.$MagGetSaleParam.getGasbrand().forEach((item) => {
373
+ let temp = {}
374
+ if(item.value.f_meter_type==='物联网表'){
375
+ temp.label = item.label
376
+ temp.value = item.value.f_meter_brand
377
+ arr.push(temp )
378
+ }
379
+
380
+ })
381
+ this.meterbrands = [{label: '全部', value: ''}, ...arr]
382
+ },
383
+ hidden(){
384
+ this.criteriaShow = !this.criteriaShow
385
+ },
386
+ clickshow() {
387
+ this.searchshow = !this.searchshow
388
+ },
389
+ getErrorInfo(items){
390
+ let self = this
391
+ let f_error_level=''
392
+ if (items!='f_error_level') {
393
+ if(this.$refs.paged.$refs.cri.model.f_error_level){
394
+ f_error_level=this.$refs.paged.$refs.cri.model.f_error_level[0]
395
+ }
396
+ }
397
+ let load = new HttpResetClass()
398
+ load.load('POST', 'api/af-revenue/sql/singleTableParam', {
399
+ data: {
400
+ items:items+' f_type',
401
+ tablename:'t_exception',
402
+ condition:items=='f_error_level'?'1=1 group by '+items:`f_error_level='${f_error_level}' group by `+items
403
+ }
404
+ },{warnMsg:null,resolveMsg:null}).then((res) => {
405
+ let i = 0
406
+ let rows=res.data
407
+ let array1=[]
408
+ array1.push({label: '全部', value: ''})
409
+ console.log("rows========",rows)
410
+ for (i = 0; i < rows.length; i++) {
411
+ let dr = {label: '全部', value: ''}
412
+ dr.label=rows[i].f_type
413
+ dr.value=rows[i].f_type
414
+ array1.push(dr)
415
+ console.log("rows[i]========",rows[i],dr)
416
+ }
417
+ console.log("array1========",array1)
418
+ if (items=='f_error_level'){
419
+ self.GetErrorLevel=array1
420
+ }else {
421
+ self.GetErrorType=array1
422
+ }
423
+ })
424
+
425
+ },
426
+ search(args) {
427
+ this.startDate = this.$refs.paged.$refs.cri.model.startDate
428
+ this.endDate = this.$refs.paged.$refs.cri.model.endDate
429
+ this.f_error_type=this.$refs.paged.$refs.cri.model.f_error_type
430
+ console.log('1231321312312321')
431
+ /* if (this.endDate == '' || this.startDate == '') {
432
+ return this.$showMessage("时间区间的开始和结束时间不能为空!")
433
+ }*/
434
+ this.condition = this.$refs.paged.$refs.cri.condition + this.orgCondtionStr
435
+
436
+ args.condition = this.condition
437
+ this.model.search(args.condition, args.model)
438
+ },
439
+ SaveAsFile(str) {
440
+ this.$showMessage('您是否需要导出本页数据?', ['confirm', 'cancel']).then((res) => {
441
+ if (res === 'confirm') {
442
+ let style = '<style>' +
443
+ 'td {border-width: 1px;padding: 2px;border-style: solid; border-color:black; border-collapse:collapse;} .tdright{text-align: right;} .tdcenter{text-align: center;}</style>';
444
+ let strHtml = style + document.getElementById(str).innerHTML;
445
+ console.log(strHtml);
446
+ let LODOP = getLodop();
447
+ LODOP.PRINT_INIT('');
448
+ LODOP.ADD_PRINT_TABLE(5, 5, '99%', '100%', strHtml);
449
+ LODOP.SAVE_TO_FILE('异常分析(表统计).xls')
450
+ }
451
+ })
452
+ },
453
+ clearmsg() {
454
+ this.$refs.paged.$refs.cri.model = {}
455
+ },
456
+ close() {
457
+ this.show = false
458
+ },
459
+ // 显示柱状图
460
+ showEcharts() {
461
+ this.echarts = true
462
+ this.isActiveTotalForm = false
463
+ },
464
+ notShowTotalForm() {
465
+ this.echarts = false
466
+ this.isActiveTotalForm = false
467
+ },
468
+ // 不显示柱状图
469
+ notShowEcharts() {
470
+ this.echarts = false
471
+ this.isActiveTotalForm = false
472
+ },
473
+ // 显示汇总数据表格
474
+ showTotalForm() {
475
+ this.echarts = false
476
+ this.isActiveTotalForm = true
477
+ },
478
+ getotherfooter() {
479
+ this.other = [];
480
+
481
+ let firstLine = [`导出时间: ${this.$login.toStandardTimeString()}`];
482
+
483
+
484
+ let secondLine = [
485
+ `开始时间(上报区间): ${this.$refs.paged.$refs.cri.model.startDate}`,
486
+ `结束时间: ${this.$refs.paged.$refs.cri.model.endDate}`
487
+ ];
488
+
489
+ this.other.push(firstLine);
490
+ this.other.push(secondLine);
491
+
492
+ console.log('Header Data:', this.other);
493
+ },
494
+ },
495
+ watch: {
496
+ 'data'(val) {
497
+ if (val.f_files_path) {
498
+ this.getFileContent(val.f_files_path)
499
+ } else {
500
+ this.reportStr = null
501
+ }
502
+ },
503
+ sumsmodel:{
504
+ handler: function(val) {
505
+ this.getotherfooter();
506
+ },
507
+ deep: true
508
+ },
509
+ }, mounted() {
510
+ this.getotherfooter();
511
+ },
512
+ computed: {
513
+ getCondition() {
514
+ let condition=this.$refs.paged.$refs.cri.condition + this.orgCondtionStr
515
+ return {
516
+ condition: condition,
517
+ startDate: this.$refs.paged.$refs.cri.model.startDate,
518
+ endDate: this.$refs.paged.$refs.cri.model.endDate
519
+ }
520
+ },
521
+ usertypes() {
522
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
523
+ },
524
+ Gasproperties() {
525
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')]
526
+ },
527
+ abnormalstatus(){
528
+ return this.$getParams('异常状态', [{label: '全部', value: ''}])
529
+ }
530
+
531
+ }
532
+ }
533
+ </script>
534
+ <style>
535
+ .form-input-group label {
536
+ text-align: right;
537
+ width: auto;
538
+ }
539
+
540
+ .mystyle {
541
+ float: right;
542
+ padding-right: 10%;
543
+ }
544
+
545
+ .datapanel {
546
+ color: #333;
547
+ background-color: white;
548
+ box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
549
+ padding: 10px 30px 10px 30px;
550
+ border-radius: 15px;
551
+ }
552
+ </style>