manage-client 3.3.123 → 3.3.125

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,409 @@
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">客户编号</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="rs/logic/exportfile" sql-name="webmeter_getNoMetereadData" 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
+ <v-select
101
+ placeholder='用户状态'
102
+ value-single="true"
103
+ style="width:60%"
104
+ :value.sync="model.f_user_state"
105
+ v-model="model.f_user_state"
106
+ :options='$parent.$parent.userstate'
107
+ close-on-select condition="f_user_state ='{}'">
108
+ </v-select>
109
+ </div>
110
+ <div class="col-sm-2 form-group">
111
+ <label class="font_normal_body">开始时间</label>
112
+ <datepicker style="width:60%" id="startdate" placeholder="开始时间"
113
+ v-model="model.startDate"
114
+ :value.sync="model.startDate"
115
+ :disabled-days-of-Week="[]"
116
+ :format="'yyyy-MM-dd 00:00:00'"
117
+ :show-reset-button="reset">
118
+ </datepicker>
119
+ </div>
120
+ <div class="col-sm-2 form-group">
121
+ <label class="font_normal_body">结束时间</label>
122
+ <datepicker style="width:60%" id="enddate" placeholder="结束日期"
123
+ v-model="model.endDate"
124
+ :value.sync="model.endDate"
125
+ :disabled-days-of-Week="[]"
126
+ :format="'yyyy-MM-dd 23:59:59'"
127
+ :show-reset-button="reset">
128
+ </datepicker>
129
+ </div>
130
+ <div class="col-sm-2 form-group">
131
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;小区&nbsp;&nbsp;&nbsp;</label>
132
+ <v-select :value.sync="model.f_residential_area"
133
+ class="select_list select"
134
+ enter-push
135
+ multiple
136
+ condition="f_residential_area in {}"
137
+ v-model="model.f_residential_area"
138
+ style="width: 60%"
139
+ :options='$parent.$parent.residentialArea' placeholder='选择小区'
140
+ close-on-select>
141
+
142
+ </v-select>
143
+ </div>
144
+ </div>
145
+ </div>
146
+ </criteria>
147
+ <data-grid id="lostuserlist" :model="model" partial='list' v-ref:grid class="list_area table_sy">
148
+ <template partial='head'>
149
+ <tr>
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
+ <th style="text-align:center" >
184
+ <nobr>气表型号</nobr>
185
+ </th>
186
+ <th style="text-align:center" >
187
+ <nobr>用户状态</nobr>
188
+ </th>
189
+ <th style="text-align:center" >
190
+ <nobr>组织机构</nobr>
191
+ </th>
192
+ </tr>
193
+ </template>
194
+ <template partial='body'>
195
+ <td style="text-align:center">{{$index+1}}</td>
196
+ <td style="text-align:center">{{row.f_date}}</td>
197
+ <td style="text-align: center;"><nobr>
198
+ <span @click="$parent.$parent.$parent.showmsg(row)"><a>{{row.f_userinfo_code}}</a></span>
199
+ </nobr> </td>
200
+ <td style="text-align:center"><nobr>{{row.f_user_name}}</nobr></td>
201
+ <td style="text-align:center"><nobr>{{row.f_user_phone}}</nobr></td>
202
+ <td><nobr>{{row.f_residential_area}}</nobr></td>
203
+ <td><nobr>{{row.f_address}}</nobr></td>
204
+ <td style="text-align:center">{{row.f_user_type}}</td>
205
+ <td style="text-align:center">{{row.f_gasproperties}}</td>
206
+ <td style="text-align:center"><nobr>{{row.f_meternumber}}</nobr></td>
207
+ <td style="text-align:center">
208
+ <nobr>{{row.f_meter_brand}}</nobr>
209
+ </td>
210
+ <td style="text-align:center">
211
+ <nobr>{{row.f_meter_style}}</nobr>
212
+ </td>
213
+ <td style="text-align:center">
214
+ <nobr>{{row.f_user_state}}</nobr>
215
+ </td>
216
+ <td style="text-align:center">
217
+ <nobr>{{row.f_orgname}}</nobr>
218
+ </td>
219
+
220
+ </template>
221
+ </data-grid>
222
+ </criteria-paged>
223
+ </div>
224
+ </div>
225
+ <div class="flex-row" v-if="showdetail">
226
+ <user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage-new>
227
+ </div>
228
+ </template>
229
+
230
+ <script>
231
+ import {HttpResetClass, PagedList} from 'vue-client'
232
+ import * as Util from '../../Util'
233
+ import plugin from 'system-clients/src/plugins/GetLoginInfoService'
234
+ let readySomething = async function (self) {
235
+
236
+ await self.$MagLoadParams.loadParam()
237
+ self.initParams()
238
+ self.getaddress()
239
+ self.$refs.paged.$refs.cri.model.startDate = Util.toStandardDateString() +' 00:00:00'
240
+ self.$refs.paged.$refs.cri.model.endDate = Util.toStandardDateString() + ' 23:59:59'
241
+ }
242
+ export default {
243
+ title: '未上报查询',
244
+ props: ['data'],
245
+ data() {
246
+ return {
247
+ model: new PagedList('rs/sql/webmeter_getNoMetereadData', 20, {
248
+ startDate: 'this.model.startDate',
249
+ endDate: 'this.model.endDate'
250
+ }),
251
+ getfield:{
252
+ 'f_userinfo_code':'客户编号','f_user_name':'客户名称', 'f_date': '未上报日期',
253
+ 'f_address':'客户地址','f_residential_area':'客户小区','f_user_type':'客户类型','f_gasproperties':'用气性质',
254
+ 'f_meternumber':'表号',
255
+ 'f_meter_brand':'气表厂家','f_orgname':'组织机构'},
256
+ showdetail:false,
257
+ rowdata:{},
258
+ startDate: '',
259
+ endDate: '',
260
+ criteriaShow:false,
261
+ outlets: [],
262
+ residentialArea: [],
263
+ gasproperties:[{label: '全部', value: ''}],
264
+ operator: [],
265
+ meterbrands: [],
266
+ meterstyle:{},
267
+ orgCondtionStr: ` and f_orgid = ${this.$login.f.orgid}`,
268
+ orgid:[this.$login.f.orgid],
269
+ condition: '1=1',
270
+ org:[this.$login.f.orgid]
271
+
272
+ }
273
+ },
274
+ ready() {
275
+ readySomething(this)
276
+ },
277
+ methods: {
278
+ async getaddress(){
279
+ console.log('开始获取小区')
280
+ let HttpReset = new HttpResetClass()
281
+ var data = await HttpReset.load('POST', 'rs/sql/manage_getarealist', {
282
+ data: {
283
+ condition: `1=1 and s.f_orgid = '${this.$login.f.orgid}'`
284
+ }
285
+ }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
286
+ console.log('小区',data)
287
+ let house = [{label: '全部', value: ''}]
288
+ for (let row of data.data){
289
+ console.log('开始保存小区')
290
+ house.push({label: row.f_residential_area, value: row.f_residential_area})
291
+ }
292
+ this.residentialArea = house
293
+ },
294
+
295
+ userTypeChange () {
296
+ this.gasproperties=[{label: '全部', value: ''}]
297
+ if(this.$refs.paged.$refs.cri.model && this.$refs.paged.$refs.cri.model.f_user_type) {
298
+ this.$refs.paged.$refs.cri.model.f_gasproperties=''
299
+ console.log(this.$refs.paged.$refs.cri.model.f_user_type[0])
300
+ this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
301
+ }
302
+ else{
303
+ this.gasproperties =[{label: '全部', value: ''}]
304
+ }
305
+ },
306
+ hidden(){
307
+ this.criteriaShow = !this.criteriaShow
308
+ },
309
+ showmsg(obj){
310
+ this.rowdata = obj
311
+ this.showdetail = true
312
+ },
313
+ cancel() {
314
+ this.showdetail = false
315
+ },
316
+ initParams () {
317
+ // 初始化气表品牌
318
+ let brandArr = []
319
+ this.$MagGetSaleParam.getGasbrand().forEach((item) => {
320
+ if(item.value.f_meter_type==='物联网表'){
321
+ let temp = {}
322
+ temp.label = item.label
323
+ temp.value = item.value.f_meter_brand
324
+ brandArr.push(temp)
325
+
326
+ let styleArr = [{label: '全部', value: ''}]
327
+ for (let row of item.value.gasmodel) {
328
+ styleArr.push({label: row.label,value: row.value.f_meter_style})
329
+ }
330
+ this.meterstyle[temp.value] = styleArr
331
+ }
332
+
333
+ })
334
+ this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
335
+ },
336
+ search(args) {
337
+ this.startDate = this.$refs.paged.$refs.cri.model.startDate
338
+ this.endDate = this.$refs.paged.$refs.cri.model.endDate
339
+ if (this.endDate == '' || this.startDate == '') {
340
+ return this.$showMessage("时间区间的开始和结束时间不能为空!")
341
+ }
342
+ this.condition = args.condition = this.$refs.paged.$refs.cri.condition + `${this.orgCondtionStr}`
343
+ this.model.search(args.condition, args.model)
344
+ },
345
+ getorg(obj) {
346
+ if (obj.resids.length>0) {
347
+ this.orgCondtionStr = " and f_orgid in " + plugin.convertToIn(obj.resids)
348
+ }else
349
+ {
350
+ this.orgCondtionStr = " and f_orgid = " + this.$login.f.orgid
351
+ }
352
+ },
353
+ clearmsg() {
354
+ this.$refs.paged.$refs.cri.model = {}
355
+ }
356
+ },
357
+ watch: {
358
+ },
359
+ computed: {
360
+ getCondition() {
361
+ let condition=this.$refs.paged.$refs.cri.condition + this.orgCondtionStr
362
+ return {
363
+ condition: condition ,
364
+ startDate:`${this.$refs.paged.$refs.cri.model.startDate}`,
365
+ endDate:`${this.$refs.paged.$refs.cri.model.endDate}`
366
+ }
367
+
368
+ },
369
+ usertypes() {
370
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
371
+ },
372
+ userstate() {
373
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户状态')]
374
+ }
375
+ }
376
+ }
377
+ </script>
378
+ <style>
379
+ .form-input-group label {
380
+ text-align: right;
381
+ width: auto;
382
+ }
383
+
384
+ .mystyle {
385
+ float: right;
386
+ padding-right: 10%;
387
+ }
388
+
389
+ .mystyle1 {
390
+ padding-top: 10px;
391
+
392
+ }
393
+
394
+ .mystyle2 {
395
+ width: 100%;
396
+ height: 35px;
397
+ /*background: #00A3F0;*/
398
+ padding-left: 15px;
399
+ float: left;
400
+ }
401
+
402
+ .datapanel {
403
+ color: #333;
404
+ background-color: white;
405
+ box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
406
+ padding: 10px 30px 10px 30px;
407
+ border-radius: 15px;
408
+ }
409
+ </style>
@@ -10,4 +10,6 @@ export default function () {
10
10
  Vue.component('lost-contact-analysis-list', (resolve) => { require(['./LostContactAnalysisList'], resolve) })
11
11
  // 用户失联
12
12
  Vue.component('user-lost-contact-analysis', (resolve) => { require(['./UserLostContactAnalysis'], resolve) })
13
+ // 未上报查询
14
+ Vue.component('get-no-meteread-query', (resolve) => { require(['./GetNoMetereadData'], resolve) })
13
15
  }
@@ -474,6 +474,11 @@
474
474
  condition="f_meteread_date <= '{} 23:59:59'">
475
475
  </datepicker>
476
476
  </div>
477
+ <div class="col-sm-2 form-group" >
478
+ <label class="font_normal_body">街道/乡镇</label>
479
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_street"
480
+ condition="f_street like '%{}%'" placeholder='街道/乡镇'>
481
+ </div>
477
482
  </div>
478
483
  </div>
479
484
  </criteria>
@@ -494,6 +499,8 @@
494
499
  <th><nobr>省</nobr></th>
495
500
  <th><nobr>市</nobr></th>
496
501
  <th><nobr>区/县</nobr></th>
502
+ <th><nobr>片区/管理站</nobr></th>
503
+ <th><nobr>街道/乡镇</nobr></th>
497
504
  <th><nobr>小区名称</nobr></th>
498
505
  <th><nobr>楼栋</nobr></th>
499
506
  <th><nobr>单元</nobr></th>
@@ -653,6 +660,8 @@
653
660
  <td style="text-align: center;"><nobr>{{row.f_province}}</nobr></td>
654
661
  <td style="text-align: center;"><nobr>{{row.f_city}}</nobr></td>
655
662
  <td style="text-align: center;"><nobr>{{row.f_district}}</nobr></td>
663
+ <td style="text-align: center;"><nobr>{{row.f_zones}}</nobr></td>
664
+ <td style="text-align: center;"><nobr>{{row.f_street}}</nobr></td>
656
665
  <td style="text-align: center;"><nobr>{{row.f_residential_area}}</nobr></td>
657
666
  <td style="text-align: center;"><nobr>{{row.f_building}}</nobr></td>
658
667
  <td style="text-align: center;"><nobr>{{row.f_unit}}</nobr></td>
@@ -19,7 +19,7 @@ export default{
19
19
  },
20
20
  compreConfig: {
21
21
  'f_user_state': '客户状态', 'f_userinfo_code': '客户编号', 'f_olduserinfo_code': '档案编号', 'f_enter_number': '入户证号', 'f_card_id': '卡号', 'f_user_name': '客户名称',
22
- 'f_province':'省','f_city':'市','f_district':'区/县',
22
+ 'f_province': '省', 'f_city': '市', 'f_district': '区/县', 'f_zones': '片区/管理站', 'f_street': '街道/乡镇',
23
23
  'f_residential_area': '小区名称', 'f_building': '楼栋', 'f_unit': '单元', 'f_floor': '楼层', 'f_room': '门牌号', 'f_address': '客户地址','f_iscity':'地区类型', 'f_user_phone': '客户电话', 'f_usetype': '使用类型',
24
24
  'f_gas_date': '通气日期', 'f_price_name': '气价名称', 'f_position': '安装位置', 'f_meter_type': '气表类型', 'f_meter_brand': '气表品牌',
25
25
  'f_meternumber': '表号', 'f_metertitles': '表封号', 'f_aroundmeter': '左右表', 'f_install_date': '安装日期', 'f_meter_base': '气表底数',