apply-clients 4.1.59-weinan → 4.1.61-weinan

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 (31) hide show
  1. package/index.html +30 -30
  2. package/package.json +1 -1
  3. package/src/apply.js +81 -81
  4. package/src/applyAndroid.js +52 -52
  5. package/src/components/app_apply/AppChargeManagement.vue +749 -749
  6. package/src/components/app_apply/AppInstallationDetails.vue +529 -529
  7. package/src/components/app_apply/AppProcessSupervisory.vue +214 -214
  8. package/src/components/app_apply/AppSupervisoryCart.vue +68 -68
  9. package/src/components/app_apply/AppTakePic.vue +146 -146
  10. package/src/components/app_apply/AppdevicesDetails.vue +867 -867
  11. package/src/components/app_apply/ApplyInfo.vue +56 -56
  12. package/src/components/app_apply/ApplyToDoList.vue +292 -292
  13. package/src/components/app_apply/PlaceControler.vue +274 -274
  14. package/src/components/app_apply/ServiceControl.vue +440 -440
  15. package/src/components/app_apply/ServiceView.vue +394 -394
  16. package/src/components/app_apply/materialshoufei.vue +243 -243
  17. package/src/components/product/ApplyCharge/ApplyChargeList.vue +252 -252
  18. package/src/components/product/Process/ExplorationSelect.vue +377 -377
  19. package/src/components/product/Process/ExplorationUser.vue +134 -134
  20. package/src/components/product/Process/Processes/InstallationDetails.vue +515 -515
  21. package/src/components/product/Process/Processes/chargeManagement.vue +545 -545
  22. package/src/components/product/Process/Processes/devicesDetails.vue +843 -843
  23. package/src/components/product/Process/Processes/materialshoufei.vue +5 -0
  24. package/src/components/product/Process/Service/ServiceControl.vue +25 -2
  25. package/src/components/product/Stop/StopApply.vue +101 -101
  26. package/src/components/product/Stop/StopApplyList.vue +266 -266
  27. package/src/components/product/Supervisory/Service/SupervisoryServiceControl.vue +200 -200
  28. package/src/components/product/Supervisory/SupervisoryControl.vue +124 -124
  29. package/src/components/product/Supervisory/SupervisoryList.vue +221 -221
  30. package/src/components/product/VueUtils/ApplyUpload.vue +276 -276
  31. package/src/main.js +25 -25
@@ -1,867 +1,867 @@
1
- <template>
2
- <div class="col-sm-12" style="margin: 20px 0px;">
3
- <!-- <div class="auto" style="overflow:auto;margin: 15px 0 0 15px;">
4
- <div class="col-sm-12" style="height: 180px">
5
- <div class="row col-sm-12">
6
- <div class="from-group col-sm-3">
7
- <label class=" control-label" >点火状态</label>
8
- <v-select :value.sync="query.f_state" v-model="query.f_state"
9
- :options='firestate' placeholder='请选择'
10
- close-on-select >
11
- </v-select>
12
- </div>
13
- <div class="form-group col-sm-5" >
14
- &lt;!&ndash; <button class="button_search button_spacing" @click="search()">查询</button>&ndash;&gt;
15
- <button type="button" class="btn btn-default" @click="search(0)">查询</button>
16
- <button type="button" class="btn btn-default" @click="clear()">清空</button>
17
- </div>
18
- </div>
19
- </div>
20
- </div>-->
21
- <data-grid :model="model" v-ref:grid class="list_area table_sy" style="padding: 0px">
22
- <template partial='head'>
23
- <tr>
24
- <th>序号</th>
25
- <th>客户编号</th>
26
- <th>客户名称</th>
27
- <th>客户电话</th>
28
- <th>地址信息</th>
29
- <th>设备数量</th>
30
- <th>点火状态</th>
31
- <th>
32
- 操作
33
- <!-- <button type="button" class="btn btn-info head-but" v-if="$parent.$parent.mark === 0"-->
34
- <!-- @click="$parent.$parent.showFile = !$parent.$parent.showFile">导入</button>-->
35
- <!-- <a type="button" class="btn btn-info head-but" v-if="$parent.$parent.mark === 0"-->
36
- <!-- href="/apply/download/excel/v3报装表具批量导入.xlsx" download>模板下载</a>-->
37
- <!-- <export-excel :data="$parent.$parent.getCondition"-->
38
- <!-- :field="$parent.$parent.getfield"-->
39
- <!-- sqlurl="rs/logic/applyExportfile"-->
40
- <!-- sql-name="getInstallableAddress"-->
41
- <!-- template-name='可安装地址'-->
42
- <!-- btn-name="导出可安装"-->
43
- <!-- :choose-col="true"></export-excel>-->
44
- </th>
45
- </tr>
46
- </template>
47
- <template partial='body'>
48
- <tr>
49
- <td style="text-align: center;">
50
- <nobr>{{$index+1}}</nobr>
51
- </td>
52
- <td style="text-align: center;">
53
- <nobr>{{row.f_userinfo_code}}</nobr>
54
- </td>
55
- <td style="text-align: center;">
56
- <nobr>{{row.f_user_name}}</nobr>
57
- </td>
58
- <td style="text-align: center;">
59
- <nobr>{{row.f_user_phone}}</nobr>
60
- </td>
61
- <td style="text-align: center;">
62
- <nobr>{{row.f_address}}</nobr>
63
- </td>
64
- <td style="text-align: center;">
65
- <nobr>{{row.f_devices_num === null ? 0 : row.f_devices_num}}</nobr>
66
- </td>
67
- <td style="text-align: center;">
68
- <nobr>{{row.f_fire_num === null ? "未点火" : "已点火"}}</nobr>
69
- </td>
70
- <td style="text-align: center;">
71
- <nobr>
72
- <button
73
- type="button" name="button" class="btn btn-link"
74
- :disabled="row.f_cumulative_payment_money < $parent.$parent.selectdata.f_price && selectdata.f_apply_type !== '开发商集体报建'"
75
- @click="$parent.$parent.showUserFileModal(row)">
76
- {{$parent.$parent.mark === 1 ? '查看' : row.f_devices_num > 0 ? '修正' : '添加'}}
77
- </button>
78
- <button
79
- type="button" name="button" class="btn btn-link"
80
- @click="$parent.$parent.showFire(row)">
81
- 点火信息
82
- </button>
83
- </nobr>
84
- </td>
85
- </tr>
86
- </template>
87
- </data-grid>
88
- </div>
89
- <modal v-if="showFile" :show.sync="showFile" v-ref:modal :backdrop="false" title="选择文件">
90
- <header slot="modal-header" class="modal-header">
91
- <button type="button" class="close" @click="closeFile"><span>&times;</span></button>
92
- <h4 class="modal-title">选择文件</h4>
93
- </header>
94
- <article slot="modal-body" class="modal-body">
95
- <div class="form-group">
96
- <file-upload class="my-file-uploader" name="useraddressUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
97
- </div>
98
- </article>
99
- <footer slot="modal-footer" class="modal-footer"></footer>
100
- </modal>
101
-
102
- <validator name="v">
103
- <modal v-if="showUserFile" :show.sync="showUserFile" v-ref:modal :large="true" :backdrop="false" title="设备明细">
104
- <header slot="modal-header" class="modal-header">
105
- <button type="button" class="close" @click="closeUserFile"><span>&times;</span></button>
106
- <h4 class="modal-title">设备明细</h4>
107
- </header>
108
- <article slot="modal-body" class="modal-body clearfix">
109
- <div class="form-group col-sm-12">
110
- <label class="col-sm-2 control-label">地址信息:</label>
111
- <div class="col-sm-10">
112
- <input class="form-control input_view" style=""
113
- v-model="useradders.f_address"
114
- :value="useradders.f_address"
115
- :readonly="true"/>
116
- </div>
117
- </div>
118
-
119
- <div v-for="(i, item) in userinfo.devices" class="form-group col-sm-12 panel panel-info">
120
- <div class="panel-heading head col-sm-12" style="background-color: #e8f4ff;margin-bottom: 10px">
121
- <div class="col-sm-6 text-left" style="background-color: #e8f4ff;margin-bottom: 10px">设备{{$index+1}}信息</div>
122
- <div class="col-sm-6 text-right"><button
123
- class="button_delete button_spacing"
124
- v-if="!item.f_userfiles_id"
125
- @click.prevent="deleteUserFile(i)"
126
- >删除</button></div>
127
- </div>
128
-
129
- <div class="form-group col-sm-6">
130
- <label class="col-sm-4 control-label">设备类型:</label>
131
- <div class="col-sm-8">
132
- <input-select
133
- class="select select_list"
134
- :value.sync="item.f_devices_type"
135
- v-model="item.f_devices_type"
136
- :options="devicestype"
137
- :disable="mark === 1"
138
- :valueSingle="true"></input-select>
139
- </div>
140
- </div>
141
- <!-- <div class="form-group col-sm-6">
142
- <label class="col-sm-4 control-label">设备编号:</label>
143
- <div class="col-sm-8">
144
- <input class="form-control input_view" style=""
145
- placeholder="设备编号"
146
- v-model="item.f_devices_no"
147
- :value="item.f_devices_no"
148
- :readonly="mark === 1"/>
149
- </div>
150
- </div>-->
151
- <div class="form-group col-sm-6">
152
- <label class="col-sm-4 control-label">设备品牌:</label>
153
- <div class="col-sm-8">
154
- <input class="form-control input_view" style=""
155
- placeholder="设备品牌"
156
- v-model="item.f_brand"
157
- :value="item.f_brand"
158
- :readonly="mark === 1"/>
159
- </div>
160
- </div>
161
- <div class="form-group col-sm-6">
162
- <label class="col-sm-4 control-label">设备型号:</label>
163
- <div class="col-sm-8">
164
- <input class="form-control input_view" style=""
165
- placeholder="设备型号"
166
- v-model="item.f_devices_model"
167
- :value="item.f_devices_model"
168
- :readonly="mark === 1"/>
169
- </div>
170
- </div>
171
- <div class="form-group col-sm-6">
172
- <label class="col-sm-4 control-label">安装人:</label>
173
- <div class="col-sm-8">
174
- <input class="form-control input_view" style=""
175
- placeholder="安装人"
176
- v-model="item.f_input_person"
177
- :value="item.f_input_person"
178
- :readonly="mark === 1"/>
179
- </div>
180
- </div>
181
- <div class="form-group col-sm-6">
182
- <label class="col-sm-4 control-label">安装日期:</label>
183
- <div class="col-sm-8">
184
- <datepicker
185
- placeholder="安装日期"
186
- :value.sync="item.f_input_date"
187
- v-model="item.f_input_date"
188
- format="yyyy-MM-dd HH:mm:ss"
189
- :disabled="mark === 1"
190
- :show-reset-button="reset">
191
- </datepicker>
192
- </div>
193
- </div>
194
- <div class="form-group col-sm-6">
195
- <label class="col-sm-4 control-label">生产日期:</label>
196
- <div class="col-sm-8">
197
- <datepicker
198
- placeholder="生产日期"
199
- :value.sync="item.f_make_date"
200
- v-model="item.f_make_date"
201
- format="yyyy-MM-dd HH:mm:ss"
202
- :disabled="mark === 1"
203
- :show-reset-button="reset">
204
- </datepicker>
205
- </div>
206
- </div>
207
- <div class="form-group col-sm-6">
208
- <label class="col-sm-4 control-label">使用年限:</label>
209
- <div class="col-sm-8">
210
- <input class="form-control input_view" style=""
211
- type="number"
212
- placeholder="使用年限"
213
- v-model="item.f_service_life"
214
- @change="outdate(item,i)"
215
- :value="item.f_service_life"
216
- :readonly="mark === 1"/>
217
- </div>
218
- </div>
219
- <div class="form-group col-sm-6">
220
- <label class="col-sm-4 control-label">到期日期:</label>
221
- <div class="col-sm-8">
222
- <datepicker
223
- placeholder="到期日期"
224
- :value.sync="item.f_expire_date"
225
- v-model="item.f_expire_date"
226
- format="yyyy-MM-dd HH:mm:ss"
227
- :disabled="mark === 1"
228
- :show-reset-button="reset">
229
- </datepicker>
230
- </div>
231
- </div>
232
- <div class="form-group col-sm-6">
233
- <label class="col-sm-4 control-label">设备数量:</label>
234
- <div class="col-sm-8">
235
- <input class="form-control input_view" style=""
236
- type="number"
237
- v-model="item.f_devices_num"
238
- :value="item.f_devices_num"
239
- placeholder="设备数量"
240
- :readonly="mark === 1"/>
241
- </div>
242
- </div>
243
- <div class="form-group col-sm-6">
244
- <label class="col-sm-4 control-label">设备状态:</label>
245
- <div class="col-sm-8">
246
- <input-select
247
- class="select select_list"
248
- :value.sync="item.f_userinfodevices_state"
249
- v-model="item.f_userinfodevices_state"
250
- :options="aroundmeters"
251
- :disable="mark === 1"
252
- :valueSingle="true"></input-select>
253
- </div>
254
- </div>
255
- <div class="form-group col-sm-6">
256
- <label class="col-sm-4 control-label">购买方式:</label>
257
- <div class="col-sm-8">
258
- <input-select
259
- class="select select_list"
260
- :value.sync="item.watchpurchase"
261
- v-model="item.watchpurchase"
262
- :options="positions"
263
- :disable="mark === 1"
264
- :valueSingle="true"></input-select>
265
- </div>
266
- </div>
267
- <div class="form-group col-sm-6">
268
- <label class="col-sm-4 control-label">安装方式:</label>
269
- <div class="col-sm-8">
270
- <input-select
271
- class="select select_list"
272
- :value.sync="item.f_install_type"
273
- v-model="item.f_install_type"
274
- :options="installstyle"
275
- :disable="mark === 1"
276
- :valueSingle="true"></input-select>
277
- </div>
278
- </div>
279
- <div class="form-group col-sm-6">
280
- <label class="col-sm-4 control-label">备注:</label>
281
- <div class="col-sm-8">
282
- <input class="form-control input_view" style=""
283
- placeholder="备注"
284
- v-model="item.f_comments"
285
- :value="item.f_comments"
286
- :readonly="mark === 1"/>
287
- </div>
288
- </div>
289
-
290
-
291
-
292
- </div>
293
-
294
- <div v-for="(i, item) in userinfo.devices" class="form-group col-sm-12 panel panel-info">
295
- <div class="panel-heading head" style="background-color: #e8f4ff;margin-bottom: 10px">连接管{{$index+1}}信息</div>
296
- <div class="form-group col-sm-6">
297
- <label class="col-sm-4 control-label">管道类型:</label>
298
- <div class="col-sm-8">
299
- <input-select
300
- class="select select_list"
301
- :value.sync="item.f_pipe_type"
302
- v-model="item.f_pipe_type"
303
- :options="pipingtype"
304
- :disable="mark === 1"
305
- :valueSingle="true"></input-select>
306
- </div>
307
- </div>
308
- <div class="form-group col-sm-6">
309
- <label class="col-sm-4 control-label">安装日期:</label>
310
- <div class="col-sm-8">
311
- <datepicker
312
- placeholder="连接管安装日期"
313
- :value.sync="item.f_pipeinstall_date"
314
- v-model="item.f_pipeinstall_date"
315
- format="yyyy-MM-dd HH:mm:ss"
316
- :disabled="mark === 1"
317
- :show-reset-button="reset">
318
- </datepicker>
319
- </div>
320
- </div>
321
- <div class="form-group col-sm-6">
322
- <label class="col-sm-4 control-label">到期日期:</label>
323
- <div class="col-sm-8">
324
- <datepicker
325
- placeholder="连接管到期日期"
326
- :value.sync="item.f_pipeexpire_date"
327
- v-model="item.f_pipeexpire_date"
328
- format="yyyy-MM-dd HH:mm:ss"
329
- :disabled="mark === 1"
330
- :show-reset-button="reset">
331
- </datepicker>
332
- </div>
333
- </div>
334
-
335
- </div>
336
-
337
- </article>
338
- <footer slot="modal-footer" class="modal-footer">
339
- <!-- 去除一户多表 -->
340
- <button type="button" class="btn btn-primary" @click="addUserFile">添加设备</button>
341
- <button type="button" class="btn btn-primary" @click="saveUserFile" :disabled="!$v.valid">确认</button>
342
- </footer>
343
- </modal>
344
- <modal :show.sync="showFilePage" width="80%" title="点火基本信息" v-ref:modal large backdrop="false">
345
- <article slot="modal-body" class="modal-body" style="height: auto">
346
- <div class="flex-row flex-deviceinfo">
347
-
348
- <div class="panel panel-primary col-sm-12 datapanel" v-if="selectdata.f_apply_type[0]!='工商户报建'">
349
- <!-- <avatar-upload :img-src.sync="row.img.content" :filename.sync="row.img.filename"></avatar-upload>-->
350
- <form class="form-horizontal select-overspread " style="flex: 1;">
351
- <div style="margin-top: 2%">
352
- <img style="margin-top: -2px;margin-left: 2px" src="../../../static/images/lefticon/矩形1183.png">
353
- <a style="font-size: 16px;font-weight: 500;">民用点火信息</a>&nbsp;<a style="color: #999999;text-decoration: none"></a>
354
- </div>
355
- <div class="row auto" style="margin-top: 10px;margin-left: 10px;">
356
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
357
- <label class="font_normal_body">&emsp;&emsp;&emsp;镀锌管&nbsp;&nbsp;&nbsp;</label>
358
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_galvanize_pipe"
359
- placeholder='镀锌管' >
360
- </div>
361
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
362
- <label class="font_normal_body">&emsp;&emsp;&emsp;三&emsp;通&emsp;</label>
363
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_tee"
364
- placeholder='三通' >
365
- </div>
366
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
367
- <label class="font_normal_body">&emsp;&emsp;&emsp;对&emsp;丝&emsp;</label>
368
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_nipple"
369
- placeholder='对丝' >
370
- </div>
371
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
372
- <label class="font_normal_body">&emsp;&emsp;&emsp;弯&emsp;头&emsp;</label>
373
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_elbow"
374
- placeholder='弯头' >
375
- </div>
376
- </div>
377
- <div class="row auto" style="margin-left: 10px;">
378
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
379
- <label class="font_normal_body">&emsp;&emsp;&emsp;管&emsp;卡&emsp;</label>
380
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_pipe_strap"
381
- placeholder='管卡' >
382
- </div>
383
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
384
- <label class="font_normal_body">&emsp;&emsp;&emsp;灶前阀&emsp;</label>
385
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_zqf"
386
- placeholder='灶前阀' >
387
- </div>
388
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
389
- <label class="font_normal_body">&emsp;&emsp;&emsp;胶&emsp;管&emsp;</label>
390
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_sebific_duct"
391
- placeholder='胶管' >
392
- </div>
393
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
394
- <label class="font_normal_body">&emsp;&emsp;&emsp;自闭阀&emsp;</label>
395
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_zbf"
396
- placeholder='自闭阀' >
397
- </div>
398
- </div>
399
- <div class="row auto" style="margin-left: 10px;">
400
-
401
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
402
- <label class="font_normal_body">&emsp;&emsp;&emsp;燃气具&emsp;</label>
403
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_gas_appliance"
404
- placeholder='燃气具' >
405
- </div>
406
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
407
- <label class="font_normal_body">&emsp;&emsp;&emsp;热水器&emsp;</label>
408
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_geyser"
409
- placeholder='热水器' >
410
- </div>
411
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
412
- <label class="font_normal_body">&emsp;&emsp;&emsp;壁挂锅炉</label>
413
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_bgl"
414
- placeholder='壁挂锅炉' >
415
- </div>
416
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
417
- <label class="font_normal_body">&emsp;&emsp;&emsp;型&emsp;号&emsp;</label>
418
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_bgl_style"
419
- placeholder='壁挂锅炉型号' >
420
- </div>
421
- </div>
422
- <div class="row auto" style="margin-left: 10px;">
423
- <div class="col-sm-3 form-group" >
424
- <label class="font_normal_body">&emsp;&emsp;&emsp;交付日期</label>
425
- <datepicker placeholder="交付日期" style="width: 57%"
426
- v-model="fireinfo.f_deliver_date"
427
- :value.sync="fireinfo.f_deliver_date"
428
- :format="'yyyy-MM-dd HH:mm:ss'">
429
- </datepicker>
430
- </div>
431
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
432
- <label class="font_normal_body">&emsp;&emsp;&emsp;点火人员</label>
433
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_lgniter"
434
- placeholder='点火人员' >
435
- </div>
436
- <div class="col-sm-12 form-group" >
437
- <label class="font_normal_body">&emsp;&emsp;&emsp;检验结论</label>
438
- <input type="text" class="input_search" style="width:80%" v-model="fireinfo.f_fic"
439
- placeholder='设施检验结论' >
440
- </div>
441
- <div class="col-sm-12 form-group" >
442
- <label class="font_normal_body">&emsp;&emsp;&emsp;备&emsp;&emsp;注</label>
443
- <input type="text" class="input_search" style="width:80%" v-model="fireinfo.f_comments"
444
- placeholder='备注' >
445
- </div>
446
- </div>
447
- </form>
448
- </div>
449
- <div class="panel panel-primary col-sm-12 datapanel" v-if="selectdata.f_apply_type[0]=='工商户报建'">
450
- <!-- <avatar-upload :img-src.sync="row.img.content" :filename.sync="row.img.filename"></avatar-upload>-->
451
- <form class="form-horizontal select-overspread " style="flex: 1;">
452
- <div style="margin-top: 2%">
453
- <img style="margin-top: -2px;margin-left: 2px" src="../../../static/images/lefticon/矩形1183.png">
454
- <a style="font-size: 16px;font-weight: 500;">非民用点火基本信息</a>&nbsp;<a style="color: #999999;text-decoration: none"></a>
455
- </div>
456
- <div class="row auto" style="margin-top: 10px;margin-left: 10px;">
457
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
458
- <label class="font_normal_body">&emsp;&emsp;探测器数量</label>
459
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_detector_number"
460
- placeholder='探测器数量' >
461
- </div>
462
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
463
- <label class="font_normal_body">&emsp;&emsp;气表品牌</label>
464
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_fire_gasbrand"
465
- placeholder='气表品牌' >
466
- </div>
467
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
468
- <label class="font_normal_body">&emsp;控制器品牌</label>
469
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_control_brand"
470
- placeholder='控制器品牌' >
471
- </div>
472
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
473
- <label class="font_normal_body">&emsp;控制器型号</label>
474
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_control_model"
475
- placeholder='控制器型号' >
476
- </div>
477
- </div>
478
- <div class="row auto" style="margin-top: 10px;margin-left: 10px;">
479
-
480
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
481
- <label class="font_normal_body">控制器出厂日期</label>
482
- <datepicker placeholder="控制器出厂日期" style="width: 60%"
483
- v-model="fireinfo.f_control_date"
484
- :value.sync="fireinfo.f_control_date"
485
- :format="'yyyy-MM-dd HH:mm:ss'">
486
- </datepicker>
487
- </div>
488
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
489
- <label class="font_normal_body">控制器表编码</label>
490
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_control_code"
491
- placeholder='控制器表编码' >
492
- </div>
493
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
494
- <label class="font_normal_body">控制器表封号</label>
495
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_control_number"
496
- placeholder='控制器表封号' >
497
- </div>
498
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
499
- <label class="font_normal_body">&emsp;燃气具类型</label>
500
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_appliance_type"
501
- placeholder='燃气具类型' >
502
- </div>
503
- </div>
504
- <div class="row auto" style="margin-top: 10px;margin-left: 10px;">
505
-
506
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
507
- <label class="font_normal_body">&emsp;&emsp;燃气具品牌</label>
508
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_appliance_brand"
509
- placeholder='燃气具品牌' >
510
- </div>
511
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
512
- <label class="font_normal_body">&emsp;燃气具型号</label>
513
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_appliance_model"
514
- placeholder='燃气具型号' >
515
- </div>
516
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
517
- <label class="font_normal_body">&emsp;报警箱信息</label>
518
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_alarm_info"
519
- placeholder='报警控制箱信息' >
520
- </div>
521
- <div class="col-sm-3 form-group" >
522
- <label class="font_normal_body">&emsp;&emsp;交付日期</label>
523
- <datepicker placeholder="交付日期" style="width: 60%"
524
- v-model="fireinfo.f_deliver_date"
525
- :value.sync="fireinfo.f_deliver_date"
526
- :format="'yyyy-MM-dd HH:mm:ss'">
527
- </datepicker>
528
- </div>
529
- </div>
530
- <div class="row auto" style="margin-top: 10px;margin-left: 10px;">
531
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
532
- <label class="font_normal_body">&emsp;&emsp;&emsp;通讯方式</label>
533
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_contact_method"
534
- placeholder='通讯方式' >
535
- </div>
536
- <div class="col-sm-3 form-group" style="padding-right: 5px;">
537
- <label class="font_normal_body">&emsp;&emsp;点火人员</label>
538
- <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_lgniter"
539
- placeholder='点火人员' >
540
- </div>
541
- <div class="col-sm-12 form-group" >
542
- <label class="font_normal_body">&emsp;&emsp;&emsp;检验结论</label>
543
- <input type="text" class="input_search" style="width:90%" v-model="fireinfo.f_fic"
544
- placeholder='设施检验结论' >
545
- </div>
546
- <div class="col-sm-12 form-group" >
547
- <label class="font_normal_body">&emsp;&emsp;&emsp;备&emsp;&emsp;注</label>
548
- <input type="text" class="input_search" style="width:80%" v-model="fireinfo.f_comments"
549
- placeholder='备注' >
550
- </div>
551
- </div>
552
- </form>
553
- </div>
554
- </div>
555
-
556
- </article>
557
-
558
- <footer slot="modal-footer" class="modal-footer">
559
- <button type="button" class="btn btn-default" @click='cancel()'>取消</button>
560
- <button type="button" class="btn btn-success" @click='confirm()'>确定</button>
561
- </footer>
562
- </modal>
563
- <!-- <apply-file-user-fire-info v-if="showFilePage" :fireinfo="fireinfo" :showFilePage="showFilePage"></apply-file-user-fire-info>-->
564
- </validator>
565
- </template>
566
- <script>
567
- import Vue from 'vue'
568
- import {HttpResetClass} from 'vue-client'
569
-
570
- export default {
571
- title: '设备信息',
572
- props: {
573
- selectdata: {
574
- type: Object
575
- },
576
- mark: {
577
- type: Number,
578
- default: 0
579
- }
580
- },
581
- data () {
582
- return {
583
- showFile: false,
584
- showUserFile: false,
585
- model: {
586
- data: null
587
- },
588
- meterbrands: [], // 气表品牌
589
- useradders: null,
590
- userinfo: {},
591
- getfield: {
592
- 'f_address': '地址',
593
- 'f_meternumber': '表号',
594
- 'f_gasbrand': '气表品牌',
595
- 'f_gasmodel': '气表型号',
596
- 'f_metertitles': '表封号',
597
- 'f_meter_base': '表读数',
598
- 'f_initial_base': '初始底数',
599
- 'f_aroundmeter': '表向',
600
- 'f_position': '安装位置',
601
- 'f_install_person': '安装人',
602
- 'f_install_date': '安装日期'
603
- },
604
- showFilePage: false,
605
- fireinfo: {},
606
- firestate: [{label:"全部",value:'0'},{label:"未点火",value:'is null'},{label:"已点火",value:'is not null'}],
607
- query: {},//查询数据
608
- condition: "1 = 1"
609
- }
610
- },
611
- ready () {
612
- this.search()
613
- },
614
- methods: {
615
- // 删除未保存的表具
616
- async deleteUserFile (index) {
617
- this.userinfo.devices.splice(index, 1)
618
- },
619
- // 追加表具
620
- addUserFile() {
621
- this.userinfo.devices.push({})
622
- console.log("数据:" + JSON.stringify(this.userinfo))
623
- },
624
- // 保存档案
625
- async saveUserFile() {
626
- let data = {
627
- user: Vue.user,
628
- useradders: this.useradders,
629
- userinfo: this.userinfo,
630
- selectdata: this.selectdata
631
- }
632
- if (data.userinfo.devices.length > 0){
633
- let a = data.userinfo.devices.length
634
- for (let i = 0; i<a;i++){
635
- data.userinfo.devices[i].f_state = '有效'
636
- }
637
- }
638
- let res = await this.$resetpost(this.$androidUtil.getProxyUrl() +'/rs/logic/addInstallationDetailsDevices', {data:data}, {
639
- resolveMsg: null,
640
- rejectMsg: '设备添加失败!!!'
641
- })
642
- this.showUserFile = false
643
- this.search()
644
- },
645
- // 打开设备明细
646
- async showUserFileModal (row) {
647
- this.useradders = row
648
-
649
- let http = new HttpResetClass()
650
- let data = {
651
- condition: `f_userinfo_id = '${row.f_userinfo_id}'`
652
- }
653
- let res = await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/logic/getUserinfoAndUserfilesDevices', {data:data}, {
654
- resolveMsg: null,
655
- rejectMsg: null
656
- })
657
-
658
- this.userinfo = res.data
659
- console.log("获取到的表具信息:" + JSON.stringify(res.data))
660
- if (res.data.devices.length <= 0) {
661
- this.userinfo.devices = [
662
- {
663
-
664
- }
665
- ]
666
- }
667
-
668
- this.showUserFile = true
669
- },
670
- // 打开点火信息
671
- async showFire(row) {
672
- if (Vue.user.f_role_name.includes("报装点火权限")) {
673
- let http = new HttpResetClass()
674
- let data = {
675
- condition: `f_userinfo_id = '${row.f_userinfo_id}'`
676
- }
677
- let res = await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/logic/getUserinfoAndUserfilesDevices', {data:data}, {
678
- resolveMsg: null,
679
- rejectMsg: null
680
- })
681
-
682
- this.userinfo = res.data
683
- console.log("获取到的表具信息:" + JSON.stringify(res.data))
684
- if (res.data.fireinfo.length <= 0) {
685
- this.userinfo.fireinfo = [
686
- {
687
-
688
- }
689
- ]
690
- this.fireinfo = {}
691
- this.fireinfo.f_lgniter = Vue.user.name
692
- }else {
693
- this.fireinfo = this.userinfo.fireinfo[0]
694
- }
695
- this.showFilePage = true
696
- }else {
697
- this.$showMessage("您没有操作权限!")
698
- }
699
- },
700
- conditionData() {
701
- if (this.query.f_state == '0') {
702
- this.condition = "1 = 1"
703
- }else if (this.query.f_state == 'is null' || this.query.f_state == 'is not null') {
704
- this.condition = "fi.f_fire_num " + this.query.f_state
705
- }else {
706
- this.condition = "1 = 1"
707
- }
708
- },
709
- // 查询
710
- async search (num) {
711
- if (num == 0) {
712
- this.conditionData()
713
- }
714
- let http = new HttpResetClass()
715
- let data = {
716
- condition: this.condition,
717
- f_process_id: this.selectdata.f_process_id
718
- }
719
- let res = await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/sql/getAddresAndUserinfoAndUserfilesAmountDevices', {data:data}, {
720
- resolveMsg: null,
721
- rejectMsg: null
722
- })
723
- this.model.data = res.data
724
- if (this.selectdata.f_apply_type === '开发商集体报建' || this.selectdata.f_apply_type === '散户集体报建') {
725
- let f_installed_households = 0
726
- for (const item of res.data) {
727
- if (item.f_userfiles_num > 0) {
728
- f_installed_households++
729
- }
730
- }
731
- let f_uninstalled_households = this.selectdata.f_apply_count - f_installed_households
732
- for (const item of this.selectdata.fields) {
733
- if (item.label === '已安装户数') {
734
- item.value = f_installed_households
735
- }
736
- if (item.label === '未安装户数') {
737
- item.value = f_uninstalled_households
738
- }
739
- }
740
- }
741
- },
742
- // 关闭安装明细
743
- closeUserFile() {
744
- this.showUserFile = false
745
- this.useradders = null
746
- this.userinfo = {}
747
- this.search()
748
- },
749
- // 关闭文件上传对话框
750
- closeFile() {
751
- this.showFile = false
752
- // 将选的文件清空
753
- this.$refs.file.$el.querySelector('input').value = ''
754
- this.search()
755
- },
756
- async confirm () {
757
- console.log('传入数据:')
758
- // 添加组织信息
759
- this.fireinfo.f_user_id = this.userinfo.userfiles[0].f_user_id
760
- this.fireinfo.f_userfiles_id = this.userinfo.userfiles[0].f_userfiles_id
761
- this.fireinfo.f_operatorid = Vue.user.id
762
- this.fireinfo.f_operator = Vue.user.name
763
- this.fireinfo.f_state = "有效"
764
-
765
- let http = new HttpResetClass()
766
- let data = {
767
- fireinfo: this.fireinfo
768
- }
769
- let res = await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/entity/t_userfire', this.fireinfo, {
770
- resolveMsg: "添加成功",
771
- rejectMsg: "添加失败"
772
- }).then((res) => {
773
- this.cancel()
774
- })
775
- },
776
- cancel () {
777
- this.showFilePage = false
778
- },
779
- async clear() {
780
- this.query = {}
781
- this.condition = "1 = 1"
782
- },
783
- outdate(item,index){
784
- console.log("数据",item)
785
- if (item.f_make_date){
786
- let t = new Date(item.f_make_date);//你已知的时间
787
- let Y = t.getFullYear()+parseInt(item.f_service_life)+ '-'
788
- let M = (t.getMonth()+1 < 10 ? '0'+(t.getMonth()+1):t.getMonth()+1) + '-'
789
- let D = (t.getDate()< 10 ? '0'+t.getDate():t.getDate())+ ' '
790
- let h = (t.getHours() < 10 ? '0'+t.getHours():t.getHours())+ ':'
791
- let m = (t.getMinutes() < 10 ? '0'+t.getMinutes():t.getMinutes())+ ':'
792
- let s = t.getSeconds() < 10 ? '0'+t.getSeconds():t.getSeconds()
793
- this.$set('userinfo.devices['+index+'].f_expire_date',Y+M+D+h+m+s)
794
- }
795
-
796
- }
797
- },
798
- events: {
799
- async 'onFileUpload'(file, result) {
800
- let data = {
801
- selectdata: this.selectdata,
802
- filepath: result.f_downloadpath,
803
- user: Vue.user
804
- }
805
- let res = await this.$resetpost(this.$androidUtil.getProxyUrl() +`/rs/logic/importAddInstallationDetails`, {data:data}, {resolveMsg: null, rejectMsg: '导入失败!!!', silent: true}, 0)
806
-
807
- this.$dispatch('breakControl', this.selectdata)
808
- }
809
- },
810
- computed: {
811
- getCondition () {
812
- let data = {
813
- f_process_id: this.selectdata.f_process_id
814
- }
815
- return data
816
- },
817
- // 安装人
818
- installperson() {
819
- return Vue.user.f_installman.map(item => {
820
- return {
821
- label: item.name,
822
- value: item.name
823
- }
824
- })
825
- },
826
- // 表向
827
- aroundmeters() {
828
- return this.$appdata.getParam('用户设备状态')
829
- },
830
- // 安装位置
831
- positions() {
832
- return this.$appdata.getParam('购买方式')
833
- },
834
- // 安装方式
835
- installstyle() {
836
- return this.$appdata.getParam('安装方式')
837
- },
838
- // 设备类型
839
- devicestype() {
840
- return this.$appdata.getParam('设备类型')
841
- },
842
- // 管道类型
843
- pipingtype() {
844
- return this.$appdata.getParam('管道类型')
845
- }
846
- },
847
- watch: {
848
- }
849
- }
850
- </script>
851
- <style scoped>
852
- .head-but{
853
- margin-left: 5px;
854
- height: 34px;
855
- /*background-color: #6aa6e2;*/
856
- border-radius: 4px;
857
- font-family: PingFang;
858
- color: #ffffff;
859
- }
860
- /*清除model中的浮动*/
861
- .clearfix:after,.clearfix:before{
862
- display: table;
863
- }
864
- .clearfix:after{
865
- clear: both;
866
- }
867
- </style>
1
+ <template>
2
+ <div class="col-sm-12" style="margin: 20px 0px;">
3
+ <!-- <div class="auto" style="overflow:auto;margin: 15px 0 0 15px;">
4
+ <div class="col-sm-12" style="height: 180px">
5
+ <div class="row col-sm-12">
6
+ <div class="from-group col-sm-3">
7
+ <label class=" control-label" >点火状态</label>
8
+ <v-select :value.sync="query.f_state" v-model="query.f_state"
9
+ :options='firestate' placeholder='请选择'
10
+ close-on-select >
11
+ </v-select>
12
+ </div>
13
+ <div class="form-group col-sm-5" >
14
+ &lt;!&ndash; <button class="button_search button_spacing" @click="search()">查询</button>&ndash;&gt;
15
+ <button type="button" class="btn btn-default" @click="search(0)">查询</button>
16
+ <button type="button" class="btn btn-default" @click="clear()">清空</button>
17
+ </div>
18
+ </div>
19
+ </div>
20
+ </div>-->
21
+ <data-grid :model="model" v-ref:grid class="list_area table_sy" style="padding: 0px">
22
+ <template partial='head'>
23
+ <tr>
24
+ <th>序号</th>
25
+ <th>客户编号</th>
26
+ <th>客户名称</th>
27
+ <th>客户电话</th>
28
+ <th>地址信息</th>
29
+ <th>设备数量</th>
30
+ <th>点火状态</th>
31
+ <th>
32
+ 操作
33
+ <!-- <button type="button" class="btn btn-info head-but" v-if="$parent.$parent.mark === 0"-->
34
+ <!-- @click="$parent.$parent.showFile = !$parent.$parent.showFile">导入</button>-->
35
+ <!-- <a type="button" class="btn btn-info head-but" v-if="$parent.$parent.mark === 0"-->
36
+ <!-- href="/apply/download/excel/v3报装表具批量导入.xlsx" download>模板下载</a>-->
37
+ <!-- <export-excel :data="$parent.$parent.getCondition"-->
38
+ <!-- :field="$parent.$parent.getfield"-->
39
+ <!-- sqlurl="rs/logic/applyExportfile"-->
40
+ <!-- sql-name="getInstallableAddress"-->
41
+ <!-- template-name='可安装地址'-->
42
+ <!-- btn-name="导出可安装"-->
43
+ <!-- :choose-col="true"></export-excel>-->
44
+ </th>
45
+ </tr>
46
+ </template>
47
+ <template partial='body'>
48
+ <tr>
49
+ <td style="text-align: center;">
50
+ <nobr>{{$index+1}}</nobr>
51
+ </td>
52
+ <td style="text-align: center;">
53
+ <nobr>{{row.f_userinfo_code}}</nobr>
54
+ </td>
55
+ <td style="text-align: center;">
56
+ <nobr>{{row.f_user_name}}</nobr>
57
+ </td>
58
+ <td style="text-align: center;">
59
+ <nobr>{{row.f_user_phone}}</nobr>
60
+ </td>
61
+ <td style="text-align: center;">
62
+ <nobr>{{row.f_address}}</nobr>
63
+ </td>
64
+ <td style="text-align: center;">
65
+ <nobr>{{row.f_devices_num === null ? 0 : row.f_devices_num}}</nobr>
66
+ </td>
67
+ <td style="text-align: center;">
68
+ <nobr>{{row.f_fire_num === null ? "未点火" : "已点火"}}</nobr>
69
+ </td>
70
+ <td style="text-align: center;">
71
+ <nobr>
72
+ <button
73
+ type="button" name="button" class="btn btn-link"
74
+ :disabled="row.f_cumulative_payment_money < $parent.$parent.selectdata.f_price && selectdata.f_apply_type !== '开发商集体报建'"
75
+ @click="$parent.$parent.showUserFileModal(row)">
76
+ {{$parent.$parent.mark === 1 ? '查看' : row.f_devices_num > 0 ? '修正' : '添加'}}
77
+ </button>
78
+ <button
79
+ type="button" name="button" class="btn btn-link"
80
+ @click="$parent.$parent.showFire(row)">
81
+ 点火信息
82
+ </button>
83
+ </nobr>
84
+ </td>
85
+ </tr>
86
+ </template>
87
+ </data-grid>
88
+ </div>
89
+ <modal v-if="showFile" :show.sync="showFile" v-ref:modal :backdrop="false" title="选择文件">
90
+ <header slot="modal-header" class="modal-header">
91
+ <button type="button" class="close" @click="closeFile"><span>&times;</span></button>
92
+ <h4 class="modal-title">选择文件</h4>
93
+ </header>
94
+ <article slot="modal-body" class="modal-body">
95
+ <div class="form-group">
96
+ <file-upload class="my-file-uploader" name="useraddressUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
97
+ </div>
98
+ </article>
99
+ <footer slot="modal-footer" class="modal-footer"></footer>
100
+ </modal>
101
+
102
+ <validator name="v">
103
+ <modal v-if="showUserFile" :show.sync="showUserFile" v-ref:modal :large="true" :backdrop="false" title="设备明细">
104
+ <header slot="modal-header" class="modal-header">
105
+ <button type="button" class="close" @click="closeUserFile"><span>&times;</span></button>
106
+ <h4 class="modal-title">设备明细</h4>
107
+ </header>
108
+ <article slot="modal-body" class="modal-body clearfix">
109
+ <div class="form-group col-sm-12">
110
+ <label class="col-sm-2 control-label">地址信息:</label>
111
+ <div class="col-sm-10">
112
+ <input class="form-control input_view" style=""
113
+ v-model="useradders.f_address"
114
+ :value="useradders.f_address"
115
+ :readonly="true"/>
116
+ </div>
117
+ </div>
118
+
119
+ <div v-for="(i, item) in userinfo.devices" class="form-group col-sm-12 panel panel-info">
120
+ <div class="panel-heading head col-sm-12" style="background-color: #e8f4ff;margin-bottom: 10px">
121
+ <div class="col-sm-6 text-left" style="background-color: #e8f4ff;margin-bottom: 10px">设备{{$index+1}}信息</div>
122
+ <div class="col-sm-6 text-right"><button
123
+ class="button_delete button_spacing"
124
+ v-if="!item.f_userfiles_id"
125
+ @click.prevent="deleteUserFile(i)"
126
+ >删除</button></div>
127
+ </div>
128
+
129
+ <div class="form-group col-sm-6">
130
+ <label class="col-sm-4 control-label">设备类型:</label>
131
+ <div class="col-sm-8">
132
+ <input-select
133
+ class="select select_list"
134
+ :value.sync="item.f_devices_type"
135
+ v-model="item.f_devices_type"
136
+ :options="devicestype"
137
+ :disable="mark === 1"
138
+ :valueSingle="true"></input-select>
139
+ </div>
140
+ </div>
141
+ <!-- <div class="form-group col-sm-6">
142
+ <label class="col-sm-4 control-label">设备编号:</label>
143
+ <div class="col-sm-8">
144
+ <input class="form-control input_view" style=""
145
+ placeholder="设备编号"
146
+ v-model="item.f_devices_no"
147
+ :value="item.f_devices_no"
148
+ :readonly="mark === 1"/>
149
+ </div>
150
+ </div>-->
151
+ <div class="form-group col-sm-6">
152
+ <label class="col-sm-4 control-label">设备品牌:</label>
153
+ <div class="col-sm-8">
154
+ <input class="form-control input_view" style=""
155
+ placeholder="设备品牌"
156
+ v-model="item.f_brand"
157
+ :value="item.f_brand"
158
+ :readonly="mark === 1"/>
159
+ </div>
160
+ </div>
161
+ <div class="form-group col-sm-6">
162
+ <label class="col-sm-4 control-label">设备型号:</label>
163
+ <div class="col-sm-8">
164
+ <input class="form-control input_view" style=""
165
+ placeholder="设备型号"
166
+ v-model="item.f_devices_model"
167
+ :value="item.f_devices_model"
168
+ :readonly="mark === 1"/>
169
+ </div>
170
+ </div>
171
+ <div class="form-group col-sm-6">
172
+ <label class="col-sm-4 control-label">安装人:</label>
173
+ <div class="col-sm-8">
174
+ <input class="form-control input_view" style=""
175
+ placeholder="安装人"
176
+ v-model="item.f_input_person"
177
+ :value="item.f_input_person"
178
+ :readonly="mark === 1"/>
179
+ </div>
180
+ </div>
181
+ <div class="form-group col-sm-6">
182
+ <label class="col-sm-4 control-label">安装日期:</label>
183
+ <div class="col-sm-8">
184
+ <datepicker
185
+ placeholder="安装日期"
186
+ :value.sync="item.f_input_date"
187
+ v-model="item.f_input_date"
188
+ format="yyyy-MM-dd HH:mm:ss"
189
+ :disabled="mark === 1"
190
+ :show-reset-button="reset">
191
+ </datepicker>
192
+ </div>
193
+ </div>
194
+ <div class="form-group col-sm-6">
195
+ <label class="col-sm-4 control-label">生产日期:</label>
196
+ <div class="col-sm-8">
197
+ <datepicker
198
+ placeholder="生产日期"
199
+ :value.sync="item.f_make_date"
200
+ v-model="item.f_make_date"
201
+ format="yyyy-MM-dd HH:mm:ss"
202
+ :disabled="mark === 1"
203
+ :show-reset-button="reset">
204
+ </datepicker>
205
+ </div>
206
+ </div>
207
+ <div class="form-group col-sm-6">
208
+ <label class="col-sm-4 control-label">使用年限:</label>
209
+ <div class="col-sm-8">
210
+ <input class="form-control input_view" style=""
211
+ type="number"
212
+ placeholder="使用年限"
213
+ v-model="item.f_service_life"
214
+ @change="outdate(item,i)"
215
+ :value="item.f_service_life"
216
+ :readonly="mark === 1"/>
217
+ </div>
218
+ </div>
219
+ <div class="form-group col-sm-6">
220
+ <label class="col-sm-4 control-label">到期日期:</label>
221
+ <div class="col-sm-8">
222
+ <datepicker
223
+ placeholder="到期日期"
224
+ :value.sync="item.f_expire_date"
225
+ v-model="item.f_expire_date"
226
+ format="yyyy-MM-dd HH:mm:ss"
227
+ :disabled="mark === 1"
228
+ :show-reset-button="reset">
229
+ </datepicker>
230
+ </div>
231
+ </div>
232
+ <div class="form-group col-sm-6">
233
+ <label class="col-sm-4 control-label">设备数量:</label>
234
+ <div class="col-sm-8">
235
+ <input class="form-control input_view" style=""
236
+ type="number"
237
+ v-model="item.f_devices_num"
238
+ :value="item.f_devices_num"
239
+ placeholder="设备数量"
240
+ :readonly="mark === 1"/>
241
+ </div>
242
+ </div>
243
+ <div class="form-group col-sm-6">
244
+ <label class="col-sm-4 control-label">设备状态:</label>
245
+ <div class="col-sm-8">
246
+ <input-select
247
+ class="select select_list"
248
+ :value.sync="item.f_userinfodevices_state"
249
+ v-model="item.f_userinfodevices_state"
250
+ :options="aroundmeters"
251
+ :disable="mark === 1"
252
+ :valueSingle="true"></input-select>
253
+ </div>
254
+ </div>
255
+ <div class="form-group col-sm-6">
256
+ <label class="col-sm-4 control-label">购买方式:</label>
257
+ <div class="col-sm-8">
258
+ <input-select
259
+ class="select select_list"
260
+ :value.sync="item.watchpurchase"
261
+ v-model="item.watchpurchase"
262
+ :options="positions"
263
+ :disable="mark === 1"
264
+ :valueSingle="true"></input-select>
265
+ </div>
266
+ </div>
267
+ <div class="form-group col-sm-6">
268
+ <label class="col-sm-4 control-label">安装方式:</label>
269
+ <div class="col-sm-8">
270
+ <input-select
271
+ class="select select_list"
272
+ :value.sync="item.f_install_type"
273
+ v-model="item.f_install_type"
274
+ :options="installstyle"
275
+ :disable="mark === 1"
276
+ :valueSingle="true"></input-select>
277
+ </div>
278
+ </div>
279
+ <div class="form-group col-sm-6">
280
+ <label class="col-sm-4 control-label">备注:</label>
281
+ <div class="col-sm-8">
282
+ <input class="form-control input_view" style=""
283
+ placeholder="备注"
284
+ v-model="item.f_comments"
285
+ :value="item.f_comments"
286
+ :readonly="mark === 1"/>
287
+ </div>
288
+ </div>
289
+
290
+
291
+
292
+ </div>
293
+
294
+ <div v-for="(i, item) in userinfo.devices" class="form-group col-sm-12 panel panel-info">
295
+ <div class="panel-heading head" style="background-color: #e8f4ff;margin-bottom: 10px">连接管{{$index+1}}信息</div>
296
+ <div class="form-group col-sm-6">
297
+ <label class="col-sm-4 control-label">管道类型:</label>
298
+ <div class="col-sm-8">
299
+ <input-select
300
+ class="select select_list"
301
+ :value.sync="item.f_pipe_type"
302
+ v-model="item.f_pipe_type"
303
+ :options="pipingtype"
304
+ :disable="mark === 1"
305
+ :valueSingle="true"></input-select>
306
+ </div>
307
+ </div>
308
+ <div class="form-group col-sm-6">
309
+ <label class="col-sm-4 control-label">安装日期:</label>
310
+ <div class="col-sm-8">
311
+ <datepicker
312
+ placeholder="连接管安装日期"
313
+ :value.sync="item.f_pipeinstall_date"
314
+ v-model="item.f_pipeinstall_date"
315
+ format="yyyy-MM-dd HH:mm:ss"
316
+ :disabled="mark === 1"
317
+ :show-reset-button="reset">
318
+ </datepicker>
319
+ </div>
320
+ </div>
321
+ <div class="form-group col-sm-6">
322
+ <label class="col-sm-4 control-label">到期日期:</label>
323
+ <div class="col-sm-8">
324
+ <datepicker
325
+ placeholder="连接管到期日期"
326
+ :value.sync="item.f_pipeexpire_date"
327
+ v-model="item.f_pipeexpire_date"
328
+ format="yyyy-MM-dd HH:mm:ss"
329
+ :disabled="mark === 1"
330
+ :show-reset-button="reset">
331
+ </datepicker>
332
+ </div>
333
+ </div>
334
+
335
+ </div>
336
+
337
+ </article>
338
+ <footer slot="modal-footer" class="modal-footer">
339
+ <!-- 去除一户多表 -->
340
+ <button type="button" class="btn btn-primary" @click="addUserFile">添加设备</button>
341
+ <button type="button" class="btn btn-primary" @click="saveUserFile" :disabled="!$v.valid">确认</button>
342
+ </footer>
343
+ </modal>
344
+ <modal :show.sync="showFilePage" width="80%" title="点火基本信息" v-ref:modal large backdrop="false">
345
+ <article slot="modal-body" class="modal-body" style="height: auto">
346
+ <div class="flex-row flex-deviceinfo">
347
+
348
+ <div class="panel panel-primary col-sm-12 datapanel" v-if="selectdata.f_apply_type[0]!='工商户报建'">
349
+ <!-- <avatar-upload :img-src.sync="row.img.content" :filename.sync="row.img.filename"></avatar-upload>-->
350
+ <form class="form-horizontal select-overspread " style="flex: 1;">
351
+ <div style="margin-top: 2%">
352
+ <img style="margin-top: -2px;margin-left: 2px" src="../../../static/images/lefticon/矩形1183.png">
353
+ <a style="font-size: 16px;font-weight: 500;">民用点火信息</a>&nbsp;<a style="color: #999999;text-decoration: none"></a>
354
+ </div>
355
+ <div class="row auto" style="margin-top: 10px;margin-left: 10px;">
356
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
357
+ <label class="font_normal_body">&emsp;&emsp;&emsp;镀锌管&nbsp;&nbsp;&nbsp;</label>
358
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_galvanize_pipe"
359
+ placeholder='镀锌管' >
360
+ </div>
361
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
362
+ <label class="font_normal_body">&emsp;&emsp;&emsp;三&emsp;通&emsp;</label>
363
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_tee"
364
+ placeholder='三通' >
365
+ </div>
366
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
367
+ <label class="font_normal_body">&emsp;&emsp;&emsp;对&emsp;丝&emsp;</label>
368
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_nipple"
369
+ placeholder='对丝' >
370
+ </div>
371
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
372
+ <label class="font_normal_body">&emsp;&emsp;&emsp;弯&emsp;头&emsp;</label>
373
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_elbow"
374
+ placeholder='弯头' >
375
+ </div>
376
+ </div>
377
+ <div class="row auto" style="margin-left: 10px;">
378
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
379
+ <label class="font_normal_body">&emsp;&emsp;&emsp;管&emsp;卡&emsp;</label>
380
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_pipe_strap"
381
+ placeholder='管卡' >
382
+ </div>
383
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
384
+ <label class="font_normal_body">&emsp;&emsp;&emsp;灶前阀&emsp;</label>
385
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_zqf"
386
+ placeholder='灶前阀' >
387
+ </div>
388
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
389
+ <label class="font_normal_body">&emsp;&emsp;&emsp;胶&emsp;管&emsp;</label>
390
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_sebific_duct"
391
+ placeholder='胶管' >
392
+ </div>
393
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
394
+ <label class="font_normal_body">&emsp;&emsp;&emsp;自闭阀&emsp;</label>
395
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_zbf"
396
+ placeholder='自闭阀' >
397
+ </div>
398
+ </div>
399
+ <div class="row auto" style="margin-left: 10px;">
400
+
401
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
402
+ <label class="font_normal_body">&emsp;&emsp;&emsp;燃气具&emsp;</label>
403
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_gas_appliance"
404
+ placeholder='燃气具' >
405
+ </div>
406
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
407
+ <label class="font_normal_body">&emsp;&emsp;&emsp;热水器&emsp;</label>
408
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_geyser"
409
+ placeholder='热水器' >
410
+ </div>
411
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
412
+ <label class="font_normal_body">&emsp;&emsp;&emsp;壁挂锅炉</label>
413
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_bgl"
414
+ placeholder='壁挂锅炉' >
415
+ </div>
416
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
417
+ <label class="font_normal_body">&emsp;&emsp;&emsp;型&emsp;号&emsp;</label>
418
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_bgl_style"
419
+ placeholder='壁挂锅炉型号' >
420
+ </div>
421
+ </div>
422
+ <div class="row auto" style="margin-left: 10px;">
423
+ <div class="col-sm-3 form-group" >
424
+ <label class="font_normal_body">&emsp;&emsp;&emsp;交付日期</label>
425
+ <datepicker placeholder="交付日期" style="width: 57%"
426
+ v-model="fireinfo.f_deliver_date"
427
+ :value.sync="fireinfo.f_deliver_date"
428
+ :format="'yyyy-MM-dd HH:mm:ss'">
429
+ </datepicker>
430
+ </div>
431
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
432
+ <label class="font_normal_body">&emsp;&emsp;&emsp;点火人员</label>
433
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_lgniter"
434
+ placeholder='点火人员' >
435
+ </div>
436
+ <div class="col-sm-12 form-group" >
437
+ <label class="font_normal_body">&emsp;&emsp;&emsp;检验结论</label>
438
+ <input type="text" class="input_search" style="width:80%" v-model="fireinfo.f_fic"
439
+ placeholder='设施检验结论' >
440
+ </div>
441
+ <div class="col-sm-12 form-group" >
442
+ <label class="font_normal_body">&emsp;&emsp;&emsp;备&emsp;&emsp;注</label>
443
+ <input type="text" class="input_search" style="width:80%" v-model="fireinfo.f_comments"
444
+ placeholder='备注' >
445
+ </div>
446
+ </div>
447
+ </form>
448
+ </div>
449
+ <div class="panel panel-primary col-sm-12 datapanel" v-if="selectdata.f_apply_type[0]=='工商户报建'">
450
+ <!-- <avatar-upload :img-src.sync="row.img.content" :filename.sync="row.img.filename"></avatar-upload>-->
451
+ <form class="form-horizontal select-overspread " style="flex: 1;">
452
+ <div style="margin-top: 2%">
453
+ <img style="margin-top: -2px;margin-left: 2px" src="../../../static/images/lefticon/矩形1183.png">
454
+ <a style="font-size: 16px;font-weight: 500;">非民用点火基本信息</a>&nbsp;<a style="color: #999999;text-decoration: none"></a>
455
+ </div>
456
+ <div class="row auto" style="margin-top: 10px;margin-left: 10px;">
457
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
458
+ <label class="font_normal_body">&emsp;&emsp;探测器数量</label>
459
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_detector_number"
460
+ placeholder='探测器数量' >
461
+ </div>
462
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
463
+ <label class="font_normal_body">&emsp;&emsp;气表品牌</label>
464
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_fire_gasbrand"
465
+ placeholder='气表品牌' >
466
+ </div>
467
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
468
+ <label class="font_normal_body">&emsp;控制器品牌</label>
469
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_control_brand"
470
+ placeholder='控制器品牌' >
471
+ </div>
472
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
473
+ <label class="font_normal_body">&emsp;控制器型号</label>
474
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_control_model"
475
+ placeholder='控制器型号' >
476
+ </div>
477
+ </div>
478
+ <div class="row auto" style="margin-top: 10px;margin-left: 10px;">
479
+
480
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
481
+ <label class="font_normal_body">控制器出厂日期</label>
482
+ <datepicker placeholder="控制器出厂日期" style="width: 60%"
483
+ v-model="fireinfo.f_control_date"
484
+ :value.sync="fireinfo.f_control_date"
485
+ :format="'yyyy-MM-dd HH:mm:ss'">
486
+ </datepicker>
487
+ </div>
488
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
489
+ <label class="font_normal_body">控制器表编码</label>
490
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_control_code"
491
+ placeholder='控制器表编码' >
492
+ </div>
493
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
494
+ <label class="font_normal_body">控制器表封号</label>
495
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_control_number"
496
+ placeholder='控制器表封号' >
497
+ </div>
498
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
499
+ <label class="font_normal_body">&emsp;燃气具类型</label>
500
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_appliance_type"
501
+ placeholder='燃气具类型' >
502
+ </div>
503
+ </div>
504
+ <div class="row auto" style="margin-top: 10px;margin-left: 10px;">
505
+
506
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
507
+ <label class="font_normal_body">&emsp;&emsp;燃气具品牌</label>
508
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_appliance_brand"
509
+ placeholder='燃气具品牌' >
510
+ </div>
511
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
512
+ <label class="font_normal_body">&emsp;燃气具型号</label>
513
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_appliance_model"
514
+ placeholder='燃气具型号' >
515
+ </div>
516
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
517
+ <label class="font_normal_body">&emsp;报警箱信息</label>
518
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_alarm_info"
519
+ placeholder='报警控制箱信息' >
520
+ </div>
521
+ <div class="col-sm-3 form-group" >
522
+ <label class="font_normal_body">&emsp;&emsp;交付日期</label>
523
+ <datepicker placeholder="交付日期" style="width: 60%"
524
+ v-model="fireinfo.f_deliver_date"
525
+ :value.sync="fireinfo.f_deliver_date"
526
+ :format="'yyyy-MM-dd HH:mm:ss'">
527
+ </datepicker>
528
+ </div>
529
+ </div>
530
+ <div class="row auto" style="margin-top: 10px;margin-left: 10px;">
531
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
532
+ <label class="font_normal_body">&emsp;&emsp;&emsp;通讯方式</label>
533
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_contact_method"
534
+ placeholder='通讯方式' >
535
+ </div>
536
+ <div class="col-sm-3 form-group" style="padding-right: 5px;">
537
+ <label class="font_normal_body">&emsp;&emsp;点火人员</label>
538
+ <input type="text" class="input_search" style="width:60%" v-model="fireinfo.f_lgniter"
539
+ placeholder='点火人员' >
540
+ </div>
541
+ <div class="col-sm-12 form-group" >
542
+ <label class="font_normal_body">&emsp;&emsp;&emsp;检验结论</label>
543
+ <input type="text" class="input_search" style="width:90%" v-model="fireinfo.f_fic"
544
+ placeholder='设施检验结论' >
545
+ </div>
546
+ <div class="col-sm-12 form-group" >
547
+ <label class="font_normal_body">&emsp;&emsp;&emsp;备&emsp;&emsp;注</label>
548
+ <input type="text" class="input_search" style="width:80%" v-model="fireinfo.f_comments"
549
+ placeholder='备注' >
550
+ </div>
551
+ </div>
552
+ </form>
553
+ </div>
554
+ </div>
555
+
556
+ </article>
557
+
558
+ <footer slot="modal-footer" class="modal-footer">
559
+ <button type="button" class="btn btn-default" @click='cancel()'>取消</button>
560
+ <button type="button" class="btn btn-success" @click='confirm()'>确定</button>
561
+ </footer>
562
+ </modal>
563
+ <!-- <apply-file-user-fire-info v-if="showFilePage" :fireinfo="fireinfo" :showFilePage="showFilePage"></apply-file-user-fire-info>-->
564
+ </validator>
565
+ </template>
566
+ <script>
567
+ import Vue from 'vue'
568
+ import {HttpResetClass} from 'vue-client'
569
+
570
+ export default {
571
+ title: '设备信息',
572
+ props: {
573
+ selectdata: {
574
+ type: Object
575
+ },
576
+ mark: {
577
+ type: Number,
578
+ default: 0
579
+ }
580
+ },
581
+ data () {
582
+ return {
583
+ showFile: false,
584
+ showUserFile: false,
585
+ model: {
586
+ data: null
587
+ },
588
+ meterbrands: [], // 气表品牌
589
+ useradders: null,
590
+ userinfo: {},
591
+ getfield: {
592
+ 'f_address': '地址',
593
+ 'f_meternumber': '表号',
594
+ 'f_gasbrand': '气表品牌',
595
+ 'f_gasmodel': '气表型号',
596
+ 'f_metertitles': '表封号',
597
+ 'f_meter_base': '表读数',
598
+ 'f_initial_base': '初始底数',
599
+ 'f_aroundmeter': '表向',
600
+ 'f_position': '安装位置',
601
+ 'f_install_person': '安装人',
602
+ 'f_install_date': '安装日期'
603
+ },
604
+ showFilePage: false,
605
+ fireinfo: {},
606
+ firestate: [{label:"全部",value:'0'},{label:"未点火",value:'is null'},{label:"已点火",value:'is not null'}],
607
+ query: {},//查询数据
608
+ condition: "1 = 1"
609
+ }
610
+ },
611
+ ready () {
612
+ this.search()
613
+ },
614
+ methods: {
615
+ // 删除未保存的表具
616
+ async deleteUserFile (index) {
617
+ this.userinfo.devices.splice(index, 1)
618
+ },
619
+ // 追加表具
620
+ addUserFile() {
621
+ this.userinfo.devices.push({})
622
+ console.log("数据:" + JSON.stringify(this.userinfo))
623
+ },
624
+ // 保存档案
625
+ async saveUserFile() {
626
+ let data = {
627
+ user: Vue.user,
628
+ useradders: this.useradders,
629
+ userinfo: this.userinfo,
630
+ selectdata: this.selectdata
631
+ }
632
+ if (data.userinfo.devices.length > 0){
633
+ let a = data.userinfo.devices.length
634
+ for (let i = 0; i<a;i++){
635
+ data.userinfo.devices[i].f_state = '有效'
636
+ }
637
+ }
638
+ let res = await this.$resetpost(this.$androidUtil.getProxyUrl() +'/rs/logic/addInstallationDetailsDevices', {data:data}, {
639
+ resolveMsg: null,
640
+ rejectMsg: '设备添加失败!!!'
641
+ })
642
+ this.showUserFile = false
643
+ this.search()
644
+ },
645
+ // 打开设备明细
646
+ async showUserFileModal (row) {
647
+ this.useradders = row
648
+
649
+ let http = new HttpResetClass()
650
+ let data = {
651
+ condition: `f_userinfo_id = '${row.f_userinfo_id}'`
652
+ }
653
+ let res = await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/logic/getUserinfoAndUserfilesDevices', {data:data}, {
654
+ resolveMsg: null,
655
+ rejectMsg: null
656
+ })
657
+
658
+ this.userinfo = res.data
659
+ console.log("获取到的表具信息:" + JSON.stringify(res.data))
660
+ if (res.data.devices.length <= 0) {
661
+ this.userinfo.devices = [
662
+ {
663
+
664
+ }
665
+ ]
666
+ }
667
+
668
+ this.showUserFile = true
669
+ },
670
+ // 打开点火信息
671
+ async showFire(row) {
672
+ if (Vue.user.f_role_name.includes("报装点火权限")) {
673
+ let http = new HttpResetClass()
674
+ let data = {
675
+ condition: `f_userinfo_id = '${row.f_userinfo_id}'`
676
+ }
677
+ let res = await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/logic/getUserinfoAndUserfilesDevices', {data:data}, {
678
+ resolveMsg: null,
679
+ rejectMsg: null
680
+ })
681
+
682
+ this.userinfo = res.data
683
+ console.log("获取到的表具信息:" + JSON.stringify(res.data))
684
+ if (res.data.fireinfo.length <= 0) {
685
+ this.userinfo.fireinfo = [
686
+ {
687
+
688
+ }
689
+ ]
690
+ this.fireinfo = {}
691
+ this.fireinfo.f_lgniter = Vue.user.name
692
+ }else {
693
+ this.fireinfo = this.userinfo.fireinfo[0]
694
+ }
695
+ this.showFilePage = true
696
+ }else {
697
+ this.$showMessage("您没有操作权限!")
698
+ }
699
+ },
700
+ conditionData() {
701
+ if (this.query.f_state == '0') {
702
+ this.condition = "1 = 1"
703
+ }else if (this.query.f_state == 'is null' || this.query.f_state == 'is not null') {
704
+ this.condition = "fi.f_fire_num " + this.query.f_state
705
+ }else {
706
+ this.condition = "1 = 1"
707
+ }
708
+ },
709
+ // 查询
710
+ async search (num) {
711
+ if (num == 0) {
712
+ this.conditionData()
713
+ }
714
+ let http = new HttpResetClass()
715
+ let data = {
716
+ condition: this.condition,
717
+ f_process_id: this.selectdata.f_process_id
718
+ }
719
+ let res = await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/sql/getAddresAndUserinfoAndUserfilesAmountDevices', {data:data}, {
720
+ resolveMsg: null,
721
+ rejectMsg: null
722
+ })
723
+ this.model.data = res.data
724
+ if (this.selectdata.f_apply_type === '开发商集体报建' || this.selectdata.f_apply_type === '散户集体报建') {
725
+ let f_installed_households = 0
726
+ for (const item of res.data) {
727
+ if (item.f_userfiles_num > 0) {
728
+ f_installed_households++
729
+ }
730
+ }
731
+ let f_uninstalled_households = this.selectdata.f_apply_count - f_installed_households
732
+ for (const item of this.selectdata.fields) {
733
+ if (item.label === '已安装户数') {
734
+ item.value = f_installed_households
735
+ }
736
+ if (item.label === '未安装户数') {
737
+ item.value = f_uninstalled_households
738
+ }
739
+ }
740
+ }
741
+ },
742
+ // 关闭安装明细
743
+ closeUserFile() {
744
+ this.showUserFile = false
745
+ this.useradders = null
746
+ this.userinfo = {}
747
+ this.search()
748
+ },
749
+ // 关闭文件上传对话框
750
+ closeFile() {
751
+ this.showFile = false
752
+ // 将选的文件清空
753
+ this.$refs.file.$el.querySelector('input').value = ''
754
+ this.search()
755
+ },
756
+ async confirm () {
757
+ console.log('传入数据:')
758
+ // 添加组织信息
759
+ this.fireinfo.f_user_id = this.userinfo.userfiles[0].f_user_id
760
+ this.fireinfo.f_userfiles_id = this.userinfo.userfiles[0].f_userfiles_id
761
+ this.fireinfo.f_operatorid = Vue.user.id
762
+ this.fireinfo.f_operator = Vue.user.name
763
+ this.fireinfo.f_state = "有效"
764
+
765
+ let http = new HttpResetClass()
766
+ let data = {
767
+ fireinfo: this.fireinfo
768
+ }
769
+ let res = await http.load('POST', this.$androidUtil.getProxyUrl() +'/rs/entity/t_userfire', this.fireinfo, {
770
+ resolveMsg: "添加成功",
771
+ rejectMsg: "添加失败"
772
+ }).then((res) => {
773
+ this.cancel()
774
+ })
775
+ },
776
+ cancel () {
777
+ this.showFilePage = false
778
+ },
779
+ async clear() {
780
+ this.query = {}
781
+ this.condition = "1 = 1"
782
+ },
783
+ outdate(item,index){
784
+ console.log("数据",item)
785
+ if (item.f_make_date){
786
+ let t = new Date(item.f_make_date);//你已知的时间
787
+ let Y = t.getFullYear()+parseInt(item.f_service_life)+ '-'
788
+ let M = (t.getMonth()+1 < 10 ? '0'+(t.getMonth()+1):t.getMonth()+1) + '-'
789
+ let D = (t.getDate()< 10 ? '0'+t.getDate():t.getDate())+ ' '
790
+ let h = (t.getHours() < 10 ? '0'+t.getHours():t.getHours())+ ':'
791
+ let m = (t.getMinutes() < 10 ? '0'+t.getMinutes():t.getMinutes())+ ':'
792
+ let s = t.getSeconds() < 10 ? '0'+t.getSeconds():t.getSeconds()
793
+ this.$set('userinfo.devices['+index+'].f_expire_date',Y+M+D+h+m+s)
794
+ }
795
+
796
+ }
797
+ },
798
+ events: {
799
+ async 'onFileUpload'(file, result) {
800
+ let data = {
801
+ selectdata: this.selectdata,
802
+ filepath: result.f_downloadpath,
803
+ user: Vue.user
804
+ }
805
+ let res = await this.$resetpost(this.$androidUtil.getProxyUrl() +`/rs/logic/importAddInstallationDetails`, {data:data}, {resolveMsg: null, rejectMsg: '导入失败!!!', silent: true}, 0)
806
+
807
+ this.$dispatch('breakControl', this.selectdata)
808
+ }
809
+ },
810
+ computed: {
811
+ getCondition () {
812
+ let data = {
813
+ f_process_id: this.selectdata.f_process_id
814
+ }
815
+ return data
816
+ },
817
+ // 安装人
818
+ installperson() {
819
+ return Vue.user.f_installman.map(item => {
820
+ return {
821
+ label: item.name,
822
+ value: item.name
823
+ }
824
+ })
825
+ },
826
+ // 表向
827
+ aroundmeters() {
828
+ return this.$appdata.getParam('用户设备状态')
829
+ },
830
+ // 安装位置
831
+ positions() {
832
+ return this.$appdata.getParam('购买方式')
833
+ },
834
+ // 安装方式
835
+ installstyle() {
836
+ return this.$appdata.getParam('安装方式')
837
+ },
838
+ // 设备类型
839
+ devicestype() {
840
+ return this.$appdata.getParam('设备类型')
841
+ },
842
+ // 管道类型
843
+ pipingtype() {
844
+ return this.$appdata.getParam('管道类型')
845
+ }
846
+ },
847
+ watch: {
848
+ }
849
+ }
850
+ </script>
851
+ <style scoped>
852
+ .head-but{
853
+ margin-left: 5px;
854
+ height: 34px;
855
+ /*background-color: #6aa6e2;*/
856
+ border-radius: 4px;
857
+ font-family: PingFang;
858
+ color: #ffffff;
859
+ }
860
+ /*清除model中的浮动*/
861
+ .clearfix:after,.clearfix:before{
862
+ display: table;
863
+ }
864
+ .clearfix:after{
865
+ clear: both;
866
+ }
867
+ </style>