manage-client 3.3.213 → 3.3.215

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.
@@ -0,0 +1,432 @@
1
+ <template>
2
+ <div class="flex-row" v-show="!showdetail">
3
+ <div id='app1' class="basic-main" >
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="col-sm-2 form-group">
9
+ <label class="font_normal_body">客户编1号</label>
10
+ <input @keyup.enter="search" style="width:60%" type="text" class="input_search"
11
+ v-model="model.f_userinfo_code" placeholder='客户编号'
12
+ condition="f_userinfo_code like '%{}%'" v-el:xq v-next-el='userinfocode' v-el:username
13
+ >
14
+ </div>
15
+ <div class="col-sm-2 form-group">
16
+ <label class="font_normal_body">客户名称</label>
17
+ <input @keyup.enter="search" style="width:60%" type="text" class="input_search"
18
+ v-model="model.f_user_name" placeholder='客户名称'
19
+ condition="f_user_name like '%{}%'" v-el:xq v-next-el='username' v-el:username
20
+ >
21
+ </div>
22
+ <div class="col-sm-2 form-group">
23
+ <label class="font_normal_body">客户地址</label>
24
+ <input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_area"
25
+ placeholder='地址'
26
+ condition="f_address like '%{}%'" v-el:xq v-next-el='address' v-el:area
27
+ >
28
+ </div>
29
+ <div class="col-sm-2 form-group">
30
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;表号&nbsp;&nbsp;&nbsp;</label>
31
+ <input @keyup.enter="search" style="width:60%" type="text" class="input_search"
32
+ v-model="model.f_meternumber" placeholder='表号'
33
+ condition="f_meternumber like '%{}%'" v-next-el='meternumber' v-el:meternumber
34
+ >
35
+ </div>
36
+ <div style="float:right">
37
+ <button class="button_search button_spacing" @click="search()">查询</button>
38
+ <button class="button_clear button_spacing" @click="clear">清空</button>
39
+ <export-excel :data="$parent.$parent.getCondition" class="button_export button_spacing"
40
+ :field="$parent.$parent.getfield" :sumname="$parent.$parent.sumName"
41
+ sqlurl="api/af-revenue/logic/openapi/exportfile" sql-name="webmeterSettlementAnalysis" template-name='物联网表结算分析'
42
+ :choose-col="true"></export-excel>
43
+
44
+ <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>
45
+ </div>
46
+ </div>
47
+ <div class="row" v-show="$parent.$parent.criteriaShow">
48
+ <div class="col-sm-2 form-group">
49
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;公司&nbsp;&nbsp;&nbsp;</label>
50
+ <right-tree @re-res="$parent.$parent.getorg" width="60%"
51
+ :initresid='$parent.$parent.org'></right-tree>
52
+ </div>
53
+ <div class="col-sm-2 form-group">
54
+ <label class="font_normal_body">客户类型</label>
55
+ <v-select style="width:60%" id="f_user_type"
56
+ v-model="model.f_user_type"
57
+ placeholder='客户类型'
58
+ :value.sync="model.f_user_type"
59
+ @change="$parent.$parent.userTypeChange()"
60
+ :options='$parent.$parent.usertypes'
61
+ condition="f_user_type = '{}'"
62
+ close-on-select>
63
+ </v-select>
64
+ </div>
65
+ <div class="col-sm-2 form-group">
66
+ <label class="font_normal_body">用气性质</label>
67
+ <v-select style="width:60%" id="f_gasproperties"
68
+ v-model="model.f_gasproperties"
69
+ placeholder='用气性质'
70
+ :value.sync="model.f_gasproperties"
71
+ :options='$parent.$parent.gasproperties'
72
+ condition="f_gasproperties = '{}'"
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
79
+ placeholder='气表品牌'
80
+ :value.sync="model.f_meter_brand"
81
+ v-model="model.f_meter_brand"
82
+ :options='$parent.$parent.meterbrands'
83
+ close-on-select
84
+ condition="f_meter_brand='{}'">
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_style"
92
+ v-model="model.f_meter_style"
93
+ :options='$parent.$parent.meterstyle[model.f_meter_brand]'
94
+ close-on-select
95
+ condition="f_meter_style='{}'">
96
+ </v-select>
97
+ </div>
98
+ <div class="col-sm-2 form-group">
99
+ <label class="font_normal_body">开始时间</label>
100
+ <datepicker style="width:60%" id="startdate" placeholder="开始时间"
101
+ v-model="model.startDate"
102
+ :value.sync="model.startDate"
103
+ :disabled-days-of-Week="[]"
104
+ :format="'yyyy-MM-dd 00:00:00'"
105
+ :show-reset-button="reset">
106
+ </datepicker>
107
+ </div>
108
+ <div class="col-sm-2 form-group">
109
+ <label class="font_normal_body">结束时间</label>
110
+ <datepicker style="width:60%" id="enddate" placeholder="结束日期"
111
+ v-model="model.endDate"
112
+ :value.sync="model.endDate"
113
+ :disabled-days-of-Week="[]"
114
+ :format="'yyyy-MM-dd 23:59:59'"
115
+ :show-reset-button="reset">
116
+ </datepicker>
117
+ </div>
118
+ <div class="col-sm-2 form-group">
119
+ <label class="font_normal_body">分析状态</label>
120
+ <v-select
121
+ placeholder='状态'
122
+ :value.sync="model.f_state"
123
+ v-model="model.f_state"
124
+ :options='$parent.$parent.states'
125
+ close-on-select
126
+ condition="f_state='{}'">
127
+ </v-select>
128
+ </div>
129
+ </div>
130
+ </div>
131
+ </criteria>
132
+ <data-grid id="lostuserlist" :model="model" partial='list' v-ref:grid class="list_area table_sy">
133
+ <template partial='head'>
134
+ <tr>
135
+ <th style="text-align:center">
136
+ <nobr>序号</nobr>
137
+ </th>
138
+ <th style="text-align:center">
139
+ <nobr>客户编号</nobr>
140
+ </th>
141
+ <th style="text-align:center">
142
+ <nobr>客户名称</nobr>
143
+ </th>
144
+ <th style="text-align:center">
145
+ <nobr>客户地址</nobr>
146
+ </th>
147
+ <th style="text-align:center">
148
+ <nobr>客户类型</nobr>
149
+ </th>
150
+ <th style="text-align:center">
151
+ <nobr>用气性质</nobr>
152
+ </th>
153
+ <th style="text-align:center">
154
+ <nobr>表号</nobr>
155
+ </th>
156
+ <th style="text-align:center">
157
+ <nobr>气表品牌</nobr>
158
+ </th>
159
+ <th style="text-align:center" >
160
+ <nobr>气表型号</nobr>
161
+ </th>
162
+ <th style="text-align:center" >
163
+ <nobr>组织机构</nobr>
164
+ </th>
165
+ <th style="text-align:center" >
166
+ <nobr>上期初余</nobr>
167
+ </th>
168
+ <th style="text-align:center" >
169
+ <nobr>期末余额</nobr>
170
+ </th>
171
+ <th style="text-align:center" >
172
+ <nobr>期间充值</nobr>
173
+ </th>
174
+ <th style="text-align:center" >
175
+ <nobr>表上期初气量底数</nobr>
176
+ </th>
177
+ <th style="text-align:center" >
178
+ <nobr>表上期末气量底数</nobr>
179
+ </th>
180
+ <th style="text-align:center" >
181
+ <nobr>表上期间用气总量</nobr>
182
+ </th>
183
+
184
+ <th style="text-align:center" >
185
+ <nobr>结算期初气量底数</nobr>
186
+ </th>
187
+ <th style="text-align:center" >
188
+ <nobr>结算期末气量底数</nobr>
189
+ </th>
190
+ <th style="text-align:center" >
191
+ <nobr>结算期间用气总量</nobr>
192
+ </th>
193
+ <th style="text-align:center" >
194
+ <nobr>期间用气金额</nobr>
195
+ </th>
196
+
197
+ <th style="text-align:center" >
198
+ <nobr>分析状态</nobr>
199
+ </th>
200
+ <th style="text-align:center" >
201
+ <nobr>结算金额异常</nobr>
202
+ </th>
203
+ </tr>
204
+ </template>
205
+ <template partial='body'>
206
+ <td style="text-align:center">{{$index+1}}</td>
207
+ <td style="text-align: center;">
208
+ <nobr>{{row.f_userinfo_code}}</nobr>
209
+ </td>
210
+ <td style="text-align:center"><nobr>{{row.f_user_name}}</nobr></td>
211
+ <td><nobr>{{row.f_address}}</nobr></td>
212
+ <td style="text-align:center">{{row.f_user_type}}</td>
213
+ <td style="text-align:center">{{row.f_gasproperties}}</td>
214
+ <td style="text-align:center"><nobr>{{row.f_meternumber}}</nobr></td>
215
+ <td style="text-align:center">
216
+ <nobr>{{row.f_meter_brand}}</nobr>
217
+ </td>
218
+ <td style="text-align:center">
219
+ <nobr>{{row.f_meter_style}}</nobr>
220
+ </td>
221
+ <td style="text-align:center">
222
+ <nobr>{{row.f_orgname}}</nobr>
223
+ </td>
224
+ <th style="text-align:center" >
225
+ <nobr>{{row.f_early_jval}}</nobr>
226
+ </th>
227
+ <th style="text-align:center" >
228
+ <nobr>{{row.f_cur_jval}}</nobr>
229
+ </th>
230
+ <th style="text-align:center" >
231
+ <nobr>{{row.f_collection}}</nobr>
232
+ </th>
233
+ <th style="text-align:center" >
234
+ <nobr>{{row.f_early_meter_tablebase}}</nobr>
235
+ </th>
236
+ <th style="text-align:center" >
237
+ <nobr>{{row.f_cur_meter_tablebase}}</nobr>
238
+ </th>
239
+ <th style="text-align:center" >
240
+ <nobr>{{row.f_meter_tablebase}}</nobr>
241
+ </th>
242
+
243
+ <th style="text-align:center" >
244
+ <nobr>{{row.f_early_hand_tablebase}}</nobr>
245
+ </th>
246
+ <th style="text-align:center" >
247
+ <nobr>{{row.f_cur_hand_tablebase}}</nobr>
248
+ </th>
249
+ <th style="text-align:center" >
250
+ <nobr>{{row.f_hand_tablebase}}</nobr>
251
+ </th>
252
+ <th style="text-align:center" >
253
+ <nobr>{{row.f_oughtfee}}</nobr>
254
+ </th>
255
+ <th style="text-align:center" >
256
+ <nobr>{{row.f_state}}</nobr>
257
+ </th>
258
+ <th style="text-align:center" >
259
+ <nobr>{{row.f_money}}</nobr>
260
+ </th>
261
+ </template>
262
+ </data-grid>
263
+ </criteria-paged>
264
+ </div>
265
+ </div>
266
+ </template>
267
+
268
+ <script>
269
+ import {PagedList} from 'vue-client'
270
+ import * as Util from '../../../Util'
271
+ import plugin from 'system-clients/src/plugins/GetLoginInfoService'
272
+ let readySomething = async function (self) {
273
+ self.$refs.paged.$refs.cri.model.startDate = Util.toStandardDateString() +' 00:00:00'
274
+ self.$refs.paged.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
275
+ await self.$MagLoadParams.loadParam()
276
+ self.initParams()
277
+
278
+ // self.$refs.paged.$refs.cri.search()
279
+ }
280
+ export default {
281
+ title: '物联网表结算分析',
282
+ props: ['data'],
283
+ data() {
284
+ return {
285
+ model: new PagedList('api/af-revenue/sql/webmeterSettlementAnalysis', 20, {
286
+ startDate: 'this.model.startDate',
287
+ endDate: 'this.model.endDate'
288
+ }),
289
+ getfield:{
290
+ 'f_userinfo_code':'客户编号','f_user_name':'客户名称',
291
+ 'f_address':'客户地址','f_user_type':'客户类型','f_gasproperties':'用气性质',
292
+ 'f_meternumber':'表号',
293
+ 'f_meter_brand':'气表品牌','f_meter_style': '气表型号','f_orgname':'组织机构',
294
+ 'f_early_meter_tablebase': '表上期初表底数', 'f_cur_meter_tablebase': '表上期末表底数', 'f_early_jval': '期初余额',
295
+ 'f_cur_jval': '期末余额', 'f_meter_tablebase': '表上期间用气总量','f_early_hand_tablebase': '结算期初表底数',
296
+ 'f_cur_hand_tablebase':'结算期末表底数', 'f_oughtfee': '应交金额','f_hand_tablebase':'结算期间用气总量','f_state':'状态','f_money': '结算金额异常'},
297
+ showdetail:false,
298
+ rowdata:{},
299
+ startDate: '',
300
+ endDate: '',
301
+ criteriaShow:false,
302
+ outlets: [],
303
+ gasproperties:[{label: '全部', value: ''}],
304
+ operator: [],
305
+ meterbrands: [],
306
+ states: [],
307
+ meterstyle:{},
308
+ orgCondtionStr: ` and f_orgid = ${this.$login.f.orgid}`,
309
+ orgid:[this.$login.f.orgid],
310
+ condition: '1=1',
311
+ org:[this.$login.f.orgid]
312
+
313
+ }
314
+ },
315
+ ready() {
316
+ readySomething(this)
317
+ },
318
+ methods: {
319
+
320
+ userTypeChange () {
321
+ this.gasproperties=[{label: '全部', value: ''}]
322
+ if(this.$refs.paged.$refs.cri.model && this.$refs.paged.$refs.cri.model.f_user_type) {
323
+ this.$refs.paged.$refs.cri.model.f_gasproperties=''
324
+ console.log(this.$refs.paged.$refs.cri.model.f_user_type[0])
325
+ this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
326
+ }
327
+ else{
328
+ this.gasproperties =[{label: '全部', value: ''}]
329
+ }
330
+ },
331
+ hidden(){
332
+ this.criteriaShow = !this.criteriaShow
333
+ },
334
+ showmsg(obj){
335
+ this.rowdata = obj
336
+ this.showdetail = true
337
+ },
338
+ cancel() {
339
+ this.showdetail = false
340
+ },
341
+ initParams () {
342
+ // 初始化气表品牌
343
+ let brandArr = []
344
+ this.$MagGetSaleParam.getGasbrand().forEach((item) => {
345
+ if(item.value.f_meter_type==='物联网表'){
346
+ let temp = {}
347
+ temp.label = item.label
348
+ temp.value = item.value.f_meter_brand
349
+ brandArr.push(temp)
350
+
351
+ let styleArr = [{label: '全部', value: ''}]
352
+ for (let row of item.value.gasmodel) {
353
+ styleArr.push({label: row.label,value: row.value.f_meter_style})
354
+ }
355
+ this.meterstyle[temp.value] = styleArr
356
+ }
357
+
358
+ })
359
+ this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
360
+ // this.states = [{label: '全部', value: ''}, ...this.$appdata.getParam('分析状态')]
361
+ },
362
+ search(args) {
363
+ this.startDate = this.$refs.paged.$refs.cri.model.startDate
364
+ this.endDate = this.$refs.paged.$refs.cri.model.endDate
365
+ if (this.endDate == '' || this.startDate == '') {
366
+ return this.$showMessage("时间区间的开始和结束时间不能为空!")
367
+ }
368
+ this.condition = args.condition = this.$refs.paged.$refs.cri.condition + `${this.orgCondtionStr}`
369
+ this.model.search(args.condition, args.model)
370
+ },
371
+ getorg(obj) {
372
+ if (obj.resids.length>0) {
373
+ this.orgCondtionStr = " and f_orgid in " + plugin.convertToIn(obj.resids)
374
+ }else
375
+ {
376
+ this.orgCondtionStr = " and f_orgid = " + this.$login.f.orgid
377
+ }
378
+ },
379
+ clearmsg() {
380
+ this.$refs.paged.$refs.cri.model = {}
381
+ }
382
+ },
383
+ watch: {
384
+ },
385
+ computed: {
386
+ getCondition() {
387
+ let condition=this.$refs.paged.$refs.cri.condition + this.orgCondtionStr
388
+ return {
389
+ condition: condition ,
390
+ startDate:`${this.$refs.paged.$refs.cri.model.startDate}`,
391
+ endDate:`${this.$refs.paged.$refs.cri.model.endDate}`
392
+ }
393
+
394
+ },
395
+ usertypes() {
396
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
397
+ }
398
+ }
399
+ }
400
+ </script>
401
+ <style>
402
+ .form-input-group label {
403
+ text-align: right;
404
+ width: auto;
405
+ }
406
+
407
+ .mystyle {
408
+ float: right;
409
+ padding-right: 10%;
410
+ }
411
+
412
+ .mystyle1 {
413
+ padding-top: 10px;
414
+
415
+ }
416
+
417
+ .mystyle2 {
418
+ width: 100%;
419
+ height: 35px;
420
+ /*background: #00A3F0;*/
421
+ padding-left: 15px;
422
+ float: left;
423
+ }
424
+
425
+ .datapanel {
426
+ color: #333;
427
+ background-color: white;
428
+ box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
429
+ padding: 10px 30px 10px 30px;
430
+ border-radius: 15px;
431
+ }
432
+ </style>
@@ -164,8 +164,9 @@
164
164
  <label class="font_normal_body">气表状态</label>
165
165
  <v-select :value.sync="model.f_table_state"
166
166
  v-model="model.f_table_state"
167
+ multiple ="true"
167
168
  :options='$parent.$parent.tablestate' placeholder='请选择'
168
- condition="f_table_state = '{}'"
169
+ condition="f_table_state in {} "
169
170
  close-on-select></v-select>
170
171
  </div>
171
172
  <!-- <div class="col-sm-2 form-group">-->
@@ -261,8 +262,9 @@
261
262
  <label class="font_normal_body">客户状态</label>
262
263
  <v-select :value.sync="model.f_user_state"
263
264
  v-model="model.f_user_state"
265
+ multiple = "true"
264
266
  :options='$parent.$parent.userstates' placeholder='请选择'
265
- condition="f_user_state = '{}'"
267
+ condition="f_user_state in {}"
266
268
  close-on-select></v-select>
267
269
  </div>
268
270
  <div class="col-sm-2 form-group">
@@ -334,8 +336,6 @@
334
336
  <th>
335
337
  <nobr>卡号</nobr>
336
338
  </th>
337
-
338
-
339
339
  <th>
340
340
  <nobr>气价名称</nobr>
341
341
  </th>
@@ -32,7 +32,8 @@ export default{
32
32
  'f_userinfo_code': '客户编号','f_user_name':'客户名称','f_user_phone': '客户电话','idnumber': '身份证号','f_address': '客户地址','f_balance_amount': '表上余额',
33
33
  'f_user_type': '客户类型','f_usetype': '使用类型','f_use_date': '使用日期','f_gasproperties': '用气性质','f_meternumber': '表号',"f_card_id":'卡号','f_price_name': '气价名称',
34
34
  'value': '气价详情','f_meter_brand': '气表品牌', 'f_meter_style': '气表型号',
35
- 'f_gas_person': '通气人','f_gas_date': '通气时间','f_input_date': '建表时间', 'f_table_state': '气表状态', 'isbgl': '是否壁挂炉','f_inputtor':'抄表员','f_book_name':'抄表册'
35
+ 'f_gas_person': '通气人','f_gas_date': '通气时间','f_input_date': '建表时间', 'f_table_state': '气表状态', 'isbgl': '是否壁挂炉','f_inputtor':'抄表员','f_book_name':'抄表册',
36
+ 'f_user_state': '客户状态'
36
37
  },
37
38
  ResidentialQuery: {
38
39
  'f_residential_area':'小区','hushu':'户数','xinhushu':'新建户数','f_oughtfee':'用气金额','f_oughtamount':'用气量',
package/src/saleManage.js CHANGED
@@ -686,6 +686,4 @@ export default function () {
686
686
  Vue.component('user-open-echarts', (resolve) => { require(['./components/BasisEcharts/businessQuery/userOpenEcharts'], resolve) })
687
687
 
688
688
  Vue.component('web-meter-user-month-query', (resolve) => { require(['./components/sale/businessquery/WebMeterMonthUserGasQuery'], resolve) })
689
- // 打印
690
- Vue.component('print-table', (resolve) => { require(['./components/sale/common/PrintTableManage'], resolve) })
691
689
  }