manage-client 3.1.46 → 3.1.47

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 (107) hide show
  1. package/.gradle/{7.1 → 4.4}/fileChanges/last-build.bin +0 -0
  2. package/.gradle/{buildOutputCleanup/outputFiles.bin → 4.4/fileHashes/fileHashes.bin} +0 -0
  3. package/.gradle/4.4/fileHashes/fileHashes.lock +0 -0
  4. package/.gradle/{7.1 → 6.1}/executionHistory/executionHistory.bin +0 -0
  5. package/.gradle/6.1/executionHistory/executionHistory.lock +0 -0
  6. package/.gradle/6.1/fileChanges/last-build.bin +0 -0
  7. package/.gradle/{7.1 → 6.1}/fileHashes/fileHashes.bin +0 -0
  8. package/.gradle/6.1/fileHashes/fileHashes.lock +0 -0
  9. package/.gradle/{7.1/dependencies-accessors → 6.1}/gc.properties +0 -0
  10. package/build/dev-server.js +33 -25
  11. package/package.json +1 -1
  12. package/src/App.vue +29 -28
  13. package/src/components/BasisEcharts/BarChart.vue +247 -247
  14. package/src/components/BasisEcharts/RingChart.vue +196 -196
  15. package/src/components/SellReport/BusinessClassify.vue +317 -317
  16. package/src/components/SellReport/ChargePrick.vue +284 -284
  17. package/src/components/SellReport/DepartmentPrick.vue +288 -288
  18. package/src/components/SellReport/FinanceSellType.vue +254 -254
  19. package/src/components/SellReport/GasBaozhuangFee.vue +237 -237
  20. package/src/components/SellReport/GasMoneyReport.vue +254 -254
  21. package/src/components/SellReport/GasPrice.vue +244 -244
  22. package/src/components/SellReport/ManageBusSummary.vue +242 -242
  23. package/src/components/SellReport/ManageHandInputtor.vue +281 -281
  24. package/src/components/SellReport/ManageOtherCharge.vue +250 -250
  25. package/src/components/SellReport/ManageSellType.vue +284 -284
  26. package/src/components/SellReport/ManageUserCount.vue +347 -347
  27. package/src/components/SellReport/MarketMonth.vue +297 -297
  28. package/src/components/SellReport/ReportItems.vue +241 -241
  29. package/src/components/SellReport/SaleMonthReport.vue +227 -227
  30. package/src/components/SellReport/SellDepReport.vue +251 -251
  31. package/src/components/SellReport/SellingTable.vue +220 -220
  32. package/src/components/SellReport/UserClassify.vue +271 -271
  33. package/src/components/SellReport/UserSellingGas.vue +251 -251
  34. package/src/components/daping/CallCenter.vue +366 -366
  35. package/src/components/daping/DataManagement.vue +537 -537
  36. package/src/components/daping/GMap.vue +636 -636
  37. package/src/components/daping/ManageMain.vue +270 -270
  38. package/src/components/daping/NetWork.vue +238 -238
  39. package/src/components/daping/RedactDaPing.vue +468 -468
  40. package/src/components/daping/Ring.vue +212 -212
  41. package/src/components/daping/SafeCheck.vue +446 -446
  42. package/src/components/daping/SafeCheckRing.vue +166 -166
  43. package/src/components/daping/SafecheckBarChart.vue +233 -233
  44. package/src/components/daping/WuHaiMap.vue +418 -418
  45. package/src/components/qinhua/BarChart.vue +256 -256
  46. package/src/components/qinhua/Pie.vue +132 -132
  47. package/src/components/qinhua/SellEcharts.vue +115 -115
  48. package/src/components/qinhua/qinHuaMap.vue +414 -414
  49. package/src/components/sale/businessquery/AccountQuery/ExpectGasList.vue +500 -500
  50. package/src/components/sale/businessquery/CollectManage.vue +135 -135
  51. package/src/components/sale/businessquery/FMYGasQuery.vue +713 -713
  52. package/src/components/sale/businessquery/FillGasQuery.vue +491 -491
  53. package/src/components/sale/businessquery/MonthGasQuery.vue +467 -467
  54. package/src/components/sale/businessquery/OtherChargeQuery.vue +619 -619
  55. package/src/components/sale/businessquery/ProceedsOper.vue +377 -377
  56. package/src/components/sale/businessquery/YingShouMingXi.vue +525 -525
  57. package/src/components/sale/config/exportConfig.js +879 -879
  58. package/src/components/sale/filesquery/DeviceQuery.vue +524 -524
  59. package/src/components/statistical/StatisticalAnalysis.vue +247 -247
  60. package/src/components/webmeter/DrillData/LostContactAnalysisList.vue +633 -633
  61. package/src/components/webmeter/DrillData/LostContactEcharts.vue +177 -177
  62. package/src/components/webmeter/DrillData/UserGasAll.vue +597 -597
  63. package/src/components/webmeter/DrillData/UserGasEcharts.vue +220 -210
  64. package/src/components/webmeter/DrillData/UserGasEform.vue +227 -227
  65. package/src/components/webmeter/DrillData/UserLostContactAnalysis.vue +585 -585
  66. package/src/components/webmeter/newwebmeter/NewException/NewContactEcharts.vue +171 -171
  67. package/src/components/webmeter/newwebmeter/NewException/NewEchartsAll.vue +111 -111
  68. package/src/components/webmeter/newwebmeter/NewException/NewExceptionEcharsTotal.vue +288 -275
  69. package/src/components/webmeter/newwebmeter/NewException/NewGasEcharts.vue +209 -209
  70. package/src/components/webmeter/newwebmeter/NewException/NewHandplanEcharts.vue +213 -213
  71. package/src/components/webmeter/newwebmeter/NewException/NewInstructEcharts.vue +240 -240
  72. package/src/components/webmeter/newwebmeter/NewException/TotalExceptionByMeter.vue +607 -607
  73. package/src/components/webmeter/newwebmeter/UserGasEchartsList.vue +283 -218
  74. package/src/components/webmeter/newwebmeter/UserGasList.vue +438 -438
  75. package/src/components/webmeter/newwebmeter/UserInstructEchartsList.vue +242 -242
  76. package/src/components/webmeter/newwebmeter/UserInstructList.vue +332 -332
  77. package/src/components/webmeter/newwebmeter/signAnalysisEcharts.vue +266 -266
  78. package/src/components/webmeter/newwebmeter/signAnalysisEform.vue +175 -175
  79. package/src/components/webmeter/newwebmeter/signAnalysisListMain.vue +387 -387
  80. package/src/filiale/alashan/SellingTable.vue +234 -234
  81. package/src/filiale/alashan/reportManage.js +10 -10
  82. package/src/filiale/jingwei/ChargeQuery.vue +1241 -1241
  83. package/src/filiale/jingzhou/ChargeQuery.vue +1243 -1243
  84. package/src/filiale/jingzhou/config/exportConfig.js +861 -861
  85. package/src/filiale/liaoyuan/ChargeQuery.vue +1284 -1284
  86. package/src/filiale/liaoyuan/exportConfig.js +718 -718
  87. package/src/filiale/meihekou/UserGasEform.vue +267 -267
  88. package/src/filiale/meihekou/sale.js +26 -26
  89. package/src/filiale/rongcheng/exportConfig.js +257 -257
  90. package/src/filiale/rongchuang/SellingTable.vue +250 -250
  91. package/src/filiale/rongchuang/reportManage.js +11 -11
  92. package/src/filiale/shaoguan/ChargeQuery.vue +1034 -1034
  93. package/src/filiale/shaoguan/OtherChargeQuery.vue +596 -596
  94. package/src/filiale/shaoguan/config/exportConfig.js +433 -433
  95. package/src/filiale/shaoguan/sale/businessquery/oldList.vue +41 -41
  96. package/src/filiale/shaoguan/sale/businessquery/oldMeterList.vue +290 -290
  97. package/src/filiale/shaoguan/sale.js +35 -35
  98. package/src/filiale/tongchuan/ManageBusSummary.vue +302 -302
  99. package/src/main.js +1 -1
  100. package/src/newmanage.js +525 -525
  101. package/src/reportManage.js +470 -470
  102. package/static/wuhai.json +1610 -1610
  103. package/.gradle/7.1/dependencies-accessors/dependencies-accessors.lock +0 -0
  104. package/.gradle/7.1/executionHistory/executionHistory.lock +0 -0
  105. package/.gradle/7.1/fileHashes/fileHashes.lock +0 -0
  106. package/.gradle/7.1/gc.properties +0 -0
  107. package/.gradle/configuration-cache/gc.properties +0 -0
@@ -1,500 +1,500 @@
1
- <template>
2
- <div id="unit" class="flex-row" class="foot_tabset" @keyup.enter="search">
3
- <div class="basic-main">
4
- <div class="flex">
5
-
6
- <criteria-paged :model="model" v-ref:paged>
7
- <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
8
- <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
9
- <div class="row">
10
- <div class="col-sm-2 form-group">
11
- <label class="font_normal_body">开始日期</label>
12
- <datepicker id="startDate" placeholder="开始日期" style="width:60%"
13
- v-model="model.startDate"
14
- :value.sync="model.startDate"
15
- :format="'yyyy-MM-dd HH:mm:ss'"
16
- :show-reset-button="true"
17
- condition="f_input_date >= '{}'">
18
- </datepicker>
19
- </div>
20
- <div class="col-sm-2 form-group">
21
- <label class="font_normal_body">结束日期</label>
22
- <datepicker id="endDate" placeholder="结束日期" style="width:60%"
23
- v-model="model.endDate"
24
- :value.sync="model.endDate"
25
- :format="'yyyy-MM-dd HH:mm:ss'"
26
- :show-reset-button="true"
27
- condition="f_input_date <= '{}'">
28
- </datepicker>
29
- </div>
30
- <div class="col-sm-2 form-group ">
31
- <label class="font_normal_body">客户编号</label>
32
- <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
33
- condition="f_userinfo_code = '{}' " placeholder="客户编号">
34
- </div>
35
- <div class="col-sm-2 form-group">
36
- <label class="font_normal_body">客户名称</label>
37
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
38
- condition="f_user_name like '%{}%'" placeholder="客户名称">
39
- </div>
40
-
41
- <div class="span" style="float:right;">
42
- <button class="button_search button_spacing" @click="search()">查询</button>
43
- <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
44
- <!--<button class="btn btn-default" @click="$parent.$parent.stamp()">打印</button>-->
45
-
46
- <export-excel :data="$parent.$parent.getCondition"
47
- :field="$parent.$parent.getfield"
48
- :footer="$parent.$parent.footer"
49
- :header="$parent.$parent.other"
50
- sqlurl="rs/logic/exportfile"
51
- sql-name="getExpectGasListExcel"
52
- template-name='气费应收账款导出'
53
- :choose-col="true"></export-excel>
54
- <print-data :sum-field="$parent.$parent.getfield" :model="$parent.model" :field="$parent.$parent.getfield"
55
- :defaultfield="$parent.$parent.defaultfield"
56
- titletable="气费应收账款"
57
- :sumsmodel="$parent.$parent.sumsmodel"></print-data>
58
-
59
- <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>
60
- </div>
61
- </div>
62
- <div class="row" v-show="$parent.$parent.criteriaShow">
63
- <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
64
- <div class="col-sm-2 form-group">
65
- <label class="font_normal_body">客户电话</label>
66
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_phone"
67
- condition="f_user_phone like '%{}%'" placeholder="客户电话">
68
- </div>
69
- <div class="col-sm-2 form-group">
70
- <label class="font_normal_body">客户地址</label>
71
- <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
72
- condition="f_address like '%{}%'" placeholder='客户地址'>
73
- </div>
74
- <!--表册片区-->
75
- <div class="col-sm-2 form-group">
76
- <label class="font_normal_body">表册片区</label>
77
- <v-select :value.sync="model.f_book_slice_area" v-model="model.f_book_slice_area"
78
- :options='$parent.$parent.bookSlice' placeholder='片区/表册'
79
- style="width:60%"
80
- close-on-select
81
- condition="f_book_slice_area = '{}'"></v-select>
82
- </div>
83
- </div>
84
- </div>
85
- </criteria>
86
-
87
- <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid @dblclick="$parent.$parent.toBusiness">
88
- <template partial='head'>
89
- <tr><th rowspan=2><nobr>月份</nobr></th>
90
- <th rowspan=2><nobr>公司</nobr></th>
91
- <th colspan="4"><nobr>户数</nobr></th>
92
- <th rowspan=2><nobr>冲正户数</nobr></th>
93
- <th rowspan=2><nobr>小计</nobr></th>
94
- <th colspan="4"><nobr>用气量</nobr></th>
95
- <th rowspan=2><nobr>冲正气量</nobr></th>
96
- <th rowspan=2><nobr>小计</nobr></th>
97
- <th colspan="4"><nobr>用气金额</nobr></th>
98
- <th rowspan=2><nobr>冲正金额</nobr></th>
99
- <th rowspan=2><nobr>小计</nobr></th>
100
- </tr>
101
- <tr>
102
- <th>
103
- <nobr>工业</nobr>
104
- </th>
105
- <th>
106
- <nobr>民用</nobr>
107
- </th>
108
- <th>
109
- <nobr>集体</nobr>
110
- </th>
111
- <th>
112
- <nobr>商业</nobr>
113
- </th>
114
- <th>
115
- <nobr>工业</nobr>
116
- </th>
117
- <th>
118
- <nobr>民用</nobr>
119
- </th>
120
- <th>
121
- <nobr>集体</nobr>
122
- </th>
123
- <th>
124
- <nobr>商业</nobr>
125
- </th>
126
- <th>
127
- <nobr>工业</nobr>
128
- </th>
129
- <th>
130
- <nobr>民用</nobr>
131
- </th>
132
- <th>
133
- <nobr>集体</nobr>
134
- </th>
135
- <th>
136
- <nobr>商业</nobr>
137
- </th>
138
- </tr>
139
-
140
- </template>
141
- <template partial='body'>
142
- <td style="text-align: center;"><nobr>
143
- <span ><a>{{row.f_month}}</a></span>
144
- </nobr> </td>
145
- <td style="text-align: center;"><nobr>
146
- <span ><a>{{row.f_orgname}}</a></span>
147
- </nobr> </td>
148
- <td style="text-align: center;">
149
- <nobr>{{row.f_gy_num}}</nobr>
150
- </td>
151
- <td style="text-align: center;">
152
- <nobr>{{row.f_my_num}}</nobr>
153
- </td>
154
- <td style="text-align: center;">
155
- <nobr>{{row.f_jt_num}}</nobr>
156
- </td>
157
- <td style="text-align: center;">
158
- <nobr>{{row.f_sy_num}}</nobr>
159
- </td>
160
- <td style="text-align: center;">
161
- <nobr>{{row.f_old_num}}</nobr>
162
- </td>
163
-
164
- <td style="text-align: center;">
165
- <nobr>{{row.f_sum_num}}</nobr>
166
- </td>
167
-
168
- <td style="text-align: center;">
169
- <nobr>{{row.f_gy_gas}}</nobr>
170
- </td>
171
- <td style="text-align: center;">
172
- <nobr>{{row.f_my_gas}}</nobr>
173
- </td>
174
- <td style="text-align: center;">
175
- <nobr>{{row.f_jt_gas}}</nobr>
176
- </td>
177
- <td style="text-align: center;">
178
- <nobr>{{row.f_sy_gas}}</nobr>
179
- </td>
180
- <td style="text-align: center;">
181
- <nobr>{{row.f_old_gas}}</nobr>
182
- </td>
183
- <td style="text-align: center;">
184
- <nobr>{{row.f_sum_gas}}</nobr>
185
- </td>
186
-
187
- <td style="text-align: center;">
188
- <nobr>{{row.f_gy_account}}</nobr>
189
- </td>
190
- <td style="text-align: center;">
191
- <nobr>{{row.f_my_account}}</nobr>
192
- </td>
193
- <td style="text-align: center;">
194
- <nobr>{{row.f_jt_account}}</nobr>
195
- </td>
196
- <td style="text-align: center;">
197
- <nobr>{{row.f_sy_account}}</nobr>
198
- </td>
199
- <td style="text-align: center;">
200
- <nobr>{{row.f_old_fee}}</nobr>
201
- </td>
202
- <td style="text-align: center;">
203
- <nobr>{{row.f_sum_account}}</nobr>
204
- </td>
205
- </template>
206
- <template partial='foot'>
207
- <td style="text-align: center;background-color: mistyrose" colspan="2"><nobr>
208
- <span >合计</span>
209
- </nobr> </td>
210
- <td style="text-align: center;background-color: mistyrose">
211
- <nobr>{{model.sums.f_gy_num}}</nobr>
212
- </td>
213
- <td style="text-align: center;background-color: mistyrose">
214
- <nobr>{{model.sums.f_my_num}}</nobr>
215
- </td>
216
- <td style="text-align: center;background-color: mistyrose">
217
- <nobr>{{model.sums.f_jt_num}}</nobr>
218
- </td>
219
- <td style="text-align: center;background-color: mistyrose">
220
- <nobr>{{model.sums.f_sy_num}}</nobr>
221
- </td>
222
- <td style="text-align: center;background-color: mistyrose">
223
- <nobr>{{model.sums.f_old_num}}</nobr>
224
- </td>
225
-
226
- <td style="text-align: center;background-color: mistyrose">
227
- <nobr>{{model.sums.f_sum_num}}</nobr>
228
- </td>
229
-
230
- <td style="text-align: center;background-color: mistyrose">
231
- <nobr>{{model.sums.f_gy_gas}}</nobr>
232
- </td>
233
- <td style="text-align: center;background-color: mistyrose">
234
- <nobr>{{model.sums.f_my_gas}}</nobr>
235
- </td>
236
- <td style="text-align: center;background-color: mistyrose">
237
- <nobr>{{model.sums.f_jt_gas}}</nobr>
238
- </td>
239
- <td style="text-align: center;background-color: mistyrose">
240
- <nobr>{{model.sums.f_sy_gas}}</nobr>
241
- </td>
242
- <td style="text-align: center;background-color: mistyrose">
243
- <nobr>{{model.sums.f_old_gas}}</nobr>
244
- </td>
245
- <td style="text-align: center;background-color: mistyrose">
246
- <nobr>{{model.sums.f_sum_gas}}</nobr>
247
- </td>
248
-
249
- <td style="text-align: center;background-color: mistyrose">
250
- <nobr>{{model.sums.f_gy_account}}</nobr>
251
- </td>
252
- <td style="text-align: center;background-color: mistyrose">
253
- <nobr>{{model.sums.f_my_account}}</nobr>
254
- </td>
255
- <td style="text-align: center;background-color: mistyrose">
256
- <nobr>{{model.sums.f_jt_account}}</nobr>
257
- </td>
258
- <td style="text-align: center;background-color: mistyrose">
259
- <nobr>{{model.sums.f_sy_account}}</nobr>
260
- </td>
261
- <td style="text-align: center;background-color: mistyrose">
262
- <nobr>{{model.sums.f_old_fee}}</nobr>
263
- </td>
264
- <td style="text-align: center;background-color: mistyrose">
265
- <nobr>{{model.sums.f_sum_account}}</nobr>
266
- </td>
267
- </template>
268
- </data-grid>
269
- </criteria-paged>
270
-
271
- </div>
272
- </div>
273
- </div>
274
- </template>
275
-
276
- <script>
277
- import {HttpResetClass, PagedList} from 'vue-client'
278
- import defaultPrint from '../../config/DefaultPrint'
279
- import exportConfig from '../../config/exportConfig'
280
-
281
- let readySomething = async function (self) {
282
-
283
- self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
284
- self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
285
- self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
286
- }
287
- export default {
288
- title: '气费应收账款汇总',
289
- data() {
290
- return {
291
- data: {},
292
- other:[],
293
- //默认打印列
294
- defaultfield: [],
295
- config: {
296
- defaultPrint: ['f_gy_gas', 'f_sum_gas', 'f_sum_num', 'f_my_gas']
297
- },
298
- footer:[],
299
- model: new PagedList('rs/sql/getExpectGasListExcel', 20,{},{
300
- f_gy_num:0,f_my_num:0,f_jt_num:0,f_sy_num:0,f_old_num:0,f_sum_num:0,
301
- f_gy_gas:0,f_my_gas:0,f_jt_gas:0,f_sy_gas:0,f_old_gas:0,f_sum_gas:0,
302
- f_gy_account:0,f_my_account:0,f_jt_account:0,f_sy_account:0,f_old_fee:0,f_sum_account:0
303
- }),
304
- sumsmodel:{},
305
- criteriaShow: false,
306
- orgCondtionStr: '',
307
- modelval: [],
308
- printshow: false,
309
- all: false,
310
- fields: {},
311
- //表册片区
312
- bookSlice:[{label: '全部',value: ''}],
313
- initres: {
314
- org:[this.$login.f.orgid],
315
- dep:[],
316
- user:[],
317
- },
318
- thead: '',
319
- tfoot: '',
320
-
321
- // tablestate: [{label: '全部', value: ''}, {label: '正常', value: '正常'}, {label: '停用', value: '停用'}],
322
-
323
-
324
- }
325
- },
326
- ready() {
327
- readySomething(this)
328
- },
329
- methods: {
330
- getotherfooter(){
331
- // this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
332
- // this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
333
- this.other=[];
334
- this.footer=[];
335
- let exportdata = this.getCondition;
336
- let otherInData=[];
337
- otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
338
- let footerData=[],exportfield=this.getfield;
339
- footerData.push("合计");
340
- let self =this;
341
- for(var field in self.sumsmodel){
342
- footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
343
- }
344
- this.footer.push(footerData);
345
- this.other.push(otherInData);
346
- },
347
- search(){
348
- // this.$refs.paged.$refs.cri.search()
349
- },
350
-
351
-
352
- selfSearch(args) {
353
- args.condition = `${args.condition}` + this.orgCondtionStr
354
- new HttpResetClass().load('POST','rs/logic/getExpectGasListLogic',{condition:args.condition,isPage:true}).then(res =>{
355
- this.model.search(args.condition, args.model)
356
- this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
357
- })
358
-
359
- // console.log('this.model====>>>>', this.model)
360
- },
361
- clear() {
362
- //清空部门和人员
363
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
364
- //部门和人员变为全选
365
- this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
366
- this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
367
- Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
368
- this.$refs.paged.$refs.cri.model[key] = []
369
- })
370
- },
371
- show() {
372
- this.criteriaShow = true
373
- },
374
- hidden() {
375
- this.criteriaShow = !this.criteriaShow
376
- },
377
- getRes(obj) {
378
- console.log(obj,"========")
379
- this.orgCondtionStr = obj
380
- },
381
- stamp() {
382
- this.all = false
383
- //默认选择要打印的列
384
- this.modelval = defaultPrint.config
385
- this.fields = this.getfield
386
- console.log('所有打印字段', this.fields)
387
- this.printshow = true
388
- this.put()
389
- },
390
- dealmsg(val) {
391
- console.log('---------------dealmsg')
392
- val.model = this.model.model
393
- this.$dispatch('deal-msg', val)
394
- },
395
- put() {
396
- // 对Modelval进行排序
397
- this.sortModelval()
398
- this.thead = `<tr><th colspan=${this.modelval.length}>换表查询统计报表</th></tr><tr>`
399
- for (let key of this.modelval) {
400
- this.thead += '<th>' + this.fields[key] + '</th>'
401
- }
402
- this.thead += '</tr>'
403
- },
404
- print() {
405
- this.$refs.print.PrintAsFile()
406
- this.printshow = false
407
- },
408
- close() {
409
- this.printshow = false
410
- this.all = false
411
- },
412
- // 对选择的列进行排序
413
- sortModelval() {
414
- let sortModel = []
415
- Object.keys(this.fields).forEach((key) => {
416
- if (this.modelval.includes(key)) {
417
- sortModel.push(key)
418
- }
419
- })
420
- this.modelval = sortModel
421
- console.log('选择的打印的字段', this.modelval)
422
- },
423
- async updateParams() {
424
- await this.$MagLoadParams.loadParam(this.f_filialeid)
425
- this.inputtores = [];
426
- this.inputtores.push({label: "全部", value: ""})
427
- this.initSlice(this.f_filialeid)
428
- if(this.allorgid!=null){
429
- this.allorgid.forEach((res)=>{
430
- this.inputtores = this.inputtores.concat(this.$MagGetSaleParam.getresinputtor(res));
431
- })
432
- }
433
- },
434
- //初始化片区
435
- async initSlice (val) {
436
- if (val) {
437
- let getAllArea = await this.$resetpost('/rs/search', {
438
- source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
439
- userid: this.$login.f.id
440
- }, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
441
- let arr = getAllArea.data.filter((res) => {
442
- return res.parentid == val
443
- })
444
- this.bookSlice = []
445
- console.log('过滤之后的片区-------------------', arr)
446
- arr.forEach((res) => {
447
- this.bookSlice.push({label: res.name, value: res.name})
448
- })
449
- }
450
- },
451
- },
452
-
453
- watch: {
454
- 'all'(val) {
455
- if (val) {
456
- this.modelval = this.bodyData
457
- } else {
458
- this.modelval = defaultPrint.config
459
- this.put()
460
- }
461
- },
462
- 'modelval.length'() {
463
- this.put()
464
- },
465
- sumsmodel:{
466
- handler: function(val) {
467
- this.getotherfooter();
468
- },
469
- deep: true
470
- },
471
- 'orgCondtionStr'(val) {
472
- this.$refs.paged.$refs.cri.model.f_book_slice_area=[]
473
- let res = val.match(/'(.*?)'/)
474
- console.log('正则提取:',res && res[1])
475
- if (res) {
476
- this.f_filialeid = res[1]
477
- if(res.input !=null){
478
- let resorgid = res.input.substring(res.input.indexOf("'"));
479
- if(resorgid!= null && resorgid!=''){
480
- resorgid = resorgid.substring(0,resorgid.lastIndexOf("'")+1);
481
- // resorgid = resorgid.replaceAll("'","");
482
- resorgid = resorgid.replace(/'/g,"");
483
- this.allorgid = resorgid.split(",")
484
- }
485
- }
486
- this.updateParams()
487
- }
488
- },
489
- },
490
- computed: {
491
- getCondition() {
492
- return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr}
493
- },
494
- getfield() {
495
- return exportConfig.expectgasConfig
496
- }
497
-
498
- }
499
- }
500
- </script>
1
+ <template>
2
+ <div id="unit" class="flex-row" class="foot_tabset" @keyup.enter="search">
3
+ <div class="basic-main">
4
+ <div class="flex">
5
+
6
+ <criteria-paged :model="model" v-ref:paged>
7
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
8
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
9
+ <div class="row">
10
+ <div class="col-sm-2 form-group">
11
+ <label class="font_normal_body">开始日期</label>
12
+ <datepicker id="startDate" placeholder="开始日期" style="width:60%"
13
+ v-model="model.startDate"
14
+ :value.sync="model.startDate"
15
+ :format="'yyyy-MM-dd HH:mm:ss'"
16
+ :show-reset-button="true"
17
+ condition="f_input_date >= '{}'">
18
+ </datepicker>
19
+ </div>
20
+ <div class="col-sm-2 form-group">
21
+ <label class="font_normal_body">结束日期</label>
22
+ <datepicker id="endDate" placeholder="结束日期" style="width:60%"
23
+ v-model="model.endDate"
24
+ :value.sync="model.endDate"
25
+ :format="'yyyy-MM-dd HH:mm:ss'"
26
+ :show-reset-button="true"
27
+ condition="f_input_date <= '{}'">
28
+ </datepicker>
29
+ </div>
30
+ <div class="col-sm-2 form-group ">
31
+ <label class="font_normal_body">客户编号</label>
32
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
33
+ condition="f_userinfo_code = '{}' " placeholder="客户编号">
34
+ </div>
35
+ <div class="col-sm-2 form-group">
36
+ <label class="font_normal_body">客户名称</label>
37
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
38
+ condition="f_user_name like '%{}%'" placeholder="客户名称">
39
+ </div>
40
+
41
+ <div class="span" style="float:right;">
42
+ <button class="button_search button_spacing" @click="search()">查询</button>
43
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
44
+ <!--<button class="btn btn-default" @click="$parent.$parent.stamp()">打印</button>-->
45
+
46
+ <export-excel :data="$parent.$parent.getCondition"
47
+ :field="$parent.$parent.getfield"
48
+ :footer="$parent.$parent.footer"
49
+ :header="$parent.$parent.other"
50
+ sqlurl="rs/logic/exportfile"
51
+ sql-name="getExpectGasListExcel"
52
+ template-name='气费应收账款导出'
53
+ :choose-col="true"></export-excel>
54
+ <print-data :sum-field="$parent.$parent.getfield" :model="$parent.model" :field="$parent.$parent.getfield"
55
+ :defaultfield="$parent.$parent.defaultfield"
56
+ titletable="气费应收账款"
57
+ :sumsmodel="$parent.$parent.sumsmodel"></print-data>
58
+
59
+ <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>
60
+ </div>
61
+ </div>
62
+ <div class="row" v-show="$parent.$parent.criteriaShow">
63
+ <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
64
+ <div class="col-sm-2 form-group">
65
+ <label class="font_normal_body">客户电话</label>
66
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_phone"
67
+ condition="f_user_phone like '%{}%'" placeholder="客户电话">
68
+ </div>
69
+ <div class="col-sm-2 form-group">
70
+ <label class="font_normal_body">客户地址</label>
71
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
72
+ condition="f_address like '%{}%'" placeholder='客户地址'>
73
+ </div>
74
+ <!--表册片区-->
75
+ <div class="col-sm-2 form-group">
76
+ <label class="font_normal_body">表册片区</label>
77
+ <v-select :value.sync="model.f_book_slice_area" v-model="model.f_book_slice_area"
78
+ :options='$parent.$parent.bookSlice' placeholder='片区/表册'
79
+ style="width:60%"
80
+ close-on-select
81
+ condition="f_book_slice_area = '{}'"></v-select>
82
+ </div>
83
+ </div>
84
+ </div>
85
+ </criteria>
86
+
87
+ <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid @dblclick="$parent.$parent.toBusiness">
88
+ <template partial='head'>
89
+ <tr><th rowspan=2><nobr>月份</nobr></th>
90
+ <th rowspan=2><nobr>公司</nobr></th>
91
+ <th colspan="4"><nobr>户数</nobr></th>
92
+ <th rowspan=2><nobr>冲正户数</nobr></th>
93
+ <th rowspan=2><nobr>小计</nobr></th>
94
+ <th colspan="4"><nobr>用气量</nobr></th>
95
+ <th rowspan=2><nobr>冲正气量</nobr></th>
96
+ <th rowspan=2><nobr>小计</nobr></th>
97
+ <th colspan="4"><nobr>用气金额</nobr></th>
98
+ <th rowspan=2><nobr>冲正金额</nobr></th>
99
+ <th rowspan=2><nobr>小计</nobr></th>
100
+ </tr>
101
+ <tr>
102
+ <th>
103
+ <nobr>工业</nobr>
104
+ </th>
105
+ <th>
106
+ <nobr>民用</nobr>
107
+ </th>
108
+ <th>
109
+ <nobr>集体</nobr>
110
+ </th>
111
+ <th>
112
+ <nobr>商业</nobr>
113
+ </th>
114
+ <th>
115
+ <nobr>工业</nobr>
116
+ </th>
117
+ <th>
118
+ <nobr>民用</nobr>
119
+ </th>
120
+ <th>
121
+ <nobr>集体</nobr>
122
+ </th>
123
+ <th>
124
+ <nobr>商业</nobr>
125
+ </th>
126
+ <th>
127
+ <nobr>工业</nobr>
128
+ </th>
129
+ <th>
130
+ <nobr>民用</nobr>
131
+ </th>
132
+ <th>
133
+ <nobr>集体</nobr>
134
+ </th>
135
+ <th>
136
+ <nobr>商业</nobr>
137
+ </th>
138
+ </tr>
139
+
140
+ </template>
141
+ <template partial='body'>
142
+ <td style="text-align: center;"><nobr>
143
+ <span ><a>{{row.f_month}}</a></span>
144
+ </nobr> </td>
145
+ <td style="text-align: center;"><nobr>
146
+ <span ><a>{{row.f_orgname}}</a></span>
147
+ </nobr> </td>
148
+ <td style="text-align: center;">
149
+ <nobr>{{row.f_gy_num}}</nobr>
150
+ </td>
151
+ <td style="text-align: center;">
152
+ <nobr>{{row.f_my_num}}</nobr>
153
+ </td>
154
+ <td style="text-align: center;">
155
+ <nobr>{{row.f_jt_num}}</nobr>
156
+ </td>
157
+ <td style="text-align: center;">
158
+ <nobr>{{row.f_sy_num}}</nobr>
159
+ </td>
160
+ <td style="text-align: center;">
161
+ <nobr>{{row.f_old_num}}</nobr>
162
+ </td>
163
+
164
+ <td style="text-align: center;">
165
+ <nobr>{{row.f_sum_num}}</nobr>
166
+ </td>
167
+
168
+ <td style="text-align: center;">
169
+ <nobr>{{row.f_gy_gas}}</nobr>
170
+ </td>
171
+ <td style="text-align: center;">
172
+ <nobr>{{row.f_my_gas}}</nobr>
173
+ </td>
174
+ <td style="text-align: center;">
175
+ <nobr>{{row.f_jt_gas}}</nobr>
176
+ </td>
177
+ <td style="text-align: center;">
178
+ <nobr>{{row.f_sy_gas}}</nobr>
179
+ </td>
180
+ <td style="text-align: center;">
181
+ <nobr>{{row.f_old_gas}}</nobr>
182
+ </td>
183
+ <td style="text-align: center;">
184
+ <nobr>{{row.f_sum_gas}}</nobr>
185
+ </td>
186
+
187
+ <td style="text-align: center;">
188
+ <nobr>{{row.f_gy_account}}</nobr>
189
+ </td>
190
+ <td style="text-align: center;">
191
+ <nobr>{{row.f_my_account}}</nobr>
192
+ </td>
193
+ <td style="text-align: center;">
194
+ <nobr>{{row.f_jt_account}}</nobr>
195
+ </td>
196
+ <td style="text-align: center;">
197
+ <nobr>{{row.f_sy_account}}</nobr>
198
+ </td>
199
+ <td style="text-align: center;">
200
+ <nobr>{{row.f_old_fee}}</nobr>
201
+ </td>
202
+ <td style="text-align: center;">
203
+ <nobr>{{row.f_sum_account}}</nobr>
204
+ </td>
205
+ </template>
206
+ <template partial='foot'>
207
+ <td style="text-align: center;background-color: mistyrose" colspan="2"><nobr>
208
+ <span >合计</span>
209
+ </nobr> </td>
210
+ <td style="text-align: center;background-color: mistyrose">
211
+ <nobr>{{model.sums.f_gy_num}}</nobr>
212
+ </td>
213
+ <td style="text-align: center;background-color: mistyrose">
214
+ <nobr>{{model.sums.f_my_num}}</nobr>
215
+ </td>
216
+ <td style="text-align: center;background-color: mistyrose">
217
+ <nobr>{{model.sums.f_jt_num}}</nobr>
218
+ </td>
219
+ <td style="text-align: center;background-color: mistyrose">
220
+ <nobr>{{model.sums.f_sy_num}}</nobr>
221
+ </td>
222
+ <td style="text-align: center;background-color: mistyrose">
223
+ <nobr>{{model.sums.f_old_num}}</nobr>
224
+ </td>
225
+
226
+ <td style="text-align: center;background-color: mistyrose">
227
+ <nobr>{{model.sums.f_sum_num}}</nobr>
228
+ </td>
229
+
230
+ <td style="text-align: center;background-color: mistyrose">
231
+ <nobr>{{model.sums.f_gy_gas}}</nobr>
232
+ </td>
233
+ <td style="text-align: center;background-color: mistyrose">
234
+ <nobr>{{model.sums.f_my_gas}}</nobr>
235
+ </td>
236
+ <td style="text-align: center;background-color: mistyrose">
237
+ <nobr>{{model.sums.f_jt_gas}}</nobr>
238
+ </td>
239
+ <td style="text-align: center;background-color: mistyrose">
240
+ <nobr>{{model.sums.f_sy_gas}}</nobr>
241
+ </td>
242
+ <td style="text-align: center;background-color: mistyrose">
243
+ <nobr>{{model.sums.f_old_gas}}</nobr>
244
+ </td>
245
+ <td style="text-align: center;background-color: mistyrose">
246
+ <nobr>{{model.sums.f_sum_gas}}</nobr>
247
+ </td>
248
+
249
+ <td style="text-align: center;background-color: mistyrose">
250
+ <nobr>{{model.sums.f_gy_account}}</nobr>
251
+ </td>
252
+ <td style="text-align: center;background-color: mistyrose">
253
+ <nobr>{{model.sums.f_my_account}}</nobr>
254
+ </td>
255
+ <td style="text-align: center;background-color: mistyrose">
256
+ <nobr>{{model.sums.f_jt_account}}</nobr>
257
+ </td>
258
+ <td style="text-align: center;background-color: mistyrose">
259
+ <nobr>{{model.sums.f_sy_account}}</nobr>
260
+ </td>
261
+ <td style="text-align: center;background-color: mistyrose">
262
+ <nobr>{{model.sums.f_old_fee}}</nobr>
263
+ </td>
264
+ <td style="text-align: center;background-color: mistyrose">
265
+ <nobr>{{model.sums.f_sum_account}}</nobr>
266
+ </td>
267
+ </template>
268
+ </data-grid>
269
+ </criteria-paged>
270
+
271
+ </div>
272
+ </div>
273
+ </div>
274
+ </template>
275
+
276
+ <script>
277
+ import {HttpResetClass, PagedList} from 'vue-client'
278
+ import defaultPrint from '../../config/DefaultPrint'
279
+ import exportConfig from '../../config/exportConfig'
280
+
281
+ let readySomething = async function (self) {
282
+
283
+ self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
284
+ self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
285
+ self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
286
+ }
287
+ export default {
288
+ title: '气费应收账款汇总',
289
+ data() {
290
+ return {
291
+ data: {},
292
+ other:[],
293
+ //默认打印列
294
+ defaultfield: [],
295
+ config: {
296
+ defaultPrint: ['f_gy_gas', 'f_sum_gas', 'f_sum_num', 'f_my_gas']
297
+ },
298
+ footer:[],
299
+ model: new PagedList('rs/sql/getExpectGasListExcel', 20,{},{
300
+ f_gy_num:0,f_my_num:0,f_jt_num:0,f_sy_num:0,f_old_num:0,f_sum_num:0,
301
+ f_gy_gas:0,f_my_gas:0,f_jt_gas:0,f_sy_gas:0,f_old_gas:0,f_sum_gas:0,
302
+ f_gy_account:0,f_my_account:0,f_jt_account:0,f_sy_account:0,f_old_fee:0,f_sum_account:0
303
+ }),
304
+ sumsmodel:{},
305
+ criteriaShow: false,
306
+ orgCondtionStr: '',
307
+ modelval: [],
308
+ printshow: false,
309
+ all: false,
310
+ fields: {},
311
+ //表册片区
312
+ bookSlice:[{label: '全部',value: ''}],
313
+ initres: {
314
+ org:[this.$login.f.orgid],
315
+ dep:[],
316
+ user:[],
317
+ },
318
+ thead: '',
319
+ tfoot: '',
320
+
321
+ // tablestate: [{label: '全部', value: ''}, {label: '正常', value: '正常'}, {label: '停用', value: '停用'}],
322
+
323
+
324
+ }
325
+ },
326
+ ready() {
327
+ readySomething(this)
328
+ },
329
+ methods: {
330
+ getotherfooter(){
331
+ // this.$refs.paged.$refs.cri.$refs.exports.otherData=[];
332
+ // this.$refs.paged.$refs.cri.$refs.exports.footerData=[];
333
+ this.other=[];
334
+ this.footer=[];
335
+ let exportdata = this.getCondition;
336
+ let otherInData=[];
337
+ otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
338
+ let footerData=[],exportfield=this.getfield;
339
+ footerData.push("合计");
340
+ let self =this;
341
+ for(var field in self.sumsmodel){
342
+ footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
343
+ }
344
+ this.footer.push(footerData);
345
+ this.other.push(otherInData);
346
+ },
347
+ search(){
348
+ // this.$refs.paged.$refs.cri.search()
349
+ },
350
+
351
+
352
+ selfSearch(args) {
353
+ args.condition = `${args.condition}` + this.orgCondtionStr
354
+ new HttpResetClass().load('POST','rs/logic/getExpectGasListLogic',{condition:args.condition,isPage:true}).then(res =>{
355
+ this.model.search(args.condition, args.model)
356
+ this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
357
+ })
358
+
359
+ // console.log('this.model====>>>>', this.model)
360
+ },
361
+ clear() {
362
+ //清空部门和人员
363
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].selectres = []
364
+ //部门和人员变为全选
365
+ this.$refs.paged.$refs.cri.$refs.sel.$children[1].$children[0].isSelectAll = false
366
+ this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
367
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
368
+ this.$refs.paged.$refs.cri.model[key] = []
369
+ })
370
+ },
371
+ show() {
372
+ this.criteriaShow = true
373
+ },
374
+ hidden() {
375
+ this.criteriaShow = !this.criteriaShow
376
+ },
377
+ getRes(obj) {
378
+ console.log(obj,"========")
379
+ this.orgCondtionStr = obj
380
+ },
381
+ stamp() {
382
+ this.all = false
383
+ //默认选择要打印的列
384
+ this.modelval = defaultPrint.config
385
+ this.fields = this.getfield
386
+ console.log('所有打印字段', this.fields)
387
+ this.printshow = true
388
+ this.put()
389
+ },
390
+ dealmsg(val) {
391
+ console.log('---------------dealmsg')
392
+ val.model = this.model.model
393
+ this.$dispatch('deal-msg', val)
394
+ },
395
+ put() {
396
+ // 对Modelval进行排序
397
+ this.sortModelval()
398
+ this.thead = `<tr><th colspan=${this.modelval.length}>换表查询统计报表</th></tr><tr>`
399
+ for (let key of this.modelval) {
400
+ this.thead += '<th>' + this.fields[key] + '</th>'
401
+ }
402
+ this.thead += '</tr>'
403
+ },
404
+ print() {
405
+ this.$refs.print.PrintAsFile()
406
+ this.printshow = false
407
+ },
408
+ close() {
409
+ this.printshow = false
410
+ this.all = false
411
+ },
412
+ // 对选择的列进行排序
413
+ sortModelval() {
414
+ let sortModel = []
415
+ Object.keys(this.fields).forEach((key) => {
416
+ if (this.modelval.includes(key)) {
417
+ sortModel.push(key)
418
+ }
419
+ })
420
+ this.modelval = sortModel
421
+ console.log('选择的打印的字段', this.modelval)
422
+ },
423
+ async updateParams() {
424
+ await this.$MagLoadParams.loadParam(this.f_filialeid)
425
+ this.inputtores = [];
426
+ this.inputtores.push({label: "全部", value: ""})
427
+ this.initSlice(this.f_filialeid)
428
+ if(this.allorgid!=null){
429
+ this.allorgid.forEach((res)=>{
430
+ this.inputtores = this.inputtores.concat(this.$MagGetSaleParam.getresinputtor(res));
431
+ })
432
+ }
433
+ },
434
+ //初始化片区
435
+ async initSlice (val) {
436
+ if (val) {
437
+ let getAllArea = await this.$resetpost('/rs/search', {
438
+ source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
439
+ userid: this.$login.f.id
440
+ }, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
441
+ let arr = getAllArea.data.filter((res) => {
442
+ return res.parentid == val
443
+ })
444
+ this.bookSlice = []
445
+ console.log('过滤之后的片区-------------------', arr)
446
+ arr.forEach((res) => {
447
+ this.bookSlice.push({label: res.name, value: res.name})
448
+ })
449
+ }
450
+ },
451
+ },
452
+
453
+ watch: {
454
+ 'all'(val) {
455
+ if (val) {
456
+ this.modelval = this.bodyData
457
+ } else {
458
+ this.modelval = defaultPrint.config
459
+ this.put()
460
+ }
461
+ },
462
+ 'modelval.length'() {
463
+ this.put()
464
+ },
465
+ sumsmodel:{
466
+ handler: function(val) {
467
+ this.getotherfooter();
468
+ },
469
+ deep: true
470
+ },
471
+ 'orgCondtionStr'(val) {
472
+ this.$refs.paged.$refs.cri.model.f_book_slice_area=[]
473
+ let res = val.match(/'(.*?)'/)
474
+ console.log('正则提取:',res && res[1])
475
+ if (res) {
476
+ this.f_filialeid = res[1]
477
+ if(res.input !=null){
478
+ let resorgid = res.input.substring(res.input.indexOf("'"));
479
+ if(resorgid!= null && resorgid!=''){
480
+ resorgid = resorgid.substring(0,resorgid.lastIndexOf("'")+1);
481
+ // resorgid = resorgid.replaceAll("'","");
482
+ resorgid = resorgid.replace(/'/g,"");
483
+ this.allorgid = resorgid.split(",")
484
+ }
485
+ }
486
+ this.updateParams()
487
+ }
488
+ },
489
+ },
490
+ computed: {
491
+ getCondition() {
492
+ return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.orgCondtionStr}
493
+ },
494
+ getfield() {
495
+ return exportConfig.expectgasConfig
496
+ }
497
+
498
+ }
499
+ }
500
+ </script>