manage-client 3.3.230 → 3.3.232

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (207) hide show
  1. package/build/dev-server.js +190 -190
  2. package/gradle/wrapper/gradle-wrapper.properties +5 -5
  3. package/gradlew +234 -234
  4. package/gradlew.bat +89 -89
  5. package/hs_err_pid13052.log +206 -206
  6. package/package.json +111 -111
  7. package/src/components/SellReport/BusinessClassify.vue +292 -292
  8. package/src/components/SellReport/ChManageBusSummary.vue +273 -273
  9. package/src/components/SellReport/GasMoneyPublicConReport.vue +231 -231
  10. package/src/components/SellReport/ManageGasGroupSummary.vue +208 -0
  11. package/src/components/SellReport/ManageSellType.vue +267 -267
  12. package/src/components/SellReport/ReportItems.vue +312 -312
  13. package/src/components/SellReport/yangchun/YcBusSummaryes.vue +229 -229
  14. package/src/components/handReport/WebGastypeMonthReport.vue +190 -190
  15. package/src/components/sale/businessquery/AreaChargeQuery.vue +384 -384
  16. package/src/components/sale/businessquery/AreaGeneralQuery.vue +637 -637
  17. package/src/components/sale/businessquery/ArrearsQuery.vue +983 -983
  18. package/src/components/sale/businessquery/BalanceTable.vue +482 -482
  19. package/src/components/sale/businessquery/BusinessManage.vue +212 -212
  20. package/src/components/sale/businessquery/CancellationQuery.vue +428 -428
  21. package/src/components/sale/businessquery/CardHandplanQuery.vue +546 -546
  22. package/src/components/sale/businessquery/ChangeMeterQuery.vue +699 -699
  23. package/src/components/sale/businessquery/ChargeQuery.vue +1435 -1435
  24. package/src/components/sale/businessquery/CollectManage.vue +161 -161
  25. package/src/components/sale/businessquery/CommunityPaymen.vue +307 -307
  26. package/src/components/sale/businessquery/DisableQuery.vue +523 -523
  27. package/src/components/sale/businessquery/EnableQuery.vue +462 -462
  28. package/src/components/sale/businessquery/FMYGasQuery.vue +872 -872
  29. package/src/components/sale/businessquery/FillCardQuery.vue +573 -573
  30. package/src/components/sale/businessquery/FillGasQuery.vue +593 -593
  31. package/src/components/sale/businessquery/GroupChargeQuery.vue +492 -492
  32. package/src/components/sale/businessquery/HandBookQuery.vue +692 -692
  33. package/src/components/sale/businessquery/HandBookTwoQuery.vue +704 -704
  34. package/src/components/sale/businessquery/HandGasPropertiesQuery.vue +671 -671
  35. package/src/components/sale/businessquery/HandPeopleQuery.vue +719 -719
  36. package/src/components/sale/businessquery/HandRateQuery.vue +524 -524
  37. package/src/components/sale/businessquery/Handgasquery.vue +477 -477
  38. package/src/components/sale/businessquery/HandplanQuery.vue +1376 -1376
  39. package/src/components/sale/businessquery/MonthGasQuery.vue +482 -482
  40. package/src/components/sale/businessquery/NoBusinessQuery.vue +778 -778
  41. package/src/components/sale/businessquery/PlotSummaryQuery.vue +499 -499
  42. package/src/components/sale/businessquery/ProceedsOper.vue +415 -415
  43. package/src/components/sale/businessquery/ResidentialCardQuery.vue +377 -377
  44. package/src/components/sale/businessquery/ResidentialQuery.vue +415 -415
  45. package/src/components/sale/businessquery/SellOrgnameQuery.vue +680 -680
  46. package/src/components/sale/businessquery/SellPeopleQuery.vue +752 -752
  47. package/src/components/sale/businessquery/SellingHand.vue +421 -421
  48. package/src/components/sale/businessquery/TransferQuery.vue +502 -502
  49. package/src/components/sale/businessquery/UnhandBusiness.vue +328 -328
  50. package/src/components/sale/businessquery/UserSellHeadDetail.vue +579 -579
  51. package/src/components/sale/businessquery/WebHandplanQuery.vue +987 -987
  52. package/src/components/sale/businessquery/WebMeterMonthUserGasQuery.vue +471 -471
  53. package/src/components/sale/businessquery/YingShouMingXi.vue +524 -524
  54. package/src/components/sale/businessquery/YonghuJieyu.vue +358 -358
  55. package/src/components/sale/businessquery/chargeRecordMaintenanceQuery.vue +353 -353
  56. package/src/components/sale/businessquery/usergas.vue +315 -315
  57. package/src/components/sale/config/exportConfig.js +2762 -2762
  58. package/src/components/sale/config/tableConfig.js +59 -59
  59. package/src/components/sale/filesquery/FireQuery.vue +539 -539
  60. package/src/components/sale/filesquery/RecordInfoQuery.vue +1448 -1448
  61. package/src/components/sale/filesquery/UserQuery.vue +977 -977
  62. package/src/components/webmeter/DrillData/GetNoMetereadData.vue +423 -423
  63. package/src/components/webmeter/DrillData/LostContactAnalysisList.vue +739 -736
  64. package/src/components/webmeter/DrillData/UserLostContactAnalysis.vue +691 -689
  65. package/src/components/webmeter/WebmeterQuery.vue +77 -77
  66. package/src/components/webmeter/gasAnalysis/WebmeterSettlementAnalysis.vue +456 -456
  67. package/src/components/webmeter/gasStatistics/GasStatistics.vue +526 -526
  68. package/src/components/webmeter/gasStatistics/NewGasStatistics.vue +542 -542
  69. package/src/components/webmeter/instruction/NewQueryInstruct.vue +606 -606
  70. package/src/components/webmeter/newwebmeter/NewException/MeterExceptionList.vue +557 -557
  71. package/src/components/webmeter/newwebmeter/WebhandMonthGas.vue +819 -819
  72. package/src/components/webmeter/recharge/RechargeList.vue +371 -371
  73. package/src/components/webmeter/report/ReportList.vue +453 -453
  74. package/src/components/webmeter/reportdata/ReportDataQuery.vue +339 -339
  75. package/src/filiale/WEINAN/InspectListGas.vue +616 -616
  76. package/src/filiale/WEINAN/ManageCompanyGasSummary.vue +555 -555
  77. package/src/filiale/WEINAN/ManageSummaryReport.vue +712 -712
  78. package/src/filiale/WEINAN/RecordInfoQuery.vue +1328 -1328
  79. package/src/filiale/WEINAN/businessquery/WallHangingFurnaceUserQuery.vue +418 -418
  80. package/src/filiale/ancheng/businessquery/FMYGasQuery.vue +853 -853
  81. package/src/filiale/ancheng/exportConfig.js +1112 -1112
  82. package/src/filiale/bayan/ChargeQuery.vue +1436 -1436
  83. package/src/filiale/bayan/PrintTableManage.vue +242 -242
  84. package/src/filiale/bayan/config/DefaultPrint.js +6 -6
  85. package/src/filiale/bayan/config/exportConfig.js +2642 -2642
  86. package/src/filiale/bayan/config/tableConfig.js +59 -59
  87. package/src/filiale/bayan/sale.js +8 -8
  88. package/src/filiale/bayan/webmeter/GetNoMetereadData.vue +425 -425
  89. package/src/filiale/bayan/webmeter/LostContactAnalysisList.vue +719 -719
  90. package/src/filiale/bayan/webmeter/MeterExceptionList.vue +591 -591
  91. package/src/filiale/bayan/webmeter/NewGasStatistics.vue +665 -665
  92. package/src/filiale/bayan/webmeter/NewQueryInstruct.vue +650 -650
  93. package/src/filiale/bayan/webmeter/NewWebmeterSettlementAnalysis.vue +464 -464
  94. package/src/filiale/bayan/webmeter/RechargeList.vue +430 -430
  95. package/src/filiale/bayan/webmeter/ReportDataQuery.vue +343 -343
  96. package/src/filiale/bayan/webmeter/ReportList.vue +555 -555
  97. package/src/filiale/bayan/webmeter/UserLostContactAnalysis.vue +674 -674
  98. package/src/filiale/bayan/webmeterManage.js +26 -26
  99. package/src/filiale/dingcheng/DefaultPrint.js +6 -6
  100. package/src/filiale/dingcheng/businessquery/ChangeMeterQuery.vue +798 -798
  101. package/src/filiale/dingcheng/exportConfig.js +2765 -2765
  102. package/src/filiale/dingcheng/sale.js +9 -9
  103. package/src/filiale/hantou/ChangeMeterQuery.vue +699 -699
  104. package/src/filiale/hantou/config/DefaultPrint.js +6 -6
  105. package/src/filiale/hantou/config/exportConfig.js +2667 -2667
  106. package/src/filiale/hantou/config/tableConfig.js +54 -54
  107. package/src/filiale/hantou/sale.js +8 -8
  108. package/src/filiale/jingwei/RecordInfoQuery.vue +1210 -1210
  109. package/src/filiale/jingwei/config/exportConfig.js +1106 -1106
  110. package/src/filiale/jingyang/ChargeQuery.vue +1464 -1464
  111. package/src/filiale/jingyang/RechargeList.vue +346 -346
  112. package/src/filiale/jingyang/config/DefaultPrint.js +6 -6
  113. package/src/filiale/jingyang/config/exportConfig.js +2776 -2776
  114. package/src/filiale/jingyang/config/tableConfig.js +58 -58
  115. package/src/filiale/jingyang/sale.js +8 -8
  116. package/src/filiale/kelai/AreaChargeQuery.vue +398 -398
  117. package/src/filiale/kelai/ChargeQuery.vue +1348 -1348
  118. package/src/filiale/kelai/GasStatistics.vue +561 -561
  119. package/src/filiale/kelai/NewAccountQuery.vue +417 -417
  120. package/src/filiale/kelai/NewGasStatistics.vue +556 -556
  121. package/src/filiale/kelai/feimin_style_kl.vue +400 -400
  122. package/src/filiale/kelai/reportManage.js +13 -13
  123. package/src/filiale/kelai/sale.js +17 -17
  124. package/src/filiale/liaoyuan/HandplanQuery.vue +1289 -1289
  125. package/src/filiale/lixianV3/RecordInfoQuery.vue +1474 -1474
  126. package/src/filiale/macheng/ArrearsQuery.vue +831 -831
  127. package/src/filiale/macheng/RecordInfoQuery.vue +1023 -1023
  128. package/src/filiale/macheng/config/exportConfig.js +79 -79
  129. package/src/filiale/meihekou/AreaGeneralQuery.vue +206 -206
  130. package/src/filiale/meihekou/CardHandplanQuery.vue +664 -664
  131. package/src/filiale/meihekou/ChargeQuery.vue +1274 -1274
  132. package/src/filiale/meihekou/CollectManage.vue +152 -152
  133. package/src/filiale/meihekou/HandplanQuery.vue +1248 -1248
  134. package/src/filiale/meihekou/OtherChargeQuery.vue +618 -618
  135. package/src/filiale/meihekou/UserSellHeadDetail.vue +516 -516
  136. package/src/filiale/meihekou/YingShouMingXi.vue +556 -556
  137. package/src/filiale/meihekou/config/exportConfig.js +829 -829
  138. package/src/filiale/meihekou/sale.js +39 -39
  139. package/src/filiale/ningjin/MeterExceptionList.vue +616 -616
  140. package/src/filiale/ningjin/UserLostContactAnalysis.vue +623 -623
  141. package/src/filiale/qianneng/RecordInfoQuery.vue +1369 -1369
  142. package/src/filiale/qianneng/WebmeterQuery.vue +70 -70
  143. package/src/filiale/qianneng/exportConfig.js +232 -232
  144. package/src/filiale/qingtongxia/ChargeQuery.vue +1209 -1209
  145. package/src/filiale/qingtongxia/config/exportConfig.js +712 -712
  146. package/src/filiale/rizhao/BusinessManage.vue +212 -212
  147. package/src/filiale/rizhao/sale.js +13 -13
  148. package/src/filiale/shangluo/HandplanQuery.vue +1376 -1376
  149. package/src/filiale/shangluo/sale.js +17 -17
  150. package/src/filiale/shangluo/webmeter/PriceInstructList.vue +303 -303
  151. package/src/filiale/shangluo/webmeter/UserInstructList.vue +304 -304
  152. package/src/filiale/shangluo/webmeter/WebmeterSettlementAnalysis.vue +432 -432
  153. package/src/filiale/shanxian/EchartsBox.vue +134 -134
  154. package/src/filiale/shaoguan/errorHandplanQuery.vue +386 -386
  155. package/src/filiale/shexian/ChangeMeterQuery.vue +797 -797
  156. package/src/filiale/taizhoukesi/ChangeMeterQuery.vue +683 -683
  157. package/src/filiale/taizhoukesi/NewGasStatistics.vue +539 -539
  158. package/src/filiale/taizhoukesi/config/exportConfig.js +2712 -2712
  159. package/src/filiale/taizhoukesi/sale.js +11 -11
  160. package/src/filiale/tongchuan/GasInspection.vue +716 -716
  161. package/src/filiale/tongchuan/InspectListGas.vue +700 -700
  162. package/src/filiale/tongchuan/MeterQuery.vue +1002 -1002
  163. package/src/filiale/tongchuan/ResSelectGroupNew.vue +188 -188
  164. package/src/filiale/tongchuan/config/exportConfig.js +858 -858
  165. package/src/filiale/wenxi/ChangeMeterQuery.vue +721 -721
  166. package/src/filiale/wenxi/ManageUserTypeSell.vue +173 -173
  167. package/src/filiale/wenxi/config/exportConfig.js +995 -995
  168. package/src/filiale/xinjiangdexin/ChargeQuery.vue +1435 -1435
  169. package/src/filiale/xinjiangdexin/config/exportConfig.js +2770 -2770
  170. package/src/filiale/xinjiangdexin/sale.js +7 -7
  171. package/src/filiale/yangchun/ChangeMeterQuery.vue +722 -722
  172. package/src/filiale/yangchun/ManageBusSummaryNew.vue +239 -239
  173. package/src/filiale/yangchun/OtherChargeDetailQuery.vue +74 -74
  174. package/src/filiale/yangchun/OtherChargeQuery.vue +755 -755
  175. package/src/filiale/yangchun/RecordInfoQuery.vue +1494 -1494
  176. package/src/filiale/yangchun/UserQuery.vue +980 -980
  177. package/src/filiale/yangchun/config/DefaultPrint.js +6 -6
  178. package/src/filiale/yangchun/config/exportConfig.js +1229 -1229
  179. package/src/filiale/yangchun/config/tableConfig.js +58 -58
  180. package/src/filiale/yangchun/reportManage.js +6 -6
  181. package/src/filiale/yangchun/sale.js +20 -20
  182. package/src/filiale/yangchun/webmeterManage.js +5 -5
  183. package/src/filiale/yuncheng/ChangeMeterQuery.vue +743 -743
  184. package/src/filiale/yuncheng/DeviceQuery.vue +611 -611
  185. package/src/filiale/yuncheng/GasInspection.vue +610 -610
  186. package/src/filiale/yuncheng/LostContactAnalysisList.vue +700 -700
  187. package/src/filiale/yuncheng/MeterQuery.vue +1017 -1017
  188. package/src/filiale/yuncheng/config/exportConfig.js +2681 -2681
  189. package/src/filiale/yuncheng/sale.js +23 -23
  190. package/src/filiale/zhongyi/ChargeQuery.vue +1454 -1454
  191. package/src/filiale/zhongyi/GasStatistics.vue +537 -537
  192. package/src/filiale/zhongyi/NewGasStatistics.vue +558 -558
  193. package/src/filiale/zhongyi/exportConfig.js +2556 -2556
  194. package/src/filiale/zhongyi/sale.js +33 -33
  195. package/src/filiale/zhongyi/webmeterManage.js +15 -15
  196. package/src/main.js +68 -68
  197. package/src/plugins/LodopFuncs.js +159 -159
  198. package/src/reportManage.js +777 -773
  199. package/src/saleManage.js +689 -689
  200. package/src/webmeterManage.js +130 -130
  201. package/.gradle/7.4/checksums/checksums.lock +0 -0
  202. package/.gradle/7.4/dependencies-accessors/dependencies-accessors.lock +0 -0
  203. package/.gradle/7.4/dependencies-accessors/gc.properties +0 -0
  204. package/.gradle/7.4/executionHistory/executionHistory.lock +0 -0
  205. package/.gradle/7.4/fileChanges/last-build.bin +0 -0
  206. package/.gradle/7.4/fileHashes/fileHashes.lock +0 -0
  207. package/.gradle/7.4/gc.properties +0 -0
@@ -1,674 +1,674 @@
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" novalidate partial>
7
- <div class="row">
8
- <!--<div class="form-group">-->
9
- <!--<input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_username" placeholder='客户名称'-->
10
- <!--condition="f_user_name = '{}'" v-next-el='userid' v-el:username-->
11
- <!--:size="model.f_user_name ? model.f_user_name.length * 2 : 8">-->
12
- <!--</div>-->
13
-
14
- <div class="col-sm-2 form-group">
15
- <label class="font_normal_body">客户编号</label>
16
- <input @keyup.enter="search" style="width:60%" type="text" class="input_search"
17
- v-model="model.f_userinfo_code" placeholder='客户编号'
18
- condition="f_userinfo_code like '%{}%'" v-el:xq v-next-el='userinfocode' v-el:username
19
- >
20
- </div>
21
- <div class="col-sm-2 form-group">
22
- <label class="font_normal_body">客户名称</label>
23
- <input @keyup.enter="search" style="width:60%" type="text" class="input_search"
24
- v-model="model.f_user_name" placeholder='客户名称'
25
- condition="f_user_name like '%{}%'" v-el:xq v-next-el='username' v-el:username
26
- >
27
- </div>
28
- <div class="col-sm-2 form-group">
29
- <label class="font_normal_body">客户地址</label>
30
- <input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_area"
31
- placeholder='地址'
32
- condition="f_address like '%{}%'" v-el:xq v-next-el='address' v-el:area
33
- >
34
- </div>
35
- <div class="col-sm-2 form-group">
36
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;表号&nbsp;&nbsp;&nbsp;</label>
37
- <input @keyup.enter="search" style="width:60%" type="text" class="input_search"
38
- v-model="model.f_meternumber" placeholder='表号'
39
- condition="f_meternumber like '%{}%'" v-next-el='meternumber' v-el:meternumber
40
- >
41
- </div>
42
-
43
- <div style="float:right">
44
- <button class="button_search button_spacing" @click="search()">查询</button>
45
- <button class="button_clear button_spacing" @click="$parent.$parent.clearmsg">清空</button>
46
- <export-excel :data="$parent.$parent.getCondition" class="button_export button_spacing"
47
- :field="$parent.$parent.getfield" :sumname="$parent.$parent.sumName"
48
- :header="$parent.$parent.other"
49
- sqlurl="api/af-revenue/logic/openapi/exportfile" sql-name="webmeter_getUserLoseQuery"
50
- template-name='用户失联查询'
51
- :choose-col="true"></export-excel>
52
- <!-- <button class="button_export button_spacing" @click="$parent.$parent.SaveAsFile('lostuserlist')">导出</button>-->
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"
56
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
57
- @click="$parent.$parent.hidden()"></div>
58
- </div>
59
- </div>
60
- <div class="row" v-show="$parent.$parent.criteriaShow">
61
- <res-select-group :show-component="['company','department']"
62
- :initres="$parent.$parent.org"
63
- @re-res="$parent.$parent.getorg">
64
- </res-select-group>
65
- <div class="col-sm-2 form-group">
66
- <label class="font_normal_body">客户类型</label>
67
- <v-select style="width:60%" id="f_user_type"
68
- v-model="model.f_user_type"
69
- placeholder='客户类型'
70
- :value.sync="model.f_user_type"
71
- :options='$parent.$parent.usertypes'
72
- condition="f_user_type = '{}'"
73
- close-on-select>
74
- </v-select>
75
- </div>
76
- <div class="col-sm-2 form-group">
77
- <label class="font_normal_body">用气性质</label>
78
- <v-select style="width:60%" id="f_gasproperties"
79
- v-model="model.f_gasproperties"
80
- placeholder='用气性质'
81
- :value.sync="model.f_gasproperties"
82
- :options='$parent.$parent.Gasproperties'
83
- condition="f_gasproperties = '{}'"
84
- close-on-select>
85
- </v-select>
86
- </div>
87
- <div class="col-sm-2 form-group">
88
- <label class="font_normal_body">气表品牌</label>
89
- <v-select
90
- placeholder='气表品牌'
91
- :value.sync="model.f_meter_brand"
92
- v-model="model.f_meter_brand"
93
- :options='$parent.$parent.WarningType'
94
- @change="$parent.$parent.getMeterType"
95
- close-on-select
96
- condition="f_meter_brand='{}'">
97
- </v-select>
98
- </div>
99
- <div class="col-sm-2 form-group">
100
- <label class="font_normal_body">气表型号</label>
101
- <v-select v-if="$parent.$parent.styles"
102
- placeholder='气表型号'
103
- :value.sync="model.f_meter_style"
104
- v-model="model.f_meter_style"
105
- :options='$parent.$parent.Warningstyle'
106
- close-on-select
107
- condition="f_meter_style='{}'">
108
- </v-select>
109
- <v-select v-if="!$parent.$parent.styles"
110
- placeholder='气表型号'
111
- :value.sync="model.f_meter_style"
112
- v-model="model.f_meter_style"
113
- :options='$parent.$parent.Warningstyles'
114
- close-on-select
115
- condition="f_meter_style='{}'">
116
- </v-select>
117
- </div>
118
- <div class="col-sm-2 form-group">
119
- <label class="font_normal_body">用户状态</label>
120
- <v-select
121
- placeholder='用户状态'
122
- value-single
123
- style="width:60%"
124
- :value.sync="model.f_user_state"
125
- v-model="model.f_user_state"
126
- :options='$parent.$parent.userstate'
127
- close-on-select condition="f_user_state ='{}'">
128
- </v-select>
129
- </div>
130
-
131
- <div class="col-sm-2 form-group">
132
- <label class="font_normal_body">开始时间</label>
133
- <datepicker style="width:60%" id="startdate" placeholder="开始时间"
134
- v-model="model.startDate"
135
- :value.sync="model.startDate"
136
- :disabled-days-of-Week="[]"
137
- :format="'yyyy-MM-dd HH:mm:ss'"
138
-
139
- :show-reset-button="reset">
140
- </datepicker>
141
- </div>
142
- <div class="col-sm-2 form-group">
143
- <label class="font_normal_body">结束时间</label>
144
- <datepicker style="width:60%" id="enddate" placeholder="结束日期"
145
- v-model="model.endDate"
146
- :value.sync="model.endDate"
147
- :disabled-days-of-Week="[]"
148
- :format="'yyyy-MM-dd HH:mm:ss'"
149
-
150
- :show-reset-button="reset">
151
- </datepicker>
152
- </div>
153
- <div class="col-sm-2 form-group flex-row" style="white-space: nowrap">
154
- <label class="font_normal_body">失联天数&nbsp;</label>
155
- <div class="row">
156
- <input type="text" style="width:27%" class="input_search" v-model="model.SLday1"
157
- condition="SLday >= {} " placeholder="">
158
- <label class="font_normal_body"> ≤ x ≤ </label>
159
- <input type="text" style="width:27%" class="input_search" v-model="model.SLday2"
160
- condition="SLday <= {} " placeholder="">
161
- </div>
162
- </div>
163
- <div class="col-sm-2 form-group ">
164
- <label for="contain_newfile" class="font_normal_body">开户未上报</label>
165
- <v-select id="contain_newfile"
166
- v-model="model.notappear"
167
- style="width:60%"
168
- :value.sync="model.notappear"
169
- :options='$parent.$parent.not_appear'
170
- :value-single="true"
171
- close-on-select>
172
- </v-select>
173
- </div>
174
-
175
- </div>
176
-
177
-
178
- <!--:top='40' :left='60' :right='40' :bottom='60'-->
179
- <!--:thead='"<th>序号</th>\n"+-->
180
- <!--"<th>档案编号</th>" +-->
181
- <!--" <th>档案标识</th>"+-->
182
- <!--"<th>客户名称</th>"+-->
183
- <!--"<th>表号</th"+-->
184
- <!--"<th>表具类型</th>"+-->
185
- <!--"<th>客户类型</th>"+-->
186
- <!--"<th>区域</th>"+-->
187
- <!--"<th>小区</th>"+-->
188
- <!--"<th>地址</th>"+-->
189
- <!--"<th>用气气量</th>"+-->
190
- <!--"<th>用气金额</th>"-->
191
- <!--+"<th>用气价格</th>"-->
192
- <!--+"<th>时间</th>"-->
193
- <!--+"<th>所属机构</th>"'-->
194
- <!--:fields='["$index+1","f_username","f_meternumber","f_usertype","f_save_money","f_operate_status","f_close_reason","f_area","f_districtname","f_address","id","yytdepa"]'>-->
195
- <!--</print-table>-->
196
- <!--<export-excel :data="{orderitem: 'lastinputdate desc', condition: '1=1'}"-->
197
- <!--:field="{f_username: '客户名称', f_meternumber: '表号',f_usertype:'客户类型',f_save_money:'剩余金额',-->
198
- <!--f_operate_status:'状态',f_close_reason:'关阀原因',f_area:'区域',f_districtname:'小区', f_address: '地址',id:'档案编号',yytdepa:'所属机构'}"-->
199
- <!--sqlurl="api/af-revenue/sql/getUserGas"></export-excel>-->
200
-
201
- </div>
202
- </criteria>
203
- <data-grid id="lostuserlist" :model="model" partial='list' v-ref:grid class="list_area table_sy">
204
- <template partial='head'>
205
- <tr>
206
- <th style="text-align:center">
207
- <nobr>序号</nobr>
208
- </th>
209
-
210
- <!--<th rowspan="2" style="text-align:center"><nobr>客户编号</nobr></th>-->
211
-
212
- <th style="text-align:center">
213
- <nobr>客户编号</nobr>
214
- </th>
215
- <th style="text-align:center">
216
- <nobr>客户名称</nobr>
217
- </th>
218
- <th style="text-align:center">
219
- <nobr>客户地址</nobr>
220
- </th>
221
- <th style="text-align:center">
222
- <nobr>客户类型</nobr>
223
- </th>
224
- <th style="text-align:center">
225
- <nobr>用气性质</nobr>
226
- </th>
227
- <th style="text-align:center">
228
- <nobr>联系电话</nobr>
229
- </th>
230
- <th style="text-align:center">
231
- <nobr>系统金额</nobr>
232
- </th>
233
- <th style="text-align:center">
234
- <nobr>表号</nobr>
235
- </th>
236
- <th style="text-align:center">
237
- <nobr>启用日期</nobr>
238
- </th>
239
-
240
- <th style="text-align:center">
241
- <nobr>初次上报日期</nobr>
242
- </th>
243
- <th style="text-align:center">
244
- <nobr>最后上报日期</nobr>
245
- </th>
246
- <th style="text-align:center">
247
- <nobr>最后表读数</nobr>
248
- </th>
249
-
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
- </tr>
269
-
270
- </template>
271
- <template partial='body'>
272
- <td style="text-align:center">{{ $index + 1 }}</td>
273
- <!--<td style="text-align:center">{{row.f_userfiles_id}}</td>-->
274
-
275
-
276
- <td style="text-align: center;">
277
- <nobr>
278
- <span @click="$parent.$parent.$parent.showmsg(row)"><a>{{ row.f_userinfo_code }}</a></span>
279
- </nobr>
280
- </td>
281
- <td style="text-align:center">
282
- <nobr>{{ row.f_user_name }}</nobr>
283
- </td>
284
- <td>
285
- <nobr>{{ row.f_address }}</nobr>
286
- </td>
287
- <td style="text-align:center">{{ row.f_user_type }}</td>
288
- <td style="text-align:center">{{ row.f_gasproperties }}</td>
289
- <td style="text-align:center">{{ row.f_user_phone }}</td>
290
- <td style="text-align:center">{{ row.f_balance_amount }}</td>
291
- <td style="text-align:center">
292
- <nobr>{{ row.f_meternumber }}</nobr>
293
- </td>
294
- <td style="text-align:center">
295
- <nobr>{{ row.f_startuse_date }}</nobr>
296
- </td>
297
- <td style="text-align:center">
298
- <nobr>{{ row.initinsertdate }}</nobr>
299
- </td>
300
- <td style="text-align:center">
301
- <nobr>{{ row.lastinsertdate }}</nobr>
302
- </td>
303
- <td style="text-align:center">{{ row.f_meter_base }}</td>
304
-
305
- <td style="text-align:center">
306
- <nobr>{{ row.slday }}</nobr>
307
- </td>
308
- <td style="text-align:center">{{ row.f_meter_brand }}</td>
309
- <td style="text-align:center">
310
- <nobr>{{ row.f_meter_style }}</nobr>
311
- </td>
312
- <td style="text-align:center">
313
- <nobr>{{ row.f_user_state }}</nobr>
314
- </td>
315
- <td style="text-align:center">
316
- <nobr>{{ row.f_orgname }}</nobr>
317
- </td>
318
- <td style="text-align:center">
319
- <nobr>{{ row.f_depname }}</nobr>
320
- </td>
321
- <!--<td style="text-align:center">{{row.new_days}}</td>-->
322
- <!--<td style="text-align:center">{{row.f_state}}</td>-->
323
-
324
- </template>
325
- </data-grid>
326
- </criteria-paged>
327
-
328
- </div>
329
- <!-- <div class="flex-row" v-show="echarts" style="width: 100%;height: 90%;">-->
330
- <!-- <lost-contact-echarts :groupname="groupname[0]" :condition="condition"-->
331
- <!-- :echarts="echarts"></lost-contact-echarts>-->
332
- <!-- </div>-->
333
- <!--&lt;!&ndash; <div v-show="isActiveTotalForm" style="height: 40px;width: 100%;">&ndash;&gt;-->
334
- <!--&lt;!&ndash; <button class="button_search button_spacing" @click="notShowTotalForm()">隐藏汇总</button>&ndash;&gt;-->
335
- <!--&lt;!&ndash; </div>&ndash;&gt;-->
336
- <!-- <div class="span" v-show="isActiveTotalForm" style="width: 100%;height: 90%;">-->
337
- <!-- <lost-contact-eform :condition="condition"-->
338
- <!-- ></lost-contact-eform>-->
339
- <!-- </div>-->
340
- </div>
341
- <div class="flex-row" style="width:99%;height:98%;margin-bottom:0px" v-if="showdetail">
342
- <user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id"
343
- @cancel-main="cancel"></user-info-detail-manage-new>
344
- </div>
345
- </template>
346
-
347
- <script>
348
- import {PagedList} from 'vue-client'
349
- import UserGasEcharts from '../../../components/webmeter/DrillData/UserGasEcharts'
350
- import plugin from 'system-clients/src/plugins/GetLoginInfoService'
351
- import {HttpResetClass} from 'vue-client'
352
- import * as Util from '../../../Util'
353
-
354
- let readySomething = async function (self) {
355
-
356
- await self.$MagLoadParams.loadParam()
357
- self.initParams()
358
- let year = new Date().getFullYear()
359
- self.$refs.paged.$refs.cri.model.startDate = year + '-01-01 00:00:00'
360
- self.$refs.paged.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
361
- self.$refs.paged.$refs.cri.model.notappear = '不包含'
362
- self.$refs.paged.$refs.cri.model.SLday1 = 10
363
- self.$refs.paged.$refs.cri.model.f_user_state = '正常'
364
- self.sumsmodel = self.$refs.paged.$refs.grid.model.sums;
365
- }
366
- export default {
367
- title: '失联分析',
368
- props: ['data'],
369
- components: {UserGasEcharts},
370
-
371
- data() {
372
- return {
373
- model: new PagedList('api/af-revenue/sql/webmeter_getUserLoseQuery', 20, {
374
- startDate: 'this.model.startDate',
375
- endDate: 'this.model.endDate'
376
- }),
377
- getfield: {
378
- "f_userinfo_code": "客户编号",
379
- "f_user_name": "客户名称",
380
- "f_address": "客户地址",
381
- "f_user_type": "客户类型",
382
- "f_gasproperties": "用气性质",
383
- "f_meternumber": "表号",
384
- "f_user_phone": "联系电话",
385
- "f_balance_amount": "系统余额",
386
- "f_user_state": "用户状态",
387
- "f_startuse_date": "启用日期",
388
- "initinsertdate": "初次上报日期",
389
- "lastinsertdate": "最后上报日期",
390
- "f_meter_base": "最后表读数",
391
- "slday": "失联天数",
392
- "f_meter_brand": "气表厂家",
393
- "f_orgname": "组织机构",
394
- 'f_depname': '部门'
395
- },
396
- reportStr: null,
397
- show: false,
398
- showdetail: false,
399
- rowdata: {},
400
- criteriaShow: false,
401
- outlets: [],
402
- operator: [],
403
- other: [],
404
- sumsmodel: {},
405
- filename: '',
406
- WarningType: [
407
- {label: '全部', value: ''}
408
- ],
409
- Warningstyles: [
410
- {label: '全部', value: ''}
411
- ],
412
- styles: false,
413
- org: {
414
- org: [this.$login.f.orgid],
415
- dep: [],
416
- user: [],
417
- },
418
- orgCondtionStr: '',
419
- echarts: false,
420
- searchshow: false,
421
- isActiveTotalForm: false,
422
- condition: '1=1',
423
- groupname: ['max_days_type'],
424
- getgroupname: [
425
- {label: '客户类型', value: 'f_user_type'},
426
- {label: '用气性质', value: 'f_gasproperties'},
427
- {label: '分公司', value: 'f_orgname'},
428
- {label: '最长失联天数', value: 'max_days_type'},
429
- ]
430
- }
431
- },
432
- ready() {
433
- readySomething(this)
434
- this.getMeterTypeAndBrand('f_meter_brand', '1=1')
435
- },
436
-
437
- methods: {
438
- getotherfooter() {
439
- this.other = [];
440
-
441
- let firstLine = [`导出时间: ${this.$login.toStandardTimeString()}`];
442
-
443
-
444
- let secondLine = [
445
- `开始时间: ${this.$refs.paged.$refs.cri.model.startDate}`,
446
- `结束时间: ${this.$refs.paged.$refs.cri.model.endDate}`
447
- ];
448
-
449
- this.other.push(firstLine);
450
- this.other.push(secondLine);
451
-
452
- console.log('Header Data:', this.other);
453
- },
454
- getMeterType() {
455
- this.Warningstyle = [{label: '全部', value: ''}]
456
- this.styles = false
457
- let f_meter_brand = this.$refs.paged.$refs.cri.model.f_meter_brand
458
- this.getMeterTypeAndBrand('f_meter_style', `f_meter_brand='${f_meter_brand}'`)
459
- },
460
- getMeterTypeAndBrand(groupname, condition) {
461
- condition = `${condition} and ui.f_orgid like '${this.$login.f.orgid}%'`
462
- let self = this
463
- let load = new HttpResetClass()
464
- load.load('POST', 'api/af-revenue/sql/getMeterStyleAndBrand1', {
465
- data: {
466
- condition: condition,
467
- groupname: groupname
468
- }
469
- }, {warnMsg: null, resolveMsg: null}).then((res) => {
470
- for (let i = 0; i < res.data.length; i++) {
471
- if (groupname == 'f_meter_brand') {
472
- let dr = {}
473
- dr.label = res.data[i].f_meter_brand
474
- dr.value = res.data[i].f_meter_brand
475
- //气表品牌
476
- // self.WarningType.push(dr)
477
- } else if (groupname == 'f_meter_style') {
478
- self.Warningstyle = [
479
- {label: '全部', value: ''}
480
- ],
481
- self.$refs.paged.$refs.cri.model.f_meter_style = ''
482
- let dr = {}
483
- dr.label = res.data[i].f_meter_style
484
- dr.value = res.data[i].f_meter_style
485
- //气表类型
486
- self.Warningstyle.push(dr)
487
- }
488
- }
489
- if (self.Warningstyle.length > 1) {
490
- self.showMeterStyle()
491
- }
492
- })
493
-
494
- },
495
- showMeterStyle() {
496
- this.styles = true
497
- },
498
- hidden() {
499
- this.criteriaShow = !this.criteriaShow
500
- },
501
- showmsg(obj) {
502
- this.rowdata = obj
503
- this.showdetail = true
504
- },
505
- cancel() {
506
- this.showdetail = false
507
- },
508
- clickshow() {
509
- this.searchshow = !this.searchshow
510
- },
511
- search(args) {
512
- if (this.orgCondtionStr) {
513
- this.condition = `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr
514
- } else {
515
- this.condition = `${this.$refs.paged.$refs.cri.condition} and f_orgid = '${this.$login.f.orgid}'`
516
- }
517
- args.condition = this.condition
518
- if (this.$refs.paged.$refs.cri.model.notappear) {
519
- if (this.$refs.paged.$refs.cri.model.notappear === '不包含') {
520
- args.condition = args.condition + " and initinsertdate <> '开户未上报'"
521
- }
522
- }
523
- this.startDate = this.$refs.paged.$refs.cri.model.startDate
524
- this.endDate = this.$refs.paged.$refs.cri.model.endDate
525
- if (this.endDate == '' || this.startDate == '') {
526
- return this.$showMessage("时间区间的开始和结束时间不能为空!")
527
- }
528
- this.model.search(args.condition, args.model)
529
- },
530
- getorg(condition, obj) {
531
- this.orgCondtionStr = condition
532
- this.orgname = obj.orgnames[0]
533
- },
534
- // SaveAsFile(str) {
535
- // this.$showMessage('您是否需要导出本页数据?', ['confirm', 'cancel']).then((res) => {
536
- // if (res === 'confirm') {
537
- // let style = '<style>' +
538
- // 'td {border-width: 1px;padding: 2px;border-style: solid; border-color:black; border-collapse:collapse;} .tdright{text-align: right;} .tdcenter{text-align: center;}</style>';
539
- // let strHtml = style + document.getElementById(str).innerHTML;
540
- // console.log(strHtml);
541
- // let LODOP = getLodop();
542
- // LODOP.PRINT_INIT('');
543
- // LODOP.ADD_PRINT_TABLE(5, 5, '99%', '100%', strHtml);
544
- // LODOP.SAVE_TO_FILE('失联分析.xls')
545
- // }
546
- // })
547
- // },
548
- clearmsg() {
549
- this.$refs.paged.$refs.cri.model = {}
550
- },
551
- close() {
552
- this.show = false
553
- },
554
- initParams() {
555
- let arr = []
556
- this.$MagGetSaleParam.getGasbrand().forEach((item) => {
557
- let temp = {}
558
- if (item.value.f_meter_type === '物联网表') {
559
- temp.label = item.label
560
- temp.value = item.value.f_meter_brand
561
- arr.push(temp)
562
- }
563
-
564
- })
565
- this.WarningType = [{label: '全部', value: ''}, ...arr]
566
- },
567
- // 显示柱状图
568
- showEcharts() {
569
- this.echarts = true
570
- this.isActiveTotalForm = false
571
- },
572
- notShowTotalForm() {
573
- this.echarts = false
574
- this.isActiveTotalForm = false
575
- },
576
- // 不显示柱状图
577
- notShowEcharts() {
578
- this.echarts = false
579
- this.isActiveTotalForm = false
580
- },
581
- // 显示汇总数据表格
582
- showTotalForm() {
583
- this.echarts = false
584
- this.isActiveTotalForm = true
585
- }
586
- },
587
- watch: {
588
- 'data'(val) {
589
- if (val.f_files_path) {
590
- this.getFileContent(val.f_files_path)
591
- } else {
592
- this.reportStr = null
593
- }
594
- },
595
- sumsmodel: {
596
- handler: function (val) {
597
- this.getotherfooter();
598
- },
599
- deep: true
600
- },
601
- },
602
- computed: {
603
- // usertypes () {
604
- // return this.$appdate.getParams("客户类型")
605
- // },
606
- getCondition() {
607
- let condition = this.$refs.paged.$refs.cri.condition + this.orgCondtionStr
608
- if (this.$refs.paged.$refs.cri.model.notappear) {
609
- if (this.$refs.paged.$refs.cri.model.notappear === '不包含') {
610
- condition = condition + " and initinsertdate <> '开户未上报'"
611
- }
612
- }
613
- return {
614
- condition: condition,
615
- startDate: `${this.$refs.paged.$refs.cri.model.startDate}`,
616
- endDate: `${this.$refs.paged.$refs.cri.model.endDate}`
617
- }
618
- },
619
- usertypes() {
620
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
621
- },
622
- Gasproperties() {
623
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')]
624
- },
625
- f_outlets() {
626
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('网点查询用')]
627
- },
628
- valveStatus() {
629
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('气表类型')]
630
- },
631
- not_appear() {
632
- return [{label: '包含', value: '包含'}, {label: '不包含', value: '不包含'}]
633
- },
634
- getstate() {
635
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('最新状态')]
636
- },
637
- userstate() {
638
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户状态')]
639
- }
640
- }
641
- }
642
- </script>
643
- <style>
644
- .form-input-group label {
645
- text-align: right;
646
- width: auto;
647
- }
648
-
649
- .mystyle {
650
- float: right;
651
- padding-right: 10%;
652
- }
653
-
654
- .mystyle1 {
655
- padding-top: 10px;
656
-
657
- }
658
-
659
- .mystyle2 {
660
- width: 100%;
661
- height: 35px;
662
- /*background: #00A3F0;*/
663
- padding-left: 15px;
664
- float: left;
665
- }
666
-
667
- .datapanel {
668
- color: #333;
669
- background-color: white;
670
- box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
671
- padding: 10px 30px 10px 30px;
672
- border-radius: 15px;
673
- }
674
- </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" novalidate partial>
7
+ <div class="row">
8
+ <!--<div class="form-group">-->
9
+ <!--<input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_username" placeholder='客户名称'-->
10
+ <!--condition="f_user_name = '{}'" v-next-el='userid' v-el:username-->
11
+ <!--:size="model.f_user_name ? model.f_user_name.length * 2 : 8">-->
12
+ <!--</div>-->
13
+
14
+ <div class="col-sm-2 form-group">
15
+ <label class="font_normal_body">客户编号</label>
16
+ <input @keyup.enter="search" style="width:60%" type="text" class="input_search"
17
+ v-model="model.f_userinfo_code" placeholder='客户编号'
18
+ condition="f_userinfo_code like '%{}%'" v-el:xq v-next-el='userinfocode' v-el:username
19
+ >
20
+ </div>
21
+ <div class="col-sm-2 form-group">
22
+ <label class="font_normal_body">客户名称</label>
23
+ <input @keyup.enter="search" style="width:60%" type="text" class="input_search"
24
+ v-model="model.f_user_name" placeholder='客户名称'
25
+ condition="f_user_name like '%{}%'" v-el:xq v-next-el='username' v-el:username
26
+ >
27
+ </div>
28
+ <div class="col-sm-2 form-group">
29
+ <label class="font_normal_body">客户地址</label>
30
+ <input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_area"
31
+ placeholder='地址'
32
+ condition="f_address like '%{}%'" v-el:xq v-next-el='address' v-el:area
33
+ >
34
+ </div>
35
+ <div class="col-sm-2 form-group">
36
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;表号&nbsp;&nbsp;&nbsp;</label>
37
+ <input @keyup.enter="search" style="width:60%" type="text" class="input_search"
38
+ v-model="model.f_meternumber" placeholder='表号'
39
+ condition="f_meternumber like '%{}%'" v-next-el='meternumber' v-el:meternumber
40
+ >
41
+ </div>
42
+
43
+ <div style="float:right">
44
+ <button class="button_search button_spacing" @click="search()">查询</button>
45
+ <button class="button_clear button_spacing" @click="$parent.$parent.clearmsg">清空</button>
46
+ <export-excel :data="$parent.$parent.getCondition" class="button_export button_spacing"
47
+ :field="$parent.$parent.getfield" :sumname="$parent.$parent.sumName"
48
+ :header="$parent.$parent.other"
49
+ sqlurl="api/af-revenue/logic/openapi/exportfile" sql-name="webmeter_getUserLoseQuery"
50
+ template-name='用户失联查询'
51
+ :choose-col="true"></export-excel>
52
+ <!-- <button class="button_export button_spacing" @click="$parent.$parent.SaveAsFile('lostuserlist')">导出</button>-->
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"
56
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
57
+ @click="$parent.$parent.hidden()"></div>
58
+ </div>
59
+ </div>
60
+ <div class="row" v-show="$parent.$parent.criteriaShow">
61
+ <res-select-group :show-component="['company','department']"
62
+ :initres="$parent.$parent.org"
63
+ @re-res="$parent.$parent.getorg">
64
+ </res-select-group>
65
+ <div class="col-sm-2 form-group">
66
+ <label class="font_normal_body">客户类型</label>
67
+ <v-select style="width:60%" id="f_user_type"
68
+ v-model="model.f_user_type"
69
+ placeholder='客户类型'
70
+ :value.sync="model.f_user_type"
71
+ :options='$parent.$parent.usertypes'
72
+ condition="f_user_type = '{}'"
73
+ close-on-select>
74
+ </v-select>
75
+ </div>
76
+ <div class="col-sm-2 form-group">
77
+ <label class="font_normal_body">用气性质</label>
78
+ <v-select style="width:60%" id="f_gasproperties"
79
+ v-model="model.f_gasproperties"
80
+ placeholder='用气性质'
81
+ :value.sync="model.f_gasproperties"
82
+ :options='$parent.$parent.Gasproperties'
83
+ condition="f_gasproperties = '{}'"
84
+ close-on-select>
85
+ </v-select>
86
+ </div>
87
+ <div class="col-sm-2 form-group">
88
+ <label class="font_normal_body">气表品牌</label>
89
+ <v-select
90
+ placeholder='气表品牌'
91
+ :value.sync="model.f_meter_brand"
92
+ v-model="model.f_meter_brand"
93
+ :options='$parent.$parent.WarningType'
94
+ @change="$parent.$parent.getMeterType"
95
+ close-on-select
96
+ condition="f_meter_brand='{}'">
97
+ </v-select>
98
+ </div>
99
+ <div class="col-sm-2 form-group">
100
+ <label class="font_normal_body">气表型号</label>
101
+ <v-select v-if="$parent.$parent.styles"
102
+ placeholder='气表型号'
103
+ :value.sync="model.f_meter_style"
104
+ v-model="model.f_meter_style"
105
+ :options='$parent.$parent.Warningstyle'
106
+ close-on-select
107
+ condition="f_meter_style='{}'">
108
+ </v-select>
109
+ <v-select v-if="!$parent.$parent.styles"
110
+ placeholder='气表型号'
111
+ :value.sync="model.f_meter_style"
112
+ v-model="model.f_meter_style"
113
+ :options='$parent.$parent.Warningstyles'
114
+ close-on-select
115
+ condition="f_meter_style='{}'">
116
+ </v-select>
117
+ </div>
118
+ <div class="col-sm-2 form-group">
119
+ <label class="font_normal_body">用户状态</label>
120
+ <v-select
121
+ placeholder='用户状态'
122
+ value-single
123
+ style="width:60%"
124
+ :value.sync="model.f_user_state"
125
+ v-model="model.f_user_state"
126
+ :options='$parent.$parent.userstate'
127
+ close-on-select condition="f_user_state ='{}'">
128
+ </v-select>
129
+ </div>
130
+
131
+ <div class="col-sm-2 form-group">
132
+ <label class="font_normal_body">开始时间</label>
133
+ <datepicker style="width:60%" id="startdate" placeholder="开始时间"
134
+ v-model="model.startDate"
135
+ :value.sync="model.startDate"
136
+ :disabled-days-of-Week="[]"
137
+ :format="'yyyy-MM-dd HH:mm:ss'"
138
+
139
+ :show-reset-button="reset">
140
+ </datepicker>
141
+ </div>
142
+ <div class="col-sm-2 form-group">
143
+ <label class="font_normal_body">结束时间</label>
144
+ <datepicker style="width:60%" id="enddate" placeholder="结束日期"
145
+ v-model="model.endDate"
146
+ :value.sync="model.endDate"
147
+ :disabled-days-of-Week="[]"
148
+ :format="'yyyy-MM-dd HH:mm:ss'"
149
+
150
+ :show-reset-button="reset">
151
+ </datepicker>
152
+ </div>
153
+ <div class="col-sm-2 form-group flex-row" style="white-space: nowrap">
154
+ <label class="font_normal_body">失联天数&nbsp;</label>
155
+ <div class="row">
156
+ <input type="text" style="width:27%" class="input_search" v-model="model.SLday1"
157
+ condition="SLday >= {} " placeholder="">
158
+ <label class="font_normal_body"> ≤ x ≤ </label>
159
+ <input type="text" style="width:27%" class="input_search" v-model="model.SLday2"
160
+ condition="SLday <= {} " placeholder="">
161
+ </div>
162
+ </div>
163
+ <div class="col-sm-2 form-group ">
164
+ <label for="contain_newfile" class="font_normal_body">开户未上报</label>
165
+ <v-select id="contain_newfile"
166
+ v-model="model.notappear"
167
+ style="width:60%"
168
+ :value.sync="model.notappear"
169
+ :options='$parent.$parent.not_appear'
170
+ :value-single="true"
171
+ close-on-select>
172
+ </v-select>
173
+ </div>
174
+
175
+ </div>
176
+
177
+
178
+ <!--:top='40' :left='60' :right='40' :bottom='60'-->
179
+ <!--:thead='"<th>序号</th>\n"+-->
180
+ <!--"<th>档案编号</th>" +-->
181
+ <!--" <th>档案标识</th>"+-->
182
+ <!--"<th>客户名称</th>"+-->
183
+ <!--"<th>表号</th"+-->
184
+ <!--"<th>表具类型</th>"+-->
185
+ <!--"<th>客户类型</th>"+-->
186
+ <!--"<th>区域</th>"+-->
187
+ <!--"<th>小区</th>"+-->
188
+ <!--"<th>地址</th>"+-->
189
+ <!--"<th>用气气量</th>"+-->
190
+ <!--"<th>用气金额</th>"-->
191
+ <!--+"<th>用气价格</th>"-->
192
+ <!--+"<th>时间</th>"-->
193
+ <!--+"<th>所属机构</th>"'-->
194
+ <!--:fields='["$index+1","f_username","f_meternumber","f_usertype","f_save_money","f_operate_status","f_close_reason","f_area","f_districtname","f_address","id","yytdepa"]'>-->
195
+ <!--</print-table>-->
196
+ <!--<export-excel :data="{orderitem: 'lastinputdate desc', condition: '1=1'}"-->
197
+ <!--:field="{f_username: '客户名称', f_meternumber: '表号',f_usertype:'客户类型',f_save_money:'剩余金额',-->
198
+ <!--f_operate_status:'状态',f_close_reason:'关阀原因',f_area:'区域',f_districtname:'小区', f_address: '地址',id:'档案编号',yytdepa:'所属机构'}"-->
199
+ <!--sqlurl="api/af-revenue/sql/getUserGas"></export-excel>-->
200
+
201
+ </div>
202
+ </criteria>
203
+ <data-grid id="lostuserlist" :model="model" partial='list' v-ref:grid class="list_area table_sy">
204
+ <template partial='head'>
205
+ <tr>
206
+ <th style="text-align:center">
207
+ <nobr>序号</nobr>
208
+ </th>
209
+
210
+ <!--<th rowspan="2" style="text-align:center"><nobr>客户编号</nobr></th>-->
211
+
212
+ <th style="text-align:center">
213
+ <nobr>客户编号</nobr>
214
+ </th>
215
+ <th style="text-align:center">
216
+ <nobr>客户名称</nobr>
217
+ </th>
218
+ <th style="text-align:center">
219
+ <nobr>客户地址</nobr>
220
+ </th>
221
+ <th style="text-align:center">
222
+ <nobr>客户类型</nobr>
223
+ </th>
224
+ <th style="text-align:center">
225
+ <nobr>用气性质</nobr>
226
+ </th>
227
+ <th style="text-align:center">
228
+ <nobr>联系电话</nobr>
229
+ </th>
230
+ <th style="text-align:center">
231
+ <nobr>系统金额</nobr>
232
+ </th>
233
+ <th style="text-align:center">
234
+ <nobr>表号</nobr>
235
+ </th>
236
+ <th style="text-align:center">
237
+ <nobr>启用日期</nobr>
238
+ </th>
239
+
240
+ <th style="text-align:center">
241
+ <nobr>初次上报日期</nobr>
242
+ </th>
243
+ <th style="text-align:center">
244
+ <nobr>最后上报日期</nobr>
245
+ </th>
246
+ <th style="text-align:center">
247
+ <nobr>最后表读数</nobr>
248
+ </th>
249
+
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
+ </tr>
269
+
270
+ </template>
271
+ <template partial='body'>
272
+ <td style="text-align:center">{{ $index + 1 }}</td>
273
+ <!--<td style="text-align:center">{{row.f_userfiles_id}}</td>-->
274
+
275
+
276
+ <td style="text-align: center;">
277
+ <nobr>
278
+ <span @click="$parent.$parent.$parent.showmsg(row)"><a>{{ row.f_userinfo_code }}</a></span>
279
+ </nobr>
280
+ </td>
281
+ <td style="text-align:center">
282
+ <nobr>{{ row.f_user_name }}</nobr>
283
+ </td>
284
+ <td>
285
+ <nobr>{{ row.f_address }}</nobr>
286
+ </td>
287
+ <td style="text-align:center">{{ row.f_user_type }}</td>
288
+ <td style="text-align:center">{{ row.f_gasproperties }}</td>
289
+ <td style="text-align:center">{{ row.f_user_phone }}</td>
290
+ <td style="text-align:center">{{ row.f_balance_amount }}</td>
291
+ <td style="text-align:center">
292
+ <nobr>{{ row.f_meternumber }}</nobr>
293
+ </td>
294
+ <td style="text-align:center">
295
+ <nobr>{{ row.f_startuse_date }}</nobr>
296
+ </td>
297
+ <td style="text-align:center">
298
+ <nobr>{{ row.initinsertdate }}</nobr>
299
+ </td>
300
+ <td style="text-align:center">
301
+ <nobr>{{ row.lastinsertdate }}</nobr>
302
+ </td>
303
+ <td style="text-align:center">{{ row.f_meter_base }}</td>
304
+
305
+ <td style="text-align:center">
306
+ <nobr>{{ row.slday }}</nobr>
307
+ </td>
308
+ <td style="text-align:center">{{ row.f_meter_brand }}</td>
309
+ <td style="text-align:center">
310
+ <nobr>{{ row.f_meter_style }}</nobr>
311
+ </td>
312
+ <td style="text-align:center">
313
+ <nobr>{{ row.f_user_state }}</nobr>
314
+ </td>
315
+ <td style="text-align:center">
316
+ <nobr>{{ row.f_orgname }}</nobr>
317
+ </td>
318
+ <td style="text-align:center">
319
+ <nobr>{{ row.f_depname }}</nobr>
320
+ </td>
321
+ <!--<td style="text-align:center">{{row.new_days}}</td>-->
322
+ <!--<td style="text-align:center">{{row.f_state}}</td>-->
323
+
324
+ </template>
325
+ </data-grid>
326
+ </criteria-paged>
327
+
328
+ </div>
329
+ <!-- <div class="flex-row" v-show="echarts" style="width: 100%;height: 90%;">-->
330
+ <!-- <lost-contact-echarts :groupname="groupname[0]" :condition="condition"-->
331
+ <!-- :echarts="echarts"></lost-contact-echarts>-->
332
+ <!-- </div>-->
333
+ <!--&lt;!&ndash; <div v-show="isActiveTotalForm" style="height: 40px;width: 100%;">&ndash;&gt;-->
334
+ <!--&lt;!&ndash; <button class="button_search button_spacing" @click="notShowTotalForm()">隐藏汇总</button>&ndash;&gt;-->
335
+ <!--&lt;!&ndash; </div>&ndash;&gt;-->
336
+ <!-- <div class="span" v-show="isActiveTotalForm" style="width: 100%;height: 90%;">-->
337
+ <!-- <lost-contact-eform :condition="condition"-->
338
+ <!-- ></lost-contact-eform>-->
339
+ <!-- </div>-->
340
+ </div>
341
+ <div class="flex-row" style="width:99%;height:98%;margin-bottom:0px" v-if="showdetail">
342
+ <user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id"
343
+ @cancel-main="cancel"></user-info-detail-manage-new>
344
+ </div>
345
+ </template>
346
+
347
+ <script>
348
+ import {PagedList} from 'vue-client'
349
+ import UserGasEcharts from '../../../components/webmeter/DrillData/UserGasEcharts'
350
+ import plugin from 'system-clients/src/plugins/GetLoginInfoService'
351
+ import {HttpResetClass} from 'vue-client'
352
+ import * as Util from '../../../Util'
353
+
354
+ let readySomething = async function (self) {
355
+
356
+ await self.$MagLoadParams.loadParam()
357
+ self.initParams()
358
+ let year = new Date().getFullYear()
359
+ self.$refs.paged.$refs.cri.model.startDate = year + '-01-01 00:00:00'
360
+ self.$refs.paged.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
361
+ self.$refs.paged.$refs.cri.model.notappear = '不包含'
362
+ self.$refs.paged.$refs.cri.model.SLday1 = 10
363
+ self.$refs.paged.$refs.cri.model.f_user_state = '正常'
364
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums;
365
+ }
366
+ export default {
367
+ title: '失联分析',
368
+ props: ['data'],
369
+ components: {UserGasEcharts},
370
+
371
+ data() {
372
+ return {
373
+ model: new PagedList('api/af-revenue/sql/webmeter_getUserLoseQuery', 20, {
374
+ startDate: 'this.model.startDate',
375
+ endDate: 'this.model.endDate'
376
+ }),
377
+ getfield: {
378
+ "f_userinfo_code": "客户编号",
379
+ "f_user_name": "客户名称",
380
+ "f_address": "客户地址",
381
+ "f_user_type": "客户类型",
382
+ "f_gasproperties": "用气性质",
383
+ "f_meternumber": "表号",
384
+ "f_user_phone": "联系电话",
385
+ "f_balance_amount": "系统余额",
386
+ "f_user_state": "用户状态",
387
+ "f_startuse_date": "启用日期",
388
+ "initinsertdate": "初次上报日期",
389
+ "lastinsertdate": "最后上报日期",
390
+ "f_meter_base": "最后表读数",
391
+ "slday": "失联天数",
392
+ "f_meter_brand": "气表厂家",
393
+ "f_orgname": "组织机构",
394
+ 'f_depname': '部门'
395
+ },
396
+ reportStr: null,
397
+ show: false,
398
+ showdetail: false,
399
+ rowdata: {},
400
+ criteriaShow: false,
401
+ outlets: [],
402
+ operator: [],
403
+ other: [],
404
+ sumsmodel: {},
405
+ filename: '',
406
+ WarningType: [
407
+ {label: '全部', value: ''}
408
+ ],
409
+ Warningstyles: [
410
+ {label: '全部', value: ''}
411
+ ],
412
+ styles: false,
413
+ org: {
414
+ org: [this.$login.f.orgid],
415
+ dep: [],
416
+ user: [],
417
+ },
418
+ orgCondtionStr: '',
419
+ echarts: false,
420
+ searchshow: false,
421
+ isActiveTotalForm: false,
422
+ condition: '1=1',
423
+ groupname: ['max_days_type'],
424
+ getgroupname: [
425
+ {label: '客户类型', value: 'f_user_type'},
426
+ {label: '用气性质', value: 'f_gasproperties'},
427
+ {label: '分公司', value: 'f_orgname'},
428
+ {label: '最长失联天数', value: 'max_days_type'},
429
+ ]
430
+ }
431
+ },
432
+ ready() {
433
+ readySomething(this)
434
+ this.getMeterTypeAndBrand('f_meter_brand', '1=1')
435
+ },
436
+
437
+ methods: {
438
+ getotherfooter() {
439
+ this.other = [];
440
+
441
+ let firstLine = [`导出时间: ${this.$login.toStandardTimeString()}`];
442
+
443
+
444
+ let secondLine = [
445
+ `开始时间: ${this.$refs.paged.$refs.cri.model.startDate}`,
446
+ `结束时间: ${this.$refs.paged.$refs.cri.model.endDate}`
447
+ ];
448
+
449
+ this.other.push(firstLine);
450
+ this.other.push(secondLine);
451
+
452
+ console.log('Header Data:', this.other);
453
+ },
454
+ getMeterType() {
455
+ this.Warningstyle = [{label: '全部', value: ''}]
456
+ this.styles = false
457
+ let f_meter_brand = this.$refs.paged.$refs.cri.model.f_meter_brand
458
+ this.getMeterTypeAndBrand('f_meter_style', `f_meter_brand='${f_meter_brand}'`)
459
+ },
460
+ getMeterTypeAndBrand(groupname, condition) {
461
+ condition = `${condition} and ui.f_orgid like '${this.$login.f.orgid}%'`
462
+ let self = this
463
+ let load = new HttpResetClass()
464
+ load.load('POST', 'api/af-revenue/sql/getMeterStyleAndBrand1', {
465
+ data: {
466
+ condition: condition,
467
+ groupname: groupname
468
+ }
469
+ }, {warnMsg: null, resolveMsg: null}).then((res) => {
470
+ for (let i = 0; i < res.data.length; i++) {
471
+ if (groupname == 'f_meter_brand') {
472
+ let dr = {}
473
+ dr.label = res.data[i].f_meter_brand
474
+ dr.value = res.data[i].f_meter_brand
475
+ //气表品牌
476
+ // self.WarningType.push(dr)
477
+ } else if (groupname == 'f_meter_style') {
478
+ self.Warningstyle = [
479
+ {label: '全部', value: ''}
480
+ ],
481
+ self.$refs.paged.$refs.cri.model.f_meter_style = ''
482
+ let dr = {}
483
+ dr.label = res.data[i].f_meter_style
484
+ dr.value = res.data[i].f_meter_style
485
+ //气表类型
486
+ self.Warningstyle.push(dr)
487
+ }
488
+ }
489
+ if (self.Warningstyle.length > 1) {
490
+ self.showMeterStyle()
491
+ }
492
+ })
493
+
494
+ },
495
+ showMeterStyle() {
496
+ this.styles = true
497
+ },
498
+ hidden() {
499
+ this.criteriaShow = !this.criteriaShow
500
+ },
501
+ showmsg(obj) {
502
+ this.rowdata = obj
503
+ this.showdetail = true
504
+ },
505
+ cancel() {
506
+ this.showdetail = false
507
+ },
508
+ clickshow() {
509
+ this.searchshow = !this.searchshow
510
+ },
511
+ search(args) {
512
+ if (this.orgCondtionStr) {
513
+ this.condition = `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr
514
+ } else {
515
+ this.condition = `${this.$refs.paged.$refs.cri.condition} and f_orgid = '${this.$login.f.orgid}'`
516
+ }
517
+ args.condition = this.condition
518
+ if (this.$refs.paged.$refs.cri.model.notappear) {
519
+ if (this.$refs.paged.$refs.cri.model.notappear === '不包含') {
520
+ args.condition = args.condition + " and initinsertdate <> '开户未上报'"
521
+ }
522
+ }
523
+ this.startDate = this.$refs.paged.$refs.cri.model.startDate
524
+ this.endDate = this.$refs.paged.$refs.cri.model.endDate
525
+ if (this.endDate == '' || this.startDate == '') {
526
+ return this.$showMessage("时间区间的开始和结束时间不能为空!")
527
+ }
528
+ this.model.search(args.condition, args.model)
529
+ },
530
+ getorg(condition, obj) {
531
+ this.orgCondtionStr = condition
532
+ this.orgname = obj.orgnames[0]
533
+ },
534
+ // SaveAsFile(str) {
535
+ // this.$showMessage('您是否需要导出本页数据?', ['confirm', 'cancel']).then((res) => {
536
+ // if (res === 'confirm') {
537
+ // let style = '<style>' +
538
+ // 'td {border-width: 1px;padding: 2px;border-style: solid; border-color:black; border-collapse:collapse;} .tdright{text-align: right;} .tdcenter{text-align: center;}</style>';
539
+ // let strHtml = style + document.getElementById(str).innerHTML;
540
+ // console.log(strHtml);
541
+ // let LODOP = getLodop();
542
+ // LODOP.PRINT_INIT('');
543
+ // LODOP.ADD_PRINT_TABLE(5, 5, '99%', '100%', strHtml);
544
+ // LODOP.SAVE_TO_FILE('失联分析.xls')
545
+ // }
546
+ // })
547
+ // },
548
+ clearmsg() {
549
+ this.$refs.paged.$refs.cri.model = {}
550
+ },
551
+ close() {
552
+ this.show = false
553
+ },
554
+ initParams() {
555
+ let arr = []
556
+ this.$MagGetSaleParam.getGasbrand().forEach((item) => {
557
+ let temp = {}
558
+ if (item.value.f_meter_type === '物联网表') {
559
+ temp.label = item.label
560
+ temp.value = item.value.f_meter_brand
561
+ arr.push(temp)
562
+ }
563
+
564
+ })
565
+ this.WarningType = [{label: '全部', value: ''}, ...arr]
566
+ },
567
+ // 显示柱状图
568
+ showEcharts() {
569
+ this.echarts = true
570
+ this.isActiveTotalForm = false
571
+ },
572
+ notShowTotalForm() {
573
+ this.echarts = false
574
+ this.isActiveTotalForm = false
575
+ },
576
+ // 不显示柱状图
577
+ notShowEcharts() {
578
+ this.echarts = false
579
+ this.isActiveTotalForm = false
580
+ },
581
+ // 显示汇总数据表格
582
+ showTotalForm() {
583
+ this.echarts = false
584
+ this.isActiveTotalForm = true
585
+ }
586
+ },
587
+ watch: {
588
+ 'data'(val) {
589
+ if (val.f_files_path) {
590
+ this.getFileContent(val.f_files_path)
591
+ } else {
592
+ this.reportStr = null
593
+ }
594
+ },
595
+ sumsmodel: {
596
+ handler: function (val) {
597
+ this.getotherfooter();
598
+ },
599
+ deep: true
600
+ },
601
+ },
602
+ computed: {
603
+ // usertypes () {
604
+ // return this.$appdate.getParams("客户类型")
605
+ // },
606
+ getCondition() {
607
+ let condition = this.$refs.paged.$refs.cri.condition + this.orgCondtionStr
608
+ if (this.$refs.paged.$refs.cri.model.notappear) {
609
+ if (this.$refs.paged.$refs.cri.model.notappear === '不包含') {
610
+ condition = condition + " and initinsertdate <> '开户未上报'"
611
+ }
612
+ }
613
+ return {
614
+ condition: condition,
615
+ startDate: `${this.$refs.paged.$refs.cri.model.startDate}`,
616
+ endDate: `${this.$refs.paged.$refs.cri.model.endDate}`
617
+ }
618
+ },
619
+ usertypes() {
620
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
621
+ },
622
+ Gasproperties() {
623
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用气性质')]
624
+ },
625
+ f_outlets() {
626
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('网点查询用')]
627
+ },
628
+ valveStatus() {
629
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('气表类型')]
630
+ },
631
+ not_appear() {
632
+ return [{label: '包含', value: '包含'}, {label: '不包含', value: '不包含'}]
633
+ },
634
+ getstate() {
635
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('最新状态')]
636
+ },
637
+ userstate() {
638
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户状态')]
639
+ }
640
+ }
641
+ }
642
+ </script>
643
+ <style>
644
+ .form-input-group label {
645
+ text-align: right;
646
+ width: auto;
647
+ }
648
+
649
+ .mystyle {
650
+ float: right;
651
+ padding-right: 10%;
652
+ }
653
+
654
+ .mystyle1 {
655
+ padding-top: 10px;
656
+
657
+ }
658
+
659
+ .mystyle2 {
660
+ width: 100%;
661
+ height: 35px;
662
+ /*background: #00A3F0;*/
663
+ padding-left: 15px;
664
+ float: left;
665
+ }
666
+
667
+ .datapanel {
668
+ color: #333;
669
+ background-color: white;
670
+ box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
671
+ padding: 10px 30px 10px 30px;
672
+ border-radius: 15px;
673
+ }
674
+ </style>