manage-client 3.3.217 → 3.3.219

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