manage-client 3.3.248 → 3.3.249

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "manage-client",
3
- "version": "3.3.248",
3
+ "version": "3.3.249",
4
4
  "description": "经营管控模块前台组件",
5
5
  "main": "src/index.js",
6
6
  "directories": {
@@ -80,7 +80,7 @@
80
80
  </div>
81
81
  <div class="col-sm-2 form-group">
82
82
  <label style="width:35%" class="font_normal_body">气表品牌</label>
83
- <v-select :value.sync="model.f_balance_amount"
83
+ <v-select :value.sync="model.f_meter_brand"
84
84
  v-model="model.f_meter_brand"
85
85
  :options='$parent.$parent.meterbrands' placeholder='请选择'
86
86
  condition="f_meter_brand = '{}'"
@@ -188,7 +188,7 @@
188
188
  </v-select>
189
189
  </div>
190
190
  <div class="col-sm-2 form-group">
191
- <label class="font_normal_body">小区</label>
191
+ <label style="width:35%" class="font_normal_body">小区</label>
192
192
  <input @keyup.enter="search" style="width:60%" type="text" class="input_search" v-model="model.f_residential_area"
193
193
  placeholder='请输入小区'
194
194
  condition="f_residential_area like '%{}%'"
@@ -108,6 +108,9 @@
108
108
  <th>
109
109
  <nobr>机表抄表</nobr>
110
110
  </th>
111
+ <th>
112
+ <nobr>抄表时间</nobr>
113
+ </th>
111
114
  </tr>
112
115
  </template>
113
116
  <template partial='body'>
@@ -159,6 +162,9 @@
159
162
  <td style="text-align: center;">
160
163
  <nobr>{{row.p_jbcb}}</nobr>
161
164
  </td>
165
+ <td style="text-align: center;">
166
+ <nobr>{{row.zhcbsj}}</nobr>
167
+ </td>
162
168
  </template>
163
169
  <template partial='foot'>
164
170
  </template>
@@ -105,6 +105,9 @@
105
105
  <th>
106
106
  <nobr>物联网抄表</nobr>
107
107
  </th>
108
+ <th>
109
+ <nobr>最后抄表时间</nobr>
110
+ </th>
108
111
  </tr>
109
112
  </template>
110
113
  <template partial='body'>
@@ -153,6 +156,9 @@
153
156
  <td style="text-align: center;">
154
157
  <nobr>{{row.p_jbcb}}</nobr>
155
158
  </td>
159
+ <td style="text-align: center;">
160
+ <nobr>{{row.zhcbsj}}</nobr>
161
+ </td>
156
162
  </template>
157
163
  <template partial='foot'>
158
164
  </template>
@@ -43,6 +43,9 @@
43
43
  <tabs header="物联网抄表报表" v-if="permission('结构气物联网抄表报表正定')">
44
44
  <qn-jgq-cbwlwzd v-if="show.includes('物联网抄表报表')" @deal-msg="dealMsg" :data="data"></qn-jgq-cbwlwzd>
45
45
  </tabs>
46
+ <tabs header="物联网抄表明细" v-if="permission('结构气物联网抄表明细正定')">
47
+ <qn-jgq-cbmxzd v-if="show.includes('物联网抄表明细')" @deal-msg="dealMsg" :data="data"></qn-jgq-cbmxzd>
48
+ </tabs>
46
49
  <tabs header="收费报表" v-if="permission('结构气收费报表正定')">
47
50
  <qn-jgq-sfzd v-if="show.includes('收费报表')" @deal-msg="dealMsg" :data="data"></qn-jgq-sfzd>
48
51
  </tabs>
@@ -82,6 +82,15 @@
82
82
  <th>
83
83
  <nobr>客户名称</nobr>
84
84
  </th>
85
+ <th>
86
+ <nobr>区/县</nobr>
87
+ </th>
88
+ <th>
89
+ <nobr>街道/乡镇</nobr>
90
+ </th>
91
+ <th>
92
+ <nobr>小区</nobr>
93
+ </th>
85
94
  <th>
86
95
  <nobr>客户地址</nobr>
87
96
  </th>
@@ -103,6 +112,12 @@
103
112
  <th>
104
113
  <nobr>价格名称</nobr>
105
114
  </th>
115
+ <th>
116
+ <nobr>开户时间</nobr>
117
+ </th>
118
+ <th>
119
+ <nobr>通气时间</nobr>
120
+ </th>
106
121
  </tr>
107
122
  </template>
108
123
  <template partial='body'>
@@ -112,6 +127,17 @@
112
127
  <td style="text-align: center;">
113
128
  <nobr>{{row.f_user_name}}</nobr>
114
129
  </td>
130
+
131
+ <td style="text-align: center;">
132
+ <nobr>{{row.qx}}</nobr>
133
+ </td>
134
+ <td style="text-align: center;">
135
+ <nobr>{{row.jdxz}}</nobr>
136
+ </td>
137
+ <td style="text-align: center;">
138
+ <nobr>{{row.xq}}</nobr>
139
+ </td>
140
+
115
141
  <td style="text-align: center;">
116
142
  <nobr>{{row.f_address}}</nobr>
117
143
  </td>
@@ -133,6 +159,13 @@
133
159
  <td style="text-align: center;">
134
160
  <nobr>{{row.f_price_name}}</nobr>
135
161
  </td>
162
+
163
+ <td style="text-align: center;">
164
+ <nobr>{{row.f_open_date}}</nobr>
165
+ </td>
166
+ <td style="text-align: center;">
167
+ <nobr>{{row.f_gas_date}}</nobr>
168
+ </td>
136
169
  </template>
137
170
  <template partial='foot'>
138
171
  </template>
@@ -134,9 +134,9 @@ export default{
134
134
  'f_idnumber':'证件号码', 'f_table_state':'表状态', 'f_comments':'备注信息', 'f_gas_date':'通气日期'
135
135
  },
136
136
  qnJgqZhdacxZD:{
137
- 'f_userinfo_code':'客户编号', 'f_user_name':'客户名称', 'f_address':'客户地址', 'f_user_phone':'客户电话',
137
+ 'f_userinfo_code':'客户编号', 'f_user_name':'客户名称','qx':'区/县','jdxz':'街道/乡镇','xq':'小区','f_address':'客户地址', 'f_user_phone':'客户电话',
138
138
  'f_meter_type':'表具类型', 'f_meternumber':'表号', 'f_user_type':'客户类型', 'f_gasproperties':'用气性质',
139
- 'f_price_name':'价格名称'
139
+ 'f_price_name':'价格名称', 'f_open_date':'开户时间', 'f_gas_date':'通气时间'
140
140
  },
141
141
  qnJgqMgqbb:{
142
142
  'b_yhh':'用户号','c_yhmc':'用户名','d_yqdz':'地址','e_spmc':'商品名称','g_cbqj':'抄表期间','h_csqf':'起方','i_cszf':'止方',
@@ -191,10 +191,15 @@ export default{
191
191
  qnJgqCbjbZD:{
192
192
  'a_khbm':'客户编码','b_yhmc':'用户名称','c_dz':'地址','d_qf':'起方','e_zf':'止方','f_dj':'单价','g_ql':'气量',
193
193
  'h_je':'金额','i_yd':'月度','j_bh':'表号','k_yhlx':'用户类型','l_yqxz':'用气性质','m_jgmc':'价格名称','n_cby':'抄表员','o_blx':'表类型','p_jbcb':'机表抄表'
194
+ ,'zhcbsj':'抄表时间'
195
+ },
196
+ qnJgqCbmxZD:{
197
+ 'a_khbm':'客户编码','b_yhmc':'用户名称','c_dz':'地址','d_qf':'起方','e_zf':'止方','f_dj':'单价','g_ql':'气量',
198
+ 'h_je':'金额','i_yd':'月度','j_bh':'表号','k_yhlx':'用户类型','l_yqxz':'用气性质','m_jgmc':'价格名称','n_cby':'抄表员','o_blx':'表类型','p_jbcb':'机表抄表','cbrq':'抄表日期'
194
199
  },
195
200
  qnJgqCbwlwZD:{
196
201
  'a_khbm':'客户编码','b_yhmc':'用户名称','c_dz':'地址','d_qf':'起方','e_zf':'止方','g_ql':'气量',
197
- 'h_je':'金额','i_yd':'月度','j_bh':'表号','k_yhlx':'用户类型','l_yqxz':'用气性质','m_jgmc':'价格名称','n_cby':'抄表员','o_blx':'表类型','p_jbcb':'物联网抄表'
202
+ 'h_je':'金额','i_yd':'月度','j_bh':'表号','k_yhlx':'用户类型','l_yqxz':'用气性质','m_jgmc':'价格名称','n_cby':'抄表员','o_blx':'表类型','p_jbcb':'物联网抄表','zhcbsj':'最后抄表时间'
198
203
  },
199
204
  qnJgqSfZD:{
200
205
  'a_dabm':'档案编码','b_yhmc':'用户名称','c_dz':'地址','d_lxfs':'联系方式','e_yhlx':'用户类型','f_yqxz':'用气性质','g_jgmc':'价格名称','h_bh':'表号',
@@ -0,0 +1,691 @@
1
+ <template>
2
+ <div id="unit" class="flex-row">
3
+ <div class="basic-main" @keyup.enter="search" v-if="!show">
4
+ <div class="flex">
5
+ <div style="flex:1;" class="flex" >
6
+ <criteria-paged :model="model" v-ref:paged @sort="sort">
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
+ <res-select-group :show-component="['company']" :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes" v-ref:sel></res-select-group>
11
+ <div class="col-sm-2 form-group">
12
+ <label for="startDate" class="font_normal_body">开始日期</label>
13
+ <datepicker id="startDate" placeholder="开始日期" style="width:60%"
14
+ v-model="model.startDate"
15
+ :value.sync="model.startDate"
16
+ :format="'yyyy-MM-dd HH:mm:ss'"
17
+ :show-reset-button="true"
18
+ condition="f_input_date >= '{}'">
19
+ </datepicker>
20
+ </div>
21
+ <div class="col-sm-2 form-group">
22
+ <label for="endDate" class="font_normal_body">结束日期</label>
23
+ <datepicker id="endDate" placeholder="结束日期" style="width:60%"
24
+ v-model="model.endDate"
25
+ :value.sync="model.endDate"
26
+ :format="'yyyy-MM-dd HH:mm:ss'"
27
+ :show-reset-button="true"
28
+ condition="f_input_date <= '{}'">
29
+ </datepicker>
30
+ </div>
31
+ <div class="col-sm-2 form-group">
32
+ <label class="font_normal_body">用户编号</label>
33
+ <input type="text" style="width:60%" class="input_search" v-model="model.a_khbm"
34
+ condition="a_khbm = '{}' " placeholder="用户编号">
35
+ </div>
36
+
37
+ <div class="col-sm-2 form-group">
38
+ <label class="font_normal_body">用气性质</label>
39
+ <v-select :value.sync="model.l_yqxz"
40
+ :options='$parent.$parent.yqxzArray' placeholder='请选择' v-model="model.l_yqxz" multiple
41
+ condition="l_yqxz in {}"
42
+ ></v-select>
43
+ </div>
44
+
45
+ <div class="col-sm-2 form-group">
46
+ <label class="font_normal_body">气表类型</label>
47
+ <v-select :value.sync="model.o_blx"
48
+ :options='$parent.$parent.bjlxArray' placeholder='请选择' v-model="model.o_blx" multiple
49
+ condition="o_blx in {}"
50
+ ></v-select>
51
+ </div>
52
+
53
+ <div class="span" style="float:right;">
54
+ <button class="button_search button_spacing" @click="$parent.$parent.search()">查询</button>
55
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
56
+ <!--<button class="btn btn-default" @click="$parent.$parent.stamp()">打印</button>-->
57
+
58
+ <export-excel :data="$parent.$parent.getCondition"
59
+ :field="$parent.$parent.getExportField"
60
+ :footer="$parent.$parent.footer"
61
+ :header="$parent.$parent.other"
62
+ sqlurl="api/af-revenue/logic/openapi/exportfile" sql-name="qnJgqCbmxZD" template-name='物联网抄表明细导出'
63
+ :choose-col="true"></export-excel>
64
+
65
+ <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>
66
+ </div>
67
+ </div>
68
+
69
+
70
+ </div>
71
+ </criteria>
72
+
73
+ <data-grid :model="model" partial='list' class="list_area table_sy" @dblclick="$parent.dblclick" v-ref:grid>
74
+ <template partial='head'>
75
+ <tr>
76
+ <th>
77
+ <nobr>客户编码</nobr>
78
+ </th>
79
+ <th>
80
+ <nobr>用户名称</nobr>
81
+ </th>
82
+ <th>
83
+ <nobr>地址</nobr>
84
+ </th>
85
+ <th>
86
+ <nobr>起方</nobr>
87
+ </th>
88
+ <th>
89
+ <nobr>止方</nobr>
90
+ </th>
91
+ <th>
92
+ <nobr>单价</nobr>
93
+ </th>
94
+ <th>
95
+ <nobr>气量</nobr>
96
+ </th>
97
+ <th>
98
+ <nobr>金额</nobr>
99
+ </th>
100
+ <th>
101
+ <nobr>月度</nobr>
102
+ </th>
103
+ <th>
104
+ <nobr>抄表日期</nobr>
105
+ </th>
106
+ <th>
107
+ <nobr>表号</nobr>
108
+ </th>
109
+ <th>
110
+ <nobr>用户类型</nobr>
111
+ </th>
112
+ <th>
113
+ <nobr>用气性质</nobr>
114
+ </th>
115
+ <th>
116
+ <nobr>价格名称</nobr>
117
+ </th>
118
+ <th>
119
+ <nobr>抄表员</nobr>
120
+ </th>
121
+ <th>
122
+ <nobr>表类型</nobr>
123
+ </th>
124
+ <th>
125
+ <nobr>机表抄表</nobr>
126
+ </th>
127
+ </tr>
128
+ </template>
129
+ <template partial='body'>
130
+ <td style="text-align: center;">
131
+ <nobr>{{row.a_khbm}}</nobr>
132
+ </td>
133
+ <td style="text-align: center;">
134
+ <nobr>{{row.b_yhmc}}</nobr>
135
+ </td>
136
+ <td style="text-align: center;">
137
+ <nobr>{{row.c_dz}}</nobr>
138
+ </td>
139
+ <td style="text-align: center;">
140
+ <nobr>{{row.d_qf}}</nobr>
141
+ </td>
142
+ <td style="text-align: center;">
143
+ <nobr>{{row.e_zf}}</nobr>
144
+ </td>
145
+ <td style="text-align: center;">
146
+ <nobr>{{row.f_dj}}</nobr>
147
+ </td>
148
+ <td style="text-align: center;">
149
+ <nobr>{{row.g_ql}}</nobr>
150
+ </td>
151
+ <td style="text-align: center;">
152
+ <nobr>{{row.h_je}}</nobr>
153
+ </td>
154
+ <td style="text-align: center;">
155
+ <nobr>{{row.i_yd}}</nobr>
156
+ </td>
157
+ <td style="text-align: center;">
158
+ <nobr>{{row.cbrq}}</nobr>
159
+ </td>
160
+ <td style="text-align: center;">
161
+ <nobr>{{row.j_bh}}</nobr>
162
+ </td>
163
+ <td style="text-align: center;">
164
+ <nobr>{{row.k_yhlx}}</nobr>
165
+ </td>
166
+ <td style="text-align: center;">
167
+ <nobr>{{row.l_yqxz}}</nobr>
168
+ </td>
169
+ <td style="text-align: center;">
170
+ <nobr>{{row.m_jgmc}}</nobr>
171
+ </td>
172
+ <td style="text-align: center;">
173
+ <nobr>{{row.n_cby}}</nobr>
174
+ </td>
175
+ <td style="text-align: center;">
176
+ <nobr>{{row.o_blx}}</nobr>
177
+ </td>
178
+ <td style="text-align: center;">
179
+ <nobr>{{row.p_jbcb}}</nobr>
180
+ </td>
181
+ </template>
182
+ <template partial='foot'>
183
+ </template>
184
+ </data-grid>
185
+ </criteria-paged>
186
+ <table class="table-hover">
187
+ <tr style="position: relative" class="table-bordered">
188
+ <td
189
+ style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;color: #5CB95C;font-weight: bold">
190
+ 汇总信息
191
+ </td>
192
+ <td style="display: inline-block;width: auto;border-right: 1px solid #F2F6FA;padding: 0px 10px 0px 10px;font-weight: bold">
193
+ 气量合计:&emsp;{{sumsmodel.g_ql}}&emsp;&emsp;金额合计:&emsp;{{sumsmodel.h_je}}
194
+ </td>
195
+ </tr>
196
+ </table>
197
+ </div>
198
+
199
+ </div>
200
+ </div>
201
+ <div class="basic-main" style="width:99%;height:98%;margin-bottom:0px" v-if="show">
202
+ <user-info-detail-manage-new :f_userinfo_id="rowdata.f_userinfo_id" @cancel-main="cancel"></user-info-detail-manage-new>
203
+ </div>
204
+ </div>
205
+ </template>
206
+
207
+ <script>
208
+ import {HttpResetClass, PagedList} from 'vue-client'
209
+ import defaultPrint from '../../components/sale/config/DefaultPrint'
210
+ import exportConfig from './exportConfig'
211
+
212
+ let readySomething = async function (self) {
213
+ self.$MagGetSaleParam.initinputtor();
214
+ self.getinputtores();
215
+ // 获取区县
216
+ self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString()
217
+ self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString()
218
+ // await self.$refs.paged.$refs.cri.search()
219
+ self.sumsmodel = self.$refs.paged.$refs.grid.model.sums
220
+ self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
221
+ }
222
+
223
+ export default {
224
+ title: '物联网抄表明细',
225
+ data() {
226
+ return {
227
+ other:[],
228
+ footer:[],
229
+ model: new PagedList('api/af-revenue/sql/qnJgqCbmxZD', 20, {}, {g_ql: 0, h_je: 0}),
230
+ criteriaShow: false,
231
+ orgCondtionStr: '',
232
+ modelval: [],
233
+ printshow: false,
234
+ all: false,
235
+ fields: {},
236
+ //排序
237
+ orderitem:'',
238
+ orderFields: {
239
+
240
+ },
241
+ gasproperties:[],
242
+ //默认打印列
243
+ defaultfield: [],
244
+ config: {
245
+ defaultPrint: []
246
+ },
247
+ balance2:'',
248
+ thead: '',
249
+ tfoot: '',
250
+ area: [],
251
+ //合计数据
252
+ sumsmodel: {},
253
+ initres: {
254
+ org:[this.$login.f.orgid],
255
+ dep:[],
256
+ user:[],
257
+ },
258
+ userdetail: {
259
+ show: false,
260
+ f_userinfo_code: '',
261
+ f_filialeids: ''
262
+ },
263
+
264
+ show:false,
265
+ rowdata:{},
266
+ meterInfo:{},
267
+ deviceInfo:{},
268
+ condition2:'',
269
+
270
+
271
+ weixinSign:[{label:"全部",value:""},{label:"已绑定",value:"已绑定"},{label:"未绑定",value:"未绑定"}],
272
+ //小区
273
+ residentialArea: [],
274
+ //缴费月份
275
+ jfnfArray: [],
276
+ yqxzArray: [],
277
+ bjlxArray: [],
278
+ //表册片区
279
+ bookSlice:[{label: '全部',value: ''}],
280
+ inputtores:[{label: '全部',value: ''}], //抄表员
281
+ allorgid:[],
282
+ f_filialeid: this.$login.f.f_orgid,
283
+ dypayment:[{label:"全部",value:""},{label:"银行代扣",value:"银行代扣",},{label:"现金缴费",value:"现金缴费",}],
284
+ }
285
+ },
286
+ ready() {
287
+ this.getaddress()
288
+ // this.$refs.paged.$refs.cri.model.f_user_state=['正常']
289
+ readySomething(this).then(() => {
290
+ this.$emit('ready')
291
+ }).catch((error) => {
292
+ this.$emit('error', error)
293
+ })
294
+ this.initAreas(this.$login.f.orgid)
295
+ //self.$refs.paged.$refs.cri.model.startDate = self.$login.toStandardDateString()
296
+ //self.$refs.paged.$refs.cri.model.endDate = self.$login.toStandardDateString()
297
+ this.getjfyf()
298
+ this.getBjlx()
299
+ this.getYqxz()
300
+ this.userTypeChange ();
301
+ },
302
+ methods: {
303
+ async getinputtores () {
304
+ // 获取抄表员
305
+ let rs = []
306
+ if (this.$login.f.f_gasman.length > 0) {
307
+ for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
308
+ let temp = {
309
+ label: this.$login.f.f_gasman[i].name,
310
+ value: this.$login.f.f_gasman[i].name
311
+ }
312
+ rs.push(temp)
313
+ }
314
+ }
315
+ this.inputtores = [{label: '全部', value: ''}, ...rs]
316
+ },
317
+ async updateParams() {
318
+ await this.$MagLoadParams.loadParam(this.f_filialeid)
319
+ this.inputtores = [];
320
+ this.inputtores.push({label: "全部", value: ""})
321
+ this.initSlice(this.f_filialeid)
322
+ if(this.allorgid!=null){
323
+ this.allorgid.forEach((res)=>{
324
+ this.inputtores = this.inputtores.concat(this.$MagGetSaleParam.getresinputtor(res));
325
+ })
326
+ }
327
+ },
328
+ getotherfooter () {
329
+ // this.$refs.paged.$refs.cri.$refs.exports.otherData = [];
330
+ // this.$refs.paged.$refs.cri.$refs.exports.footerData = [];
331
+ this.other = [];
332
+ this.footer = [];
333
+ let exportdata = this.getCondition;
334
+ let otherInData = [];
335
+ otherInData.push(`导出时间: ${this.$login.toStandardTimeString()}`);
336
+ let footerData = [], exportfield = this.getExportField;
337
+ footerData.push("合计");
338
+ let self = this;
339
+ for (var field in self.sumsmodel) {
340
+ footerData.push(`${exportfield[field]}合计:${self.sumsmodel[field]}`);
341
+ }
342
+ this.footer.push(footerData);
343
+ this.other.push(otherInData);
344
+ },
345
+ async getaddress(){
346
+ console.log('开始获取小区')
347
+ let HttpReset = new HttpResetClass()
348
+ var data = await HttpReset.load('POST', 'api/af-revenue/sql/manage_getarealist', {
349
+ data: {
350
+ condition: `1=1 and s.f_filialeid = '${this.$login.f.orgid}'`
351
+ }
352
+ }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
353
+ console.log('小区',data)
354
+ let house = []
355
+ for (let row of data.data){
356
+ console.log('开始保存小区')
357
+ house.push({label: row.f_residential_area, value: row.f_residential_area})
358
+ }
359
+ this.residentialArea = house
360
+ },
361
+ async getjfyf(){
362
+ let HttpReset = new HttpResetClass()
363
+ var data = await HttpReset.load('POST', 'api/af-revenue/sql/singleTable_Final', {
364
+ data: {
365
+ condition: '1=1',
366
+ tablename: 'qn_jgq_cb_zd',
367
+ groupitem: 'i_yd',
368
+ orderitem: 'i_yd',
369
+ items: 'i_yd'
370
+ }
371
+ }, {resolveMsg: null, rejectMsg: '获取失败!'})
372
+ let nameArr = [{label: '全部', value: ''}]
373
+ for (let row of data.data){
374
+ nameArr.push({label: row.i_yd, value: row.i_yd})
375
+ }
376
+ this.jfnfArray = nameArr
377
+ },
378
+ async getYqxz(){
379
+ let HttpReset = new HttpResetClass()
380
+ var data = await HttpReset.load('POST', 'api/af-revenue/sql/singleTable_Final', {
381
+ data: {
382
+ condition: '1=1',
383
+ tablename: 'qn_jgq_cb_zd',
384
+ groupitem: 'l_yqxz',
385
+ orderitem: 'l_yqxz',
386
+ items: 'l_yqxz'
387
+ }
388
+ }, {resolveMsg: null, rejectMsg: '获取失败!'})
389
+ let nameArr = [{label: '全部', value: ''}]
390
+ for (let row of data.data){
391
+ nameArr.push({label: row.l_yqxz, value: row.l_yqxz})
392
+ }
393
+ this.yqxzArray = nameArr
394
+ },
395
+ async getBjlx(){
396
+ let HttpReset = new HttpResetClass()
397
+ var data = await HttpReset.load('POST', 'api/af-revenue/sql/singleTable_Final', {
398
+ data: {
399
+ condition: '1=1',
400
+ tablename: 'qn_jgq_cb_zd',
401
+ groupitem: 'o_blx',
402
+ orderitem: 'o_blx',
403
+ items: 'o_blx'
404
+ }
405
+ }, {resolveMsg: null, rejectMsg: '获取失败!'})
406
+ let nameArr = [{label: '全部', value: ''}]
407
+ for (let row of data.data){
408
+ nameArr.push({label: row.o_blx, value: row.o_blx})
409
+ }
410
+ this.bjlxArray = nameArr
411
+ },
412
+ //把数据库查询数据转换为下拉数据
413
+ calculate(rows){
414
+ let data = []
415
+ rows.forEach((row, n) => {
416
+ data[n] = {label: row.f_residential_area, value: row.id}
417
+ })
418
+ return data
419
+ },
420
+ search(){
421
+ console.log("=====search====")
422
+ //this.$refs.paged.$refs.cri.search()
423
+ this.$refs.paged.$refs.cri.search()
424
+ },
425
+ cancel(obj) {
426
+ console.log("=====cancel====" + obj)
427
+ this.show = false
428
+ },
429
+ showmsg(obj){
430
+ this.rowdata=obj
431
+ this.show=true
432
+ // let http = new HttpResetClass()
433
+ // http.load('POST','api/af-revenue/sql/getUserMeter',{data: {condition: `f_userinfo_id ='${obj.f_userinfo_id}'`}},
434
+ // {resolveMsg: null, rejectMsg: null}).then((res) => {
435
+ // this.meterInfo = res.data})
436
+ // let http2 = new HttpResetClass()
437
+ // http2.load('POST','api/af-revenue/sql/deviceQuery',{data: {condition: `f_userinfo_id ='${obj.f_userinfo_id}'`}},
438
+ // {resolveMsg: null, rejectMsg: null}).then((res) => {
439
+ // this.deviceInfo = res.data})
440
+
441
+ // this.f_userinfo_id=obj.f_userinfo_id
442
+ },
443
+ userTypeChange () {
444
+ this.gasproperties=[]
445
+ if(this.$refs.paged.$refs.cri.model !==null) {
446
+ this.$refs.paged.$refs.cri.model.f_gasproperties=''
447
+ this.gasproperties = this.$appdata.getParam('非民用')
448
+ }
449
+ else{
450
+ this.gasproperties =[{label: '全部', value: ''}]
451
+ }
452
+ },
453
+ //初始化片区
454
+ async initSlice (val) {
455
+ if (val) {
456
+ let getAllArea = await this.$resetpost('/rs/search', {
457
+ source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
458
+ userid: this.$login.f.id
459
+ }, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
460
+ let arr = getAllArea.data.filter((res) => {
461
+ return res.parentid == val
462
+ })
463
+ this.bookSlice = []
464
+ console.log('过滤之后的片区-------------------', arr)
465
+ arr.forEach((res) => {
466
+ this.bookSlice.push({label: res.name, value: res.name})
467
+ })
468
+ }
469
+ },
470
+ async initAreas (val) {
471
+
472
+ if (val) {
473
+ let getAllArea = await this.$resetpost('/rs/search', {
474
+ source: 'this.getParentByType($organization$).getAllChildrens().where(row.getType() == $zone$)',
475
+ userid: this.$login.f.id
476
+ }, {resolveMsg: null, rejectMsg: '获取片区出错!!!'})
477
+
478
+ let arr = getAllArea.data.filter((res) => {
479
+ return res.parentid == val
480
+ })
481
+ console.log('过滤之后的片区', arr)
482
+ this.sliceArea = []
483
+ arr.forEach((res) => {
484
+ this.sliceArea.push({label: res.name, value: res.name})
485
+ })
486
+ }
487
+ },
488
+ selfSearch(args) {
489
+ console.log('args', args)
490
+ console.log('this.orgCondtionStr', this.orgCondtionStr)
491
+ if (!this.orgCondtionStr) {
492
+ args.condition = `${args.condition}` + " and tr.f_orgid = " + this.$login.f.orgid
493
+ } else {
494
+ args.condition = `${args.condition}` + this.orgCondtionStr
495
+ }
496
+ this.condition2 = args.condition
497
+ this.model.search(args.condition, args.model)
498
+ this.sumsmodel = this.$refs.paged.$refs.grid.model.sums
499
+ console.log('合计字段', this.sumsmodel)
500
+ },
501
+ clear() {
502
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
503
+ this.$refs.paged.$refs.cri.model[key] = []
504
+ })
505
+ },
506
+ hidden() {
507
+ this.criteriaShow = !this.criteriaShow
508
+ },
509
+ getRes(obj) {
510
+ this.orgCondtionStr = obj
511
+ },
512
+ stamp() {
513
+ this.all = false
514
+ //默认选择要打印的列
515
+ this.modelval = defaultPrint.config
516
+ this.fields = this.getfield
517
+ console.log('所有打印字段', this.fields)
518
+ this.printshow = true
519
+ this.put()
520
+ },
521
+ put() {
522
+ // 对Modelval进行排序
523
+ this.sortModelval()
524
+ this.thead = `<tr><th colspan=${this.modelval.length}>用户查询统计报表</th></tr><tr>`
525
+ for (let key of this.modelval) {
526
+ this.thead += '<th>' + this.fields[key] + '</th>'
527
+ }
528
+ this.thead += '</tr>'
529
+ },
530
+ print() {
531
+ this.$refs.print.PrintAsFile()
532
+ this.printshow = false
533
+ },
534
+ close() {
535
+ this.printshow = false
536
+ },
537
+ // 对选择的列进行排序
538
+ sortModelval() {
539
+ let sortModel = []
540
+ Object.keys(this.fields).forEach((key) => {
541
+ if (this.modelval.includes(key)) {
542
+ sortModel.push(key)
543
+ }
544
+ })
545
+ this.modelval = sortModel
546
+ console.log('选择的打印的字段', this.modelval)
547
+ },
548
+ dblclick(row, index) {
549
+ console.log('双击之后数据', row, index)
550
+ this.userdetail.show = true
551
+ this.userdetail.f_userinfo_code = row.f_userinfo_code
552
+ this.userdetail.f_filialeids = row.f_filialeids
553
+ },
554
+ sort (field, rule) {
555
+ // 将所有排序方式设为不排序,实现相互排斥
556
+ for (let key in this.orderFields) {
557
+ if (key === field) {
558
+ this.orderFields[key] = rule
559
+ } else {
560
+ this.orderFields[key] = 'no'
561
+ }
562
+ }
563
+ // 如果新规则不排序,还原为默认排序
564
+ if (rule === 'no') {
565
+ this.model.paramSource.orderitem = `'${this.orderitem}'`
566
+ } else {
567
+ this.model.paramSource.orderitem = `'${field} ${rule}'`
568
+ }
569
+
570
+ this.search()
571
+ }
572
+ },
573
+
574
+ watch: {
575
+ 'all'(val) {
576
+ if (val) {
577
+ this.modelval = this.bodyData
578
+ } else {
579
+ this.modelval = defaultPrint.config
580
+ this.put()
581
+ }
582
+ },
583
+ 'modelval.length'() {
584
+ this.put()
585
+ },
586
+ sumsmodel:{
587
+ handler: function(val) {
588
+ this.getotherfooter();
589
+ },
590
+ deep: true
591
+ },
592
+ 'orgCondtionStr'(val) {
593
+ let res = val.match(/'(.*?)'/)
594
+ console.log('正则提取:',res && res[1])
595
+ if (res) {
596
+ this.f_filialeid = res[1]
597
+ if(res.input !=null){
598
+ let resorgid = res.input.substring(res.input.indexOf("'"));
599
+ if(resorgid!= null && resorgid!=''){
600
+ resorgid = resorgid.substring(0,resorgid.lastIndexOf("'")+1);
601
+ // resorgid = resorgid.replaceAll("'","");
602
+ resorgid = resorgid.replace(/'/g,"");
603
+ this.allorgid = resorgid.split(",")
604
+ }
605
+ }
606
+ this.updateParams()
607
+ }
608
+ },
609
+ },
610
+ computed: {
611
+ // defaultexport() {
612
+ // return exportConfig.chargeexportConfig
613
+ // },
614
+ authArr () {
615
+ return this.$login.r ? this.$login.r : []
616
+ },
617
+
618
+ getCondition() {
619
+ return {condition: this.condition2,orderitem:this.orderitem}
620
+ },
621
+ getfield() {
622
+ let data = {}
623
+ this.bodyData.forEach((value, index) => {
624
+ data[this.bodyData[index]] = this.headData[index]
625
+ })
626
+ //合计字段打印
627
+ this.tfoot = `<tr><th colspan=${this.modelval.length}>全表汇总信息: `
628
+ if (this.sumsmodel) {
629
+ Object.keys(this.sumsmodel).forEach((key) => {
630
+ this.tfoot += this.fields[key] + '合计: ' + `<font color="blue">${this.sumsmodel[key]} </font>`
631
+ })
632
+ } else {
633
+ this.tfoot += '暂无'
634
+ }
635
+ this.tfoot += '</th></tr>'
636
+ return data
637
+ },
638
+ getExportField() {
639
+ return exportConfig.qnJgqCbmxZD
640
+ },
641
+ inputtor () {
642
+ // 获取抄表员
643
+ console.log('获取抄表员', this.$login.f)
644
+ let rs = []
645
+ if (this.$login.f.f_gasman.length > 0) {
646
+ for (let i = 0; i < this.$login.f.f_gasman.length; i++) {
647
+ let temp = {
648
+ label: this.$login.f.f_gasman[i].name,
649
+ value: this.$login.f.f_gasman[i].name
650
+ }
651
+ rs.push(temp)
652
+ }
653
+ }
654
+
655
+ return [{label: '全部', value: ''}, ...rs]
656
+ },
657
+ userstates() {
658
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('客户状态')]
659
+ },
660
+ userLevels () {
661
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户等级')]
662
+ },
663
+ usertypes () {
664
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('用户类型')]
665
+ },
666
+ hairpin() {
667
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('发卡状态')]
668
+ },
669
+ addressstate() {
670
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('地址状态')]
671
+ },
672
+ fcalculation() {
673
+ return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('结算方式')]
674
+ },
675
+ metertypes() {
676
+ return [{label: ' 全部 ', value: ''}, ...this.$appdata.getParam('气表类型')]
677
+ },
678
+ accountsState() {
679
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('下账状态')]
680
+ }
681
+ }
682
+ }
683
+ </script>
684
+ <style>
685
+ .back-red{ /* 红色背景 */
686
+ background-color: #F6C6CE;
687
+ }
688
+ .back-blue{ /* 蓝色背景 */
689
+
690
+ }
691
+ </style>
@@ -51,6 +51,8 @@ export default function () {
51
51
  Vue.component('qn-jgq-cbjbzd', (resolve) => { require(['./QnJgqCbjbZD'], resolve) })
52
52
  // 潜能结构气报表----------------物联网抄表报表(正定)
53
53
  Vue.component('qn-jgq-cbwlwzd', (resolve) => { require(['./QnJgqCbwlwZD'], resolve) })
54
+ // 潜能结构气报表----------------物联网抄表明细(正定)
55
+ Vue.component('qn-jgq-cbmxzd', (resolve) => { require(['./QnJgqCbmxZD'], resolve) })
54
56
  // 潜能结构气报表----------------收费报表(正定)
55
57
  Vue.component('qn-jgq-sfzd', (resolve) => { require(['./QnJgqSfZD'], resolve) })
56
58