manage-client 3.2.103-1 → 3.2.103-2

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,408 @@
1
+ <template>
2
+ <div id="unit" class="flex-row">
3
+ <div class="basic-main" @keyup.enter="search">
4
+ <div class="flex" v-if="!show">
5
+ <criteria-paged :model="model" v-ref:paged>
6
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri >
7
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
8
+ <div class="row">
9
+ <div class="col-sm-2 form-group">
10
+ <label class="font_normal_body">公&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;司</label>
11
+ <right-tree @re-res="$parent.$parent.getorg"
12
+ :initresid='$parent.$parent.org'></right-tree>
13
+ </div>
14
+ <div class="col-sm-2 form-group">
15
+ <label class="font_normal_body">客户编号</label>
16
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
17
+ condition="f_userinfo_code = '{}' " placeholder="客户编号">
18
+ </div>
19
+
20
+ <div class="col-sm-2 form-group">
21
+ <label for="startDate" class="font_normal_body">修&nbsp;&nbsp;改&nbsp;&nbsp;时&nbsp;&nbsp;间</label>
22
+ <datepicker id="startDate" placeholder="开始日期" style="width:60%"
23
+ v-model="model.startDate"
24
+ :value.sync="model.startDate"
25
+ :format="'yyyy-MM-dd HH:mm:ss'"
26
+ :show-reset-button="true"
27
+ condition="f_operate_date >= '{}'">
28
+ </datepicker>
29
+ </div>
30
+ <div class="col-sm-2 form-group">
31
+ <label for="endDate" class="font_normal_body">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;&nbsp;</label>
32
+ <datepicker id="endDate" placeholder="结束日期" style="width:60%"
33
+ v-model="model.endDate"
34
+ :value.sync="model.endDate"
35
+ :format="'yyyy-MM-dd HH:mm:ss'"
36
+ :show-reset-button="true"
37
+ condition="f_operate_date <= '{}'">
38
+ </datepicker>
39
+ </div>
40
+ <div class="span" style="float:right;">
41
+ <button class="button_search button_spacing" @click="search()">查询</button>
42
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
43
+
44
+ <export-excel :data="$parent.$parent.getCondition" :defaultselect="$parent.$parent.selectfields"
45
+ :field="$parent.$parent.getfield"
46
+ :defaultselect="$parent.$parent.selectfields"
47
+ sqlurl="rs/logic/exportfile" sql-name="valueinfoaddQuery" template-name='增值业务信息'
48
+ :choose-col="true"></export-excel>
49
+ <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>
50
+
51
+ </div>
52
+ </div>
53
+ <div class="row" v-show="$parent.$parent.criteriaShow">
54
+ <div class="col-sm-2 form-group">
55
+ <label class="font_normal_body">客户名称</label>
56
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
57
+ condition="f_user_name like '%{}%'" placeholder="客户名称">
58
+ </div>
59
+ <div class="col-sm-2 form-group">
60
+ <label class="font_normal_body">操作状态</label>
61
+ <v-select :value.sync="model.f_change_state"
62
+ v-model="model.f_change_state"
63
+ :options='$parent.$parent.stateoptions' placeholder='请选择'
64
+ condition="f_change_state = '{}'"
65
+ close-on-select></v-select>
66
+ </div>
67
+ <div class="col-sm-2 form-group">
68
+ <label class="font_normal_body">增值服务类型</label>
69
+ <v-select :value.sync="model.f_field_name"
70
+ v-model="model.f_field_name"
71
+ :options='$parent.$parent.valuetypeoptions' placeholder='请选择'
72
+ condition="f_field_name = '{}'"
73
+ close-on-select></v-select>
74
+ </div>
75
+ <div class="col-sm-2 form-group">
76
+ <label class="font_normal_body">客户类型</label>
77
+ <v-select :value.sync="model.f_user_type"
78
+ @change="$parent.$parent.userTypeChange()"
79
+ :options='$parent.$parent.usertypes' placeholder='请选择' v-model="model.f_user_type"
80
+ condition="f_user_type = '{}'"
81
+ close-on-select></v-select>
82
+ </div>
83
+ <div class="col-sm-2 form-group">
84
+ <label class="font_normal_body">是否开通</label>
85
+ <v-select :value.sync="model.f_open_state"
86
+ v-model="model.f_open_state"
87
+ :options='$parent.$parent.backstates' placeholder='请选择'
88
+ condition="f_open_state = '{}'"
89
+ close-on-select></v-select>
90
+ </div>
91
+ <div class="col-sm-2 form-group">
92
+ <label class="font_normal_body">用气性质</label>
93
+ <v-select :value.sync="model.f_gasproperties" v-model="model.f_gasproperties"
94
+ :options='$parent.$parent.gasproperties' placeholder='请选择'
95
+ condition="f_gasproperties = '{}'"
96
+ close-on-select></v-select>
97
+ </div>
98
+ </div>
99
+ </div>
100
+ </criteria>
101
+
102
+ <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
103
+ <template partial='head'>
104
+ <tr>
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
+ <th>
139
+ <nobr>操作时间</nobr>
140
+ </th>
141
+ <th>
142
+ <nobr>操作人所属公司</nobr>
143
+ </th>
144
+ <th>
145
+ <nobr>所属公司</nobr>
146
+ </th>
147
+ </tr>
148
+ </template>
149
+ <template partial='body'>
150
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
151
+ <span @click="$parent.$parent.$parent.showmsg(row)"><a>{{row.f_userinfo_code}}</a></span>
152
+ </td>
153
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
154
+ <nobr>{{row.f_user_name}}</nobr>
155
+ </td>
156
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
157
+ <nobr>{{row.f_user_phone}}</nobr>
158
+ </td>
159
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
160
+ <nobr>{{row.f_user_type}}</nobr>
161
+ </td>
162
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
163
+ <nobr>{{row.f_gasproperties}}</nobr>
164
+ </td>
165
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
166
+ <nobr>{{row.f_change_state}}</nobr>
167
+ </td>
168
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
169
+ <nobr>{{row.f_field_name}}</nobr>
170
+ </td>
171
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
172
+ <nobr>{{row.f_open_state}}</nobr>
173
+ </td>
174
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
175
+ <nobr>{{row.f_used_content}}</nobr>
176
+ </td>
177
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
178
+ <nobr>{{row.f_new_content}}</nobr>
179
+ </td>
180
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
181
+ <nobr>{{row.f_operator}}</nobr>
182
+ </td>
183
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
184
+ <nobr>{{row.f_operate_date}}</nobr>
185
+ </td>
186
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
187
+ <nobr>{{row.operator_orgname}}</nobr>
188
+ </td>
189
+ <td :style="{background:(row.istrue=='1'? '#f1dec2':'')}" style="text-align: center;">
190
+ <nobr>{{row.f_orgname}}</nobr>
191
+ </td>
192
+ </template>
193
+ <template partial='foot'></template>
194
+ </data-grid>
195
+
196
+ </criteria-paged>
197
+
198
+
199
+ </div>
200
+ <div v-if="show">
201
+ <user-info-detail-manage :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage>
202
+ </div>
203
+ </div>
204
+ </div>
205
+ </template>
206
+
207
+ <script>
208
+ import {PagedList} from 'vue-client'
209
+ import exportConfig from '../sale/config/exportConfig'
210
+ import defaultPrint from "../sale/config/DefaultPrint";
211
+ import plugin from "system-clients/src/plugins/GetLoginInfoService";
212
+
213
+ let readySomething = async function (self) {
214
+ self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString() + ' 00:00:00'
215
+ self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString() + ' 23:59:59'
216
+ // self.$refs.paged.$refs.cri.search()
217
+ self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
218
+ await self.$MagLoadParams.loadParam()
219
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
220
+ }
221
+ export default {
222
+ title: '增值业务查询',
223
+
224
+ data() {
225
+ return {
226
+ org:[this.$login.f.orgid],
227
+ filialeCodeStr: `and f_orgid = ${this.$login.f.orgid}`,
228
+ config: {
229
+ defaultPrint: ['f_userinfo_code', 'f_address', 'f_pregas', 'f_preamount']
230
+ },
231
+ //f_price_name:[],
232
+ gasproperties:[],
233
+ showinfo: false,
234
+ data: {},
235
+ show:false,
236
+ rowdata:{},
237
+ initres: {
238
+ org:[this.$login.f.orgid],
239
+ dep:[],
240
+ user:[],
241
+ },
242
+ model: new PagedList('rs/sql/valueinfoaddQuery', 20, {}, ),
243
+ criteriaShow: true,
244
+ orgCondtionStr: '',
245
+ // 下拉框
246
+ meterbrands: [],
247
+ pricenames: [],
248
+ prices: [],
249
+ //合计数据
250
+ defaultfield: [],
251
+ sumsmodel: {},
252
+ f_filialeid: this.$login.f.f_orgid,
253
+ selectfields:[],
254
+ istrueoptions:[{label:"全部",value:""},{label:"是",value:"0"},{label:"否",value:"1"}],
255
+ backstates:[{label: '全部', value: ''},{label: '是', value: '是'},{label: '否', value: '否'}],
256
+ }
257
+ },
258
+ props:['selectorg'],
259
+ ready() {
260
+ if(this.selectorg != null && this.selectorg != null != ''){
261
+ this.initres.org=[]
262
+ this.initres.org.push(this.selectorg);
263
+ }
264
+ readySomething(this).then(() => {
265
+ this.$emit('ready')
266
+ }).catch((error) => {
267
+ this.$emit('error', error)
268
+ })
269
+ for(var item in exportConfig.valueinfoConfig){
270
+ this.selectfields.push(item)
271
+ }
272
+ },
273
+ methods: {
274
+ getorg (obj) {
275
+ if(obj.resids.length>0){
276
+ this.selectorgid = obj.resids
277
+ this.filialeCodeStr =" and f_orgid in " + plugin.convertToIn(obj.resids)
278
+ }
279
+ else{
280
+ this.filialeCodeStr= " and f_orgid = " + this.$login.f.orgid
281
+ }
282
+ },
283
+ search(){
284
+ this.$refs.paged.$refs.cri.search()
285
+ },
286
+ cancel() {
287
+ this.show = false
288
+ },
289
+ showmsg(obj){
290
+ this.rowdata=obj
291
+ this.show=true
292
+ },
293
+ userTypeChange () {
294
+ this.gasproperties=[]
295
+ if(this.$refs.paged.model.model !==null) {
296
+ this.$refs.paged.model.model.f_gasproperties=''
297
+
298
+ console.log(this.$refs.paged.$refs.cri.model.f_user_type[0])
299
+ this.gasproperties = this.$appdata.getParam(this.$refs.paged.$refs.cri.model.f_user_type[0])
300
+ // this.gasproperties.push({label: '全部', value: ''})
301
+ }
302
+ else{
303
+ this.gasproperties =[{label: '全部', value: ''}]
304
+ }
305
+ },
306
+
307
+ selfSearch(args) {
308
+ args.condition = args.condition+ ` ${this.filialeCodeStr}`
309
+ this.model.search(args.condition, args.model)
310
+ this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
311
+ },
312
+ clear() {
313
+ // this.$refs.paged.$refs.cri.$refs.sel.$children[2].$children[0].isSelectAll = false
314
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
315
+ this.$refs.paged.$refs.cri.model[key] = []
316
+ });
317
+ this.$refs.paged.$refs.cri.model.startDate = this.$login.toStandardDateString() + ' 00:00:00'
318
+ this.$refs.paged.$refs.cri.model.endDate = this.$login.toStandardDateString() + ' 23:59:59'
319
+
320
+ },
321
+ dealmsg(val) {
322
+ val.model = this.model.model
323
+ this.$dispatch('deal-msg', val)
324
+ },
325
+ show() {
326
+ this.criteriaShow = true
327
+ },
328
+ hidden() {
329
+ this.criteriaShow = !this.criteriaShow
330
+ },
331
+ getRes(condition,obj) {
332
+ this.orgCondtionStr = condition
333
+ this.f_orgid = obj.resids
334
+ },
335
+ stamp() {
336
+ this.all = false
337
+ //默认选择要打印的列
338
+ this.modelval = defaultPrint.config
339
+ this.fields = this.getfield
340
+ console.log('所有打印字段', this.fields)
341
+ this.printshow = true
342
+ this.put()
343
+ },
344
+ put() {
345
+ // 对Modelval进行排序
346
+ this.sortModelval()
347
+ this.thead = `<tr><th colspan=${this.modelval.length}>补卡查询统计报表</th></tr><tr>`
348
+ for (let key of this.modelval) {
349
+ this.thead += '<th>' + this.fields[key] + '</th>'
350
+ }
351
+ this.thead += '</tr>'
352
+ },
353
+ print() {
354
+ this.$refs.print.PrintAsFile()
355
+ this.printshow = false
356
+ },
357
+ close() {
358
+ this.printshow = false
359
+ this.all = false
360
+ },
361
+ // 对选择的列进行排序
362
+ sortModelval() {
363
+ let sortModel = []
364
+ Object.keys(this.fields).forEach((key) => {
365
+ if (this.modelval.includes(key)) {
366
+ sortModel.push(key)
367
+ }
368
+ })
369
+ this.modelval = sortModel
370
+ console.log('选择的打印的字段', this.modelval)
371
+ },
372
+
373
+ },
374
+ watch: {
375
+ 'model'(val) {
376
+ console.log(val, "12222222222222222222")
377
+ },
378
+ 'filialeCodeStr'(val) {
379
+ let res = val.match(/'(.*?)'/)
380
+ console.log('正则提取:',res && res[1])
381
+ if (res) {
382
+ this.f_filialeid = res[1]
383
+ }
384
+ }
385
+ },
386
+ computed: {
387
+ getCondition() {
388
+ return {condition: `${this.$refs.paged.$refs.cri.condition}` + this.filialeCodeStr}
389
+ },
390
+ valuetypeoptions(){
391
+ return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('增值服务类型')]
392
+ },
393
+ stateoptions(){
394
+ return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('增值服务状态')]
395
+ },
396
+ usertypes() {
397
+ return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('用户类型')]
398
+ },
399
+ pricetypeoptions(){
400
+ return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('气价类型')]
401
+ },
402
+ getfield() {
403
+ return exportConfig.valueinfoConfig
404
+ },
405
+
406
+ }
407
+ }
408
+ </script>