manage-client 3.3.232 → 3.3.233

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/.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/build/dev-server.js +190 -190
  9. package/gradle/wrapper/gradle-wrapper.properties +5 -5
  10. package/gradlew +234 -234
  11. package/gradlew.bat +89 -89
  12. package/hs_err_pid13052.log +206 -206
  13. package/package.json +111 -111
  14. package/src/components/SellReport/BusinessClassify.vue +292 -292
  15. package/src/components/SellReport/ChManageBusSummary.vue +273 -273
  16. package/src/components/SellReport/GasMoneyPublicConReport.vue +231 -231
  17. package/src/components/SellReport/ManageGasGroupSummary.vue +208 -208
  18. package/src/components/SellReport/ManageSellType.vue +267 -267
  19. package/src/components/SellReport/ReportItems.vue +312 -312
  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 +161 -161
  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 +872 -872
  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/chargeRecordMaintenanceQuery.vue +353 -353
  63. package/src/components/sale/businessquery/usergas.vue +315 -315
  64. package/src/components/sale/config/exportConfig.js +2763 -2762
  65. package/src/components/sale/config/tableConfig.js +59 -59
  66. package/src/components/sale/filesquery/FireQuery.vue +539 -539
  67. package/src/components/sale/filesquery/RecordInfoQuery.vue +1448 -1448
  68. package/src/components/sale/filesquery/UserQuery.vue +1002 -977
  69. package/src/components/webmeter/DrillData/GetNoMetereadData.vue +423 -423
  70. package/src/components/webmeter/DrillData/LostContactAnalysisList.vue +739 -739
  71. package/src/components/webmeter/DrillData/UserLostContactAnalysis.vue +691 -691
  72. package/src/components/webmeter/WebmeterQuery.vue +77 -77
  73. package/src/components/webmeter/gasAnalysis/WebmeterSettlementAnalysis.vue +456 -456
  74. package/src/components/webmeter/gasStatistics/GasStatistics.vue +526 -526
  75. package/src/components/webmeter/gasStatistics/NewGasStatistics.vue +542 -542
  76. package/src/components/webmeter/instruction/NewQueryInstruct.vue +606 -606
  77. package/src/components/webmeter/newwebmeter/NewException/MeterExceptionList.vue +557 -557
  78. package/src/components/webmeter/newwebmeter/WebhandMonthGas.vue +819 -819
  79. package/src/components/webmeter/recharge/RechargeList.vue +371 -371
  80. package/src/components/webmeter/report/ReportList.vue +453 -453
  81. package/src/components/webmeter/reportdata/ReportDataQuery.vue +339 -339
  82. package/src/filiale/WEINAN/InspectListGas.vue +616 -616
  83. package/src/filiale/WEINAN/ManageCompanyGasSummary.vue +555 -555
  84. package/src/filiale/WEINAN/ManageSummaryReport.vue +712 -712
  85. package/src/filiale/WEINAN/RecordInfoQuery.vue +1328 -1328
  86. package/src/filiale/WEINAN/businessquery/WallHangingFurnaceUserQuery.vue +418 -418
  87. package/src/filiale/ancheng/businessquery/FMYGasQuery.vue +853 -853
  88. package/src/filiale/ancheng/exportConfig.js +1112 -1112
  89. package/src/filiale/bayan/ChargeQuery.vue +1436 -1436
  90. package/src/filiale/bayan/PrintTableManage.vue +242 -242
  91. package/src/filiale/bayan/config/DefaultPrint.js +6 -6
  92. package/src/filiale/bayan/config/exportConfig.js +2642 -2642
  93. package/src/filiale/bayan/config/tableConfig.js +59 -59
  94. package/src/filiale/bayan/sale.js +8 -8
  95. package/src/filiale/bayan/webmeter/GetNoMetereadData.vue +425 -425
  96. package/src/filiale/bayan/webmeter/LostContactAnalysisList.vue +719 -719
  97. package/src/filiale/bayan/webmeter/MeterExceptionList.vue +591 -591
  98. package/src/filiale/bayan/webmeter/NewGasStatistics.vue +665 -665
  99. package/src/filiale/bayan/webmeter/NewQueryInstruct.vue +650 -650
  100. package/src/filiale/bayan/webmeter/NewWebmeterSettlementAnalysis.vue +464 -464
  101. package/src/filiale/bayan/webmeter/RechargeList.vue +430 -430
  102. package/src/filiale/bayan/webmeter/ReportDataQuery.vue +343 -343
  103. package/src/filiale/bayan/webmeter/ReportList.vue +555 -555
  104. package/src/filiale/bayan/webmeter/UserLostContactAnalysis.vue +674 -674
  105. package/src/filiale/bayan/webmeterManage.js +26 -26
  106. package/src/filiale/dingcheng/DefaultPrint.js +6 -6
  107. package/src/filiale/dingcheng/businessquery/ChangeMeterQuery.vue +798 -798
  108. package/src/filiale/dingcheng/exportConfig.js +2765 -2765
  109. package/src/filiale/dingcheng/sale.js +9 -9
  110. package/src/filiale/hantou/ChangeMeterQuery.vue +699 -699
  111. package/src/filiale/hantou/config/DefaultPrint.js +6 -6
  112. package/src/filiale/hantou/config/exportConfig.js +2667 -2667
  113. package/src/filiale/hantou/config/tableConfig.js +54 -54
  114. package/src/filiale/hantou/sale.js +8 -8
  115. package/src/filiale/jingwei/RecordInfoQuery.vue +1210 -1210
  116. package/src/filiale/jingwei/config/exportConfig.js +1106 -1106
  117. package/src/filiale/jingyang/ChargeQuery.vue +1464 -1464
  118. package/src/filiale/jingyang/RechargeList.vue +346 -346
  119. package/src/filiale/jingyang/config/DefaultPrint.js +6 -6
  120. package/src/filiale/jingyang/config/exportConfig.js +2776 -2776
  121. package/src/filiale/jingyang/config/tableConfig.js +58 -58
  122. package/src/filiale/jingyang/sale.js +8 -8
  123. package/src/filiale/kelai/AreaChargeQuery.vue +398 -398
  124. package/src/filiale/kelai/ChargeQuery.vue +1348 -1348
  125. package/src/filiale/kelai/GasStatistics.vue +561 -561
  126. package/src/filiale/kelai/NewAccountQuery.vue +417 -417
  127. package/src/filiale/kelai/NewGasStatistics.vue +556 -556
  128. package/src/filiale/kelai/feimin_style_kl.vue +400 -400
  129. package/src/filiale/kelai/reportManage.js +13 -13
  130. package/src/filiale/kelai/sale.js +17 -17
  131. package/src/filiale/liaoyuan/HandplanQuery.vue +1289 -1289
  132. package/src/filiale/lixianV3/RecordInfoQuery.vue +1474 -1474
  133. package/src/filiale/macheng/ArrearsQuery.vue +831 -831
  134. package/src/filiale/macheng/RecordInfoQuery.vue +1023 -1023
  135. package/src/filiale/macheng/config/exportConfig.js +79 -79
  136. package/src/filiale/meihekou/AreaGeneralQuery.vue +206 -206
  137. package/src/filiale/meihekou/CardHandplanQuery.vue +664 -664
  138. package/src/filiale/meihekou/ChargeQuery.vue +1274 -1274
  139. package/src/filiale/meihekou/CollectManage.vue +152 -152
  140. package/src/filiale/meihekou/HandplanQuery.vue +1248 -1248
  141. package/src/filiale/meihekou/OtherChargeQuery.vue +618 -618
  142. package/src/filiale/meihekou/UserSellHeadDetail.vue +516 -516
  143. package/src/filiale/meihekou/YingShouMingXi.vue +556 -556
  144. package/src/filiale/meihekou/config/exportConfig.js +829 -829
  145. package/src/filiale/meihekou/sale.js +39 -39
  146. package/src/filiale/ningjin/MeterExceptionList.vue +616 -616
  147. package/src/filiale/ningjin/UserLostContactAnalysis.vue +623 -623
  148. package/src/filiale/qianneng/RecordInfoQuery.vue +1369 -1369
  149. package/src/filiale/qianneng/WebmeterQuery.vue +70 -70
  150. package/src/filiale/qianneng/exportConfig.js +232 -232
  151. package/src/filiale/qingtongxia/ChargeQuery.vue +1209 -1209
  152. package/src/filiale/qingtongxia/config/exportConfig.js +712 -712
  153. package/src/filiale/rizhao/BusinessManage.vue +212 -212
  154. package/src/filiale/rizhao/sale.js +13 -13
  155. package/src/filiale/shangluo/HandplanQuery.vue +1376 -1376
  156. package/src/filiale/shangluo/sale.js +17 -17
  157. package/src/filiale/shangluo/webmeter/PriceInstructList.vue +303 -303
  158. package/src/filiale/shangluo/webmeter/UserInstructList.vue +304 -304
  159. package/src/filiale/shangluo/webmeter/WebmeterSettlementAnalysis.vue +432 -432
  160. package/src/filiale/shanxian/EchartsBox.vue +134 -134
  161. package/src/filiale/shaoguan/errorHandplanQuery.vue +386 -386
  162. package/src/filiale/shexian/ChangeMeterQuery.vue +797 -797
  163. package/src/filiale/taizhoukesi/ChangeMeterQuery.vue +683 -683
  164. package/src/filiale/taizhoukesi/NewGasStatistics.vue +539 -539
  165. package/src/filiale/taizhoukesi/config/exportConfig.js +2712 -2712
  166. package/src/filiale/taizhoukesi/sale.js +11 -11
  167. package/src/filiale/tongchuan/GasInspection.vue +716 -716
  168. package/src/filiale/tongchuan/InspectListGas.vue +700 -700
  169. package/src/filiale/tongchuan/MeterQuery.vue +1002 -1002
  170. package/src/filiale/tongchuan/ResSelectGroupNew.vue +188 -188
  171. package/src/filiale/tongchuan/config/exportConfig.js +858 -858
  172. package/src/filiale/wenxi/ChangeMeterQuery.vue +721 -721
  173. package/src/filiale/wenxi/ManageUserTypeSell.vue +173 -173
  174. package/src/filiale/wenxi/config/exportConfig.js +995 -995
  175. package/src/filiale/xinjiangdexin/ChargeQuery.vue +1435 -1435
  176. package/src/filiale/xinjiangdexin/config/exportConfig.js +2770 -2770
  177. package/src/filiale/xinjiangdexin/sale.js +7 -7
  178. package/src/filiale/yangchun/ChangeMeterQuery.vue +722 -722
  179. package/src/filiale/yangchun/ManageBusSummaryNew.vue +239 -239
  180. package/src/filiale/yangchun/OtherChargeDetailQuery.vue +74 -74
  181. package/src/filiale/yangchun/OtherChargeQuery.vue +755 -755
  182. package/src/filiale/yangchun/RecordInfoQuery.vue +1494 -1494
  183. package/src/filiale/yangchun/UserQuery.vue +980 -980
  184. package/src/filiale/yangchun/config/DefaultPrint.js +6 -6
  185. package/src/filiale/yangchun/config/exportConfig.js +1229 -1229
  186. package/src/filiale/yangchun/config/tableConfig.js +58 -58
  187. package/src/filiale/yangchun/reportManage.js +6 -6
  188. package/src/filiale/yangchun/sale.js +20 -20
  189. package/src/filiale/yangchun/webmeterManage.js +5 -5
  190. package/src/filiale/yuncheng/ChangeMeterQuery.vue +743 -743
  191. package/src/filiale/yuncheng/DeviceQuery.vue +611 -611
  192. package/src/filiale/yuncheng/GasInspection.vue +610 -610
  193. package/src/filiale/yuncheng/LostContactAnalysisList.vue +700 -700
  194. package/src/filiale/yuncheng/MeterQuery.vue +1017 -1017
  195. package/src/filiale/yuncheng/config/exportConfig.js +2681 -2681
  196. package/src/filiale/yuncheng/sale.js +23 -23
  197. package/src/filiale/zhongyi/ChargeQuery.vue +1454 -1454
  198. package/src/filiale/zhongyi/GasStatistics.vue +537 -537
  199. package/src/filiale/zhongyi/NewGasStatistics.vue +558 -558
  200. package/src/filiale/zhongyi/exportConfig.js +2556 -2556
  201. package/src/filiale/zhongyi/sale.js +33 -33
  202. package/src/filiale/zhongyi/webmeterManage.js +15 -15
  203. package/src/main.js +68 -68
  204. package/src/plugins/LodopFuncs.js +159 -159
  205. package/src/reportManage.js +777 -777
  206. package/src/saleManage.js +689 -689
  207. package/src/webmeterManage.js +130 -130
@@ -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>