manage-client 3.3.1 → 3.3.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.
Files changed (51) hide show
  1. package/build/dev-server.js +180 -180
  2. package/lib/package_2022-12-01-14-30-50.json +109 -0
  3. package/package.json +1 -1
  4. package/src/components/sale/businessquery/GroupChargeQuery.vue +481 -481
  5. package/src/components/sale/businessquery/NewAreaGeneralQuery.vue +633 -633
  6. package/src/components/webmeter/recharge/RechargeList.vue +346 -346
  7. package/src/filiale/gehua/GroupChargeQuery.vue +486 -486
  8. package/src/filiale/huayin/ChargeQuery.vue +1305 -1305
  9. package/src/filiale/rongcheng/AreaBuildingDetailInfo.vue +281 -281
  10. package/src/filiale/rongcheng/AreaBuildingInfoSummary.vue +301 -301
  11. package/src/filiale/rongcheng/exportConfig.js +536 -536
  12. package/src/filiale/rongcheng/sale.js +22 -22
  13. package/src/filiale/shanxian/FillCardQuery.vue +569 -569
  14. package/src/filiale/shanxian/FillGasQuery.vue +588 -588
  15. package/src/filiale/shanxian/LostContactAnalysisList.vue +632 -632
  16. package/src/filiale/shanxian/OtherChargeQuery.vue +684 -684
  17. package/src/filiale/shanxian/UserLostContactAnalysis.vue +583 -583
  18. package/src/filiale/shanxian/UserQuery.vue +959 -959
  19. package/src/filiale/shanxian/sale.js +26 -26
  20. package/src/filiale/wenxi/ChangeMeterQuery.vue +704 -704
  21. package/src/filiale/wenxi/ChangeUserQuery.vue +371 -371
  22. package/src/filiale/wenxi/ChargeQuery.vue +1260 -1260
  23. package/src/filiale/wenxi/FmyGasDeviceQuery.vue +944 -944
  24. package/src/filiale/wenxi/GasDeviceQuery.vue +1041 -1041
  25. package/src/filiale/wenxi/GasStatistics.vue +515 -515
  26. package/src/filiale/wenxi/GetNoMetereadData.vue +374 -374
  27. package/src/filiale/wenxi/HandplanQuery.vue +1370 -1370
  28. package/src/filiale/wenxi/ManageUserTypeSell.vue +173 -173
  29. package/src/filiale/wenxi/MeterQuery.vue +964 -964
  30. package/src/filiale/wenxi/NewGasStatistics.vue +522 -522
  31. package/src/filiale/wenxi/RecordInfoQuery.vue +1213 -1213
  32. package/src/filiale/wenxi/WebHandQuery.vue +475 -475
  33. package/src/filiale/wenxi/config/exportConfig.js +916 -916
  34. package/src/filiale/wenxi/sale.js +24 -24
  35. package/src/filiale/wenxi/webmeterManage.js +13 -13
  36. package/src/filiale/xinkang/EchartsBox.vue +139 -139
  37. package/src/filiale/xinkang/ManageBrandHouseCount.vue +347 -347
  38. package/src/filiale/xinkang/NewGasStatistics.vue +526 -526
  39. package/src/filiale/xinkang/exportConfig.js +1998 -1998
  40. package/src/filiale/xinkang/meterFaultChangeSummary.vue +196 -196
  41. package/src/filiale/xinkang/reportManage.js +15 -15
  42. package/src/filiale/xinkang/sale.js +13 -13
  43. package/src/filiale/xinkang/webmeterManage.js +9 -9
  44. package/src/filiale/zhongyi/GasStatistics.vue +521 -521
  45. package/src/main.js +72 -66
  46. package/.gradle/4.4/fileChanges/last-build.bin +0 -0
  47. package/.gradle/6.1/executionHistory/executionHistory.bin +0 -0
  48. package/.gradle/6.1/executionHistory/executionHistory.lock +0 -0
  49. package/.gradle/6.1/fileChanges/last-build.bin +0 -0
  50. package/.gradle/6.1/fileHashes/fileHashes.bin +0 -0
  51. package/.gradle/6.1/fileHashes/fileHashes.lock +0 -0
@@ -1,1041 +1,1041 @@
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
- <div class="col-sm-2 form-group">
11
- <label class="font_normal_body">客户编号</label>
12
- <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
13
- condition="f_userinfo_code = '{}' " placeholder="客户编号">
14
- </div>
15
- <div class="col-sm-2 form-group">
16
- <label class="font_normal_body">客户名称</label>
17
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
18
- condition="f_user_name like '%{}%'" placeholder="客户名称">
19
- </div>
20
- <div class="col-sm-2 form-group">
21
- <label class="font_normal_body">客户电话</label>
22
- <input type="text" style="width:60%" class="input_search" v-model="model.f_user_phone"
23
- condition="f_user_phone like '%{}%'" placeholder="客户电话">
24
- </div>
25
- <div class="col-sm-2 form-group">
26
- <label for="startGasDate" class="font_normal_body">通气时间</label>
27
- <datepicker id="startGasDate" placeholder="开始日期" style="width:60%"
28
- v-model="model.startGasDate"
29
- :value.sync="model.startGasDate"
30
- :format="'yyyy-MM-dd 00:00:00'"
31
- :show-reset-button="true"
32
- condition="f_gas_date >= '{}'">
33
- </datepicker>
34
- </div>
35
- <div class="col-sm-2 form-group">
36
- <label for="endGasDate" class="font_normal_body">至</label>
37
- <datepicker id="endGasDate" placeholder="结束日期" style="width:60%"
38
- v-model="model.endGasDate"
39
- :value.sync="model.endGasDate"
40
- :format="'yyyy-MM-dd 23:59:59'"
41
- :show-reset-button="true"
42
- condition="f_gas_date <= '{}'">
43
- </datepicker>
44
- </div>
45
- <div class="span" style="float:right;">
46
- <button class="button_search button_spacing" @click="search()">查询</button>
47
- <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
48
- <button class="button_clear button_spacing" style="margin-top: 10px;background-color: #6aa6e2;" @click="$parent.$parent.downloadFiles()">导出</button>
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
- </div>
51
- </div>
52
- <div class="row" v-show="$parent.$parent.criteriaShow">
53
- <div class="col-sm-2 form-group">
54
- <label class="font_normal_body">客户地址</label>
55
- <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
56
- condition="f_address like '%{}%'" placeholder='客户地址'>
57
- </div>
58
- <div class="col-sm-2 form-group">
59
- <label class="font_normal_body" title="气表状态">气表状态</label>
60
- <v-select :value.sync="model.f_table_state"
61
- :search="false"
62
- v-model="model.f_table_state"
63
- :options='$parent.$parent.TableStates' placeholder='请选择'
64
- condition="f_table_state in {}"
65
- ></v-select>
66
- </div>
67
- <div class="col-sm-2 form-group">
68
- <label class="font_normal_body">燃气表号</label>
69
- <input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
70
- condition="f_meternumber like '%{}%'" placeholder='燃气表号'>
71
- </div>
72
- <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes"></res-select-group>
73
- <div class="col-sm-2 form-group">
74
- <label for="startDate" class="font_normal_body">建档日期</label>
75
- <datepicker id="startDate" placeholder="开始日期" style="width:60%"
76
- v-model="model.startDate"
77
- :value.sync="model.startDate"
78
- :format="'yyyy-MM-dd 00:00:00'"
79
- :show-reset-button="true"
80
- condition="f_createfile_date >= '{}'">
81
- </datepicker>
82
- </div>
83
- <div class="col-sm-2 form-group">
84
- <label for="endDate" class="font_normal_body">结束日期</label>
85
- <datepicker id="endDate" placeholder="结束日期" style="width:60%"
86
- v-model="model.endDate"
87
- :value.sync="model.endDate"
88
- :format="'yyyy-MM-dd 23:59:59'"
89
- :show-reset-button="true"
90
- condition="f_createfile_date <= '{}'">
91
- </datepicker>
92
- </div>
93
- <!-- <div class="col-sm-2 form-group">-->
94
- <!-- <label class="font_normal_body">通气年限</label>-->
95
- <!-- <input type="number" style="width:60%" class="input_search" v-model="model.diffAllyear1"-->
96
- <!-- condition="diffAllyear >= {}" placeholder="最小值">-->
97
- <!-- </div>-->
98
- <!-- <div class="col-sm-2 form-group">-->
99
- <!-- <label class="font_normal_body">&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;</label>-->
100
- <!-- <input type="number" style="width:60%" class="input_search" v-model="model.diffAllyear2"-->
101
- <!-- condition="diffAllyear <= {}" placeholder="最大值">-->
102
- <!-- </div>-->
103
- <div class="col-sm-2 form-group">
104
- <label class="font_normal_body">&nbsp;&nbsp;&nbsp;小区&nbsp;&nbsp;&nbsp;</label>
105
- <v-select :value.sync="model.f_residential_area"
106
- class="select_list select"
107
- enter-push
108
- multiple = "true"
109
- v-model="model.f_residential_area"
110
- style="width: 60%"
111
- :options='$parent.$parent.residentialArea' placeholder='选择小区'
112
- close-on-select>
113
- </v-select>
114
- </div>
115
- <div class="col-sm-2 form-group">
116
- <label class="font_normal_body">气表品牌</label>
117
- <v-select :value.sync="model.f_meter_brand"
118
- v-model="model.f_meter_brand"
119
- :options="$parent.$parent.meterbrands"
120
- condition="f_meter_brand = '{}'"
121
- close-on-select></v-select>
122
- </div>
123
- <div class="col-sm-2 form-group">
124
- <label class="font_normal_body">设备类型</label>
125
- <v-select :value.sync="model.f_devices_type"
126
- v-model="model.f_devices_type"
127
- :options="$parent.$parent.devicetypes"
128
- close-on-select></v-select>
129
- </div>
130
- <div class="col-sm-2 form-group" >
131
- <label class="font_normal_body">客户状态</label>
132
- <v-select :value.sync="model.f_user_state"
133
- v-model="model.f_user_state"
134
- multiple
135
- :options='$parent.$parent.userstates' placeholder='请选择'
136
- condition="f_user_state in {}"
137
- ></v-select>
138
- </div>
139
- <div class="col-sm-2 form-group">
140
- <label for="startDate" class="font_normal_body">开户日期</label>
141
- <datepicker id="startDate2" placeholder="开始日期" style="width:60%"
142
- v-model="model.startDate2"
143
- :value.sync="model.startDate2"
144
- :format="'yyyy-MM-dd 00:00:00'"
145
- :show-reset-button="true"
146
- condition="f_open_date >= '{}'">
147
- </datepicker>
148
- </div>
149
- <div class="col-sm-2 form-group">
150
- <label for="endDate" class="font_normal_body">开户日期</label>
151
- <datepicker id="endDate2" placeholder="结束日期" style="width:60%"
152
- v-model="model.endDate2"
153
- :value.sync="model.endDate2"
154
- :format="'yyyy-MM-dd 23:59:59'"
155
- :show-reset-button="true"
156
- condition="f_open_date <= '{}'">
157
- </datepicker>
158
- </div>
159
- <div class="col-sm-2 form-group" >
160
- <label class="font_normal_body">有无波纹管</label>
161
- <v-select :value.sync="model.f_has_pepe"
162
- v-model="model.f_has_pepe"
163
- :options='$parent.$parent.haspipe' placeholder='请选择'
164
- condition="f_has_pepe {}" close-on-select
165
- ></v-select>
166
- </div>
167
- <div class="col-sm-2 form-group" >
168
- <label class="font_normal_body">有无自闭阀</label>
169
- <v-select :value.sync="model.f_is_zibifa"
170
- v-model="model.f_is_zibifa"
171
- :options='$parent.$parent.iszbf' placeholder='请选择'
172
- condition="f_is_zibifa {}" close-on-select
173
- ></v-select>
174
- </div>
175
- </div>
176
- </div>
177
- </criteria>
178
- <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
179
- <template partial='head'>
180
- <tr>
181
- <th rowspan="2"><nobr>序号</nobr></th>
182
- <th colspan="7"><nobr>用户信息</nobr></th>
183
- <th colspan="9"><nobr>燃气表</nobr></th>
184
- <th colspan="8"><nobr>建档信息</nobr></th>
185
- <th colspan="5"><nobr>燃气报警装置</nobr></th>
186
- <th colspan="5"><nobr>燃气灶具</nobr></th>
187
- <th colspan="6"><nobr>燃气灶具连接管</nobr></th>
188
- <th colspan="5"><nobr>燃气热水器</nobr></th>
189
- <th colspan="5"><nobr>燃气壁挂炉</nobr></th>
190
- <th colspan="5"><nobr>燃气保险信息</nobr></th>
191
- <th colspan="2"><nobr>初次充值信息</nobr></th>
192
- <!-- <th colspan="2"><nobr>每年充值</nobr></th>-->
193
- <th colspan="7"><nobr>安检信息</nobr></th>
194
- <th rowspan="2"><nobr>备注</nobr></th>
195
- </tr>
196
-
197
- <tr>
198
- <!--用户信息-->
199
- <th><nobr>客户编号</nobr></th>
200
- <th><nobr>客户名称</nobr></th>
201
- <th><nobr>身份证号</nobr></th>
202
- <th><nobr>联系电话</nobr></th>
203
- <th><nobr>小区名称</nobr></th>
204
- <th><nobr>客户地址</nobr></th>
205
- <th><nobr>客户状态</nobr></th>
206
-
207
- <!--燃气表-->
208
- <th><nobr>品牌</nobr></th>
209
- <th><nobr>表号</nobr></th>
210
- <th><nobr>类型</nobr></th>
211
- <th><nobr>气表状态</nobr></th>
212
- <th><nobr>型号</nobr></th>
213
- <th><nobr>表向</nobr></th>
214
- <th><nobr>安装位置</nobr></th>
215
- <th><nobr>安装日期</nobr></th>
216
- <th><nobr>变更记录</nobr></th>
217
- <!--建档信息-->
218
- <th><nobr>建档日期</nobr></th>
219
- <th><nobr>合同日期</nobr></th>
220
- <th><nobr>开户日期</nobr></th>
221
- <th><nobr>开户操作人</nobr></th>
222
- <th><nobr>通气日期</nobr></th>
223
- <th><nobr>通气人员</nobr></th>
224
- <th><nobr>通气年限</nobr></th>
225
- <th><nobr>变更记录</nobr></th>
226
- <!--燃气报警装置-->
227
- <th><nobr>报警器品牌</nobr></th>
228
- <th><nobr>数量</nobr></th>
229
- <th><nobr>生产日期</nobr></th>
230
- <th><nobr>超期提醒</nobr></th>
231
- <th><nobr>变更记录</nobr></th>
232
- <!--燃气灶具-->
233
- <th><nobr>灶具品牌</nobr></th>
234
- <th><nobr>数量</nobr></th>
235
- <th><nobr>生产日期</nobr></th>
236
- <th><nobr>超期提醒</nobr></th>
237
- <th><nobr>变更记录</nobr></th>
238
- <!--燃气灶具连接管-->
239
- <th><nobr>有无不锈钢波纹管</nobr></th>
240
- <th><nobr>数量</nobr></th>
241
- <th><nobr>有无自闭阀</nobr></th>
242
- <th><nobr>数量</nobr></th>
243
- <th><nobr>超期提醒</nobr></th>
244
- <th><nobr>变更记录</nobr></th>
245
- <!--燃气热水器-->
246
- <th><nobr>品牌</nobr></th>
247
- <th><nobr>数量</nobr></th>
248
- <th><nobr>生产日期</nobr></th>
249
- <th><nobr>超期提醒</nobr></th>
250
- <th><nobr>变更记录</nobr></th>
251
- <!--燃气壁挂炉-->
252
- <th><nobr>品牌</nobr></th>
253
- <th><nobr>数量</nobr></th>
254
- <th><nobr>生产日期</nobr></th>
255
- <th><nobr>超期提醒</nobr></th>
256
- <th><nobr>变更记录</nobr></th>
257
- <!--燃气保险信息-->
258
- <th><nobr>类型</nobr></th>
259
- <th><nobr>金额(元)</nobr></th>
260
- <th><nobr>日期</nobr></th>
261
- <th><nobr>超期提醒</nobr></th>
262
- <th><nobr>续保记录</nobr></th>
263
- <!--初次充值信息-->
264
- <th><nobr>充值时间</nobr></th>
265
- <th><nobr>金额(元)</nobr></th>
266
- <!--每年充值-->
267
- <!-- <th><nobr>充值时间</nobr></th>-->
268
- <!-- <th><nobr>金额(元)</nobr></th>-->
269
- <!--安检信息-->
270
- <th><nobr>安检日期</nobr></th>
271
- <th><nobr>安检人员</nobr></th>
272
- <th><nobr>用气总量</nobr></th>
273
- <th><nobr>总充值额</nobr></th>
274
- <th><nobr>剩余气量</nobr></th>
275
- <th><nobr>发现问题</nobr></th>
276
- <th><nobr>整改日期</nobr></th>
277
- </tr>
278
- </template>
279
- <template partial='body'>
280
- <!--序号-->
281
- <td style="text-align: center;" ><nobr>
282
- {{$index + 1}}
283
- </nobr></td>
284
- <!--用户信息-->
285
- <td style="text-align: center;">
286
- <nobr>{{row.f_userinfo_code}}</nobr>
287
- </td>
288
- <td style="text-align: center;">
289
- <nobr>{{row.f_user_name}}</nobr>
290
- </td>
291
- <td style="text-align: center;">
292
- <nobr>{{row.f_idnumber}}</nobr>
293
- </td>
294
- <td style="text-align: center;">
295
- <nobr>{{row.f_user_phone}}</nobr>
296
- </td>
297
- <td style="text-align: center;">
298
- <nobr>{{row.f_residential_area}}</nobr>
299
- </td>
300
- <td style="text-align: center;">
301
- <nobr>{{row.f_address}}</nobr>
302
- </td>
303
- <td style="text-align: center;">
304
- <nobr>{{row.f_user_state}}</nobr>
305
- </td>
306
-
307
- <!--燃气表-->
308
- <td style="text-align: center;">
309
- <nobr>{{row.f_meter_brand}}</nobr>
310
- </td>
311
- <td style="text-align: center;">
312
- <nobr>{{row.f_meternumber}}</nobr>
313
- </td>
314
- <td style="text-align: center;">
315
- <nobr>{{row.f_meter_type}}</nobr>
316
- </td>
317
- <td style="text-align: center;">
318
- <nobr>{{row.f_table_state}}</nobr>
319
- </td>
320
- <td style="text-align: center;">
321
- <nobr>{{row.f_meter_style}}</nobr>
322
- </td>
323
- <td style="text-align: center;">
324
- <nobr>{{row.f_aroundmeter}}</nobr>
325
- </td>
326
- <td style="text-align: center;">
327
- <nobr>{{row.f_position}}</nobr>
328
- </td>
329
- <td style="text-align: center;">
330
- <nobr>{{row.f_install_date}}</nobr>
331
- </td>
332
- <td style="text-align: center;">
333
- <nobr>
334
- <span @click="$parent.$parent.$parent.dealmsg(row,'','燃气表')"><a><b>变更记录</b></a></span>
335
- </nobr>
336
- </td>
337
-
338
- <!--建档信息-->
339
- <td style="text-align: center;">
340
- <nobr>{{row.f_createfile_date}}</nobr>
341
- </td>
342
- <td style="text-align: center;">
343
- <nobr>{{row.f_contract_date}}</nobr>
344
- </td>
345
- <td style="text-align: center;">
346
- <nobr>{{row.f_open_date}}</nobr>
347
- </td>
348
- <td style="text-align: center;">
349
- <nobr>{{row.f_open_person}}</nobr>
350
- </td>
351
- <td style="text-align: center;">
352
- <nobr>{{row.f_gas_date}}</nobr>
353
- </td>
354
- <td style="text-align: center;">
355
- <nobr>{{row.f_gas_person}}</nobr>
356
- </td>
357
- <td style="text-align: center;" :style="$parent.$parent.$parent.ventilationYear(row.diffallyear)">
358
- <nobr>{{row.ventilation_years}}</nobr>
359
- </td>
360
- <td style="text-align: center;">
361
- <nobr>
362
- <span @click="$parent.$parent.$parent.dealmsg(row,'','建档信息')"><a><b>变更记录</b></a></span>
363
- </nobr>
364
- </td>
365
-
366
- <!--燃气报警装置-->
367
- <td style="text-align: center;">
368
- <nobr>{{row.alarm_brand}}</nobr>
369
- </td>
370
- <td style="text-align: center;">
371
- <nobr>{{row.alarm_num}}</nobr>
372
- </td>
373
- <td style="text-align: center;">
374
- <nobr>{{row.alarm_make_date}}</nobr>
375
- </td>
376
- <td style="text-align: center;" :class="$parent.$parent.$parent.formatTime(row.alarm_exp_date).indexOf('已过期')!==-1? 'back-red' : 'back-blue'">
377
- <nobr>{{$parent.$parent.$parent.formatTime(row.alarm_exp_date)}}</nobr>
378
- </td>
379
- <td style="text-align: center;">
380
- <nobr>
381
- <span @click="$parent.$parent.$parent.dealmsg(row,row.alarm_id,'燃气报警装置')"><a><b>变更记录</b></a></span>
382
- </nobr>
383
- </td>
384
-
385
- <!--燃气灶具-->
386
- <td style="text-align: center;">
387
- <nobr>{{row.zaoju_brand}}</nobr>
388
- </td>
389
- <td style="text-align: center;">
390
- <nobr>{{row.zaoju_num}}</nobr>
391
- </td>
392
- <td style="text-align: center;">
393
- <nobr>{{row.zaoju_make_date}}</nobr>
394
- </td>
395
- <td style="text-align: center;" :class="$parent.$parent.$parent.formatTime(row.zaoju_exp_date).indexOf('已过期')!==-1? 'back-red' : 'back-blue'">
396
- <nobr>{{$parent.$parent.$parent.formatTime(row.zaoju_exp_date)}}</nobr>
397
- </td>
398
- <td style="text-align: center;">
399
- <nobr>
400
- <span @click="$parent.$parent.$parent.dealmsg(row,row.zaoju_id,'燃气灶具')"><a><b>变更记录</b></a></span>
401
- </nobr>
402
- </td>
403
-
404
-
405
- <!--燃气灶具连接管-->
406
- <td style="text-align: center;">
407
- <nobr>{{row.f_has_pepe}}</nobr>
408
- </td>
409
- <td style="text-align: center;">
410
- <nobr>{{row.f_pipe_num}}</nobr>
411
- </td>
412
- <td style="text-align: center;">
413
- <nobr>{{row.f_is_zibifa}}</nobr>
414
- </td>
415
- <td style="text-align: center;">
416
- <nobr>{{row.f_zibifa_num}}</nobr>
417
- </td>
418
- <td style="text-align: center;" :class="$parent.$parent.$parent.formatTime(row.zaoju_pipe_expdate).indexOf('已过期')!==-1? 'back-red' : 'back-blue'">
419
- <nobr>{{$parent.$parent.$parent.formatTime(row.zaoju_pipe_expdate)}}</nobr>
420
- </td>
421
- <td style="text-align: center;">
422
- <nobr>
423
- <span @click="$parent.$parent.$parent.dealmsg(row,row.zaoju_id,'燃气灶具连接管')"><a><b>变更记录</b></a></span>
424
- </nobr>
425
- </td>
426
-
427
- <!--燃气热水器-->
428
- <td style="text-align: center;">
429
- <nobr>{{row.reshui_brand}}</nobr>
430
- </td>
431
- <td style="text-align: center;">
432
- <nobr>{{row.reshui_num}}</nobr>
433
- </td>
434
- <td style="text-align: center;">
435
- <nobr>{{row.reshui_make_date}}</nobr>
436
- </td>
437
- <td style="text-align: center;" :class="$parent.$parent.$parent.formatTime(row.reshui_exp_date).indexOf('已过期')!==-1? 'back-red' : 'back-blue'">
438
- <nobr>{{$parent.$parent.$parent.formatTime(row.reshui_exp_date)}}</nobr>
439
- </td>
440
- <td style="text-align: center;">
441
- <nobr>
442
- <span @click="$parent.$parent.$parent.dealmsg(row,row.reshui_id,'燃气热水器')"><a><b>变更记录</b></a></span>
443
- </nobr>
444
- </td>
445
-
446
-
447
- <!--燃气壁挂炉-->
448
- <td style="text-align: center;">
449
- <nobr>{{row.bigua_brand}}</nobr>
450
- </td>
451
- <td style="text-align: center;">
452
- <nobr>{{row.bigua_num}}</nobr>
453
- </td>
454
- <td style="text-align: center;">
455
- <nobr>{{row.bigua_make_date}}</nobr>
456
- </td>
457
- <td style="text-align: center;" :class="$parent.$parent.$parent.formatTime(row.bigua_exp_date).indexOf('已过期')!==-1? 'back-red' : 'back-blue'">
458
- <nobr>{{$parent.$parent.$parent.formatTime(row.bigua_exp_date)}}</nobr>
459
- </td>
460
- <td style="text-align: center;">
461
- <nobr>
462
- <span @click="$parent.$parent.$parent.dealmsg(row,row.bigua_id,'燃气壁挂炉')"><a><b>变更记录</b></a></span>
463
- </nobr>
464
- </td>
465
-
466
- <!--燃气保险信息-->
467
- <td style="text-align: center;">
468
- <nobr>{{row.f_fee_type}}</nobr>
469
- </td>
470
- <td style="text-align: center;">
471
- <nobr>{{row.f_money}}</nobr>
472
- </td>
473
- <td style="text-align: center;">
474
- <nobr>{{row.fee_operate_date}}</nobr>
475
- </td>
476
- <td style="text-align: center;" :class="$parent.$parent.$parent.formatTime(row.f_expiration_date).indexOf('已过期')!==-1? 'back-red' : 'back-blue'">
477
- <nobr>{{$parent.$parent.$parent.formatTime(row.f_expiration_date)}}</nobr>
478
- </td>
479
- <td style="text-align: center;">
480
- <nobr>
481
- <span @click="$parent.$parent.$parent.dealmsg(row,'','燃气保险信息')"><a><b>续保记录</b></a></span>
482
- </nobr>
483
- </td>
484
-
485
- <!--初次充值信息-->
486
- <td style="text-align: center;">
487
- <nobr>{{row.f_min_operate_date}}</nobr>
488
- </td>
489
- <td style="text-align: center;">
490
- <nobr>{{row.f_preamount}}</nobr>
491
- </td>
492
-
493
- <!--每年充值-->
494
- <!-- <td style="text-align: center;">-->
495
- <!-- <nobr>{{row.yeartimes}}</nobr>-->
496
- <!-- </td>-->
497
- <!-- <td style="text-align: center;">-->
498
- <!-- <nobr>{{row.f_preamount_all}}</nobr>-->
499
- <!-- </td>-->
500
-
501
- <!--安检信息-->
502
- <td style="text-align: center;">
503
- <nobr>{{row.f_upload_date}}</nobr>
504
- </td>
505
- <td style="text-align: center;">
506
- <nobr>{{row.f_checker_name}}</nobr>
507
- </td>
508
- <td style="text-align: center;">
509
- <nobr>{{row.f_total_gas}}</nobr>
510
- </td>
511
- <td style="text-align: center;">
512
- <nobr>{{row.f_total_fee}}</nobr>
513
- </td>
514
- <td style="text-align: center;">
515
- <nobr>{{row.f_balance_gas}}</nobr>
516
- </td>
517
- <td style="text-align: center;">
518
- <nobr>{{row.f_defect_content}}</nobr>
519
- </td>
520
- <td style="text-align: center;">
521
- <nobr>{{row.f_repair_date}}</nobr>
522
- </td>
523
-
524
- <!--备注-->
525
- <td style="text-align: center;">
526
- <nobr>{{row.f_comments}}</nobr>
527
- </td>
528
-
529
- </template>
530
- <template partial='foot'>
531
- </template>
532
- </data-grid>
533
- </criteria-paged>
534
-
535
- </div>
536
- </div>
537
- </div>
538
- <modal :show.sync="filechangeHistoryShow" v-ref:filechangeHistoryShow backdrop="false" class="filechangeHistoryShow">
539
- <header slot="modal-header" class="modal-header" style="text-align: center">
540
- <h4 class="modal-title">{{titles}}</h4>
541
- </header>
542
- <article slot="modal-body" class="modal-body">
543
- <data-grid class="list_area table_sy" :model="filechangeHistorys" partial='list' v-if="titles.indexOf('燃气保险信息') === -1">
544
- <template partial='head'>
545
- <th><nobr>序号</nobr></th>
546
- <th><nobr>更改内容</nobr></th>
547
- <th><nobr>更改前</nobr></th>
548
- <th><nobr>更改后</nobr></th>
549
- <th><nobr>变更时间</nobr></th>
550
- </template>
551
- <template partial='body'>
552
- <td >{{$index+1}}</td>
553
- <td><nobr>{{row.f_field_name}}</nobr></td>
554
- <td><nobr>{{row.f_used_content}}</nobr></td>
555
- <td><nobr>{{row.f_new_content}}</nobr></td>
556
- <td><nobr>{{row.f_submit_date}}</nobr></td>
557
- </template>
558
- </data-grid>
559
- <data-grid class="list_area table_sy" :model="filechangeHistorys" partial='list' v-if="titles.indexOf('燃气保险信息') !== -1">
560
- <template partial='head'>
561
- <th><nobr>序号</nobr></th>
562
- <th><nobr>用户编号</nobr></th>
563
- <th><nobr>用户姓名</nobr></th>
564
- <th><nobr>保险金额</nobr></th>
565
- <th><nobr>保险类型</nobr></th>
566
- <th><nobr>保险日期</nobr></th>
567
- <th><nobr>到期时间</nobr></th>
568
- <th><nobr>操作时间</nobr></th>
569
- <th><nobr>操作人</nobr></th>
570
- </template>
571
- <template partial='body'>
572
- <td >{{$index+1}}</td>
573
- <td><nobr>{{row.f_userinfo_code}}</nobr></td>
574
- <td><nobr>{{row.f_user_name}}</nobr></td>
575
- <td><nobr>{{row.f_money}}</nobr></td>
576
- <td><nobr>{{row.f_insurance_type}}</nobr></td>
577
- <td><nobr>{{row.f_ins_start_date}}</nobr></td>
578
- <td><nobr>{{row.f_expiration_date}}</nobr></td>
579
- <td><nobr>{{row.f_operate_date}}</nobr></td>
580
- <td><nobr>{{row.f_operator}}</nobr></td>
581
- </template>
582
- </data-grid>
583
- </article>
584
- <footer slot="modal-footer" class="modal-footer">
585
- <button type="button" class="btn btn-default" @click='filechangeHistoryShow = false'>关闭</button>
586
- </footer>
587
- </modal>
588
-
589
- </div>
590
- </template>
591
-
592
- <script>
593
- import {HttpResetClass, PagedList} from 'vue-client'
594
- import defaultPrint from './config/DefaultPrint'
595
- import exportConfig from './config/exportConfig'
596
-
597
- let readySomething = async function (self) {
598
- self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
599
-
600
- }
601
-
602
- export default {
603
- title: '民用用气设备查询',
604
- data() {
605
- return {
606
- titles:'',
607
- other:[],
608
- footer:[],
609
- model: new PagedList('rs/sql/myGasDeviceQuery', 20, {orderitem: this.orderitem?'"' + this.orderitem + ' "':`'f_userinfo_code desc'`}),
610
- criteriaShow: false,
611
- orgCondtionStr: '',
612
- modelval: [],
613
- printshow: false,
614
- all: false,
615
- fields: {},
616
- //排序
617
- orderitem:'f_userinfo_code desc',
618
- orderFields: {
619
- f_operate_date: 'no'
620
- },
621
- //默认打印列
622
- defaultfield: [],
623
- config: {
624
- defaultPrint: ['f_userinfo_code', 'f_user_name', 'f_user_phone', 'f_user_state']
625
- },
626
- balance2:'',
627
- thead: '',
628
- tfoot: '',
629
- area: [],
630
- //合计数据
631
- sumsmodel: {},
632
- initres: {
633
- org:[this.$login.f.orgid],
634
- dep:[],
635
- user:[],
636
- },
637
- userdetail: {
638
- show: false,
639
- f_userinfo_code: '',
640
- f_filialeids: ''
641
- },
642
- meterbrands: [],
643
-
644
- show:false,
645
- rowdata:{},
646
- meterInfo:{},
647
- deviceInfo:{},
648
- condition2:'',
649
- filechangeHistorys: {rows: []},
650
- filechangeHistoryShow: false,
651
- //小区
652
- residentialArea: [],
653
- allorgid:[],
654
- f_filialeid: this.$login.f.f_orgid,
655
- haspipe: [{label: '有', value: ` = '有'`},{label: '无', value: `!= '有'`}],
656
- iszbf: [{label: '有', value: ` = '有'`},{label: '无', value: `!= '有'`}]
657
- }
658
- },
659
- ready() {
660
- this.initParams()
661
- this.getaddress()
662
- readySomething(this).then(() => {
663
- this.$emit('ready')
664
- }).catch((error) => {
665
- this.$emit('error', error)
666
- })
667
- },
668
- methods: {
669
- initParams() {
670
- // 初始化气表品牌
671
- let brandArr = []
672
- this.$MagGetSaleParam.getGasbrand().forEach((item) => {
673
- let temp = {}
674
- temp.label = item.label
675
- temp.value = item.value.f_meter_brand
676
- brandArr.push(temp)
677
- })
678
- this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
679
- //初始化气表价格
680
- this.prices = this.$MagGetSaleParam.getPrices();
681
- },
682
- async dealmsg(row,id,type){
683
- this.titles = type+'变更记录'
684
- this.filechangeHistorys.rows = []
685
- let data = {
686
- tablename: `t_infochange`,
687
- items: '*',
688
- condition: `1=1`,
689
- orderitem: 'f_change_id desc'
690
- }
691
- let urlParam = 'rs/sql/singleTable_OrderBy'
692
- if (id){
693
- data.condition = `1=1 and f_table_id = ${id} and f_field_name like '%${type}%'`
694
- let res = await this.$resetpost(urlParam, {data: data}, {rejectMsg: '获取变更记录出错', resolveMsg: null})
695
- if (res){
696
- this.filechangeHistorys.rows = res.data
697
- }
698
- }else{
699
- if (type === '燃气表'){
700
- data.condition = `1=1 and f_field_name in ('气表品牌','气表型号','出厂日期','表号','左右表','气表分类') and f_userinfo_id = '${row.f_userinfo_id}'`
701
- let res = await this.$resetpost(urlParam, {data: data}, {rejectMsg: '获取变更记录出错', resolveMsg: null})
702
- if (res){
703
- this.filechangeHistorys.rows = res.data
704
- }
705
- }else if (type === '建档信息'){
706
- urlParam = 'rs/sql/changeuserquery'
707
- data = {
708
- condition: ` 1=1 and f_orgid in ('${this.$login.f.orgid}') and f_userinfo_code = '${row.f_userinfo_code}' and f_table_ename != 't_devices'`,
709
- orderitem: "f_operate_date desc"
710
- }
711
- let res = await this.$resetpost(urlParam, {data: data}, {rejectMsg: '获取变更记录出错', resolveMsg: null})
712
- if (res){
713
- this.filechangeHistorys.rows = res.data
714
- }
715
- }else if (type==='燃气保险信息'){
716
- data = {
717
- condition: ` 1=1 and f_orgid in ('${this.$login.f.orgid}') and f_userinfo_code = '${row.f_userinfo_code}'`,
718
- orderitem: "f_operate_date desc"
719
- }
720
- let res = await this.$resetpost('rs/sql/insuranceguanl', {data: data}, {rejectMsg: '获取变更记录出错', resolveMsg: null})
721
- if (res){
722
- this.filechangeHistorys.rows = res.data
723
- }
724
- }
725
- }
726
- this.filechangeHistoryShow =true
727
- },
728
- ventilationYear(diffAllyear){
729
- if ( 1<= diffAllyear && diffAllyear <= 2 ){
730
- return {
731
- color: 'green !important'
732
- }
733
- }else if (3<= diffAllyear && diffAllyear <=4){
734
- return {
735
- color: 'orange !important'
736
- }
737
- }else if (5<= diffAllyear && diffAllyear <=8){
738
- return {
739
- color: 'red !important'
740
- }
741
- }else if (diffAllyear>8){
742
- return {
743
- color: 'crimson !important'
744
- }
745
- }else {
746
- return {
747
-
748
- }
749
- }
750
- },
751
- formatTime(expireTime){
752
- if (expireTime){
753
- let formats = {
754
- 'year': '%n%年',
755
- 'month': '%n%月',
756
- 'day': '%n%天',
757
- };
758
- let now = new Date().getTime()
759
- let expireTimes = new Date(expireTime).getTime()
760
- if (now < expireTimes){
761
- return expireTime
762
- }else {
763
- let seconds = Math.floor((now - expireTimes) / 1000)
764
- let minutes = Math.floor(seconds / 60)
765
- let hours = Math.floor(minutes / 60)
766
- let days = Math.floor(hours / 24)
767
- let months = Math.floor(days / 30)
768
- let years = Math.floor(months / 12)
769
-
770
- let diffType = ''
771
- let diffValue = 0
772
- if (years > 0) {
773
- diffType = 'year'
774
- diffValue = years
775
- } else {
776
- if (months > 0) {
777
- diffType = 'month'
778
- diffValue = months
779
- } else {
780
- if (days > 0) {
781
- diffType = 'day'
782
- diffValue = days
783
- }
784
- }
785
- }
786
- return '已过期'+formats[diffType].replace('%n%', diffValue);
787
- }
788
- }else {
789
- return ''
790
- }
791
- },
792
- async getaddress(){
793
- console.log('开始获取小区')
794
- let HttpReset = new HttpResetClass()
795
- var data = await HttpReset.load('POST', 'rs/sql/manage_getarealist', {
796
- data: {
797
- condition: `1=1 and s.f_filialeid = '${this.$login.f.orgid}'`
798
- }
799
- }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
800
- console.log('小区',data)
801
- let house = []
802
- for (let row of data.data){
803
- console.log('开始保存小区')
804
- house.push({label: row.f_residential_area, value: row.f_residential_area})
805
- }
806
- this.residentialArea = house
807
- },
808
- async downloadFiles() {
809
- if (this.condition2) {
810
- let data = {
811
- sqlName: 'myGasDeviceQuery',
812
- condition: this.condition2,
813
- fileName: '民用用气设备查询'
814
- }
815
- let HttpReset = new HttpResetClass()
816
- let res = await HttpReset.load('POST', 'rs/deviceExport/gasDevices', {
817
- data: data
818
- }, {resolveMsg: null, rejectMsg: null})
819
- if (res){
820
- let downurl = 'rs/deviceExport/download?filename=民用用气设备查询.xlsx';
821
- this.$resetget(downurl, {}).then(res => {
822
- var link = document.createElement('a');
823
- link.target = "_blank"
824
- link.href = downurl;
825
- link.setAttribute("download", "民用用气设备查询.xlsx"); //指定下载后的文件名,防跳转
826
- document.body.appendChild(link);
827
- link.click();
828
- })
829
- }
830
- } else {
831
- this.$showAlert('查询条件为空,请查询后再导出', 'warning', 3000)
832
- return
833
- }
834
- },
835
- //把数据库查询数据转换为下拉数据
836
- calculate(rows){
837
- let data = []
838
- rows.forEach((row, n) => {
839
- data[n] = {label: row.f_residential_area, value: row.id}
840
- })
841
- return data
842
- },
843
- search(){
844
- this.$refs.paged.$refs.cri.search()
845
- },
846
- cancel(obj) {
847
- this.show = false
848
- },
849
-
850
- selfSearch(args) {
851
- this.area = this.$refs.paged.$refs.cri.model.f_residential_area
852
- console.log("=====小区model绑定====",this.area)
853
- if(this.area.length !== 0){
854
- let str = JSON.stringify(this.area)
855
- str = str.replace(/"/g,`'`)
856
- str = str.replace(/\[/g,``)
857
- str = str.replace(/\]/g,``)
858
- console.log("=====小区model22222222222绑定====",str)
859
- //查询多个小区时条件
860
- args.condition += ` and f_residential_area in ( ${str} )`
861
- }
862
- if (!this.orgCondtionStr) {
863
- args.condition = `${args.condition}` + " and f_orgid = " + this.$login.f.orgid
864
- } else {
865
- args.condition = `${args.condition}` + this.orgCondtionStr
866
- }
867
- if(this.$refs.paged.$refs.cri.model.f_devices_type != null
868
- && this.$refs.paged.$refs.cri.model.f_devices_type != ''
869
- && this.$refs.paged.$refs.cri.model.f_devices_type != undefined){
870
- if (this.$refs.paged.$refs.cri.model.f_devices_type.includes('报警器')) {
871
- args.condition = `${args.condition}` + " and alarm_id != null"
872
- } else if (this.$refs.paged.$refs.cri.model.f_devices_type.includes('热水器')) {
873
- args.condition = `${args.condition}` + " and reshui_id != null"
874
- } else if (this.$refs.paged.$refs.cri.model.f_devices_type.includes('壁挂炉')) {
875
- args.condition = `${args.condition}` + " and bigua_id != null"
876
- } else {
877
- args.condition = `${args.condition}` + " and zaoju_id != null"
878
- }
879
- }
880
- this.condition2 = args.condition
881
- this.model.search(args.condition, args.model)
882
- },
883
- clear() {
884
- Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
885
- this.$refs.paged.$refs.cri.model[key] = []
886
- })
887
- },
888
- hidden() {
889
- this.criteriaShow = !this.criteriaShow
890
- },
891
- getRes(obj) {
892
- this.orgCondtionStr = obj
893
- },
894
- stamp() {
895
- this.all = false
896
- //默认选择要打印的列
897
- this.modelval = defaultPrint.config
898
- this.fields = this.getfield
899
- console.log('所有打印字段', this.fields)
900
- this.printshow = true
901
- this.put()
902
- },
903
- print() {
904
- this.$refs.print.PrintAsFile()
905
- this.printshow = false
906
- },
907
- close() {
908
- this.printshow = false
909
- },
910
- // 对选择的列进行排序
911
- sortModelval() {
912
- let sortModel = []
913
- Object.keys(this.fields).forEach((key) => {
914
- if (this.modelval.includes(key)) {
915
- sortModel.push(key)
916
- }
917
- })
918
- this.modelval = sortModel
919
- console.log('选择的打印的字段', this.modelval)
920
- },
921
- dblclick(row, index) {
922
- console.log('双击之后数据', row, index)
923
- this.userdetail.show = true
924
- this.userdetail.f_userinfo_code = row.f_userinfo_code
925
- this.userdetail.f_filialeids = row.f_filialeids
926
- },
927
- sort (field, rule) {
928
- // 将所有排序方式设为不排序,实现相互排斥
929
- for (let key in this.orderFields) {
930
- if (key === field) {
931
- this.orderFields[key] = rule
932
- } else {
933
- this.orderFields[key] = 'no'
934
- }
935
- }
936
- // 如果新规则不排序,还原为默认排序
937
- if (rule === 'no') {
938
- this.model.paramSource.orderitem = `'${this.orderitem}'`
939
- } else {
940
- this.model.paramSource.orderitem = `'${field} ${rule}'`
941
- }
942
-
943
- this.search()
944
- }
945
- },
946
-
947
- watch: {
948
- 'all'(val) {
949
- if (val) {
950
- this.modelval = this.bodyData
951
- } else {
952
- this.modelval = defaultPrint.config
953
- this.put()
954
- }
955
- },
956
- 'modelval.length'() {
957
- this.put()
958
- },
959
- 'orgCondtionStr'(val) {
960
- let res = val.match(/'(.*?)'/)
961
- console.log('正则提取:',res && res[1])
962
- if (res) {
963
- this.f_filialeid = res[1]
964
- if(res.input !=null){
965
- let resorgid = res.input.substring(res.input.indexOf("'"));
966
- if(resorgid!= null && resorgid!=''){
967
- resorgid = resorgid.substring(0,resorgid.lastIndexOf("'")+1);
968
- // resorgid = resorgid.replaceAll("'","");
969
- resorgid = resorgid.replace(/'/g,"");
970
- this.allorgid = resorgid.split(",")
971
- }
972
- }
973
- }
974
- },
975
- },
976
- computed: {
977
- userstates() {
978
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('客户状态')]
979
- },
980
- authArr () {
981
- return this.$login.r ? this.$login.r : []
982
- },
983
-
984
- getCondition() {
985
- return {condition: this.condition2,orderitem:this.orderitem}
986
- },
987
- getfield() {
988
- let data = {}
989
- this.bodyData.forEach((value, index) => {
990
- data[this.bodyData[index]] = this.headData[index]
991
- })
992
- //合计字段打印
993
- this.tfoot = `<tr><th colspan=${this.modelval.length}>全表汇总信息: `
994
- if (this.sumsmodel) {
995
- Object.keys(this.sumsmodel).forEach((key) => {
996
- this.tfoot += this.fields[key] + '合计: ' + `<font color="blue">${this.sumsmodel[key]} </font>`
997
- })
998
- } else {
999
- this.tfoot += '暂无'
1000
- }
1001
- this.tfoot += '</th></tr>'
1002
- return data
1003
- },
1004
- getExportField() {
1005
- return exportConfig.userConfig
1006
- },
1007
- addressstate() {
1008
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('地址状态')]
1009
- },
1010
- TableStates () {
1011
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('气表状态')]
1012
- },
1013
- devicetypes () {
1014
- return [{label: '全部', value: ''}, ...this.$appdata.getParam('设备类型')]
1015
- }
1016
- }
1017
- }
1018
- </script>
1019
- <style lang="less">
1020
- .filechangeHistoryShow {
1021
- td {
1022
- text-align: center !important;
1023
- }
1024
- }
1025
- .back-red{ /* 红色背景 */
1026
- color: red !important;
1027
- }
1028
- .back-green{ /* 红色背景 */
1029
- color: green !important;
1030
- }
1031
- .back-orange{ /* 红色背景 */
1032
- color: orange !important;
1033
- }
1034
- .back-crimson{
1035
- color: crimson !important;
1036
- }
1037
- .back-blue{ /* 蓝色背景 */
1038
-
1039
- }
1040
- </style>
1041
-
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
+ <div class="col-sm-2 form-group">
11
+ <label class="font_normal_body">客户编号</label>
12
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_userinfo_code"
13
+ condition="f_userinfo_code = '{}' " placeholder="客户编号">
14
+ </div>
15
+ <div class="col-sm-2 form-group">
16
+ <label class="font_normal_body">客户名称</label>
17
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_name"
18
+ condition="f_user_name like '%{}%'" placeholder="客户名称">
19
+ </div>
20
+ <div class="col-sm-2 form-group">
21
+ <label class="font_normal_body">客户电话</label>
22
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_user_phone"
23
+ condition="f_user_phone like '%{}%'" placeholder="客户电话">
24
+ </div>
25
+ <div class="col-sm-2 form-group">
26
+ <label for="startGasDate" class="font_normal_body">通气时间</label>
27
+ <datepicker id="startGasDate" placeholder="开始日期" style="width:60%"
28
+ v-model="model.startGasDate"
29
+ :value.sync="model.startGasDate"
30
+ :format="'yyyy-MM-dd 00:00:00'"
31
+ :show-reset-button="true"
32
+ condition="f_gas_date >= '{}'">
33
+ </datepicker>
34
+ </div>
35
+ <div class="col-sm-2 form-group">
36
+ <label for="endGasDate" class="font_normal_body">至</label>
37
+ <datepicker id="endGasDate" placeholder="结束日期" style="width:60%"
38
+ v-model="model.endGasDate"
39
+ :value.sync="model.endGasDate"
40
+ :format="'yyyy-MM-dd 23:59:59'"
41
+ :show-reset-button="true"
42
+ condition="f_gas_date <= '{}'">
43
+ </datepicker>
44
+ </div>
45
+ <div class="span" style="float:right;">
46
+ <button class="button_search button_spacing" @click="search()">查询</button>
47
+ <button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
48
+ <button class="button_clear button_spacing" style="margin-top: 10px;background-color: #6aa6e2;" @click="$parent.$parent.downloadFiles()">导出</button>
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
+ </div>
51
+ </div>
52
+ <div class="row" v-show="$parent.$parent.criteriaShow">
53
+ <div class="col-sm-2 form-group">
54
+ <label class="font_normal_body">客户地址</label>
55
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_address"
56
+ condition="f_address like '%{}%'" placeholder='客户地址'>
57
+ </div>
58
+ <div class="col-sm-2 form-group">
59
+ <label class="font_normal_body" title="气表状态">气表状态</label>
60
+ <v-select :value.sync="model.f_table_state"
61
+ :search="false"
62
+ v-model="model.f_table_state"
63
+ :options='$parent.$parent.TableStates' placeholder='请选择'
64
+ condition="f_table_state in {}"
65
+ ></v-select>
66
+ </div>
67
+ <div class="col-sm-2 form-group">
68
+ <label class="font_normal_body">燃气表号</label>
69
+ <input type="text" style="width:60%" class="input_search" v-model="model.f_meternumber"
70
+ condition="f_meternumber like '%{}%'" placeholder='燃气表号'>
71
+ </div>
72
+ <res-select-group :initres="$parent.$parent.initres" @re-res="$parent.$parent.getRes"></res-select-group>
73
+ <div class="col-sm-2 form-group">
74
+ <label for="startDate" class="font_normal_body">建档日期</label>
75
+ <datepicker id="startDate" placeholder="开始日期" style="width:60%"
76
+ v-model="model.startDate"
77
+ :value.sync="model.startDate"
78
+ :format="'yyyy-MM-dd 00:00:00'"
79
+ :show-reset-button="true"
80
+ condition="f_createfile_date >= '{}'">
81
+ </datepicker>
82
+ </div>
83
+ <div class="col-sm-2 form-group">
84
+ <label for="endDate" class="font_normal_body">结束日期</label>
85
+ <datepicker id="endDate" placeholder="结束日期" style="width:60%"
86
+ v-model="model.endDate"
87
+ :value.sync="model.endDate"
88
+ :format="'yyyy-MM-dd 23:59:59'"
89
+ :show-reset-button="true"
90
+ condition="f_createfile_date <= '{}'">
91
+ </datepicker>
92
+ </div>
93
+ <!-- <div class="col-sm-2 form-group">-->
94
+ <!-- <label class="font_normal_body">通气年限</label>-->
95
+ <!-- <input type="number" style="width:60%" class="input_search" v-model="model.diffAllyear1"-->
96
+ <!-- condition="diffAllyear >= {}" placeholder="最小值">-->
97
+ <!-- </div>-->
98
+ <!-- <div class="col-sm-2 form-group">-->
99
+ <!-- <label class="font_normal_body">&nbsp;&nbsp;至&nbsp;&nbsp;&nbsp;</label>-->
100
+ <!-- <input type="number" style="width:60%" class="input_search" v-model="model.diffAllyear2"-->
101
+ <!-- condition="diffAllyear <= {}" placeholder="最大值">-->
102
+ <!-- </div>-->
103
+ <div class="col-sm-2 form-group">
104
+ <label class="font_normal_body">&nbsp;&nbsp;&nbsp;小区&nbsp;&nbsp;&nbsp;</label>
105
+ <v-select :value.sync="model.f_residential_area"
106
+ class="select_list select"
107
+ enter-push
108
+ multiple = "true"
109
+ v-model="model.f_residential_area"
110
+ style="width: 60%"
111
+ :options='$parent.$parent.residentialArea' placeholder='选择小区'
112
+ close-on-select>
113
+ </v-select>
114
+ </div>
115
+ <div class="col-sm-2 form-group">
116
+ <label class="font_normal_body">气表品牌</label>
117
+ <v-select :value.sync="model.f_meter_brand"
118
+ v-model="model.f_meter_brand"
119
+ :options="$parent.$parent.meterbrands"
120
+ condition="f_meter_brand = '{}'"
121
+ close-on-select></v-select>
122
+ </div>
123
+ <div class="col-sm-2 form-group">
124
+ <label class="font_normal_body">设备类型</label>
125
+ <v-select :value.sync="model.f_devices_type"
126
+ v-model="model.f_devices_type"
127
+ :options="$parent.$parent.devicetypes"
128
+ close-on-select></v-select>
129
+ </div>
130
+ <div class="col-sm-2 form-group" >
131
+ <label class="font_normal_body">客户状态</label>
132
+ <v-select :value.sync="model.f_user_state"
133
+ v-model="model.f_user_state"
134
+ multiple
135
+ :options='$parent.$parent.userstates' placeholder='请选择'
136
+ condition="f_user_state in {}"
137
+ ></v-select>
138
+ </div>
139
+ <div class="col-sm-2 form-group">
140
+ <label for="startDate" class="font_normal_body">开户日期</label>
141
+ <datepicker id="startDate2" placeholder="开始日期" style="width:60%"
142
+ v-model="model.startDate2"
143
+ :value.sync="model.startDate2"
144
+ :format="'yyyy-MM-dd 00:00:00'"
145
+ :show-reset-button="true"
146
+ condition="f_open_date >= '{}'">
147
+ </datepicker>
148
+ </div>
149
+ <div class="col-sm-2 form-group">
150
+ <label for="endDate" class="font_normal_body">开户日期</label>
151
+ <datepicker id="endDate2" placeholder="结束日期" style="width:60%"
152
+ v-model="model.endDate2"
153
+ :value.sync="model.endDate2"
154
+ :format="'yyyy-MM-dd 23:59:59'"
155
+ :show-reset-button="true"
156
+ condition="f_open_date <= '{}'">
157
+ </datepicker>
158
+ </div>
159
+ <div class="col-sm-2 form-group" >
160
+ <label class="font_normal_body">有无波纹管</label>
161
+ <v-select :value.sync="model.f_has_pepe"
162
+ v-model="model.f_has_pepe"
163
+ :options='$parent.$parent.haspipe' placeholder='请选择'
164
+ condition="f_has_pepe {}" close-on-select
165
+ ></v-select>
166
+ </div>
167
+ <div class="col-sm-2 form-group" >
168
+ <label class="font_normal_body">有无自闭阀</label>
169
+ <v-select :value.sync="model.f_is_zibifa"
170
+ v-model="model.f_is_zibifa"
171
+ :options='$parent.$parent.iszbf' placeholder='请选择'
172
+ condition="f_is_zibifa {}" close-on-select
173
+ ></v-select>
174
+ </div>
175
+ </div>
176
+ </div>
177
+ </criteria>
178
+ <data-grid :model="model" partial='list' class="list_area table_sy" v-ref:grid>
179
+ <template partial='head'>
180
+ <tr>
181
+ <th rowspan="2"><nobr>序号</nobr></th>
182
+ <th colspan="7"><nobr>用户信息</nobr></th>
183
+ <th colspan="9"><nobr>燃气表</nobr></th>
184
+ <th colspan="8"><nobr>建档信息</nobr></th>
185
+ <th colspan="5"><nobr>燃气报警装置</nobr></th>
186
+ <th colspan="5"><nobr>燃气灶具</nobr></th>
187
+ <th colspan="6"><nobr>燃气灶具连接管</nobr></th>
188
+ <th colspan="5"><nobr>燃气热水器</nobr></th>
189
+ <th colspan="5"><nobr>燃气壁挂炉</nobr></th>
190
+ <th colspan="5"><nobr>燃气保险信息</nobr></th>
191
+ <th colspan="2"><nobr>初次充值信息</nobr></th>
192
+ <!-- <th colspan="2"><nobr>每年充值</nobr></th>-->
193
+ <th colspan="7"><nobr>安检信息</nobr></th>
194
+ <th rowspan="2"><nobr>备注</nobr></th>
195
+ </tr>
196
+
197
+ <tr>
198
+ <!--用户信息-->
199
+ <th><nobr>客户编号</nobr></th>
200
+ <th><nobr>客户名称</nobr></th>
201
+ <th><nobr>身份证号</nobr></th>
202
+ <th><nobr>联系电话</nobr></th>
203
+ <th><nobr>小区名称</nobr></th>
204
+ <th><nobr>客户地址</nobr></th>
205
+ <th><nobr>客户状态</nobr></th>
206
+
207
+ <!--燃气表-->
208
+ <th><nobr>品牌</nobr></th>
209
+ <th><nobr>表号</nobr></th>
210
+ <th><nobr>类型</nobr></th>
211
+ <th><nobr>气表状态</nobr></th>
212
+ <th><nobr>型号</nobr></th>
213
+ <th><nobr>表向</nobr></th>
214
+ <th><nobr>安装位置</nobr></th>
215
+ <th><nobr>安装日期</nobr></th>
216
+ <th><nobr>变更记录</nobr></th>
217
+ <!--建档信息-->
218
+ <th><nobr>建档日期</nobr></th>
219
+ <th><nobr>合同日期</nobr></th>
220
+ <th><nobr>开户日期</nobr></th>
221
+ <th><nobr>开户操作人</nobr></th>
222
+ <th><nobr>通气日期</nobr></th>
223
+ <th><nobr>通气人员</nobr></th>
224
+ <th><nobr>通气年限</nobr></th>
225
+ <th><nobr>变更记录</nobr></th>
226
+ <!--燃气报警装置-->
227
+ <th><nobr>报警器品牌</nobr></th>
228
+ <th><nobr>数量</nobr></th>
229
+ <th><nobr>生产日期</nobr></th>
230
+ <th><nobr>超期提醒</nobr></th>
231
+ <th><nobr>变更记录</nobr></th>
232
+ <!--燃气灶具-->
233
+ <th><nobr>灶具品牌</nobr></th>
234
+ <th><nobr>数量</nobr></th>
235
+ <th><nobr>生产日期</nobr></th>
236
+ <th><nobr>超期提醒</nobr></th>
237
+ <th><nobr>变更记录</nobr></th>
238
+ <!--燃气灶具连接管-->
239
+ <th><nobr>有无不锈钢波纹管</nobr></th>
240
+ <th><nobr>数量</nobr></th>
241
+ <th><nobr>有无自闭阀</nobr></th>
242
+ <th><nobr>数量</nobr></th>
243
+ <th><nobr>超期提醒</nobr></th>
244
+ <th><nobr>变更记录</nobr></th>
245
+ <!--燃气热水器-->
246
+ <th><nobr>品牌</nobr></th>
247
+ <th><nobr>数量</nobr></th>
248
+ <th><nobr>生产日期</nobr></th>
249
+ <th><nobr>超期提醒</nobr></th>
250
+ <th><nobr>变更记录</nobr></th>
251
+ <!--燃气壁挂炉-->
252
+ <th><nobr>品牌</nobr></th>
253
+ <th><nobr>数量</nobr></th>
254
+ <th><nobr>生产日期</nobr></th>
255
+ <th><nobr>超期提醒</nobr></th>
256
+ <th><nobr>变更记录</nobr></th>
257
+ <!--燃气保险信息-->
258
+ <th><nobr>类型</nobr></th>
259
+ <th><nobr>金额(元)</nobr></th>
260
+ <th><nobr>日期</nobr></th>
261
+ <th><nobr>超期提醒</nobr></th>
262
+ <th><nobr>续保记录</nobr></th>
263
+ <!--初次充值信息-->
264
+ <th><nobr>充值时间</nobr></th>
265
+ <th><nobr>金额(元)</nobr></th>
266
+ <!--每年充值-->
267
+ <!-- <th><nobr>充值时间</nobr></th>-->
268
+ <!-- <th><nobr>金额(元)</nobr></th>-->
269
+ <!--安检信息-->
270
+ <th><nobr>安检日期</nobr></th>
271
+ <th><nobr>安检人员</nobr></th>
272
+ <th><nobr>用气总量</nobr></th>
273
+ <th><nobr>总充值额</nobr></th>
274
+ <th><nobr>剩余气量</nobr></th>
275
+ <th><nobr>发现问题</nobr></th>
276
+ <th><nobr>整改日期</nobr></th>
277
+ </tr>
278
+ </template>
279
+ <template partial='body'>
280
+ <!--序号-->
281
+ <td style="text-align: center;" ><nobr>
282
+ {{$index + 1}}
283
+ </nobr></td>
284
+ <!--用户信息-->
285
+ <td style="text-align: center;">
286
+ <nobr>{{row.f_userinfo_code}}</nobr>
287
+ </td>
288
+ <td style="text-align: center;">
289
+ <nobr>{{row.f_user_name}}</nobr>
290
+ </td>
291
+ <td style="text-align: center;">
292
+ <nobr>{{row.f_idnumber}}</nobr>
293
+ </td>
294
+ <td style="text-align: center;">
295
+ <nobr>{{row.f_user_phone}}</nobr>
296
+ </td>
297
+ <td style="text-align: center;">
298
+ <nobr>{{row.f_residential_area}}</nobr>
299
+ </td>
300
+ <td style="text-align: center;">
301
+ <nobr>{{row.f_address}}</nobr>
302
+ </td>
303
+ <td style="text-align: center;">
304
+ <nobr>{{row.f_user_state}}</nobr>
305
+ </td>
306
+
307
+ <!--燃气表-->
308
+ <td style="text-align: center;">
309
+ <nobr>{{row.f_meter_brand}}</nobr>
310
+ </td>
311
+ <td style="text-align: center;">
312
+ <nobr>{{row.f_meternumber}}</nobr>
313
+ </td>
314
+ <td style="text-align: center;">
315
+ <nobr>{{row.f_meter_type}}</nobr>
316
+ </td>
317
+ <td style="text-align: center;">
318
+ <nobr>{{row.f_table_state}}</nobr>
319
+ </td>
320
+ <td style="text-align: center;">
321
+ <nobr>{{row.f_meter_style}}</nobr>
322
+ </td>
323
+ <td style="text-align: center;">
324
+ <nobr>{{row.f_aroundmeter}}</nobr>
325
+ </td>
326
+ <td style="text-align: center;">
327
+ <nobr>{{row.f_position}}</nobr>
328
+ </td>
329
+ <td style="text-align: center;">
330
+ <nobr>{{row.f_install_date}}</nobr>
331
+ </td>
332
+ <td style="text-align: center;">
333
+ <nobr>
334
+ <span @click="$parent.$parent.$parent.dealmsg(row,'','燃气表')"><a><b>变更记录</b></a></span>
335
+ </nobr>
336
+ </td>
337
+
338
+ <!--建档信息-->
339
+ <td style="text-align: center;">
340
+ <nobr>{{row.f_createfile_date}}</nobr>
341
+ </td>
342
+ <td style="text-align: center;">
343
+ <nobr>{{row.f_contract_date}}</nobr>
344
+ </td>
345
+ <td style="text-align: center;">
346
+ <nobr>{{row.f_open_date}}</nobr>
347
+ </td>
348
+ <td style="text-align: center;">
349
+ <nobr>{{row.f_open_person}}</nobr>
350
+ </td>
351
+ <td style="text-align: center;">
352
+ <nobr>{{row.f_gas_date}}</nobr>
353
+ </td>
354
+ <td style="text-align: center;">
355
+ <nobr>{{row.f_gas_person}}</nobr>
356
+ </td>
357
+ <td style="text-align: center;" :style="$parent.$parent.$parent.ventilationYear(row.diffallyear)">
358
+ <nobr>{{row.ventilation_years}}</nobr>
359
+ </td>
360
+ <td style="text-align: center;">
361
+ <nobr>
362
+ <span @click="$parent.$parent.$parent.dealmsg(row,'','建档信息')"><a><b>变更记录</b></a></span>
363
+ </nobr>
364
+ </td>
365
+
366
+ <!--燃气报警装置-->
367
+ <td style="text-align: center;">
368
+ <nobr>{{row.alarm_brand}}</nobr>
369
+ </td>
370
+ <td style="text-align: center;">
371
+ <nobr>{{row.alarm_num}}</nobr>
372
+ </td>
373
+ <td style="text-align: center;">
374
+ <nobr>{{row.alarm_make_date}}</nobr>
375
+ </td>
376
+ <td style="text-align: center;" :class="$parent.$parent.$parent.formatTime(row.alarm_exp_date).indexOf('已过期')!==-1? 'back-red' : 'back-blue'">
377
+ <nobr>{{$parent.$parent.$parent.formatTime(row.alarm_exp_date)}}</nobr>
378
+ </td>
379
+ <td style="text-align: center;">
380
+ <nobr>
381
+ <span @click="$parent.$parent.$parent.dealmsg(row,row.alarm_id,'燃气报警装置')"><a><b>变更记录</b></a></span>
382
+ </nobr>
383
+ </td>
384
+
385
+ <!--燃气灶具-->
386
+ <td style="text-align: center;">
387
+ <nobr>{{row.zaoju_brand}}</nobr>
388
+ </td>
389
+ <td style="text-align: center;">
390
+ <nobr>{{row.zaoju_num}}</nobr>
391
+ </td>
392
+ <td style="text-align: center;">
393
+ <nobr>{{row.zaoju_make_date}}</nobr>
394
+ </td>
395
+ <td style="text-align: center;" :class="$parent.$parent.$parent.formatTime(row.zaoju_exp_date).indexOf('已过期')!==-1? 'back-red' : 'back-blue'">
396
+ <nobr>{{$parent.$parent.$parent.formatTime(row.zaoju_exp_date)}}</nobr>
397
+ </td>
398
+ <td style="text-align: center;">
399
+ <nobr>
400
+ <span @click="$parent.$parent.$parent.dealmsg(row,row.zaoju_id,'燃气灶具')"><a><b>变更记录</b></a></span>
401
+ </nobr>
402
+ </td>
403
+
404
+
405
+ <!--燃气灶具连接管-->
406
+ <td style="text-align: center;">
407
+ <nobr>{{row.f_has_pepe}}</nobr>
408
+ </td>
409
+ <td style="text-align: center;">
410
+ <nobr>{{row.f_pipe_num}}</nobr>
411
+ </td>
412
+ <td style="text-align: center;">
413
+ <nobr>{{row.f_is_zibifa}}</nobr>
414
+ </td>
415
+ <td style="text-align: center;">
416
+ <nobr>{{row.f_zibifa_num}}</nobr>
417
+ </td>
418
+ <td style="text-align: center;" :class="$parent.$parent.$parent.formatTime(row.zaoju_pipe_expdate).indexOf('已过期')!==-1? 'back-red' : 'back-blue'">
419
+ <nobr>{{$parent.$parent.$parent.formatTime(row.zaoju_pipe_expdate)}}</nobr>
420
+ </td>
421
+ <td style="text-align: center;">
422
+ <nobr>
423
+ <span @click="$parent.$parent.$parent.dealmsg(row,row.zaoju_id,'燃气灶具连接管')"><a><b>变更记录</b></a></span>
424
+ </nobr>
425
+ </td>
426
+
427
+ <!--燃气热水器-->
428
+ <td style="text-align: center;">
429
+ <nobr>{{row.reshui_brand}}</nobr>
430
+ </td>
431
+ <td style="text-align: center;">
432
+ <nobr>{{row.reshui_num}}</nobr>
433
+ </td>
434
+ <td style="text-align: center;">
435
+ <nobr>{{row.reshui_make_date}}</nobr>
436
+ </td>
437
+ <td style="text-align: center;" :class="$parent.$parent.$parent.formatTime(row.reshui_exp_date).indexOf('已过期')!==-1? 'back-red' : 'back-blue'">
438
+ <nobr>{{$parent.$parent.$parent.formatTime(row.reshui_exp_date)}}</nobr>
439
+ </td>
440
+ <td style="text-align: center;">
441
+ <nobr>
442
+ <span @click="$parent.$parent.$parent.dealmsg(row,row.reshui_id,'燃气热水器')"><a><b>变更记录</b></a></span>
443
+ </nobr>
444
+ </td>
445
+
446
+
447
+ <!--燃气壁挂炉-->
448
+ <td style="text-align: center;">
449
+ <nobr>{{row.bigua_brand}}</nobr>
450
+ </td>
451
+ <td style="text-align: center;">
452
+ <nobr>{{row.bigua_num}}</nobr>
453
+ </td>
454
+ <td style="text-align: center;">
455
+ <nobr>{{row.bigua_make_date}}</nobr>
456
+ </td>
457
+ <td style="text-align: center;" :class="$parent.$parent.$parent.formatTime(row.bigua_exp_date).indexOf('已过期')!==-1? 'back-red' : 'back-blue'">
458
+ <nobr>{{$parent.$parent.$parent.formatTime(row.bigua_exp_date)}}</nobr>
459
+ </td>
460
+ <td style="text-align: center;">
461
+ <nobr>
462
+ <span @click="$parent.$parent.$parent.dealmsg(row,row.bigua_id,'燃气壁挂炉')"><a><b>变更记录</b></a></span>
463
+ </nobr>
464
+ </td>
465
+
466
+ <!--燃气保险信息-->
467
+ <td style="text-align: center;">
468
+ <nobr>{{row.f_fee_type}}</nobr>
469
+ </td>
470
+ <td style="text-align: center;">
471
+ <nobr>{{row.f_money}}</nobr>
472
+ </td>
473
+ <td style="text-align: center;">
474
+ <nobr>{{row.fee_operate_date}}</nobr>
475
+ </td>
476
+ <td style="text-align: center;" :class="$parent.$parent.$parent.formatTime(row.f_expiration_date).indexOf('已过期')!==-1? 'back-red' : 'back-blue'">
477
+ <nobr>{{$parent.$parent.$parent.formatTime(row.f_expiration_date)}}</nobr>
478
+ </td>
479
+ <td style="text-align: center;">
480
+ <nobr>
481
+ <span @click="$parent.$parent.$parent.dealmsg(row,'','燃气保险信息')"><a><b>续保记录</b></a></span>
482
+ </nobr>
483
+ </td>
484
+
485
+ <!--初次充值信息-->
486
+ <td style="text-align: center;">
487
+ <nobr>{{row.f_min_operate_date}}</nobr>
488
+ </td>
489
+ <td style="text-align: center;">
490
+ <nobr>{{row.f_preamount}}</nobr>
491
+ </td>
492
+
493
+ <!--每年充值-->
494
+ <!-- <td style="text-align: center;">-->
495
+ <!-- <nobr>{{row.yeartimes}}</nobr>-->
496
+ <!-- </td>-->
497
+ <!-- <td style="text-align: center;">-->
498
+ <!-- <nobr>{{row.f_preamount_all}}</nobr>-->
499
+ <!-- </td>-->
500
+
501
+ <!--安检信息-->
502
+ <td style="text-align: center;">
503
+ <nobr>{{row.f_upload_date}}</nobr>
504
+ </td>
505
+ <td style="text-align: center;">
506
+ <nobr>{{row.f_checker_name}}</nobr>
507
+ </td>
508
+ <td style="text-align: center;">
509
+ <nobr>{{row.f_total_gas}}</nobr>
510
+ </td>
511
+ <td style="text-align: center;">
512
+ <nobr>{{row.f_total_fee}}</nobr>
513
+ </td>
514
+ <td style="text-align: center;">
515
+ <nobr>{{row.f_balance_gas}}</nobr>
516
+ </td>
517
+ <td style="text-align: center;">
518
+ <nobr>{{row.f_defect_content}}</nobr>
519
+ </td>
520
+ <td style="text-align: center;">
521
+ <nobr>{{row.f_repair_date}}</nobr>
522
+ </td>
523
+
524
+ <!--备注-->
525
+ <td style="text-align: center;">
526
+ <nobr>{{row.f_comments}}</nobr>
527
+ </td>
528
+
529
+ </template>
530
+ <template partial='foot'>
531
+ </template>
532
+ </data-grid>
533
+ </criteria-paged>
534
+
535
+ </div>
536
+ </div>
537
+ </div>
538
+ <modal :show.sync="filechangeHistoryShow" v-ref:filechangeHistoryShow backdrop="false" class="filechangeHistoryShow">
539
+ <header slot="modal-header" class="modal-header" style="text-align: center">
540
+ <h4 class="modal-title">{{titles}}</h4>
541
+ </header>
542
+ <article slot="modal-body" class="modal-body">
543
+ <data-grid class="list_area table_sy" :model="filechangeHistorys" partial='list' v-if="titles.indexOf('燃气保险信息') === -1">
544
+ <template partial='head'>
545
+ <th><nobr>序号</nobr></th>
546
+ <th><nobr>更改内容</nobr></th>
547
+ <th><nobr>更改前</nobr></th>
548
+ <th><nobr>更改后</nobr></th>
549
+ <th><nobr>变更时间</nobr></th>
550
+ </template>
551
+ <template partial='body'>
552
+ <td >{{$index+1}}</td>
553
+ <td><nobr>{{row.f_field_name}}</nobr></td>
554
+ <td><nobr>{{row.f_used_content}}</nobr></td>
555
+ <td><nobr>{{row.f_new_content}}</nobr></td>
556
+ <td><nobr>{{row.f_submit_date}}</nobr></td>
557
+ </template>
558
+ </data-grid>
559
+ <data-grid class="list_area table_sy" :model="filechangeHistorys" partial='list' v-if="titles.indexOf('燃气保险信息') !== -1">
560
+ <template partial='head'>
561
+ <th><nobr>序号</nobr></th>
562
+ <th><nobr>用户编号</nobr></th>
563
+ <th><nobr>用户姓名</nobr></th>
564
+ <th><nobr>保险金额</nobr></th>
565
+ <th><nobr>保险类型</nobr></th>
566
+ <th><nobr>保险日期</nobr></th>
567
+ <th><nobr>到期时间</nobr></th>
568
+ <th><nobr>操作时间</nobr></th>
569
+ <th><nobr>操作人</nobr></th>
570
+ </template>
571
+ <template partial='body'>
572
+ <td >{{$index+1}}</td>
573
+ <td><nobr>{{row.f_userinfo_code}}</nobr></td>
574
+ <td><nobr>{{row.f_user_name}}</nobr></td>
575
+ <td><nobr>{{row.f_money}}</nobr></td>
576
+ <td><nobr>{{row.f_insurance_type}}</nobr></td>
577
+ <td><nobr>{{row.f_ins_start_date}}</nobr></td>
578
+ <td><nobr>{{row.f_expiration_date}}</nobr></td>
579
+ <td><nobr>{{row.f_operate_date}}</nobr></td>
580
+ <td><nobr>{{row.f_operator}}</nobr></td>
581
+ </template>
582
+ </data-grid>
583
+ </article>
584
+ <footer slot="modal-footer" class="modal-footer">
585
+ <button type="button" class="btn btn-default" @click='filechangeHistoryShow = false'>关闭</button>
586
+ </footer>
587
+ </modal>
588
+
589
+ </div>
590
+ </template>
591
+
592
+ <script>
593
+ import {HttpResetClass, PagedList} from 'vue-client'
594
+ import defaultPrint from './config/DefaultPrint'
595
+ import exportConfig from './config/exportConfig'
596
+
597
+ let readySomething = async function (self) {
598
+ self.defaultfield = [...self.defaultfield, ...self.config.defaultPrint]
599
+
600
+ }
601
+
602
+ export default {
603
+ title: '民用用气设备查询',
604
+ data() {
605
+ return {
606
+ titles:'',
607
+ other:[],
608
+ footer:[],
609
+ model: new PagedList('rs/sql/myGasDeviceQuery', 20, {orderitem: this.orderitem?'"' + this.orderitem + ' "':`'f_userinfo_code desc'`}),
610
+ criteriaShow: false,
611
+ orgCondtionStr: '',
612
+ modelval: [],
613
+ printshow: false,
614
+ all: false,
615
+ fields: {},
616
+ //排序
617
+ orderitem:'f_userinfo_code desc',
618
+ orderFields: {
619
+ f_operate_date: 'no'
620
+ },
621
+ //默认打印列
622
+ defaultfield: [],
623
+ config: {
624
+ defaultPrint: ['f_userinfo_code', 'f_user_name', 'f_user_phone', 'f_user_state']
625
+ },
626
+ balance2:'',
627
+ thead: '',
628
+ tfoot: '',
629
+ area: [],
630
+ //合计数据
631
+ sumsmodel: {},
632
+ initres: {
633
+ org:[this.$login.f.orgid],
634
+ dep:[],
635
+ user:[],
636
+ },
637
+ userdetail: {
638
+ show: false,
639
+ f_userinfo_code: '',
640
+ f_filialeids: ''
641
+ },
642
+ meterbrands: [],
643
+
644
+ show:false,
645
+ rowdata:{},
646
+ meterInfo:{},
647
+ deviceInfo:{},
648
+ condition2:'',
649
+ filechangeHistorys: {rows: []},
650
+ filechangeHistoryShow: false,
651
+ //小区
652
+ residentialArea: [],
653
+ allorgid:[],
654
+ f_filialeid: this.$login.f.f_orgid,
655
+ haspipe: [{label: '有', value: ` = '有'`},{label: '无', value: `!= '有'`}],
656
+ iszbf: [{label: '有', value: ` = '有'`},{label: '无', value: `!= '有'`}]
657
+ }
658
+ },
659
+ ready() {
660
+ this.initParams()
661
+ this.getaddress()
662
+ readySomething(this).then(() => {
663
+ this.$emit('ready')
664
+ }).catch((error) => {
665
+ this.$emit('error', error)
666
+ })
667
+ },
668
+ methods: {
669
+ initParams() {
670
+ // 初始化气表品牌
671
+ let brandArr = []
672
+ this.$MagGetSaleParam.getGasbrand().forEach((item) => {
673
+ let temp = {}
674
+ temp.label = item.label
675
+ temp.value = item.value.f_meter_brand
676
+ brandArr.push(temp)
677
+ })
678
+ this.meterbrands = [{label: '全部', value: ''}, ...brandArr]
679
+ //初始化气表价格
680
+ this.prices = this.$MagGetSaleParam.getPrices();
681
+ },
682
+ async dealmsg(row,id,type){
683
+ this.titles = type+'变更记录'
684
+ this.filechangeHistorys.rows = []
685
+ let data = {
686
+ tablename: `t_infochange`,
687
+ items: '*',
688
+ condition: `1=1`,
689
+ orderitem: 'f_change_id desc'
690
+ }
691
+ let urlParam = 'rs/sql/singleTable_OrderBy'
692
+ if (id){
693
+ data.condition = `1=1 and f_table_id = ${id} and f_field_name like '%${type}%'`
694
+ let res = await this.$resetpost(urlParam, {data: data}, {rejectMsg: '获取变更记录出错', resolveMsg: null})
695
+ if (res){
696
+ this.filechangeHistorys.rows = res.data
697
+ }
698
+ }else{
699
+ if (type === '燃气表'){
700
+ data.condition = `1=1 and f_field_name in ('气表品牌','气表型号','出厂日期','表号','左右表','气表分类') and f_userinfo_id = '${row.f_userinfo_id}'`
701
+ let res = await this.$resetpost(urlParam, {data: data}, {rejectMsg: '获取变更记录出错', resolveMsg: null})
702
+ if (res){
703
+ this.filechangeHistorys.rows = res.data
704
+ }
705
+ }else if (type === '建档信息'){
706
+ urlParam = 'rs/sql/changeuserquery'
707
+ data = {
708
+ condition: ` 1=1 and f_orgid in ('${this.$login.f.orgid}') and f_userinfo_code = '${row.f_userinfo_code}' and f_table_ename != 't_devices'`,
709
+ orderitem: "f_operate_date desc"
710
+ }
711
+ let res = await this.$resetpost(urlParam, {data: data}, {rejectMsg: '获取变更记录出错', resolveMsg: null})
712
+ if (res){
713
+ this.filechangeHistorys.rows = res.data
714
+ }
715
+ }else if (type==='燃气保险信息'){
716
+ data = {
717
+ condition: ` 1=1 and f_orgid in ('${this.$login.f.orgid}') and f_userinfo_code = '${row.f_userinfo_code}'`,
718
+ orderitem: "f_operate_date desc"
719
+ }
720
+ let res = await this.$resetpost('rs/sql/insuranceguanl', {data: data}, {rejectMsg: '获取变更记录出错', resolveMsg: null})
721
+ if (res){
722
+ this.filechangeHistorys.rows = res.data
723
+ }
724
+ }
725
+ }
726
+ this.filechangeHistoryShow =true
727
+ },
728
+ ventilationYear(diffAllyear){
729
+ if ( 1<= diffAllyear && diffAllyear <= 2 ){
730
+ return {
731
+ color: 'green !important'
732
+ }
733
+ }else if (3<= diffAllyear && diffAllyear <=4){
734
+ return {
735
+ color: 'orange !important'
736
+ }
737
+ }else if (5<= diffAllyear && diffAllyear <=8){
738
+ return {
739
+ color: 'red !important'
740
+ }
741
+ }else if (diffAllyear>8){
742
+ return {
743
+ color: 'crimson !important'
744
+ }
745
+ }else {
746
+ return {
747
+
748
+ }
749
+ }
750
+ },
751
+ formatTime(expireTime){
752
+ if (expireTime){
753
+ let formats = {
754
+ 'year': '%n%年',
755
+ 'month': '%n%月',
756
+ 'day': '%n%天',
757
+ };
758
+ let now = new Date().getTime()
759
+ let expireTimes = new Date(expireTime).getTime()
760
+ if (now < expireTimes){
761
+ return expireTime
762
+ }else {
763
+ let seconds = Math.floor((now - expireTimes) / 1000)
764
+ let minutes = Math.floor(seconds / 60)
765
+ let hours = Math.floor(minutes / 60)
766
+ let days = Math.floor(hours / 24)
767
+ let months = Math.floor(days / 30)
768
+ let years = Math.floor(months / 12)
769
+
770
+ let diffType = ''
771
+ let diffValue = 0
772
+ if (years > 0) {
773
+ diffType = 'year'
774
+ diffValue = years
775
+ } else {
776
+ if (months > 0) {
777
+ diffType = 'month'
778
+ diffValue = months
779
+ } else {
780
+ if (days > 0) {
781
+ diffType = 'day'
782
+ diffValue = days
783
+ }
784
+ }
785
+ }
786
+ return '已过期'+formats[diffType].replace('%n%', diffValue);
787
+ }
788
+ }else {
789
+ return ''
790
+ }
791
+ },
792
+ async getaddress(){
793
+ console.log('开始获取小区')
794
+ let HttpReset = new HttpResetClass()
795
+ var data = await HttpReset.load('POST', 'rs/sql/manage_getarealist', {
796
+ data: {
797
+ condition: `1=1 and s.f_filialeid = '${this.$login.f.orgid}'`
798
+ }
799
+ }, {resolveMsg: null, rejectMsg: '获取小区失败!'})
800
+ console.log('小区',data)
801
+ let house = []
802
+ for (let row of data.data){
803
+ console.log('开始保存小区')
804
+ house.push({label: row.f_residential_area, value: row.f_residential_area})
805
+ }
806
+ this.residentialArea = house
807
+ },
808
+ async downloadFiles() {
809
+ if (this.condition2) {
810
+ let data = {
811
+ sqlName: 'myGasDeviceQuery',
812
+ condition: this.condition2,
813
+ fileName: '民用用气设备查询'
814
+ }
815
+ let HttpReset = new HttpResetClass()
816
+ let res = await HttpReset.load('POST', 'rs/deviceExport/gasDevices', {
817
+ data: data
818
+ }, {resolveMsg: null, rejectMsg: null})
819
+ if (res){
820
+ let downurl = 'rs/deviceExport/download?filename=民用用气设备查询.xlsx';
821
+ this.$resetget(downurl, {}).then(res => {
822
+ var link = document.createElement('a');
823
+ link.target = "_blank"
824
+ link.href = downurl;
825
+ link.setAttribute("download", "民用用气设备查询.xlsx"); //指定下载后的文件名,防跳转
826
+ document.body.appendChild(link);
827
+ link.click();
828
+ })
829
+ }
830
+ } else {
831
+ this.$showAlert('查询条件为空,请查询后再导出', 'warning', 3000)
832
+ return
833
+ }
834
+ },
835
+ //把数据库查询数据转换为下拉数据
836
+ calculate(rows){
837
+ let data = []
838
+ rows.forEach((row, n) => {
839
+ data[n] = {label: row.f_residential_area, value: row.id}
840
+ })
841
+ return data
842
+ },
843
+ search(){
844
+ this.$refs.paged.$refs.cri.search()
845
+ },
846
+ cancel(obj) {
847
+ this.show = false
848
+ },
849
+
850
+ selfSearch(args) {
851
+ this.area = this.$refs.paged.$refs.cri.model.f_residential_area
852
+ console.log("=====小区model绑定====",this.area)
853
+ if(this.area.length !== 0){
854
+ let str = JSON.stringify(this.area)
855
+ str = str.replace(/"/g,`'`)
856
+ str = str.replace(/\[/g,``)
857
+ str = str.replace(/\]/g,``)
858
+ console.log("=====小区model22222222222绑定====",str)
859
+ //查询多个小区时条件
860
+ args.condition += ` and f_residential_area in ( ${str} )`
861
+ }
862
+ if (!this.orgCondtionStr) {
863
+ args.condition = `${args.condition}` + " and f_orgid = " + this.$login.f.orgid
864
+ } else {
865
+ args.condition = `${args.condition}` + this.orgCondtionStr
866
+ }
867
+ if(this.$refs.paged.$refs.cri.model.f_devices_type != null
868
+ && this.$refs.paged.$refs.cri.model.f_devices_type != ''
869
+ && this.$refs.paged.$refs.cri.model.f_devices_type != undefined){
870
+ if (this.$refs.paged.$refs.cri.model.f_devices_type.includes('报警器')) {
871
+ args.condition = `${args.condition}` + " and alarm_id != null"
872
+ } else if (this.$refs.paged.$refs.cri.model.f_devices_type.includes('热水器')) {
873
+ args.condition = `${args.condition}` + " and reshui_id != null"
874
+ } else if (this.$refs.paged.$refs.cri.model.f_devices_type.includes('壁挂炉')) {
875
+ args.condition = `${args.condition}` + " and bigua_id != null"
876
+ } else {
877
+ args.condition = `${args.condition}` + " and zaoju_id != null"
878
+ }
879
+ }
880
+ this.condition2 = args.condition
881
+ this.model.search(args.condition, args.model)
882
+ },
883
+ clear() {
884
+ Object.keys(this.$refs.paged.$refs.cri.model).forEach((key) => {
885
+ this.$refs.paged.$refs.cri.model[key] = []
886
+ })
887
+ },
888
+ hidden() {
889
+ this.criteriaShow = !this.criteriaShow
890
+ },
891
+ getRes(obj) {
892
+ this.orgCondtionStr = obj
893
+ },
894
+ stamp() {
895
+ this.all = false
896
+ //默认选择要打印的列
897
+ this.modelval = defaultPrint.config
898
+ this.fields = this.getfield
899
+ console.log('所有打印字段', this.fields)
900
+ this.printshow = true
901
+ this.put()
902
+ },
903
+ print() {
904
+ this.$refs.print.PrintAsFile()
905
+ this.printshow = false
906
+ },
907
+ close() {
908
+ this.printshow = false
909
+ },
910
+ // 对选择的列进行排序
911
+ sortModelval() {
912
+ let sortModel = []
913
+ Object.keys(this.fields).forEach((key) => {
914
+ if (this.modelval.includes(key)) {
915
+ sortModel.push(key)
916
+ }
917
+ })
918
+ this.modelval = sortModel
919
+ console.log('选择的打印的字段', this.modelval)
920
+ },
921
+ dblclick(row, index) {
922
+ console.log('双击之后数据', row, index)
923
+ this.userdetail.show = true
924
+ this.userdetail.f_userinfo_code = row.f_userinfo_code
925
+ this.userdetail.f_filialeids = row.f_filialeids
926
+ },
927
+ sort (field, rule) {
928
+ // 将所有排序方式设为不排序,实现相互排斥
929
+ for (let key in this.orderFields) {
930
+ if (key === field) {
931
+ this.orderFields[key] = rule
932
+ } else {
933
+ this.orderFields[key] = 'no'
934
+ }
935
+ }
936
+ // 如果新规则不排序,还原为默认排序
937
+ if (rule === 'no') {
938
+ this.model.paramSource.orderitem = `'${this.orderitem}'`
939
+ } else {
940
+ this.model.paramSource.orderitem = `'${field} ${rule}'`
941
+ }
942
+
943
+ this.search()
944
+ }
945
+ },
946
+
947
+ watch: {
948
+ 'all'(val) {
949
+ if (val) {
950
+ this.modelval = this.bodyData
951
+ } else {
952
+ this.modelval = defaultPrint.config
953
+ this.put()
954
+ }
955
+ },
956
+ 'modelval.length'() {
957
+ this.put()
958
+ },
959
+ 'orgCondtionStr'(val) {
960
+ let res = val.match(/'(.*?)'/)
961
+ console.log('正则提取:',res && res[1])
962
+ if (res) {
963
+ this.f_filialeid = res[1]
964
+ if(res.input !=null){
965
+ let resorgid = res.input.substring(res.input.indexOf("'"));
966
+ if(resorgid!= null && resorgid!=''){
967
+ resorgid = resorgid.substring(0,resorgid.lastIndexOf("'")+1);
968
+ // resorgid = resorgid.replaceAll("'","");
969
+ resorgid = resorgid.replace(/'/g,"");
970
+ this.allorgid = resorgid.split(",")
971
+ }
972
+ }
973
+ }
974
+ },
975
+ },
976
+ computed: {
977
+ userstates() {
978
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('客户状态')]
979
+ },
980
+ authArr () {
981
+ return this.$login.r ? this.$login.r : []
982
+ },
983
+
984
+ getCondition() {
985
+ return {condition: this.condition2,orderitem:this.orderitem}
986
+ },
987
+ getfield() {
988
+ let data = {}
989
+ this.bodyData.forEach((value, index) => {
990
+ data[this.bodyData[index]] = this.headData[index]
991
+ })
992
+ //合计字段打印
993
+ this.tfoot = `<tr><th colspan=${this.modelval.length}>全表汇总信息: `
994
+ if (this.sumsmodel) {
995
+ Object.keys(this.sumsmodel).forEach((key) => {
996
+ this.tfoot += this.fields[key] + '合计: ' + `<font color="blue">${this.sumsmodel[key]} </font>`
997
+ })
998
+ } else {
999
+ this.tfoot += '暂无'
1000
+ }
1001
+ this.tfoot += '</th></tr>'
1002
+ return data
1003
+ },
1004
+ getExportField() {
1005
+ return exportConfig.userConfig
1006
+ },
1007
+ addressstate() {
1008
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('地址状态')]
1009
+ },
1010
+ TableStates () {
1011
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('气表状态')]
1012
+ },
1013
+ devicetypes () {
1014
+ return [{label: '全部', value: ''}, ...this.$appdata.getParam('设备类型')]
1015
+ }
1016
+ }
1017
+ }
1018
+ </script>
1019
+ <style lang="less">
1020
+ .filechangeHistoryShow {
1021
+ td {
1022
+ text-align: center !important;
1023
+ }
1024
+ }
1025
+ .back-red{ /* 红色背景 */
1026
+ color: red !important;
1027
+ }
1028
+ .back-green{ /* 红色背景 */
1029
+ color: green !important;
1030
+ }
1031
+ .back-orange{ /* 红色背景 */
1032
+ color: orange !important;
1033
+ }
1034
+ .back-crimson{
1035
+ color: crimson !important;
1036
+ }
1037
+ .back-blue{ /* 蓝色背景 */
1038
+
1039
+ }
1040
+ </style>
1041
+