safecheck-client 3.0.30-58 → 3.0.30-59
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/filiale/hanzhong/pc/NewCheckpaper.vue +1923 -1923
- package/src/filiale/hanzhong/pc.js +46 -46
- package/src/filiale/tongchuan/pc/PaperDefectMain.vue +1091 -1091
- package/src/filiale/wensu/android/AndroidDefectDeal.vue +464 -464
- package/src/filiale/wensu/android/AndroidDefectDealItems.vue +480 -480
- package/src/filiale/wensu/android.js +16 -16
- package/src/filiale/wensu/pc/checkUserList.vue +646 -646
- package/src/filiale/yongzhou/pc/communityTypeDetailG.vue +207 -207
- package/src/filiale/yongzhou/pc/communityTypeDetailM.vue +207 -207
- package/src/filiale/yongzhou/pc/safeDetail.vue +248 -248
- package/src/filiale/yongzhou/pc/safeStatistics.vue +124 -124
- package/src/filiale/yongzhou/pc/safeStatisticsDay.vue +455 -455
- package/src/filiale/yongzhou/pc/safeStatisticsMonth.vue +267 -267
- package/src/filiale/yongzhou/pc/safeStatisticsYear.vue +110 -110
- package/src/main.js +33 -33
@@ -1,464 +1,464 @@
|
|
1
|
-
<style scoped>
|
2
|
-
.bg {
|
3
|
-
background-color: blue;
|
4
|
-
height: 1px;
|
5
|
-
border: 0;
|
6
|
-
}
|
7
|
-
.app-row {
|
8
|
-
background-color: white;
|
9
|
-
padding: 10px 10px 0 10px;
|
10
|
-
border-bottom: 1px solid rgba(235, 235, 235, 0.5);
|
11
|
-
}
|
12
|
-
.search_input {
|
13
|
-
border: 0;
|
14
|
-
outline: none;
|
15
|
-
}
|
16
|
-
.font{
|
17
|
-
font: 15px PingFang-SC-Medium;
|
18
|
-
color: #666666;
|
19
|
-
}
|
20
|
-
.input-font{
|
21
|
-
font: 15px PingFang-SC-Medium;
|
22
|
-
color: #333333;
|
23
|
-
}
|
24
|
-
.btn-font{
|
25
|
-
font:600 16px PingFang-SC-Bold;
|
26
|
-
color: #499EDF;
|
27
|
-
}
|
28
|
-
.btn-color{
|
29
|
-
background-color: #FFFFFF;
|
30
|
-
border-radius: 10px ;
|
31
|
-
border: 1px solid #499EDF;
|
32
|
-
}
|
33
|
-
.app-text {
|
34
|
-
font-size: 12px;
|
35
|
-
}
|
36
|
-
.panel-self{
|
37
|
-
border-radius: 10px;
|
38
|
-
border:1px solid #499EDF;
|
39
|
-
background-color: #F8F8F8;
|
40
|
-
}
|
41
|
-
.yybtn-color{
|
42
|
-
background-color:#499edf;
|
43
|
-
border-radius: 4px ;
|
44
|
-
border: 1px solid #499EDF;
|
45
|
-
color: #FFFFFF;
|
46
|
-
font: 14px PingFang-SC-Bold;
|
47
|
-
}
|
48
|
-
.qxbtn-color{
|
49
|
-
background-color: #FFFFFF;
|
50
|
-
border-radius: 4px ;
|
51
|
-
color: #499edf;
|
52
|
-
font: 14px PingFang-SC-Bold;
|
53
|
-
border: 1px solid #499EDF;
|
54
|
-
}
|
55
|
-
|
56
|
-
.button_shrink_top {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_top.png")}
|
57
|
-
.button_shrink_bottom {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_bottom.png")}
|
58
|
-
.button_shrink_left {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_left.png")}
|
59
|
-
.button_shrink_right {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_right.png")}
|
60
|
-
</style>
|
61
|
-
<template>
|
62
|
-
<div style="height: auto;width: 100%">
|
63
|
-
<work-busy :is-busy="workBusy"></work-busy>
|
64
|
-
<criteria-paged :model="model" v-ref:paged>
|
65
|
-
<criteria partial='criteria' @condition-changed='search' v-ref:cri>
|
66
|
-
<div partial>
|
67
|
-
<form>
|
68
|
-
<div class="row app-row">
|
69
|
-
<div class="col-xs-4">
|
70
|
-
<img src="../../../assets/用户姓名.png" style="width: 20px;margin-bottom: 5px" alt="">
|
71
|
-
<label class="font text-left">用户姓名:</label>
|
72
|
-
</div>
|
73
|
-
<div class="col-xs-8" >
|
74
|
-
<input class="search_input input-font" v-model=model.f_user_name></input>
|
75
|
-
</div>
|
76
|
-
</div>
|
77
|
-
<div class="row app-row">
|
78
|
-
<div class="col-xs-4">
|
79
|
-
<img src="../../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
|
80
|
-
<label for="f_userinfo_code" class="font text-left">用户编号:</label>
|
81
|
-
</div>
|
82
|
-
<div class="col-xs-8" >
|
83
|
-
<input id="f_userinfo_code" class="search_input input-font"
|
84
|
-
v-model=model.f_userinfo_code></input>
|
85
|
-
</div>
|
86
|
-
</div>
|
87
|
-
<div class="row app-row">
|
88
|
-
<div class="col-xs-4">
|
89
|
-
<img src="../../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
|
90
|
-
<label for="f_meternumber" class="font text-left">用户表号:</label>
|
91
|
-
</div>
|
92
|
-
<div class="col-xs-8" >
|
93
|
-
<input id="f_meternumber" class="search_input input-font"
|
94
|
-
v-model=model.f_meternumber></input>
|
95
|
-
</div>
|
96
|
-
</div>
|
97
|
-
<div class="row app-row">
|
98
|
-
<div class="col-xs-4">
|
99
|
-
<img src="../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
|
100
|
-
<label class="font text-left">用户地址:</label>
|
101
|
-
</div>
|
102
|
-
<div class="col-xs-8">
|
103
|
-
<input class="search_input input-font"
|
104
|
-
v-model=model.f_address></input>
|
105
|
-
</div>
|
106
|
-
</div>
|
107
|
-
<div class="row app-row">
|
108
|
-
<div class="col-xs-4">
|
109
|
-
<img src="../../../assets/是否已检.png" style="width: 20px;margin-bottom: 5px" alt="">
|
110
|
-
<label for="f_state" class="font text-left">起始时间:</label>
|
111
|
-
</div>
|
112
|
-
<datepicker id="f_start_date"
|
113
|
-
placeholder= '起始时间'
|
114
|
-
:value.sync="model.f_start_date"
|
115
|
-
:disabled-days-of-Week="[]"
|
116
|
-
v-model="model.f_start_date"
|
117
|
-
class="input-font"
|
118
|
-
:format="'yyyy-MM-dd 00:00:00'"
|
119
|
-
:show-reset-button="reset" readonly="readonly">
|
120
|
-
</datepicker>
|
121
|
-
</div>
|
122
|
-
<div class="row app-row">
|
123
|
-
<div class="col-xs-4">
|
124
|
-
<img src="../../../assets/是否已检.png" style="width: 20px;margin-bottom: 5px" alt="">
|
125
|
-
<label for="f_state" class="font text-left">结束时间:</label>
|
126
|
-
</div>
|
127
|
-
<datepicker id="f_end_date"
|
128
|
-
placeholder= '结束时间'
|
129
|
-
:value.sync="model.f_end_date"
|
130
|
-
:disabled-days-of-Week="[]"
|
131
|
-
v-model="model.f_end_date"
|
132
|
-
class="input-font"
|
133
|
-
:format="'yyyy-MM-dd 23:59:59'"
|
134
|
-
:show-reset-button="reset" readonly="readonly">
|
135
|
-
</datepicker>
|
136
|
-
</div>
|
137
|
-
<div class="row text-center" style="margin-top: 20px;">
|
138
|
-
<button type="button" class="btn btn-lg btn-font btn-color" style="width: 25%;" @click="$parent.$parent.selfSearch">查询</button>
|
139
|
-
<!-- <div style="float: right;margin-right: 3% " class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.hidden()"></div>-->
|
140
|
-
</div>
|
141
|
-
<div style="height:30px;"></div>
|
142
|
-
</form>
|
143
|
-
</div>
|
144
|
-
</criteria>
|
145
|
-
<list :model="model" partial='list'>
|
146
|
-
<div partial>
|
147
|
-
<div class="auto app-text" style="margin-top: 5px;">
|
148
|
-
<div class="panel" style="padding: 10px 10px 5px 10px;">
|
149
|
-
<div class="panel-body panel-self">
|
150
|
-
<div class="col-xs-12">
|
151
|
-
<p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户编号:</b></p>
|
152
|
-
<p class="panel-title col-xs-5 text-left input-font" style="width: 74%">{{ row.f_userinfo_code }}</p>
|
153
|
-
</div>
|
154
|
-
<div class="col-xs-12">
|
155
|
-
<p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户表号:</b></p>
|
156
|
-
<p class="panel-title col-xs-5 text-left input-font" style="width: 74%">{{ row.f_meternumber }}</p>
|
157
|
-
</div>
|
158
|
-
<div class="col-xs-12">
|
159
|
-
<p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户名称:</b></p>
|
160
|
-
<p class="panel-title col-xs-7 text-left input-font" style="width: 79%">{{ row.f_user_name }}</p>
|
161
|
-
</div>
|
162
|
-
<div class="col-xs-12">
|
163
|
-
<p class="panel-title text-left font" style="width: 23%;float: left"><b>用户电话:</b></p>
|
164
|
-
<p class="panel-title text-left input-font" style="width: 77%">{{ row.f_user_phone }}</p>
|
165
|
-
</div>
|
166
|
-
|
167
|
-
<div class="col-xs-12">
|
168
|
-
<p class="panel-title text-left font" style="width: 21%;float: left"><b>用户地址:</b></p>
|
169
|
-
<p class="panel-title text-left input-font" style="width: 79%">{{ row.f_address }}</p>
|
170
|
-
</div>
|
171
|
-
<div class="col-xs-12">
|
172
|
-
<p class="panel-title text-left font" style="width: 21%;float: left"><b>隐患内容:</b></p>
|
173
|
-
<p class="panel-title text-left input-font" style="width: 79%">{{ $parent.$parent.$parent.trouble(row.f_defect_content) }}</p>
|
174
|
-
</div>
|
175
|
-
<div class="col-xs-12">
|
176
|
-
<button type="button" name="button" class="btn btn-primary" style="background-color:#499edf;float: right;margin-right:10px;" @click="$parent.$parent.$parent.openshowModal1(row)">处理</button>
|
177
|
-
</div>
|
178
|
-
</div>
|
179
|
-
</div>
|
180
|
-
</div>
|
181
|
-
</div>
|
182
|
-
</list>
|
183
|
-
</criteria-paged>
|
184
|
-
</div>
|
185
|
-
</template>
|
186
|
-
|
187
|
-
<script>
|
188
|
-
|
189
|
-
import Vue from 'vue'
|
190
|
-
import { PagedList,HttpResetClass } from 'vue-client'
|
191
|
-
import * as Util from '../../Util'
|
192
|
-
|
193
|
-
export default {
|
194
|
-
title: '无计划安检查询',
|
195
|
-
data() {
|
196
|
-
return {
|
197
|
-
showModal:false,
|
198
|
-
showModal1:false,
|
199
|
-
showimg:'',
|
200
|
-
deletecause:'',
|
201
|
-
deletecauseBooble: false,
|
202
|
-
workBusy:false,
|
203
|
-
deal:{
|
204
|
-
result:{},
|
205
|
-
f_deal_path:'',
|
206
|
-
f_deal_remark:'',
|
207
|
-
f_dealsign_path:'', //签名
|
208
|
-
f_dealer:Vue.user.name,
|
209
|
-
f_dealer_id:Vue.user.id
|
210
|
-
},
|
211
|
-
f_filialeids:'',
|
212
|
-
model: new PagedList(`${this.$androidUtil.getProxyUrl()}/rs/sql/tel_singleTable_OrderBy`, 50, {items: '"tcp.*,uf.f_meternumber"', tablename: '"t_check_paper tcp left join t_userfiles uf on tcp.f_userinfoid = uf.f_userinfo_id left join (select tcp.id from t_check_paper tcp' +
|
213
|
-
` LEFT JOIN t_paper_devices tpd ON tcp.id= tpd.f_paper_id ` +
|
214
|
-
` LEFT JOIN t_devices_items tdi ON tpd.id= tdi.f_device_id` +
|
215
|
-
` LEFT JOIN t_devices_items_lists tdl ON tdi.id= tdl.f_item_id ` +
|
216
|
-
` where 1=1 AND tdi.f_is_defect= 'true' AND tdl.f_dealwith IS NULL AND tdi.f_deal_dispose = '未处理' AND tdi.f_is_repaired IS NULL group by tcp.id ) tcp2 on tcp.id = tcp2.id` +
|
217
|
-
' "', orderitem: '"tcp.f_upload_date desc"'}),
|
218
|
-
criteriaShow: false,
|
219
|
-
isNeedDealSign: this.$appdata.getSingleValue('隐患处理是否需要签名') == 'true',
|
220
|
-
}
|
221
|
-
},
|
222
|
-
ready(){
|
223
|
-
// this.selfSearch()
|
224
|
-
},
|
225
|
-
methods: {
|
226
|
-
trouble(val) {
|
227
|
-
const defect_content = JSON.parse(val)
|
228
|
-
let result = ''
|
229
|
-
if (defect_content.data) {
|
230
|
-
const jsonData = defect_content.data
|
231
|
-
for (const itemdata of jsonData) {
|
232
|
-
const keys = Object.keys(itemdata)
|
233
|
-
for (const itm of keys) {
|
234
|
-
const value = itemdata[itm]
|
235
|
-
result += itm + ':' + value +';'
|
236
|
-
}
|
237
|
-
}
|
238
|
-
}
|
239
|
-
return result
|
240
|
-
},
|
241
|
-
// 签名回调
|
242
|
-
signCallback(prop, fileName) {
|
243
|
-
console.log("签名回调地址" + fileName)
|
244
|
-
// HostApp.alert('绑定属性:' + prop + ' 文件全路径如file:///storage/sdcard0/safecheck/abc.jpg:' + fullFileName)
|
245
|
-
HostApp.__this__.$set('deal.f_dealsign_path', fileName)
|
246
|
-
HostApp.__callback__ = null
|
247
|
-
HostApp.__this__ = null
|
248
|
-
},
|
249
|
-
// 用户签名
|
250
|
-
sign() {
|
251
|
-
if (!this.deal.f_deal_path) {
|
252
|
-
this.$showMessage('请先拍摄处理后照片!!!')
|
253
|
-
return
|
254
|
-
}
|
255
|
-
this.delAudioFile('f_dealsign_path', this.deal.f_dealsign_path)
|
256
|
-
let prop = 'f_dealsign_path'
|
257
|
-
let idx = 'aofeng'
|
258
|
-
let fileName
|
259
|
-
if (!this.deal.f_dealsign_path) {
|
260
|
-
fileName = Util.guid() + '-valve-' + idx + '-' + prop + '.jpg'
|
261
|
-
} else {
|
262
|
-
fileName = Util.getFileName(this.deal.f_dealsign_path)
|
263
|
-
}
|
264
|
-
HostApp.__callback__ = this.signCallback
|
265
|
-
HostApp.__this__ = this
|
266
|
-
HostApp.getSignature({
|
267
|
-
file: fileName,
|
268
|
-
requestCode: 111,
|
269
|
-
callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");'
|
270
|
-
})
|
271
|
-
},
|
272
|
-
delAudioFile(prop, fileName) {
|
273
|
-
if (!fileName)
|
274
|
-
return
|
275
|
-
else {
|
276
|
-
HostApp.delfile(fileName)
|
277
|
-
this.deal[prop] = null
|
278
|
-
}
|
279
|
-
},
|
280
|
-
commitDealDefect(){
|
281
|
-
if (this.deletecauseBooble && !this.deletecause) {
|
282
|
-
this.$showMessage("请填写取消拉黑原因!")
|
283
|
-
return;
|
284
|
-
}
|
285
|
-
if (!this.deal.f_deal_path){
|
286
|
-
this.$showMessage('处理后照片必须上传')
|
287
|
-
return
|
288
|
-
}
|
289
|
-
if (this.isNeedDealSign && !this.deal.f_dealsign_path){
|
290
|
-
this.$showMessage('签名必须上传')
|
291
|
-
return
|
292
|
-
}
|
293
|
-
if (this.deletecauseBooble) {
|
294
|
-
let http = new HttpResetClass()
|
295
|
-
http.load('POST', 'http://36.108.175.152:8000/API/Secheck/SetBlackList', {
|
296
|
-
data: {
|
297
|
-
"id": this.deal.result.f_userinfo_code,
|
298
|
-
"bh": this.deal.result.f_meternumber,
|
299
|
-
"black": false,
|
300
|
-
"blackMemo": this.deletecause
|
301
|
-
}
|
302
|
-
}, {resolveMsg: null, rejectMsg: null})
|
303
|
-
.then((res)=>{
|
304
|
-
if (res.data.Success) {
|
305
|
-
HostApp.__this__ = this
|
306
|
-
HostApp.logicWithHint({'logic': 'safe_dealWithDefect', 'callback': 'javascript: HostApp.__this__.commitCallBack()',
|
307
|
-
'data': this.deal, 'backresult':1
|
308
|
-
})
|
309
|
-
} else {
|
310
|
-
this.$showMessage("取消拉黑失败,请稍后再试!")
|
311
|
-
}
|
312
|
-
})
|
313
|
-
} else {
|
314
|
-
HostApp.__this__ = this
|
315
|
-
HostApp.logicWithHint({'logic': 'safe_dealWithDefect', 'callback': 'javascript: HostApp.__this__.commitCallBack()',
|
316
|
-
'data': this.deal, 'backresult':1
|
317
|
-
})
|
318
|
-
}
|
319
|
-
},
|
320
|
-
commitCallBack(jo){
|
321
|
-
//tag
|
322
|
-
//tag)
|
323
|
-
if (jo.state =='ok'){
|
324
|
-
let ress = JSON.parse(jo.result)
|
325
|
-
if (ress.code == 200 ) {
|
326
|
-
this.$showMessage(ress.msg)
|
327
|
-
this.closeshowModal1()
|
328
|
-
} else {
|
329
|
-
this.$showMessage(ress.msg)
|
330
|
-
}
|
331
|
-
}else{
|
332
|
-
this.$showMessage('本地服务调用失败')
|
333
|
-
}
|
334
|
-
},
|
335
|
-
delfile(prop, fileName) {
|
336
|
-
if (fileName == Vue.nopic)
|
337
|
-
return
|
338
|
-
else {
|
339
|
-
HostApp.delfile(fileName)
|
340
|
-
this.deal[prop] = Vue.nopic
|
341
|
-
}
|
342
|
-
},
|
343
|
-
openshowModal(val){
|
344
|
-
//tag
|
345
|
-
//tag
|
346
|
-
this.showimg=`${this.$androidUtil.getProxyUrl()}/rs/image/file/`+val
|
347
|
-
this.showModal=true
|
348
|
-
},
|
349
|
-
closeshowModal(){
|
350
|
-
this.showimg=''
|
351
|
-
this.showModal=false
|
352
|
-
},
|
353
|
-
openshowModal1(val){
|
354
|
-
var _this = this
|
355
|
-
var pardate = {
|
356
|
-
_this:_this,
|
357
|
-
title:'安全检查',
|
358
|
-
safe:true
|
359
|
-
}
|
360
|
-
_this.$dispatch('gotoson',pardate)
|
361
|
-
_this.$goto('android-defect-deal-items', {id: val.id}, 'self',_this.callback)
|
362
|
-
},
|
363
|
-
callback(){
|
364
|
-
let id = this.$androidUtil.getPreference('paper_id')
|
365
|
-
if(!id){
|
366
|
-
return
|
367
|
-
}
|
368
|
-
this.selfSearch()
|
369
|
-
this.workBusy = true
|
370
|
-
new HttpResetClass().load('post',`${this.$androidUtil.getProxyUrl()}/rs/sql/AndroidDealWith`,{
|
371
|
-
data:{
|
372
|
-
condition:`tcp.id = '${id}'`,
|
373
|
-
f_filialeids:`${Vue.user.orgid}`
|
374
|
-
}
|
375
|
-
}).then(resp=>{
|
376
|
-
this.workBusy = false
|
377
|
-
if (resp.data.length>0){
|
378
|
-
return this.$showMessage('隐患未全部处理')
|
379
|
-
}
|
380
|
-
}).catch(()=>{
|
381
|
-
this.workBusy = false
|
382
|
-
})
|
383
|
-
},
|
384
|
-
closeshowModal1(){
|
385
|
-
this.deal={
|
386
|
-
result: {},
|
387
|
-
f_deal_path:'',
|
388
|
-
f_deal_remark:'',
|
389
|
-
f_dealsign_path:'', //签名
|
390
|
-
f_dealer:Vue.user.name,
|
391
|
-
f_dealer_id:Vue.user.id
|
392
|
-
}
|
393
|
-
this.showModal1=false
|
394
|
-
// this.selfSearch()
|
395
|
-
},
|
396
|
-
cameraCallBack(prop, fileName) {
|
397
|
-
HostApp.__this__.deal.f_deal_path = fileName
|
398
|
-
HostApp.__callback__ = null
|
399
|
-
HostApp.__this__ = null
|
400
|
-
},
|
401
|
-
takePic(prop, title) {
|
402
|
-
HostApp.__callback__ = this.cameraCallBack
|
403
|
-
HostApp.__this__ = this
|
404
|
-
let fileName
|
405
|
-
if (!this.deal.f_deal_path || this.deal.f_deal_path.includes("nopic.png")) {
|
406
|
-
fileName = Util.guid() + '-' + prop + '.jpg'
|
407
|
-
} else {
|
408
|
-
fileName = Util.getFileName(this.deal.f_deal_path)
|
409
|
-
}
|
410
|
-
HostApp._open_a_page({
|
411
|
-
type: 'boomerang',
|
412
|
-
page: 'com.aofeng.hybrid.android.peripheral.CameraActivity',
|
413
|
-
param: {
|
414
|
-
file: fileName,
|
415
|
-
requestCode: 111,
|
416
|
-
callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");',
|
417
|
-
watermark: title + '时间:' + Util.toStandardTimeString() + '' + Vue.user.name
|
418
|
-
}
|
419
|
-
})
|
420
|
-
},
|
421
|
-
selfSearch () {
|
422
|
-
|
423
|
-
let condition = "1=1 "
|
424
|
-
if(this.$refs.paged.$refs.cri.model.f_user_name){
|
425
|
-
if(this.$refs.paged.$refs.cri.model.f_user_name.toString().trim()){
|
426
|
-
condition += " and tcp.f_user_name like '"+this.$refs.paged.$refs.cri.model.f_user_name+"%'"
|
427
|
-
}
|
428
|
-
}
|
429
|
-
if(this.$refs.paged.$refs.cri.model.f_userinfo_code){
|
430
|
-
if(this.$refs.paged.$refs.cri.model.f_userinfo_code.toString().trim()){
|
431
|
-
condition += " and tcp.f_userinfo_code = '"+this.$refs.paged.$refs.cri.model.f_userinfo_code+"'"
|
432
|
-
}
|
433
|
-
}
|
434
|
-
if(this.$refs.paged.$refs.cri.model.f_address){
|
435
|
-
if(this.$refs.paged.$refs.cri.model.f_address.toString().trim()){
|
436
|
-
condition += " and tcp.f_address like '%"+this.$refs.paged.$refs.cri.model.f_address+"%'"
|
437
|
-
}
|
438
|
-
}
|
439
|
-
if(this.$refs.paged.$refs.cri.model.f_start_date){
|
440
|
-
if(this.$refs.paged.$refs.cri.model.f_start_date.toString().trim()){
|
441
|
-
condition += " and tcp.f_upload_date >= '"+this.$refs.paged.$refs.cri.model.f_start_date +"'"
|
442
|
-
}
|
443
|
-
}
|
444
|
-
if(this.$refs.paged.$refs.cri.model.f_end_date){
|
445
|
-
if(this.$refs.paged.$refs.cri.model.f_end_date.toString().trim()){
|
446
|
-
condition += " and tcp.f_upload_date <= '"+this.$refs.paged.$refs.cri.model.f_end_date +"'"
|
447
|
-
}
|
448
|
-
}
|
449
|
-
|
450
|
-
if(this.$refs.paged.$refs.cri.model.f_meternumber){
|
451
|
-
if(this.$refs.paged.$refs.cri.model.f_meternumber){
|
452
|
-
condition += " and uf.f_meternumber = '"+this.$refs.paged.$refs.cri.model.f_meternumber +"'"
|
453
|
-
}
|
454
|
-
}
|
455
|
-
condition += ` and tcp.f_repaired = '未修' and tcp.f_defect_content like '%有隐患%' and tcp2.id is not null`
|
456
|
-
this.model.search(condition)
|
457
|
-
},
|
458
|
-
|
459
|
-
hidden() {
|
460
|
-
this.criteriaShow = !this.criteriaShow
|
461
|
-
},
|
462
|
-
}
|
463
|
-
}
|
464
|
-
</script>
|
1
|
+
<style scoped>
|
2
|
+
.bg {
|
3
|
+
background-color: blue;
|
4
|
+
height: 1px;
|
5
|
+
border: 0;
|
6
|
+
}
|
7
|
+
.app-row {
|
8
|
+
background-color: white;
|
9
|
+
padding: 10px 10px 0 10px;
|
10
|
+
border-bottom: 1px solid rgba(235, 235, 235, 0.5);
|
11
|
+
}
|
12
|
+
.search_input {
|
13
|
+
border: 0;
|
14
|
+
outline: none;
|
15
|
+
}
|
16
|
+
.font{
|
17
|
+
font: 15px PingFang-SC-Medium;
|
18
|
+
color: #666666;
|
19
|
+
}
|
20
|
+
.input-font{
|
21
|
+
font: 15px PingFang-SC-Medium;
|
22
|
+
color: #333333;
|
23
|
+
}
|
24
|
+
.btn-font{
|
25
|
+
font:600 16px PingFang-SC-Bold;
|
26
|
+
color: #499EDF;
|
27
|
+
}
|
28
|
+
.btn-color{
|
29
|
+
background-color: #FFFFFF;
|
30
|
+
border-radius: 10px ;
|
31
|
+
border: 1px solid #499EDF;
|
32
|
+
}
|
33
|
+
.app-text {
|
34
|
+
font-size: 12px;
|
35
|
+
}
|
36
|
+
.panel-self{
|
37
|
+
border-radius: 10px;
|
38
|
+
border:1px solid #499EDF;
|
39
|
+
background-color: #F8F8F8;
|
40
|
+
}
|
41
|
+
.yybtn-color{
|
42
|
+
background-color:#499edf;
|
43
|
+
border-radius: 4px ;
|
44
|
+
border: 1px solid #499EDF;
|
45
|
+
color: #FFFFFF;
|
46
|
+
font: 14px PingFang-SC-Bold;
|
47
|
+
}
|
48
|
+
.qxbtn-color{
|
49
|
+
background-color: #FFFFFF;
|
50
|
+
border-radius: 4px ;
|
51
|
+
color: #499edf;
|
52
|
+
font: 14px PingFang-SC-Bold;
|
53
|
+
border: 1px solid #499EDF;
|
54
|
+
}
|
55
|
+
|
56
|
+
.button_shrink_top {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_top.png")}
|
57
|
+
.button_shrink_bottom {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_bottom.png")}
|
58
|
+
.button_shrink_left {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_left.png")}
|
59
|
+
.button_shrink_right {width: 35px; height: 35px; background-size:100%;background-image: url("../../../../static/newStyle/stretch_right.png")}
|
60
|
+
</style>
|
61
|
+
<template>
|
62
|
+
<div style="height: auto;width: 100%">
|
63
|
+
<work-busy :is-busy="workBusy"></work-busy>
|
64
|
+
<criteria-paged :model="model" v-ref:paged>
|
65
|
+
<criteria partial='criteria' @condition-changed='search' v-ref:cri>
|
66
|
+
<div partial>
|
67
|
+
<form>
|
68
|
+
<div class="row app-row">
|
69
|
+
<div class="col-xs-4">
|
70
|
+
<img src="../../../assets/用户姓名.png" style="width: 20px;margin-bottom: 5px" alt="">
|
71
|
+
<label class="font text-left">用户姓名:</label>
|
72
|
+
</div>
|
73
|
+
<div class="col-xs-8" >
|
74
|
+
<input class="search_input input-font" v-model=model.f_user_name></input>
|
75
|
+
</div>
|
76
|
+
</div>
|
77
|
+
<div class="row app-row">
|
78
|
+
<div class="col-xs-4">
|
79
|
+
<img src="../../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
|
80
|
+
<label for="f_userinfo_code" class="font text-left">用户编号:</label>
|
81
|
+
</div>
|
82
|
+
<div class="col-xs-8" >
|
83
|
+
<input id="f_userinfo_code" class="search_input input-font"
|
84
|
+
v-model=model.f_userinfo_code></input>
|
85
|
+
</div>
|
86
|
+
</div>
|
87
|
+
<div class="row app-row">
|
88
|
+
<div class="col-xs-4">
|
89
|
+
<img src="../../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
|
90
|
+
<label for="f_meternumber" class="font text-left">用户表号:</label>
|
91
|
+
</div>
|
92
|
+
<div class="col-xs-8" >
|
93
|
+
<input id="f_meternumber" class="search_input input-font"
|
94
|
+
v-model=model.f_meternumber></input>
|
95
|
+
</div>
|
96
|
+
</div>
|
97
|
+
<div class="row app-row">
|
98
|
+
<div class="col-xs-4">
|
99
|
+
<img src="../../../assets/小区.png" style="width: 20px;margin-bottom: 5px" alt="">
|
100
|
+
<label class="font text-left">用户地址:</label>
|
101
|
+
</div>
|
102
|
+
<div class="col-xs-8">
|
103
|
+
<input class="search_input input-font"
|
104
|
+
v-model=model.f_address></input>
|
105
|
+
</div>
|
106
|
+
</div>
|
107
|
+
<div class="row app-row">
|
108
|
+
<div class="col-xs-4">
|
109
|
+
<img src="../../../assets/是否已检.png" style="width: 20px;margin-bottom: 5px" alt="">
|
110
|
+
<label for="f_state" class="font text-left">起始时间:</label>
|
111
|
+
</div>
|
112
|
+
<datepicker id="f_start_date"
|
113
|
+
placeholder= '起始时间'
|
114
|
+
:value.sync="model.f_start_date"
|
115
|
+
:disabled-days-of-Week="[]"
|
116
|
+
v-model="model.f_start_date"
|
117
|
+
class="input-font"
|
118
|
+
:format="'yyyy-MM-dd 00:00:00'"
|
119
|
+
:show-reset-button="reset" readonly="readonly">
|
120
|
+
</datepicker>
|
121
|
+
</div>
|
122
|
+
<div class="row app-row">
|
123
|
+
<div class="col-xs-4">
|
124
|
+
<img src="../../../assets/是否已检.png" style="width: 20px;margin-bottom: 5px" alt="">
|
125
|
+
<label for="f_state" class="font text-left">结束时间:</label>
|
126
|
+
</div>
|
127
|
+
<datepicker id="f_end_date"
|
128
|
+
placeholder= '结束时间'
|
129
|
+
:value.sync="model.f_end_date"
|
130
|
+
:disabled-days-of-Week="[]"
|
131
|
+
v-model="model.f_end_date"
|
132
|
+
class="input-font"
|
133
|
+
:format="'yyyy-MM-dd 23:59:59'"
|
134
|
+
:show-reset-button="reset" readonly="readonly">
|
135
|
+
</datepicker>
|
136
|
+
</div>
|
137
|
+
<div class="row text-center" style="margin-top: 20px;">
|
138
|
+
<button type="button" class="btn btn-lg btn-font btn-color" style="width: 25%;" @click="$parent.$parent.selfSearch">查询</button>
|
139
|
+
<!-- <div style="float: right;margin-right: 3% " class="button_spacing" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.hidden()"></div>-->
|
140
|
+
</div>
|
141
|
+
<div style="height:30px;"></div>
|
142
|
+
</form>
|
143
|
+
</div>
|
144
|
+
</criteria>
|
145
|
+
<list :model="model" partial='list'>
|
146
|
+
<div partial>
|
147
|
+
<div class="auto app-text" style="margin-top: 5px;">
|
148
|
+
<div class="panel" style="padding: 10px 10px 5px 10px;">
|
149
|
+
<div class="panel-body panel-self">
|
150
|
+
<div class="col-xs-12">
|
151
|
+
<p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户编号:</b></p>
|
152
|
+
<p class="panel-title col-xs-5 text-left input-font" style="width: 74%">{{ row.f_userinfo_code }}</p>
|
153
|
+
</div>
|
154
|
+
<div class="col-xs-12">
|
155
|
+
<p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户表号:</b></p>
|
156
|
+
<p class="panel-title col-xs-5 text-left input-font" style="width: 74%">{{ row.f_meternumber }}</p>
|
157
|
+
</div>
|
158
|
+
<div class="col-xs-12">
|
159
|
+
<p class="panel-title col-xs-5 text-left font" style="width: 21%;float: left"><b>用户名称:</b></p>
|
160
|
+
<p class="panel-title col-xs-7 text-left input-font" style="width: 79%">{{ row.f_user_name }}</p>
|
161
|
+
</div>
|
162
|
+
<div class="col-xs-12">
|
163
|
+
<p class="panel-title text-left font" style="width: 23%;float: left"><b>用户电话:</b></p>
|
164
|
+
<p class="panel-title text-left input-font" style="width: 77%">{{ row.f_user_phone }}</p>
|
165
|
+
</div>
|
166
|
+
|
167
|
+
<div class="col-xs-12">
|
168
|
+
<p class="panel-title text-left font" style="width: 21%;float: left"><b>用户地址:</b></p>
|
169
|
+
<p class="panel-title text-left input-font" style="width: 79%">{{ row.f_address }}</p>
|
170
|
+
</div>
|
171
|
+
<div class="col-xs-12">
|
172
|
+
<p class="panel-title text-left font" style="width: 21%;float: left"><b>隐患内容:</b></p>
|
173
|
+
<p class="panel-title text-left input-font" style="width: 79%">{{ $parent.$parent.$parent.trouble(row.f_defect_content) }}</p>
|
174
|
+
</div>
|
175
|
+
<div class="col-xs-12">
|
176
|
+
<button type="button" name="button" class="btn btn-primary" style="background-color:#499edf;float: right;margin-right:10px;" @click="$parent.$parent.$parent.openshowModal1(row)">处理</button>
|
177
|
+
</div>
|
178
|
+
</div>
|
179
|
+
</div>
|
180
|
+
</div>
|
181
|
+
</div>
|
182
|
+
</list>
|
183
|
+
</criteria-paged>
|
184
|
+
</div>
|
185
|
+
</template>
|
186
|
+
|
187
|
+
<script>
|
188
|
+
|
189
|
+
import Vue from 'vue'
|
190
|
+
import { PagedList,HttpResetClass } from 'vue-client'
|
191
|
+
import * as Util from '../../Util'
|
192
|
+
|
193
|
+
export default {
|
194
|
+
title: '无计划安检查询',
|
195
|
+
data() {
|
196
|
+
return {
|
197
|
+
showModal:false,
|
198
|
+
showModal1:false,
|
199
|
+
showimg:'',
|
200
|
+
deletecause:'',
|
201
|
+
deletecauseBooble: false,
|
202
|
+
workBusy:false,
|
203
|
+
deal:{
|
204
|
+
result:{},
|
205
|
+
f_deal_path:'',
|
206
|
+
f_deal_remark:'',
|
207
|
+
f_dealsign_path:'', //签名
|
208
|
+
f_dealer:Vue.user.name,
|
209
|
+
f_dealer_id:Vue.user.id
|
210
|
+
},
|
211
|
+
f_filialeids:'',
|
212
|
+
model: new PagedList(`${this.$androidUtil.getProxyUrl()}/rs/sql/tel_singleTable_OrderBy`, 50, {items: '"tcp.*,uf.f_meternumber"', tablename: '"t_check_paper tcp left join t_userfiles uf on tcp.f_userinfoid = uf.f_userinfo_id left join (select tcp.id from t_check_paper tcp' +
|
213
|
+
` LEFT JOIN t_paper_devices tpd ON tcp.id= tpd.f_paper_id ` +
|
214
|
+
` LEFT JOIN t_devices_items tdi ON tpd.id= tdi.f_device_id` +
|
215
|
+
` LEFT JOIN t_devices_items_lists tdl ON tdi.id= tdl.f_item_id ` +
|
216
|
+
` where 1=1 AND tdi.f_is_defect= 'true' AND tdl.f_dealwith IS NULL AND tdi.f_deal_dispose = '未处理' AND tdi.f_is_repaired IS NULL group by tcp.id ) tcp2 on tcp.id = tcp2.id` +
|
217
|
+
' "', orderitem: '"tcp.f_upload_date desc"'}),
|
218
|
+
criteriaShow: false,
|
219
|
+
isNeedDealSign: this.$appdata.getSingleValue('隐患处理是否需要签名') == 'true',
|
220
|
+
}
|
221
|
+
},
|
222
|
+
ready(){
|
223
|
+
// this.selfSearch()
|
224
|
+
},
|
225
|
+
methods: {
|
226
|
+
trouble(val) {
|
227
|
+
const defect_content = JSON.parse(val)
|
228
|
+
let result = ''
|
229
|
+
if (defect_content.data) {
|
230
|
+
const jsonData = defect_content.data
|
231
|
+
for (const itemdata of jsonData) {
|
232
|
+
const keys = Object.keys(itemdata)
|
233
|
+
for (const itm of keys) {
|
234
|
+
const value = itemdata[itm]
|
235
|
+
result += itm + ':' + value +';'
|
236
|
+
}
|
237
|
+
}
|
238
|
+
}
|
239
|
+
return result
|
240
|
+
},
|
241
|
+
// 签名回调
|
242
|
+
signCallback(prop, fileName) {
|
243
|
+
console.log("签名回调地址" + fileName)
|
244
|
+
// HostApp.alert('绑定属性:' + prop + ' 文件全路径如file:///storage/sdcard0/safecheck/abc.jpg:' + fullFileName)
|
245
|
+
HostApp.__this__.$set('deal.f_dealsign_path', fileName)
|
246
|
+
HostApp.__callback__ = null
|
247
|
+
HostApp.__this__ = null
|
248
|
+
},
|
249
|
+
// 用户签名
|
250
|
+
sign() {
|
251
|
+
if (!this.deal.f_deal_path) {
|
252
|
+
this.$showMessage('请先拍摄处理后照片!!!')
|
253
|
+
return
|
254
|
+
}
|
255
|
+
this.delAudioFile('f_dealsign_path', this.deal.f_dealsign_path)
|
256
|
+
let prop = 'f_dealsign_path'
|
257
|
+
let idx = 'aofeng'
|
258
|
+
let fileName
|
259
|
+
if (!this.deal.f_dealsign_path) {
|
260
|
+
fileName = Util.guid() + '-valve-' + idx + '-' + prop + '.jpg'
|
261
|
+
} else {
|
262
|
+
fileName = Util.getFileName(this.deal.f_dealsign_path)
|
263
|
+
}
|
264
|
+
HostApp.__callback__ = this.signCallback
|
265
|
+
HostApp.__this__ = this
|
266
|
+
HostApp.getSignature({
|
267
|
+
file: fileName,
|
268
|
+
requestCode: 111,
|
269
|
+
callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");'
|
270
|
+
})
|
271
|
+
},
|
272
|
+
delAudioFile(prop, fileName) {
|
273
|
+
if (!fileName)
|
274
|
+
return
|
275
|
+
else {
|
276
|
+
HostApp.delfile(fileName)
|
277
|
+
this.deal[prop] = null
|
278
|
+
}
|
279
|
+
},
|
280
|
+
commitDealDefect(){
|
281
|
+
if (this.deletecauseBooble && !this.deletecause) {
|
282
|
+
this.$showMessage("请填写取消拉黑原因!")
|
283
|
+
return;
|
284
|
+
}
|
285
|
+
if (!this.deal.f_deal_path){
|
286
|
+
this.$showMessage('处理后照片必须上传')
|
287
|
+
return
|
288
|
+
}
|
289
|
+
if (this.isNeedDealSign && !this.deal.f_dealsign_path){
|
290
|
+
this.$showMessage('签名必须上传')
|
291
|
+
return
|
292
|
+
}
|
293
|
+
if (this.deletecauseBooble) {
|
294
|
+
let http = new HttpResetClass()
|
295
|
+
http.load('POST', 'http://36.108.175.152:8000/API/Secheck/SetBlackList', {
|
296
|
+
data: {
|
297
|
+
"id": this.deal.result.f_userinfo_code,
|
298
|
+
"bh": this.deal.result.f_meternumber,
|
299
|
+
"black": false,
|
300
|
+
"blackMemo": this.deletecause
|
301
|
+
}
|
302
|
+
}, {resolveMsg: null, rejectMsg: null})
|
303
|
+
.then((res)=>{
|
304
|
+
if (res.data.Success) {
|
305
|
+
HostApp.__this__ = this
|
306
|
+
HostApp.logicWithHint({'logic': 'safe_dealWithDefect', 'callback': 'javascript: HostApp.__this__.commitCallBack()',
|
307
|
+
'data': this.deal, 'backresult':1
|
308
|
+
})
|
309
|
+
} else {
|
310
|
+
this.$showMessage("取消拉黑失败,请稍后再试!")
|
311
|
+
}
|
312
|
+
})
|
313
|
+
} else {
|
314
|
+
HostApp.__this__ = this
|
315
|
+
HostApp.logicWithHint({'logic': 'safe_dealWithDefect', 'callback': 'javascript: HostApp.__this__.commitCallBack()',
|
316
|
+
'data': this.deal, 'backresult':1
|
317
|
+
})
|
318
|
+
}
|
319
|
+
},
|
320
|
+
commitCallBack(jo){
|
321
|
+
//tag
|
322
|
+
//tag)
|
323
|
+
if (jo.state =='ok'){
|
324
|
+
let ress = JSON.parse(jo.result)
|
325
|
+
if (ress.code == 200 ) {
|
326
|
+
this.$showMessage(ress.msg)
|
327
|
+
this.closeshowModal1()
|
328
|
+
} else {
|
329
|
+
this.$showMessage(ress.msg)
|
330
|
+
}
|
331
|
+
}else{
|
332
|
+
this.$showMessage('本地服务调用失败')
|
333
|
+
}
|
334
|
+
},
|
335
|
+
delfile(prop, fileName) {
|
336
|
+
if (fileName == Vue.nopic)
|
337
|
+
return
|
338
|
+
else {
|
339
|
+
HostApp.delfile(fileName)
|
340
|
+
this.deal[prop] = Vue.nopic
|
341
|
+
}
|
342
|
+
},
|
343
|
+
openshowModal(val){
|
344
|
+
//tag
|
345
|
+
//tag
|
346
|
+
this.showimg=`${this.$androidUtil.getProxyUrl()}/rs/image/file/`+val
|
347
|
+
this.showModal=true
|
348
|
+
},
|
349
|
+
closeshowModal(){
|
350
|
+
this.showimg=''
|
351
|
+
this.showModal=false
|
352
|
+
},
|
353
|
+
openshowModal1(val){
|
354
|
+
var _this = this
|
355
|
+
var pardate = {
|
356
|
+
_this:_this,
|
357
|
+
title:'安全检查',
|
358
|
+
safe:true
|
359
|
+
}
|
360
|
+
_this.$dispatch('gotoson',pardate)
|
361
|
+
_this.$goto('android-defect-deal-items', {id: val.id}, 'self',_this.callback)
|
362
|
+
},
|
363
|
+
callback(){
|
364
|
+
let id = this.$androidUtil.getPreference('paper_id')
|
365
|
+
if(!id){
|
366
|
+
return
|
367
|
+
}
|
368
|
+
this.selfSearch()
|
369
|
+
this.workBusy = true
|
370
|
+
new HttpResetClass().load('post',`${this.$androidUtil.getProxyUrl()}/rs/sql/AndroidDealWith`,{
|
371
|
+
data:{
|
372
|
+
condition:`tcp.id = '${id}'`,
|
373
|
+
f_filialeids:`${Vue.user.orgid}`
|
374
|
+
}
|
375
|
+
}).then(resp=>{
|
376
|
+
this.workBusy = false
|
377
|
+
if (resp.data.length>0){
|
378
|
+
return this.$showMessage('隐患未全部处理')
|
379
|
+
}
|
380
|
+
}).catch(()=>{
|
381
|
+
this.workBusy = false
|
382
|
+
})
|
383
|
+
},
|
384
|
+
closeshowModal1(){
|
385
|
+
this.deal={
|
386
|
+
result: {},
|
387
|
+
f_deal_path:'',
|
388
|
+
f_deal_remark:'',
|
389
|
+
f_dealsign_path:'', //签名
|
390
|
+
f_dealer:Vue.user.name,
|
391
|
+
f_dealer_id:Vue.user.id
|
392
|
+
}
|
393
|
+
this.showModal1=false
|
394
|
+
// this.selfSearch()
|
395
|
+
},
|
396
|
+
cameraCallBack(prop, fileName) {
|
397
|
+
HostApp.__this__.deal.f_deal_path = fileName
|
398
|
+
HostApp.__callback__ = null
|
399
|
+
HostApp.__this__ = null
|
400
|
+
},
|
401
|
+
takePic(prop, title) {
|
402
|
+
HostApp.__callback__ = this.cameraCallBack
|
403
|
+
HostApp.__this__ = this
|
404
|
+
let fileName
|
405
|
+
if (!this.deal.f_deal_path || this.deal.f_deal_path.includes("nopic.png")) {
|
406
|
+
fileName = Util.guid() + '-' + prop + '.jpg'
|
407
|
+
} else {
|
408
|
+
fileName = Util.getFileName(this.deal.f_deal_path)
|
409
|
+
}
|
410
|
+
HostApp._open_a_page({
|
411
|
+
type: 'boomerang',
|
412
|
+
page: 'com.aofeng.hybrid.android.peripheral.CameraActivity',
|
413
|
+
param: {
|
414
|
+
file: fileName,
|
415
|
+
requestCode: 111,
|
416
|
+
callback: 'javascript:HostApp.__callback__("' + prop + '", "%s");',
|
417
|
+
watermark: title + '时间:' + Util.toStandardTimeString() + '' + Vue.user.name
|
418
|
+
}
|
419
|
+
})
|
420
|
+
},
|
421
|
+
selfSearch () {
|
422
|
+
|
423
|
+
let condition = "1=1 "
|
424
|
+
if(this.$refs.paged.$refs.cri.model.f_user_name){
|
425
|
+
if(this.$refs.paged.$refs.cri.model.f_user_name.toString().trim()){
|
426
|
+
condition += " and tcp.f_user_name like '"+this.$refs.paged.$refs.cri.model.f_user_name+"%'"
|
427
|
+
}
|
428
|
+
}
|
429
|
+
if(this.$refs.paged.$refs.cri.model.f_userinfo_code){
|
430
|
+
if(this.$refs.paged.$refs.cri.model.f_userinfo_code.toString().trim()){
|
431
|
+
condition += " and tcp.f_userinfo_code = '"+this.$refs.paged.$refs.cri.model.f_userinfo_code+"'"
|
432
|
+
}
|
433
|
+
}
|
434
|
+
if(this.$refs.paged.$refs.cri.model.f_address){
|
435
|
+
if(this.$refs.paged.$refs.cri.model.f_address.toString().trim()){
|
436
|
+
condition += " and tcp.f_address like '%"+this.$refs.paged.$refs.cri.model.f_address+"%'"
|
437
|
+
}
|
438
|
+
}
|
439
|
+
if(this.$refs.paged.$refs.cri.model.f_start_date){
|
440
|
+
if(this.$refs.paged.$refs.cri.model.f_start_date.toString().trim()){
|
441
|
+
condition += " and tcp.f_upload_date >= '"+this.$refs.paged.$refs.cri.model.f_start_date +"'"
|
442
|
+
}
|
443
|
+
}
|
444
|
+
if(this.$refs.paged.$refs.cri.model.f_end_date){
|
445
|
+
if(this.$refs.paged.$refs.cri.model.f_end_date.toString().trim()){
|
446
|
+
condition += " and tcp.f_upload_date <= '"+this.$refs.paged.$refs.cri.model.f_end_date +"'"
|
447
|
+
}
|
448
|
+
}
|
449
|
+
|
450
|
+
if(this.$refs.paged.$refs.cri.model.f_meternumber){
|
451
|
+
if(this.$refs.paged.$refs.cri.model.f_meternumber){
|
452
|
+
condition += " and uf.f_meternumber = '"+this.$refs.paged.$refs.cri.model.f_meternumber +"'"
|
453
|
+
}
|
454
|
+
}
|
455
|
+
condition += ` and tcp.f_repaired = '未修' and tcp.f_defect_content like '%有隐患%' and tcp2.id is not null`
|
456
|
+
this.model.search(condition)
|
457
|
+
},
|
458
|
+
|
459
|
+
hidden() {
|
460
|
+
this.criteriaShow = !this.criteriaShow
|
461
|
+
},
|
462
|
+
}
|
463
|
+
}
|
464
|
+
</script>
|