manage-client 3.3.231 → 3.3.232

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 (207) hide show
  1. package/build/dev-server.js +190 -190
  2. package/gradle/wrapper/gradle-wrapper.properties +5 -5
  3. package/gradlew +234 -234
  4. package/gradlew.bat +89 -89
  5. package/hs_err_pid13052.log +206 -206
  6. package/package.json +111 -111
  7. package/src/components/SellReport/BusinessClassify.vue +292 -292
  8. package/src/components/SellReport/ChManageBusSummary.vue +273 -273
  9. package/src/components/SellReport/GasMoneyPublicConReport.vue +231 -231
  10. package/src/components/SellReport/ManageGasGroupSummary.vue +208 -0
  11. package/src/components/SellReport/ManageSellType.vue +267 -267
  12. package/src/components/SellReport/ReportItems.vue +312 -312
  13. package/src/components/SellReport/yangchun/YcBusSummaryes.vue +229 -229
  14. package/src/components/handReport/WebGastypeMonthReport.vue +190 -190
  15. package/src/components/sale/businessquery/AreaChargeQuery.vue +384 -384
  16. package/src/components/sale/businessquery/AreaGeneralQuery.vue +637 -637
  17. package/src/components/sale/businessquery/ArrearsQuery.vue +983 -983
  18. package/src/components/sale/businessquery/BalanceTable.vue +482 -482
  19. package/src/components/sale/businessquery/BusinessManage.vue +212 -212
  20. package/src/components/sale/businessquery/CancellationQuery.vue +428 -428
  21. package/src/components/sale/businessquery/CardHandplanQuery.vue +546 -546
  22. package/src/components/sale/businessquery/ChangeMeterQuery.vue +699 -699
  23. package/src/components/sale/businessquery/ChargeQuery.vue +1435 -1435
  24. package/src/components/sale/businessquery/CollectManage.vue +161 -161
  25. package/src/components/sale/businessquery/CommunityPaymen.vue +307 -307
  26. package/src/components/sale/businessquery/DisableQuery.vue +523 -523
  27. package/src/components/sale/businessquery/EnableQuery.vue +462 -462
  28. package/src/components/sale/businessquery/FMYGasQuery.vue +872 -872
  29. package/src/components/sale/businessquery/FillCardQuery.vue +573 -573
  30. package/src/components/sale/businessquery/FillGasQuery.vue +593 -593
  31. package/src/components/sale/businessquery/GroupChargeQuery.vue +492 -492
  32. package/src/components/sale/businessquery/HandBookQuery.vue +692 -692
  33. package/src/components/sale/businessquery/HandBookTwoQuery.vue +704 -704
  34. package/src/components/sale/businessquery/HandGasPropertiesQuery.vue +671 -671
  35. package/src/components/sale/businessquery/HandPeopleQuery.vue +719 -719
  36. package/src/components/sale/businessquery/HandRateQuery.vue +524 -524
  37. package/src/components/sale/businessquery/Handgasquery.vue +477 -477
  38. package/src/components/sale/businessquery/HandplanQuery.vue +1376 -1376
  39. package/src/components/sale/businessquery/MonthGasQuery.vue +482 -482
  40. package/src/components/sale/businessquery/NoBusinessQuery.vue +778 -778
  41. package/src/components/sale/businessquery/PlotSummaryQuery.vue +499 -499
  42. package/src/components/sale/businessquery/ProceedsOper.vue +415 -415
  43. package/src/components/sale/businessquery/ResidentialCardQuery.vue +377 -377
  44. package/src/components/sale/businessquery/ResidentialQuery.vue +415 -415
  45. package/src/components/sale/businessquery/SellOrgnameQuery.vue +680 -680
  46. package/src/components/sale/businessquery/SellPeopleQuery.vue +752 -752
  47. package/src/components/sale/businessquery/SellingHand.vue +421 -421
  48. package/src/components/sale/businessquery/TransferQuery.vue +502 -502
  49. package/src/components/sale/businessquery/UnhandBusiness.vue +328 -328
  50. package/src/components/sale/businessquery/UserSellHeadDetail.vue +579 -579
  51. package/src/components/sale/businessquery/WebHandplanQuery.vue +987 -987
  52. package/src/components/sale/businessquery/WebMeterMonthUserGasQuery.vue +471 -471
  53. package/src/components/sale/businessquery/YingShouMingXi.vue +524 -524
  54. package/src/components/sale/businessquery/YonghuJieyu.vue +358 -358
  55. package/src/components/sale/businessquery/chargeRecordMaintenanceQuery.vue +353 -353
  56. package/src/components/sale/businessquery/usergas.vue +315 -315
  57. package/src/components/sale/config/exportConfig.js +2762 -2762
  58. package/src/components/sale/config/tableConfig.js +59 -59
  59. package/src/components/sale/filesquery/FireQuery.vue +539 -539
  60. package/src/components/sale/filesquery/RecordInfoQuery.vue +1448 -1448
  61. package/src/components/sale/filesquery/UserQuery.vue +977 -977
  62. package/src/components/webmeter/DrillData/GetNoMetereadData.vue +423 -423
  63. package/src/components/webmeter/DrillData/LostContactAnalysisList.vue +739 -739
  64. package/src/components/webmeter/DrillData/UserLostContactAnalysis.vue +691 -691
  65. package/src/components/webmeter/WebmeterQuery.vue +77 -77
  66. package/src/components/webmeter/gasAnalysis/WebmeterSettlementAnalysis.vue +456 -456
  67. package/src/components/webmeter/gasStatistics/GasStatistics.vue +526 -526
  68. package/src/components/webmeter/gasStatistics/NewGasStatistics.vue +542 -542
  69. package/src/components/webmeter/instruction/NewQueryInstruct.vue +606 -606
  70. package/src/components/webmeter/newwebmeter/NewException/MeterExceptionList.vue +557 -557
  71. package/src/components/webmeter/newwebmeter/WebhandMonthGas.vue +819 -819
  72. package/src/components/webmeter/recharge/RechargeList.vue +371 -371
  73. package/src/components/webmeter/report/ReportList.vue +453 -453
  74. package/src/components/webmeter/reportdata/ReportDataQuery.vue +339 -339
  75. package/src/filiale/WEINAN/InspectListGas.vue +616 -616
  76. package/src/filiale/WEINAN/ManageCompanyGasSummary.vue +555 -555
  77. package/src/filiale/WEINAN/ManageSummaryReport.vue +712 -712
  78. package/src/filiale/WEINAN/RecordInfoQuery.vue +1328 -1328
  79. package/src/filiale/WEINAN/businessquery/WallHangingFurnaceUserQuery.vue +418 -418
  80. package/src/filiale/ancheng/businessquery/FMYGasQuery.vue +853 -853
  81. package/src/filiale/ancheng/exportConfig.js +1112 -1112
  82. package/src/filiale/bayan/ChargeQuery.vue +1436 -1436
  83. package/src/filiale/bayan/PrintTableManage.vue +242 -242
  84. package/src/filiale/bayan/config/DefaultPrint.js +6 -6
  85. package/src/filiale/bayan/config/exportConfig.js +2642 -2642
  86. package/src/filiale/bayan/config/tableConfig.js +59 -59
  87. package/src/filiale/bayan/sale.js +8 -8
  88. package/src/filiale/bayan/webmeter/GetNoMetereadData.vue +425 -425
  89. package/src/filiale/bayan/webmeter/LostContactAnalysisList.vue +719 -719
  90. package/src/filiale/bayan/webmeter/MeterExceptionList.vue +591 -591
  91. package/src/filiale/bayan/webmeter/NewGasStatistics.vue +665 -665
  92. package/src/filiale/bayan/webmeter/NewQueryInstruct.vue +650 -650
  93. package/src/filiale/bayan/webmeter/NewWebmeterSettlementAnalysis.vue +464 -464
  94. package/src/filiale/bayan/webmeter/RechargeList.vue +430 -430
  95. package/src/filiale/bayan/webmeter/ReportDataQuery.vue +343 -343
  96. package/src/filiale/bayan/webmeter/ReportList.vue +555 -555
  97. package/src/filiale/bayan/webmeter/UserLostContactAnalysis.vue +674 -674
  98. package/src/filiale/bayan/webmeterManage.js +26 -26
  99. package/src/filiale/dingcheng/DefaultPrint.js +6 -6
  100. package/src/filiale/dingcheng/businessquery/ChangeMeterQuery.vue +798 -798
  101. package/src/filiale/dingcheng/exportConfig.js +2765 -2765
  102. package/src/filiale/dingcheng/sale.js +9 -9
  103. package/src/filiale/hantou/ChangeMeterQuery.vue +699 -699
  104. package/src/filiale/hantou/config/DefaultPrint.js +6 -6
  105. package/src/filiale/hantou/config/exportConfig.js +2667 -2667
  106. package/src/filiale/hantou/config/tableConfig.js +54 -54
  107. package/src/filiale/hantou/sale.js +8 -8
  108. package/src/filiale/jingwei/RecordInfoQuery.vue +1210 -1210
  109. package/src/filiale/jingwei/config/exportConfig.js +1106 -1106
  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/ChargeQuery.vue +1348 -1348
  118. package/src/filiale/kelai/GasStatistics.vue +561 -561
  119. package/src/filiale/kelai/NewAccountQuery.vue +417 -417
  120. package/src/filiale/kelai/NewGasStatistics.vue +556 -556
  121. package/src/filiale/kelai/feimin_style_kl.vue +400 -400
  122. package/src/filiale/kelai/reportManage.js +13 -13
  123. package/src/filiale/kelai/sale.js +17 -17
  124. package/src/filiale/liaoyuan/HandplanQuery.vue +1289 -1289
  125. package/src/filiale/lixianV3/RecordInfoQuery.vue +1474 -1474
  126. package/src/filiale/macheng/ArrearsQuery.vue +831 -831
  127. package/src/filiale/macheng/RecordInfoQuery.vue +1023 -1023
  128. package/src/filiale/macheng/config/exportConfig.js +79 -79
  129. package/src/filiale/meihekou/AreaGeneralQuery.vue +206 -206
  130. package/src/filiale/meihekou/CardHandplanQuery.vue +664 -664
  131. package/src/filiale/meihekou/ChargeQuery.vue +1274 -1274
  132. package/src/filiale/meihekou/CollectManage.vue +152 -152
  133. package/src/filiale/meihekou/HandplanQuery.vue +1248 -1248
  134. package/src/filiale/meihekou/OtherChargeQuery.vue +618 -618
  135. package/src/filiale/meihekou/UserSellHeadDetail.vue +516 -516
  136. package/src/filiale/meihekou/YingShouMingXi.vue +556 -556
  137. package/src/filiale/meihekou/config/exportConfig.js +829 -829
  138. package/src/filiale/meihekou/sale.js +39 -39
  139. package/src/filiale/ningjin/MeterExceptionList.vue +616 -616
  140. package/src/filiale/ningjin/UserLostContactAnalysis.vue +623 -623
  141. package/src/filiale/qianneng/RecordInfoQuery.vue +1369 -1369
  142. package/src/filiale/qianneng/WebmeterQuery.vue +70 -70
  143. package/src/filiale/qianneng/exportConfig.js +232 -232
  144. package/src/filiale/qingtongxia/ChargeQuery.vue +1209 -1209
  145. package/src/filiale/qingtongxia/config/exportConfig.js +712 -712
  146. package/src/filiale/rizhao/BusinessManage.vue +212 -212
  147. package/src/filiale/rizhao/sale.js +13 -13
  148. package/src/filiale/shangluo/HandplanQuery.vue +1376 -1376
  149. package/src/filiale/shangluo/sale.js +17 -17
  150. package/src/filiale/shangluo/webmeter/PriceInstructList.vue +303 -303
  151. package/src/filiale/shangluo/webmeter/UserInstructList.vue +304 -304
  152. package/src/filiale/shangluo/webmeter/WebmeterSettlementAnalysis.vue +432 -432
  153. package/src/filiale/shanxian/EchartsBox.vue +134 -134
  154. package/src/filiale/shaoguan/errorHandplanQuery.vue +386 -386
  155. package/src/filiale/shexian/ChangeMeterQuery.vue +797 -797
  156. package/src/filiale/taizhoukesi/ChangeMeterQuery.vue +683 -683
  157. package/src/filiale/taizhoukesi/NewGasStatistics.vue +539 -539
  158. package/src/filiale/taizhoukesi/config/exportConfig.js +2712 -2712
  159. package/src/filiale/taizhoukesi/sale.js +11 -11
  160. package/src/filiale/tongchuan/GasInspection.vue +716 -716
  161. package/src/filiale/tongchuan/InspectListGas.vue +700 -700
  162. package/src/filiale/tongchuan/MeterQuery.vue +1002 -1002
  163. package/src/filiale/tongchuan/ResSelectGroupNew.vue +188 -188
  164. package/src/filiale/tongchuan/config/exportConfig.js +858 -858
  165. package/src/filiale/wenxi/ChangeMeterQuery.vue +721 -721
  166. package/src/filiale/wenxi/ManageUserTypeSell.vue +173 -173
  167. package/src/filiale/wenxi/config/exportConfig.js +995 -995
  168. package/src/filiale/xinjiangdexin/ChargeQuery.vue +1435 -1435
  169. package/src/filiale/xinjiangdexin/config/exportConfig.js +2770 -2770
  170. package/src/filiale/xinjiangdexin/sale.js +7 -7
  171. package/src/filiale/yangchun/ChangeMeterQuery.vue +722 -722
  172. package/src/filiale/yangchun/ManageBusSummaryNew.vue +239 -239
  173. package/src/filiale/yangchun/OtherChargeDetailQuery.vue +74 -74
  174. package/src/filiale/yangchun/OtherChargeQuery.vue +755 -755
  175. package/src/filiale/yangchun/RecordInfoQuery.vue +1494 -1494
  176. package/src/filiale/yangchun/UserQuery.vue +980 -980
  177. package/src/filiale/yangchun/config/DefaultPrint.js +6 -6
  178. package/src/filiale/yangchun/config/exportConfig.js +1229 -1229
  179. package/src/filiale/yangchun/config/tableConfig.js +58 -58
  180. package/src/filiale/yangchun/reportManage.js +6 -6
  181. package/src/filiale/yangchun/sale.js +20 -20
  182. package/src/filiale/yangchun/webmeterManage.js +5 -5
  183. package/src/filiale/yuncheng/ChangeMeterQuery.vue +743 -743
  184. package/src/filiale/yuncheng/DeviceQuery.vue +611 -611
  185. package/src/filiale/yuncheng/GasInspection.vue +610 -610
  186. package/src/filiale/yuncheng/LostContactAnalysisList.vue +700 -700
  187. package/src/filiale/yuncheng/MeterQuery.vue +1017 -1017
  188. package/src/filiale/yuncheng/config/exportConfig.js +2681 -2681
  189. package/src/filiale/yuncheng/sale.js +23 -23
  190. package/src/filiale/zhongyi/ChargeQuery.vue +1454 -1454
  191. package/src/filiale/zhongyi/GasStatistics.vue +537 -537
  192. package/src/filiale/zhongyi/NewGasStatistics.vue +558 -558
  193. package/src/filiale/zhongyi/exportConfig.js +2556 -2556
  194. package/src/filiale/zhongyi/sale.js +33 -33
  195. package/src/filiale/zhongyi/webmeterManage.js +15 -15
  196. package/src/main.js +68 -68
  197. package/src/plugins/LodopFuncs.js +159 -159
  198. package/src/reportManage.js +777 -773
  199. package/src/saleManage.js +689 -689
  200. package/src/webmeterManage.js +130 -130
  201. package/.gradle/7.4/checksums/checksums.lock +0 -0
  202. package/.gradle/7.4/dependencies-accessors/dependencies-accessors.lock +0 -0
  203. package/.gradle/7.4/dependencies-accessors/gc.properties +0 -0
  204. package/.gradle/7.4/executionHistory/executionHistory.lock +0 -0
  205. package/.gradle/7.4/fileChanges/last-build.bin +0 -0
  206. package/.gradle/7.4/fileHashes/fileHashes.lock +0 -0
  207. package/.gradle/7.4/gc.properties +0 -0
@@ -1,557 +1,557 @@
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 = '{}'"
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
- initres: {
316
- org:[this.$login.f.orgid],
317
- dep:[],
318
- user:[],
319
- },
320
- other: [],
321
- sumsmodel: {},
322
- f_error_type:'',
323
- groupname: ['year'],
324
- getgroupname: [
325
- {label: '年份', value: 'year'},
326
- {label: '月份', value: 'month'},
327
- {label: '周', value: 'week'},
328
- {label: '日', value: 'day'}
329
- ],
330
- getfield:{
331
- "f_userinfo_code":"客户编号", "f_user_name":"客户名称","f_residential_area":"小区", "address":"客户地址","f_balance_amount":"账户余额","f_user_phone":"联系电话",
332
- "f_meternumber":"表号","f_meter_brand":"气表品牌","f_hand_date":"抄表日期","f_insert_date":"最后一次通讯时间","f_electricity":"电池电量","f_batterylevel":"电池电压",
333
- "f_signal":"信号强度","f_magneticInterference":"磁干扰异常","f_valvestate":"阀门状态","f_error_type":"异常类型","f_error_level":"异常级别","f_orgname":"分公司"
334
- },
335
- outlets: [],
336
- operator: [],
337
- showdetail:false,
338
- rowdata:{},
339
- filename: '',
340
- criteriaShow: false,
341
- echarts: false,
342
- searchshow: false,
343
- isActiveTotalForm: false,
344
- GetErrorLevel:[],
345
- GetErrorType:[],
346
- condition: '1=1 and f_error_type IS NOT NULL and f_error_level IS NOT NULL',
347
- org:[this.$login.f.orgid],
348
- orgCondtionStr: ` and f_orgid = ${this.$login.f.orgid} `
349
- }
350
- },
351
- ready() {
352
- readySomething(this)
353
- this.$refs.paged.$refs.cri.model.startDate = Util.toStandardDateString() + ' 00:00:00'
354
- this.$refs.paged.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
355
- // console.log("type:"+this.$refs.paged.$refs.cri.model.f_error_type)
356
- this.getErrorInfo('f_error_level')
357
- // console.log("type:"+this.$refs.paged.$refs.cri.model.f_error_type)
358
- },
359
- methods: {
360
- showmsg(obj){
361
- this.rowdata=obj
362
- this.showdetail=true
363
- },
364
- cancel() {
365
- this.showdetail = false
366
- },
367
- getorg(obj) {
368
- if (obj.resids.length>0) {
369
- this.orgCondtionStr = " and f_orgid in " + plugin.convertToIn(obj.resids) + " and f_error_type IS NOT NULL and f_error_level IS NOT NULL "
370
- }else
371
- {
372
- this.orgCondtionStr = " and f_orgid = " + this.$login.f.orgid + " and f_error_type IS NOT NULL and f_error_level IS NOT NULL "
373
- }
374
- },
375
- initParams () {
376
- let arr = []
377
- this.$MagGetSaleParam.getGasbrand().forEach((item) => {
378
- let temp = {}
379
- if(item.value.f_meter_type==='物联网表'){
380
- temp.label = item.label
381
- temp.value = item.value.f_meter_brand
382
- arr.push(temp )
383
- }
384
-
385
- })
386
- this.meterbrands = [{label: '全部', value: ''}, ...arr]
387
- },
388
- hidden(){
389
- this.criteriaShow = !this.criteriaShow
390
- },
391
- clickshow() {
392
- this.searchshow = !this.searchshow
393
- },
394
- getErrorInfo(items){
395
- let self = this
396
- let f_error_level=''
397
- if (items!='f_error_level') {
398
- if(this.$refs.paged.$refs.cri.model.f_error_level){
399
- f_error_level=this.$refs.paged.$refs.cri.model.f_error_level[0]
400
- }
401
- }
402
- let load = new HttpResetClass()
403
- load.load('POST', 'api/af-revenue/sql/singleTableParam', {
404
- data: {
405
- items:items+' f_type',
406
- tablename:'t_exception',
407
- condition:items=='f_error_level'?'1=1 group by '+items:`f_error_level='${f_error_level}' group by `+items
408
- }
409
- },{warnMsg:null,resolveMsg:null}).then((res) => {
410
- let i = 0
411
- let rows=res.data
412
- let array1=[]
413
- array1.push({label: '全部', value: ''})
414
- console.log("rows========",rows)
415
- for (i = 0; i < rows.length; i++) {
416
- let dr = {label: '全部', value: ''}
417
- dr.label=rows[i].f_type
418
- dr.value=rows[i].f_type
419
- array1.push(dr)
420
- console.log("rows[i]========",rows[i],dr)
421
- }
422
- console.log("array1========",array1)
423
- if (items=='f_error_level'){
424
- self.GetErrorLevel=array1
425
- }else {
426
- self.GetErrorType=array1
427
- }
428
- })
429
-
430
- },
431
- search(args) {
432
- this.startDate = this.$refs.paged.$refs.cri.model.startDate
433
- this.endDate = this.$refs.paged.$refs.cri.model.endDate
434
- this.f_error_type=this.$refs.paged.$refs.cri.model.f_error_type
435
- /* if (this.endDate == '' || this.startDate == '') {
436
- return this.$showMessage("时间区间的开始和结束时间不能为空!")
437
- }*/
438
- if (this.orgCondtionStr){
439
- args.condition = `${args.condition}` + this.orgCondtionStr
440
- }
441
- this.condition = args.condition
442
- this.model.search(args.condition, args.model)
443
- },
444
- SaveAsFile(str) {
445
- this.$showMessage('您是否需要导出本页数据?', ['confirm', 'cancel']).then((res) => {
446
- if (res === 'confirm') {
447
- let style = '<style>' +
448
- 'td {border-width: 1px;padding: 2px;border-style: solid; border-color:black; border-collapse:collapse;} .tdright{text-align: right;} .tdcenter{text-align: center;}</style>';
449
- let strHtml = style + document.getElementById(str).innerHTML;
450
- console.log(strHtml);
451
- let LODOP = getLodop();
452
- LODOP.PRINT_INIT('');
453
- LODOP.ADD_PRINT_TABLE(5, 5, '99%', '100%', strHtml);
454
- LODOP.SAVE_TO_FILE('异常分析(表统计).xls')
455
- }
456
- })
457
- },
458
- clearmsg() {
459
- this.$refs.paged.$refs.cri.model = {}
460
- },
461
- close() {
462
- this.show = false
463
- },
464
- // 显示柱状图
465
- showEcharts() {
466
- this.echarts = true
467
- this.isActiveTotalForm = false
468
- },
469
- notShowTotalForm() {
470
- this.echarts = false
471
- this.isActiveTotalForm = false
472
- },
473
- // 不显示柱状图
474
- notShowEcharts() {
475
- this.echarts = false
476
- this.isActiveTotalForm = false
477
- },
478
- // 显示汇总数据表格
479
- showTotalForm() {
480
- this.echarts = false
481
- this.isActiveTotalForm = true
482
- },
483
- getotherfooter() {
484
- this.other = [];
485
-
486
- let firstLine = [`导出时间: ${this.$login.toStandardTimeString()}`];
487
-
488
-
489
- let secondLine = [
490
- `开始时间(上报区间): ${this.$refs.paged.$refs.cri.model.startDate}`,
491
- `结束时间: ${this.$refs.paged.$refs.cri.model.endDate}`
492
- ];
493
-
494
- this.other.push(firstLine);
495
- this.other.push(secondLine);
496
-
497
- console.log('Header Data:', this.other);
498
- },
499
- },
500
- watch: {
501
- 'data'(val) {
502
- if (val.f_files_path) {
503
- this.getFileContent(val.f_files_path)
504
- } else {
505
- this.reportStr = null
506
- }
507
- },
508
- sumsmodel:{
509
- handler: function(val) {
510
- this.getotherfooter();
511
- },
512
- deep: true
513
- },
514
- }, mounted() {
515
- this.getotherfooter();
516
- },
517
- computed: {
518
- getCondition() {
519
- let condition=this.$refs.paged.$refs.cri.condition + this.orgCondtionStr
520
- return {
521
- condition: condition,
522
- startDate: this.$refs.paged.$refs.cri.model.startDate,
523
- endDate: this.$refs.paged.$refs.cri.model.endDate
524
- }
525
- },
526
- usertypes() {
527
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
528
- },
529
- Gasproperties() {
530
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')]
531
- },
532
- abnormalstatus(){
533
- return this.$getParams('异常状态', [{label: '全部', value: ''}])
534
- }
535
-
536
- }
537
- }
538
- </script>
539
- <style>
540
- .form-input-group label {
541
- text-align: right;
542
- width: auto;
543
- }
544
-
545
- .mystyle {
546
- float: right;
547
- padding-right: 10%;
548
- }
549
-
550
- .datapanel {
551
- color: #333;
552
- background-color: white;
553
- box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
554
- padding: 10px 30px 10px 30px;
555
- border-radius: 15px;
556
- }
557
- </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 = '{}'"
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
+ initres: {
316
+ org:[this.$login.f.orgid],
317
+ dep:[],
318
+ user:[],
319
+ },
320
+ other: [],
321
+ sumsmodel: {},
322
+ f_error_type:'',
323
+ groupname: ['year'],
324
+ getgroupname: [
325
+ {label: '年份', value: 'year'},
326
+ {label: '月份', value: 'month'},
327
+ {label: '周', value: 'week'},
328
+ {label: '日', value: 'day'}
329
+ ],
330
+ getfield:{
331
+ "f_userinfo_code":"客户编号", "f_user_name":"客户名称","f_residential_area":"小区", "address":"客户地址","f_balance_amount":"账户余额","f_user_phone":"联系电话",
332
+ "f_meternumber":"表号","f_meter_brand":"气表品牌","f_hand_date":"抄表日期","f_insert_date":"最后一次通讯时间","f_electricity":"电池电量","f_batterylevel":"电池电压",
333
+ "f_signal":"信号强度","f_magneticInterference":"磁干扰异常","f_valvestate":"阀门状态","f_error_type":"异常类型","f_error_level":"异常级别","f_orgname":"分公司"
334
+ },
335
+ outlets: [],
336
+ operator: [],
337
+ showdetail:false,
338
+ rowdata:{},
339
+ filename: '',
340
+ criteriaShow: false,
341
+ echarts: false,
342
+ searchshow: false,
343
+ isActiveTotalForm: false,
344
+ GetErrorLevel:[],
345
+ GetErrorType:[],
346
+ condition: '1=1 and f_error_type IS NOT NULL and f_error_level IS NOT NULL',
347
+ org:[this.$login.f.orgid],
348
+ orgCondtionStr: ` and f_orgid = ${this.$login.f.orgid} `
349
+ }
350
+ },
351
+ ready() {
352
+ readySomething(this)
353
+ this.$refs.paged.$refs.cri.model.startDate = Util.toStandardDateString() + ' 00:00:00'
354
+ this.$refs.paged.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
355
+ // console.log("type:"+this.$refs.paged.$refs.cri.model.f_error_type)
356
+ this.getErrorInfo('f_error_level')
357
+ // console.log("type:"+this.$refs.paged.$refs.cri.model.f_error_type)
358
+ },
359
+ methods: {
360
+ showmsg(obj){
361
+ this.rowdata=obj
362
+ this.showdetail=true
363
+ },
364
+ cancel() {
365
+ this.showdetail = false
366
+ },
367
+ getorg(obj) {
368
+ if (obj.resids.length>0) {
369
+ this.orgCondtionStr = " and f_orgid in " + plugin.convertToIn(obj.resids) + " and f_error_type IS NOT NULL and f_error_level IS NOT NULL "
370
+ }else
371
+ {
372
+ this.orgCondtionStr = " and f_orgid = " + this.$login.f.orgid + " and f_error_type IS NOT NULL and f_error_level IS NOT NULL "
373
+ }
374
+ },
375
+ initParams () {
376
+ let arr = []
377
+ this.$MagGetSaleParam.getGasbrand().forEach((item) => {
378
+ let temp = {}
379
+ if(item.value.f_meter_type==='物联网表'){
380
+ temp.label = item.label
381
+ temp.value = item.value.f_meter_brand
382
+ arr.push(temp )
383
+ }
384
+
385
+ })
386
+ this.meterbrands = [{label: '全部', value: ''}, ...arr]
387
+ },
388
+ hidden(){
389
+ this.criteriaShow = !this.criteriaShow
390
+ },
391
+ clickshow() {
392
+ this.searchshow = !this.searchshow
393
+ },
394
+ getErrorInfo(items){
395
+ let self = this
396
+ let f_error_level=''
397
+ if (items!='f_error_level') {
398
+ if(this.$refs.paged.$refs.cri.model.f_error_level){
399
+ f_error_level=this.$refs.paged.$refs.cri.model.f_error_level[0]
400
+ }
401
+ }
402
+ let load = new HttpResetClass()
403
+ load.load('POST', 'api/af-revenue/sql/singleTableParam', {
404
+ data: {
405
+ items:items+' f_type',
406
+ tablename:'t_exception',
407
+ condition:items=='f_error_level'?'1=1 group by '+items:`f_error_level='${f_error_level}' group by `+items
408
+ }
409
+ },{warnMsg:null,resolveMsg:null}).then((res) => {
410
+ let i = 0
411
+ let rows=res.data
412
+ let array1=[]
413
+ array1.push({label: '全部', value: ''})
414
+ console.log("rows========",rows)
415
+ for (i = 0; i < rows.length; i++) {
416
+ let dr = {label: '全部', value: ''}
417
+ dr.label=rows[i].f_type
418
+ dr.value=rows[i].f_type
419
+ array1.push(dr)
420
+ console.log("rows[i]========",rows[i],dr)
421
+ }
422
+ console.log("array1========",array1)
423
+ if (items=='f_error_level'){
424
+ self.GetErrorLevel=array1
425
+ }else {
426
+ self.GetErrorType=array1
427
+ }
428
+ })
429
+
430
+ },
431
+ search(args) {
432
+ this.startDate = this.$refs.paged.$refs.cri.model.startDate
433
+ this.endDate = this.$refs.paged.$refs.cri.model.endDate
434
+ this.f_error_type=this.$refs.paged.$refs.cri.model.f_error_type
435
+ /* if (this.endDate == '' || this.startDate == '') {
436
+ return this.$showMessage("时间区间的开始和结束时间不能为空!")
437
+ }*/
438
+ if (this.orgCondtionStr){
439
+ args.condition = `${args.condition}` + this.orgCondtionStr
440
+ }
441
+ this.condition = args.condition
442
+ this.model.search(args.condition, args.model)
443
+ },
444
+ SaveAsFile(str) {
445
+ this.$showMessage('您是否需要导出本页数据?', ['confirm', 'cancel']).then((res) => {
446
+ if (res === 'confirm') {
447
+ let style = '<style>' +
448
+ 'td {border-width: 1px;padding: 2px;border-style: solid; border-color:black; border-collapse:collapse;} .tdright{text-align: right;} .tdcenter{text-align: center;}</style>';
449
+ let strHtml = style + document.getElementById(str).innerHTML;
450
+ console.log(strHtml);
451
+ let LODOP = getLodop();
452
+ LODOP.PRINT_INIT('');
453
+ LODOP.ADD_PRINT_TABLE(5, 5, '99%', '100%', strHtml);
454
+ LODOP.SAVE_TO_FILE('异常分析(表统计).xls')
455
+ }
456
+ })
457
+ },
458
+ clearmsg() {
459
+ this.$refs.paged.$refs.cri.model = {}
460
+ },
461
+ close() {
462
+ this.show = false
463
+ },
464
+ // 显示柱状图
465
+ showEcharts() {
466
+ this.echarts = true
467
+ this.isActiveTotalForm = false
468
+ },
469
+ notShowTotalForm() {
470
+ this.echarts = false
471
+ this.isActiveTotalForm = false
472
+ },
473
+ // 不显示柱状图
474
+ notShowEcharts() {
475
+ this.echarts = false
476
+ this.isActiveTotalForm = false
477
+ },
478
+ // 显示汇总数据表格
479
+ showTotalForm() {
480
+ this.echarts = false
481
+ this.isActiveTotalForm = true
482
+ },
483
+ getotherfooter() {
484
+ this.other = [];
485
+
486
+ let firstLine = [`导出时间: ${this.$login.toStandardTimeString()}`];
487
+
488
+
489
+ let secondLine = [
490
+ `开始时间(上报区间): ${this.$refs.paged.$refs.cri.model.startDate}`,
491
+ `结束时间: ${this.$refs.paged.$refs.cri.model.endDate}`
492
+ ];
493
+
494
+ this.other.push(firstLine);
495
+ this.other.push(secondLine);
496
+
497
+ console.log('Header Data:', this.other);
498
+ },
499
+ },
500
+ watch: {
501
+ 'data'(val) {
502
+ if (val.f_files_path) {
503
+ this.getFileContent(val.f_files_path)
504
+ } else {
505
+ this.reportStr = null
506
+ }
507
+ },
508
+ sumsmodel:{
509
+ handler: function(val) {
510
+ this.getotherfooter();
511
+ },
512
+ deep: true
513
+ },
514
+ }, mounted() {
515
+ this.getotherfooter();
516
+ },
517
+ computed: {
518
+ getCondition() {
519
+ let condition=this.$refs.paged.$refs.cri.condition + this.orgCondtionStr
520
+ return {
521
+ condition: condition,
522
+ startDate: this.$refs.paged.$refs.cri.model.startDate,
523
+ endDate: this.$refs.paged.$refs.cri.model.endDate
524
+ }
525
+ },
526
+ usertypes() {
527
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
528
+ },
529
+ Gasproperties() {
530
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')]
531
+ },
532
+ abnormalstatus(){
533
+ return this.$getParams('异常状态', [{label: '全部', value: ''}])
534
+ }
535
+
536
+ }
537
+ }
538
+ </script>
539
+ <style>
540
+ .form-input-group label {
541
+ text-align: right;
542
+ width: auto;
543
+ }
544
+
545
+ .mystyle {
546
+ float: right;
547
+ padding-right: 10%;
548
+ }
549
+
550
+ .datapanel {
551
+ color: #333;
552
+ background-color: white;
553
+ box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
554
+ padding: 10px 30px 10px 30px;
555
+ border-radius: 15px;
556
+ }
557
+ </style>