safecheck-client 4.0.1-6 → 4.0.1-60
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/.trae/.ignore +0 -0
- package/.vscode/settings.json +3 -0
- package/package.json +132 -132
- package/src/assets//350/255/246/345/221/212 (3).png +0 -0
- package/src/assets//350/255/246/345/221/212 (4).png +0 -0
- package/src/assets//350/255/246/345/221/212 (5).png +0 -0
- package/src/components/android/AndroidDefectDetails.vue +3 -3
- package/src/components/android/DailyworkloadQuery.vue +2 -1
- package/src/components/android/NewCheckpaperAndroid.vue +22 -48
- package/src/components/android/SwitchValve.vue +1 -1
- package/src/components/checkplan/CheckDetail.vue +1 -1
- package/src/components/map/SecurityCheckCoordinates.vue +350 -0
- package/src/components/pc/CheckBookUser.vue +8 -4
- package/src/components/planmanage/PlanManage.vue +1 -0
- package/src/components/querycheckpaper/CheckPaperList.vue +6 -4
- package/src/components/querycheckpaper/CheckPaperSearchUser.vue +30 -4
- package/src/components/querycheckpaper/CheckSearchUser.vue +5 -0
- package/src/filiale/jinhong/android/CurrentCreate.vue +66 -22
- package/src/filiale/jinhong/pc/CheckBookList.vue +10 -7
- package/src/filiale/jinhong/pc/DefectPaperNew.vue +10 -10
- package/src/filiale/jinhong/pc/checkUserList.vue +766 -742
- package/src/filiale/libo/android/PaperFeedback.vue +1579 -0
- package/src/filiale/libo/android/PhoneUpUserinfo.vue +1249 -0
- package/src/filiale/libo/android/SafecheckOrderV.vue +2302 -0
- package/src/filiale/libo/android.js +14 -0
- package/src/filiale/libo/pc/NewCheckpaper.vue +1987 -0
- package/src/filiale/libo/pc.js +12 -0
- package/src/filiale/meihekou/android/CurrentCreate.vue +1 -1
- package/src/filiale/meihekou/android/MeterReading.vue +9 -5
- package/src/filiale/meihekou/android/PhoneUpUserinfo.vue +3 -2
- package/src/filiale/meihekou/android/SafecheckDevices.vue +5 -5
- package/src/filiale/meihekou/android/SafecheckOrderV.vue +324 -311
- package/src/filiale/meihekou/pc/NewCheckpaper.vue +2 -2
- package/src/filiale/meihekou/pc/NewCheckpaperNew.vue +2050 -0
- package/src/filiale/meihekou/pc/PaperList.vue +1136 -0
- package/src/filiale/meihekou/pc.js +2 -0
- package/src/filiale/minsheng/android/SwitchValve.vue +1 -1
- package/src/filiale/qianneng/android/SwitchValve.vue +1 -1
- package/src/filiale/qingjian/android/PhoneUpUserinfo.vue +6 -0
- package/src/filiale/qingjian/pc/checkUserList.vue +35 -0
- package/src/filiale/taiyuan/android/CurrentCreate.vue +1016 -0
- package/src/filiale/taiyuan/android/PhoneUpUserinfo.vue +1259 -0
- package/src/filiale/taiyuan/android/SafecheckOrderV.vue +2341 -0
- package/src/filiale/taiyuan/android/SafecheckUserInfo.vue +776 -0
- package/src/filiale/taiyuan/android.js +13 -0
- package/src/filiale/taiyuan/pc/DefectDeal.vue +1033 -0
- package/src/filiale/taiyuan/pc/NewCheckpaper.vue +1976 -0
- package/src/filiale/taiyuan/pc/PlanManage.vue +891 -0
- package/src/filiale/taiyuan/pc/checkUserList.vue +798 -0
- package/src/filiale/taiyuan/pc.js +15 -0
- package/src/filiale/tongchuan/android/SwitchValve.vue +1 -1
- package/src/filiale/xinkang/android/AddPlanItem.vue +65 -31
- package/src/filiale/xinkang/android/SafecheckDevices.vue +29 -7
- package/src/filiale/xinkang/android/SafecheckOrderV.vue +24 -80
- package/src/filiale/xinkang/android/SafecheckUserInfo.vue +1 -1
- package/src/filiale/xinkang/pc/CheckSearchUser.vue +12 -12
- package/src/filiale/xinkang/pc/NewCheckpaper.vue +20 -44
- package/src/filiale/xinkang/pc/PaperList.vue +2 -9
- package/src/filiale/yuansheng/android/SwitchValve.vue +1 -1
- package/src/filiale/yunchengminsheng/android/PaperFeedback.vue +1030 -1030
- package/src/filiale/yunchengminsheng/android/SafecheckDevices.vue +4 -4
- package/src/filiale/yunchengminsheng/pc/PaperList.vue +811 -0
- package/src/filiale/yunchengminsheng/pc.js +1 -0
- package/src/safecheck-android.js +4 -0
- package/src/safecheck.js +3 -0
@@ -0,0 +1,350 @@
|
|
1
|
+
<template>
|
2
|
+
<div class="flex-row">
|
3
|
+
<div class="basic-main" style="flex:7">
|
4
|
+
<div id="check_map" style="height:100%">
|
5
|
+
</div>
|
6
|
+
</div>
|
7
|
+
<div id="zzz" class="basic-main" style="flex:1;margin-left: 0px;overflow: hidden">
|
8
|
+
<div class="panel panel-info" style="margin-top:0px; height: 100%; display: flex; flex-direction: column;">
|
9
|
+
<div class="panel-heading" style="height: 50px">
|
10
|
+
<h3 class="panel-title">状态选择</h3>
|
11
|
+
</div>
|
12
|
+
<div class="panel-body">
|
13
|
+
<ul class="safe_ul_sty">
|
14
|
+
<li class="safe_li_sty"><input class="safe_checkbox_sty" v-model="mulchs.level1" @change="enableChange('level1',mulchs.level1)" type="checkbox"/><img class="safe_deimg" src="../../assets/警告 (3).png"/>拒检</li>
|
15
|
+
<li class="safe_li_sty"><input class="safe_checkbox_sty" v-model="mulchs.level3" @change="enableChange('level3',mulchs.level3)" type="checkbox"/><img class="safe_deimg" src="../../assets/警告 (4).png"/>到访不遇</li>
|
16
|
+
<li class="safe_li_sty"><input class="safe_checkbox_sty" v-model="mulchs.problems" @change="enableChange('problems',mulchs.problems)" type="checkbox"/><img class="safe_deimg" src="../../assets/警告 (5).png"/>正常</li>
|
17
|
+
</ul>
|
18
|
+
</div>
|
19
|
+
<div class="panel-heading" style="height: 50px">
|
20
|
+
<h3 class="panel-title">时间选择</h3>
|
21
|
+
</div>
|
22
|
+
<div class="panel-body">
|
23
|
+
<div class="row" style="height: 50px">
|
24
|
+
<datepicker
|
25
|
+
:value.sync="f_check_start"
|
26
|
+
placeholder='开始时间'
|
27
|
+
:disabled-days-of-week="[]"
|
28
|
+
@change="safeRefresh"
|
29
|
+
:format="'yyyy-MM-dd'"
|
30
|
+
:show-rest-button="reset"
|
31
|
+
v-model="f_check_start">
|
32
|
+
</datepicker>
|
33
|
+
</div>
|
34
|
+
|
35
|
+
<div class="row" style="height: 50px">
|
36
|
+
<datepicker
|
37
|
+
:value.sync="f_check_end"
|
38
|
+
placeholder='结束时间'
|
39
|
+
:disabled-days-of-week="[]"
|
40
|
+
@change="safeRefresh"
|
41
|
+
:format="'yyyy-MM-dd'"
|
42
|
+
:show-rest-button="reset"
|
43
|
+
v-model="f_check_end">
|
44
|
+
</datepicker>
|
45
|
+
</div>
|
46
|
+
</div>
|
47
|
+
</div>
|
48
|
+
</div>
|
49
|
+
</div>
|
50
|
+
</template>
|
51
|
+
|
52
|
+
<script>
|
53
|
+
import * as Util from '../Util'
|
54
|
+
import {HttpResetClass} from 'vue-client'
|
55
|
+
|
56
|
+
export default {
|
57
|
+
title: '用户安检定位信息',
|
58
|
+
data() {
|
59
|
+
return {
|
60
|
+
loading: false,
|
61
|
+
f_check_start:'',
|
62
|
+
f_check_end:'',
|
63
|
+
map:null,
|
64
|
+
infoWindow:null,
|
65
|
+
level1Mulchs:null,//拒检点位
|
66
|
+
level3Mulchs:null,//到访不遇点位
|
67
|
+
problemsMulchs:null,//正常点位
|
68
|
+
level1:[],
|
69
|
+
level3:[],
|
70
|
+
problems:[],
|
71
|
+
defectList:{rows:[]},
|
72
|
+
intervalNum:'',
|
73
|
+
mulchs:{//覆盖物控制显示
|
74
|
+
level1:true,
|
75
|
+
level3:true,
|
76
|
+
problems:true
|
77
|
+
},
|
78
|
+
styleObject :[
|
79
|
+
{
|
80
|
+
url: require('../../assets/警告 (3).png'), //拒检图标URL
|
81
|
+
anchor: new AMap.Pixel(14, 8), // 图标偏移位置
|
82
|
+
size: new AMap.Size(26, 28) //图标大小
|
83
|
+
},
|
84
|
+
{
|
85
|
+
url: require('../../assets/警告 (4).png'), //到访不遇图标URL
|
86
|
+
anchor: new AMap.Pixel(14, 8), // 图标偏移位置
|
87
|
+
size: new AMap.Size(26, 28) //图标大小
|
88
|
+
},
|
89
|
+
{
|
90
|
+
url: require('../../assets/警告 (5).png'), //正常图标URL
|
91
|
+
anchor: new AMap.Pixel(14, 8), // 图标偏移位置
|
92
|
+
size: new AMap.Size(26, 28) //图标大小
|
93
|
+
}
|
94
|
+
]
|
95
|
+
}
|
96
|
+
},
|
97
|
+
async ready(){
|
98
|
+
this.initMap()
|
99
|
+
await this.getNewData(`f_longitude is not null and f_latitude is not null`)
|
100
|
+
this.assemblyData()
|
101
|
+
this.intervalNum=window.setInterval(this.safeRefresh, 240000)
|
102
|
+
},
|
103
|
+
methods: {
|
104
|
+
async getNewData (condition) {
|
105
|
+
this.loading = true
|
106
|
+
let arr = await new HttpResetClass().load('POST', `api/af-safecheck/sql/safe_singleTable_OrderBy`,
|
107
|
+
{
|
108
|
+
data: {
|
109
|
+
items:'*',
|
110
|
+
tablename: 't_check_paper',
|
111
|
+
condition: condition,
|
112
|
+
orderitem: 'f_entry_status'
|
113
|
+
}}, {resolveMsg: null, rejectMsg: null})
|
114
|
+
if (arr.data) {
|
115
|
+
this.level1 = []
|
116
|
+
this.level3 = []
|
117
|
+
this.problems = []
|
118
|
+
arr.data.forEach((defect) => {
|
119
|
+
if (defect.f_entry_status == '拒检' ) {
|
120
|
+
this.level1.push(defect)
|
121
|
+
} else if (defect.f_entry_status == '到访不遇' ) {
|
122
|
+
this.level3.push(defect)
|
123
|
+
} else {
|
124
|
+
this.problems.push(defect)
|
125
|
+
}
|
126
|
+
})
|
127
|
+
}
|
128
|
+
this.loading = false
|
129
|
+
this.defectList.rows = arr.data
|
130
|
+
},
|
131
|
+
getDefectContent(row){
|
132
|
+
return `
|
133
|
+
<div style="padding:0px;margin-left: 8px;"><b>安检内容</b></div>
|
134
|
+
<div class="panel panel-default" style="background-color: azure;border-radius: 5px;margin-left: 8px;">
|
135
|
+
<div class="panel-body">
|
136
|
+
<ul style="list-style-type: none;font-size: 15px;">
|
137
|
+
<li style="margin: 3px 0;">用户姓名: ${row.f_user_name}</li>
|
138
|
+
<li style="margin: 3px 0;">用户地址: ${row.f_address}</li>
|
139
|
+
<li style="margin: 3px 0;">安检状态: ${row.f_entry_status}</li>
|
140
|
+
<li style="margin: 3px 0;">安检时间: ${row.f_offsite_time}</li>
|
141
|
+
<li style="margin: 3px 0;">安检人员: ${row.f_checker_name}</li>
|
142
|
+
</ul>
|
143
|
+
</div>
|
144
|
+
</div>`
|
145
|
+
},
|
146
|
+
assemblyData(){
|
147
|
+
let a2=[]
|
148
|
+
for(let i=0;i<this.level1.length;i++){
|
149
|
+
a2.push({
|
150
|
+
lnglat: [this.level1[i].f_longitude, this.level1[i].f_latitude], //点标记位置
|
151
|
+
name: '拒检',
|
152
|
+
id:i,
|
153
|
+
rowstr:this.level1[i]
|
154
|
+
})
|
155
|
+
}
|
156
|
+
this.level1Mulchs.setData(a2);
|
157
|
+
this.level1Mulchs.setMap(this.map);
|
158
|
+
|
159
|
+
let a4=[]
|
160
|
+
for(let p=0;p<this.level3.length;p++){
|
161
|
+
if (this.level3[p].f_longitude&&this.level3[p].f_latitude){
|
162
|
+
a4.push({
|
163
|
+
lnglat: [this.level3[p].f_longitude, this.level3[p].f_latitude], //点标记位置
|
164
|
+
name: '到访不遇',
|
165
|
+
id:p,
|
166
|
+
rowstr:this.level3[p]
|
167
|
+
})
|
168
|
+
}
|
169
|
+
}
|
170
|
+
this.level3Mulchs.setData(a4);
|
171
|
+
this.level3Mulchs.setMap(this.map);
|
172
|
+
|
173
|
+
let a5=[]
|
174
|
+
for(let l=0;l<this.problems.length;l++){
|
175
|
+
if (this.problems[l].f_longitude&&this.problems[l].f_latitude){
|
176
|
+
a5.push({
|
177
|
+
lnglat: [this.problems[l].f_longitude, this.problems[l].f_latitude], //点标记位置
|
178
|
+
name: '正常',
|
179
|
+
id:l,
|
180
|
+
rowstr:this.problems[l]
|
181
|
+
})
|
182
|
+
}
|
183
|
+
}
|
184
|
+
this.problemsMulchs.setData(a5);
|
185
|
+
this.problemsMulchs.setMap(this.map);
|
186
|
+
},
|
187
|
+
enableChange(vname,val){
|
188
|
+
switch(vname){
|
189
|
+
case 'level1':
|
190
|
+
if(val){
|
191
|
+
this.level1Mulchs.show()
|
192
|
+
}else{
|
193
|
+
this.level1Mulchs.hide()
|
194
|
+
}
|
195
|
+
break;
|
196
|
+
case 'level3':
|
197
|
+
if(val){
|
198
|
+
this.level3Mulchs.show()
|
199
|
+
}else{
|
200
|
+
this.level3Mulchs.hide()
|
201
|
+
}
|
202
|
+
break;
|
203
|
+
case 'problems':
|
204
|
+
if(val){
|
205
|
+
this.problemsMulchs.show()
|
206
|
+
}else{
|
207
|
+
this.problemsMulchs.hide()
|
208
|
+
}
|
209
|
+
break;
|
210
|
+
default:
|
211
|
+
}
|
212
|
+
},
|
213
|
+
initMap(){
|
214
|
+
let that=this
|
215
|
+
this.map = new AMap.Map('check_map', {
|
216
|
+
zoom: 17,
|
217
|
+
viewMode: '2D',
|
218
|
+
lang: 'zh_cn',
|
219
|
+
zindex: 99,
|
220
|
+
zooms: [3, 18], // 设置地图缩放范围为3到18级
|
221
|
+
center: [110.121181, 37.088921],
|
222
|
+
});
|
223
|
+
AMap.plugin(
|
224
|
+
['AMap.ToolBar','AMap.Geolocation'], () => {
|
225
|
+
var geolocation = new AMap.Geolocation({
|
226
|
+
enableHighAccuracy: true,
|
227
|
+
showbutton: true,
|
228
|
+
timeout: 10000,
|
229
|
+
buttonOffset: new AMap.Pixel(10, 20),
|
230
|
+
buttonPosition: 'LB'
|
231
|
+
})
|
232
|
+
that.map.addControl(geolocation)
|
233
|
+
geolocation.getCurrentPosition();
|
234
|
+
that.map.addControl(new AMap.ToolBar())
|
235
|
+
});
|
236
|
+
this.map.setDefaultCursor('move');
|
237
|
+
this.infoWindow = new AMap.InfoWindow({
|
238
|
+
anchor: 'bottom-center',
|
239
|
+
autoMove:true,
|
240
|
+
content: '',
|
241
|
+
offset: new AMap.Pixel(0, -25)
|
242
|
+
})
|
243
|
+
|
244
|
+
this.level1Mulchs=new AMap.MassMarks([], {
|
245
|
+
opacity: 0.8,
|
246
|
+
zIndex: 111,
|
247
|
+
cursor: 'pointer',
|
248
|
+
style: this.styleObject[0]
|
249
|
+
});
|
250
|
+
this.level1Mulchs.on('click',function (e) {
|
251
|
+
let defectContent=that.getDefectContent(e.data.rowstr)
|
252
|
+
that.infoWindow.setContent(defectContent)
|
253
|
+
that.infoWindow.open(that.map, e.data.lnglat);
|
254
|
+
})
|
255
|
+
this.level3Mulchs=new AMap.MassMarks([], {
|
256
|
+
opacity: 0.8,
|
257
|
+
zIndex: 111,
|
258
|
+
cursor: 'pointer',
|
259
|
+
style: this.styleObject[1]
|
260
|
+
});
|
261
|
+
this.level3Mulchs.on('click',function (e) {
|
262
|
+
let defectContent=that.getDefectContent(e.data.rowstr)
|
263
|
+
that.infoWindow.setContent(defectContent)
|
264
|
+
that.infoWindow.open(that.map, e.data.lnglat);
|
265
|
+
})
|
266
|
+
this.problemsMulchs=new AMap.MassMarks([], {
|
267
|
+
opacity: 0.8,
|
268
|
+
zIndex: 111,
|
269
|
+
cursor: 'pointer',
|
270
|
+
style: this.styleObject[2]
|
271
|
+
});
|
272
|
+
this.problemsMulchs.on('click',function (e) {
|
273
|
+
let defectContent=that.getDefectContent(e.data.rowstr)
|
274
|
+
that.infoWindow.setContent(defectContent)
|
275
|
+
that.infoWindow.open(that.map, e.data.lnglat);
|
276
|
+
})
|
277
|
+
},
|
278
|
+
async safeRefresh(){
|
279
|
+
let condition =`f_longitude is not null and f_latitude is not null`
|
280
|
+
if (this.f_check_start){
|
281
|
+
condition += ` and f_offsite_time >= '${this.f_check_start} 00:00:00'`
|
282
|
+
}
|
283
|
+
if (this.f_check_end){
|
284
|
+
condition += ` and f_offsite_time <= '${this.f_check_end} 23:59:59'`
|
285
|
+
}
|
286
|
+
await this.getNewData(condition)
|
287
|
+
this.assemblyData()
|
288
|
+
}
|
289
|
+
},
|
290
|
+
destroyed() {
|
291
|
+
window.clearInterval(this.intervalNum)
|
292
|
+
}
|
293
|
+
}
|
294
|
+
</script>
|
295
|
+
|
296
|
+
<style lang="less" scoped>
|
297
|
+
|
298
|
+
.time-picker-container {
|
299
|
+
display: flex;
|
300
|
+
align-items: center;
|
301
|
+
}
|
302
|
+
|
303
|
+
.time-picker-container /deep/ .v-datepicker {
|
304
|
+
width: 100% !important;
|
305
|
+
}
|
306
|
+
|
307
|
+
.date-separator {
|
308
|
+
padding: 0 5px;
|
309
|
+
}
|
310
|
+
|
311
|
+
.safe_checkbox_sty{
|
312
|
+
vertical-align:text-bottom;
|
313
|
+
margin-right: 3px;
|
314
|
+
|
315
|
+
}
|
316
|
+
.safe_ul_sty{
|
317
|
+
list-style-type: none;
|
318
|
+
font-size: 13px;
|
319
|
+
padding-left: 5px;
|
320
|
+
}
|
321
|
+
.safe_li_sty{
|
322
|
+
font-size: 13px;
|
323
|
+
margin-top: 5px;
|
324
|
+
}
|
325
|
+
.safe_p{
|
326
|
+
white-space: nowrap;
|
327
|
+
overflow: hidden;
|
328
|
+
text-overflow: ellipsis;
|
329
|
+
margin: 0 0 0 10px;
|
330
|
+
|
331
|
+
font-size: 12px;
|
332
|
+
}
|
333
|
+
.safe_list_li{
|
334
|
+
margin-top: 5px;
|
335
|
+
background-color: #ffffff;
|
336
|
+
border: solid 1px #f0f4fa !important;
|
337
|
+
color: #666666 !important;
|
338
|
+
font-size: 1.3rem !important;
|
339
|
+
font-family: PINGFANG-MEDIUM !important;
|
340
|
+
padding: 8px;
|
341
|
+
}
|
342
|
+
.safe_list_li:hover{
|
343
|
+
background-color: rgb(203,234,241);
|
344
|
+
}
|
345
|
+
.safe_deimg{
|
346
|
+
vertical-align: text-bottom;
|
347
|
+
width: 15px;
|
348
|
+
margin-right: 3px;
|
349
|
+
}
|
350
|
+
</style>
|
@@ -304,17 +304,21 @@ export default {
|
|
304
304
|
},
|
305
305
|
delOfCheckBook(){
|
306
306
|
try {
|
307
|
-
let
|
307
|
+
let condata = {
|
308
|
+
condition :null,
|
309
|
+
bookAll:'false'
|
310
|
+
}
|
308
311
|
if (this.bookAll){
|
309
|
-
|
312
|
+
condata.bookAll = 'true'
|
313
|
+
condata.condition = this.row.id
|
310
314
|
}else if (this.bookList.length > 0){
|
311
315
|
let codes = this.bookList.map( item => { return `'${item}'` } ).join()
|
312
|
-
|
316
|
+
condata.condition = `(${codes})`
|
313
317
|
}
|
314
318
|
this.$showMessage('确认移出安检册', ['confirm', 'cancel']).then((res) => {
|
315
319
|
if (res === 'confirm') {
|
316
320
|
let http = new HttpResetClass()
|
317
|
-
http.load('POST', 'api/af-safecheck/logic/
|
321
|
+
http.load('POST', 'api/af-safecheck/logic/CheckBookUserRemove', {data:condata},
|
318
322
|
{resolveMsg: null, rejectMsg: '移出安检册失败'}).then(resp=>{
|
319
323
|
this.$showMessage('移出成功')
|
320
324
|
this.$refs.paged.$refs.criteria.search()
|
@@ -53,6 +53,7 @@
|
|
53
53
|
import {PagedList} from 'vue-client'
|
54
54
|
import Vue from "vue";
|
55
55
|
import HttpResetClass from "vue-client/src/plugins/HttpResetClass";
|
56
|
+
import {isEmpty} from "../Util";
|
56
57
|
|
57
58
|
let asyncReady = async function (self) {
|
58
59
|
// 获取配置信息
|
@@ -86,9 +87,11 @@ export default {
|
|
86
87
|
}
|
87
88
|
},
|
88
89
|
ready() {
|
89
|
-
//tag
|
90
90
|
this.rowdata = this.row
|
91
|
-
var condition =
|
91
|
+
var condition =' 1=1 '
|
92
|
+
if(!isEmpty(this.row.f_userinfo_id)){
|
93
|
+
condition+= " and f_userinfoid = '" + this.row.f_userinfo_id + "'"
|
94
|
+
}
|
92
95
|
if (this.row.filialeCon){
|
93
96
|
condition += ` and ${this.row.filialeCon}`
|
94
97
|
}
|
@@ -122,8 +125,7 @@ export default {
|
|
122
125
|
return '正常'
|
123
126
|
},
|
124
127
|
goDetail(row) {
|
125
|
-
|
126
|
-
this.$goto('new-check-paper', {f_plan_id: row.f_check_plan_id, item: row, role: 'view'}, 'self')
|
128
|
+
this.$emit('showcheckpaper',row)
|
127
129
|
}
|
128
130
|
}
|
129
131
|
}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<template>
|
2
2
|
<!--安检综合查询主界面-->
|
3
|
-
<div id="unit" class="flex-row" :class="{'binary':showItem}">
|
3
|
+
<div id="unit" class="flex-row" :class="{'binary':showItem}" v-show="showinfo1">
|
4
4
|
<div :class="{'basic-main':!showItem,'binary-left':showItem}">
|
5
5
|
<!--展示查询界面-->
|
6
6
|
<check-search-user class="flex" :tempval="hidden" :style="style" :style2="style2" @select-changed="selected"
|
@@ -9,11 +9,12 @@
|
|
9
9
|
</div>
|
10
10
|
<div class="binary-right" v-show="showItem">
|
11
11
|
<div class="flex">
|
12
|
-
<check-paper-list style="height: 100%" :row="rowData"></check-paper-list>
|
12
|
+
<check-paper-list style="height: 100%" :row="rowData" v-on:showcheckpaper="checkpapershow"></check-paper-list>
|
13
13
|
</div>
|
14
14
|
</div>
|
15
15
|
</div>
|
16
|
-
|
16
|
+
<new-check-paper v-if="showinfo2" :f_plan_id="shouinfodata.f_check_plan_id" :item="shouinfodata" :role="'view'" v-on:showback="showback1"></new-check-paper>
|
17
|
+
<new-check-paper-temp v-if="showinfo3" :f_plan_id="shouinfodata.f_check_plan_id" :item="shouinfodata" :role="'view'" v-on:showback="showback2"></new-check-paper-temp>
|
17
18
|
</template>
|
18
19
|
|
19
20
|
<script>
|
@@ -29,10 +30,35 @@ export default {
|
|
29
30
|
barwidth: '100%',
|
30
31
|
showItem: false,
|
31
32
|
rowData: {},
|
32
|
-
filialeCon: ''
|
33
|
+
filialeCon: '',
|
34
|
+
shouinfodata:{},
|
35
|
+
showinfo1:true,
|
36
|
+
showinfo2: false,
|
37
|
+
showinfo3:false
|
38
|
+
|
33
39
|
}
|
34
40
|
},
|
35
41
|
methods: {
|
42
|
+
showback1(){
|
43
|
+
this.showinfo1 = true
|
44
|
+
this.showinfo2 = false
|
45
|
+
},
|
46
|
+
showback2(){
|
47
|
+
this.showinfo1 = true
|
48
|
+
this.showinfo3 = false
|
49
|
+
},
|
50
|
+
checkpapershow(val){
|
51
|
+
val.f_upload_state = '已传'
|
52
|
+
this.shouinfodata = JSON.parse(JSON.stringify(val))
|
53
|
+
this.showinfo1 = false
|
54
|
+
if (val.f_safe_type == '已挂表未办卡安检'){
|
55
|
+
this.showinfo2 = false
|
56
|
+
this.showinfo3 = true
|
57
|
+
return
|
58
|
+
}
|
59
|
+
this.showinfo2 = true
|
60
|
+
this.showinfo3 = false
|
61
|
+
},
|
36
62
|
show() {
|
37
63
|
this.showItem = this.showItem ? false : true
|
38
64
|
},
|
@@ -189,6 +189,11 @@
|
|
189
189
|
<input type="number" class="input_search" v-model="model.f_check_version"
|
190
190
|
style="width: 60%" placeholder="到访不遇次数">
|
191
191
|
</div>
|
192
|
+
<div :class="$parent.$parent.style" v-show="$parent.$parent.criteriaShow">
|
193
|
+
<label class="font_normal_body">安检结果</label>
|
194
|
+
<input style="width: 60%" type="text" class="input_search" v-model="model.f_defect_content"
|
195
|
+
placeholder="安检结果" condition="f_defect_content like '%{}%'">
|
196
|
+
</div>
|
192
197
|
</div>
|
193
198
|
|
194
199
|
<div class="row" v-show="$parent.$parent.$parent.showItem">
|
@@ -147,24 +147,24 @@
|
|
147
147
|
<criteria partial='criteria' @condition-changed='search' v-ref:cri>
|
148
148
|
<div partial>
|
149
149
|
<form>
|
150
|
-
<div class="row app-row"
|
151
|
-
|
152
|
-
<v-select :value.sync="model.f_residential_area" class="input-font clear-select-with"
|
153
|
-
:options='$parent.$parent.residentialAreaOptions' placeholder='小区名称' :width="'32.5%'"
|
154
|
-
v-model="model.f_residential_area" condition="ti.f_residential_area = '{}'"
|
155
|
-
@change="$parent.$parent.getbuilds" close-on-select clear-button
|
156
|
-
</v-select
|
157
|
-
|
158
|
-
<v-select :value.sync="model.f_building" class="input-font" :options='$parent.$parent.buildOptions'
|
159
|
-
placeholder='楼栋' :width="'32.5%'" v-model="model.f_building" condition="ti.f_building = '{}'"
|
160
|
-
@change="$parent.$parent.getUnits" close-on-select clear-button
|
161
|
-
</v-select
|
162
|
-
|
163
|
-
<v-select :value.sync="model.f_unit" class="input-font" :options='$parent.$parent.unitOptions'
|
164
|
-
placeholder='单元' :width="'32.5%'" v-model="model.f_unit" condition="ti.f_unit = '{}'" close-on-select
|
165
|
-
clear-button
|
166
|
-
</v-select
|
167
|
-
</div
|
150
|
+
<!-- <div class="row app-row">-->
|
151
|
+
<!-- <!–小区名称–>-->
|
152
|
+
<!-- <v-select :value.sync="model.f_residential_area" class="input-font clear-select-with"-->
|
153
|
+
<!-- :options='$parent.$parent.residentialAreaOptions' placeholder='小区名称' :width="'32.5%'"-->
|
154
|
+
<!-- v-model="model.f_residential_area" condition="ti.f_residential_area = '{}'"-->
|
155
|
+
<!-- @change="$parent.$parent.getbuilds" close-on-select clear-button>-->
|
156
|
+
<!-- </v-select>-->
|
157
|
+
<!-- <!–楼栋–>-->
|
158
|
+
<!-- <v-select :value.sync="model.f_building" class="input-font" :options='$parent.$parent.buildOptions'-->
|
159
|
+
<!-- placeholder='楼栋' :width="'32.5%'" v-model="model.f_building" condition="ti.f_building = '{}'"-->
|
160
|
+
<!-- @change="$parent.$parent.getUnits" close-on-select clear-button>-->
|
161
|
+
<!-- </v-select>-->
|
162
|
+
<!-- <!–单元–>-->
|
163
|
+
<!-- <v-select :value.sync="model.f_unit" class="input-font" :options='$parent.$parent.unitOptions'-->
|
164
|
+
<!-- placeholder='单元' :width="'32.5%'" v-model="model.f_unit" condition="ti.f_unit = '{}'" close-on-select-->
|
165
|
+
<!-- clear-button>-->
|
166
|
+
<!-- </v-select>-->
|
167
|
+
<!-- </div>-->
|
168
168
|
<div class="row app-row">
|
169
169
|
<div class="col-xs-4">
|
170
170
|
<img src="../../../assets/用户ID.png" style="width: 20px;margin-bottom: 5px" alt="">
|
@@ -207,6 +207,18 @@
|
|
207
207
|
</v-select>
|
208
208
|
</div>
|
209
209
|
|
210
|
+
<div class="row app-row" v-if="$parent.$parent.criteriaShow">
|
211
|
+
<div class="col-xs-4">
|
212
|
+
<img src="../../../assets/安检状态.png" style="width: 20px;margin-bottom: 5px" alt="">
|
213
|
+
<label for="f_plan_name" class="font text-left">安检册:</label>
|
214
|
+
</div>
|
215
|
+
<v-select id="f_plan_name" :value.sync="model.f_check_book" class="input-font"
|
216
|
+
:options='$parent.$parent.checkBooks' placeholder='安检册' :width="'60%'" v-model="model.f_check_book"
|
217
|
+
@select-search="$parent.$parent.getCheckBook"
|
218
|
+
condition="f_check_book_id like '%{}%'" align="right" close-on-select clear-button>
|
219
|
+
</v-select>
|
220
|
+
</div>
|
221
|
+
|
210
222
|
<div class="row app-row" v-if="$parent.$parent.criteriaShow">
|
211
223
|
<div class="col-xs-4">
|
212
224
|
<img src="../../../assets/是否已检.png" style="width: 20px;margin-bottom: 5px" alt="">
|
@@ -645,6 +657,7 @@ export default {
|
|
645
657
|
buildOptions: [],
|
646
658
|
unitOptions: [],
|
647
659
|
planNameOptions: [],
|
660
|
+
checkBooks: [],
|
648
661
|
upcomingCount: 0,
|
649
662
|
doneCount: 0,
|
650
663
|
tempSaveCount: 0,
|
@@ -657,6 +670,7 @@ export default {
|
|
657
670
|
}
|
658
671
|
},
|
659
672
|
ready() {
|
673
|
+
this.getCheckBook()
|
660
674
|
this.getAllArea()
|
661
675
|
this.getAllPlanName()
|
662
676
|
this.selfSearch()
|
@@ -675,6 +689,29 @@ export default {
|
|
675
689
|
window.removeEventListener('popstate', this.fun, false);//false阻止默认事件
|
676
690
|
},
|
677
691
|
methods: {
|
692
|
+
getCheckBook(val){
|
693
|
+
this.checkBooks=[]
|
694
|
+
let condition = '1=1'
|
695
|
+
if (val){
|
696
|
+
condition = `f_check_book_name like '%${val}%' `
|
697
|
+
}
|
698
|
+
new HttpResetClass().load('POST', `${this.$androidUtil.getProxyUrl()}/api/af-safecheck/sql/safe_singleTable_OrderBy`, {
|
699
|
+
data: {
|
700
|
+
items: 'id,f_check_book_name,f_check_book_type',
|
701
|
+
tablename: 't_check_book',
|
702
|
+
condition: ` ${condition}`,
|
703
|
+
orderitem: 'id desc'
|
704
|
+
}
|
705
|
+
}, {resolveMsg: null, rejectMsg: null}).then(res => {
|
706
|
+
this.checkBooks.push({label: '全部', value: ''})
|
707
|
+
res.data.forEach(ress => {
|
708
|
+
this.checkBooks.push({
|
709
|
+
label: ress.f_check_book_name,
|
710
|
+
value: ress.id
|
711
|
+
})
|
712
|
+
})
|
713
|
+
})
|
714
|
+
},
|
678
715
|
scan() {
|
679
716
|
HostApp.__this__ = this,
|
680
717
|
HostApp.scanCode({ callback: "javascript:HostApp.__this__.getCode();" })
|
@@ -972,7 +1009,7 @@ export default {
|
|
972
1009
|
if (this.planName) {
|
973
1010
|
condition += " and f_plan_name like '%" + this.planName + "%'"
|
974
1011
|
} else {
|
975
|
-
if (this.$refs.paged.$refs.cri.model.f_plan_name)
|
1012
|
+
if (this.$refs.paged.$refs.cri.model.f_plan_name.length > 0)
|
976
1013
|
condition += " and f_plan_name like '%" + this.$refs.paged.$refs.cri.model.f_plan_name + "%'"
|
977
1014
|
}
|
978
1015
|
// if(this.$refs.paged.$refs.cri.model.f_plan_year)
|
@@ -1000,10 +1037,17 @@ export default {
|
|
1000
1037
|
}
|
1001
1038
|
if (this.$refs.paged.$refs.cri.model.f_enter_number)
|
1002
1039
|
condition += " and ti.f_enter_number like '%" + this.$refs.paged.$refs.cri.model.f_enter_number + "%'"
|
1040
|
+
if (this.$refs.paged.$refs.cri.model.f_check_book.length > 0){
|
1041
|
+
if (this.$refs.paged.$refs.cri.model.f_plan_name.length > 0 || this.planName){
|
1042
|
+
condition += " and ti.f_check_book_id like '%" + this.$refs.paged.$refs.cri.model.f_check_book + "%'"
|
1043
|
+
}else {
|
1044
|
+
this.$showMessage("使用安检册筛选项必须选择计划名称")
|
1045
|
+
return
|
1046
|
+
}
|
1047
|
+
}
|
1003
1048
|
if (this.$refs.paged.$refs.cri.model.f_check_version)
|
1004
|
-
condition += " and ti.f_check_version
|
1005
|
-
|
1006
|
-
this.model.search("((f_complete = '' or f_complete = null or f_complete = '未完成') or (f_state = '未检') or (f_last_check_state = '到访不遇' or f_last_check_state = '拒检')) and ti.f_no_checkplan = '有计划安检'" + condition)
|
1049
|
+
condition += " and ti.f_check_version = " + this.$refs.paged.$refs.cri.model.f_check_version
|
1050
|
+
this.model.search("((f_complete = '' or f_complete = null or f_complete = '未完成') or (f_state = '未检') or (f_last_check_state = '到访不遇' )) and ti.f_no_checkplan = '有计划安检'" + condition)
|
1007
1051
|
|
1008
1052
|
},
|
1009
1053
|
getNewOrder() {
|
@@ -20,11 +20,10 @@
|
|
20
20
|
<div :class="$parent.$parent.style">
|
21
21
|
<label class="font_normal_body">安检册名称</label>
|
22
22
|
<v-select :value.sync="model.f_check_book_id" v-model='model.f_check_book_id'
|
23
|
-
:
|
23
|
+
:multiple="true" style="width: 60%"
|
24
24
|
class="select_list select"
|
25
25
|
:options='$parent.$parent.checkBooks' placeholder='安检册名称'
|
26
|
-
|
27
|
-
condition="tcb.id ='{}'"></v-select>
|
26
|
+
condition="tcb.id in {}"></v-select>
|
28
27
|
</div>
|
29
28
|
<!-- <div :class="$parent.$parent.style">-->
|
30
29
|
<!-- <label class="font_normal_body">表册类型</label>-->
|
@@ -46,6 +45,7 @@
|
|
46
45
|
<!-- </div>-->
|
47
46
|
<div :class="$parent.$parent.style" style="width: auto;margin-top:8px;float: right">
|
48
47
|
<button type="button" class="button_search button_spacing" @click="search()">查询</button>
|
48
|
+
<button type="button" class="button_search button_spacing" @click="$parent.$parent.clean()">重置</button>
|
49
49
|
<button type="button" class="button_new button_spacing" @click="$parent.$parent.add()">新增安检册</button>
|
50
50
|
<button type="button" class="button_new button_spacing" @click="$parent.$parent.showModal = true">安检册用户管理</button>
|
51
51
|
<div style="float: right" class="button_spacing"
|
@@ -73,13 +73,12 @@
|
|
73
73
|
</div>
|
74
74
|
|
75
75
|
<div :class="$parent.$parent.style">
|
76
|
-
<label class="font_normal_body"
|
76
|
+
<label class="font_normal_body">安检册名称</label>
|
77
77
|
<v-select :value.sync="model.f_check_book_id" v-model='model.f_check_book_id'
|
78
|
-
:
|
78
|
+
:multiple="true" style="width: 60%"
|
79
79
|
class="select_list select"
|
80
80
|
:options='$parent.$parent.checkBooks' placeholder='安检册名称'
|
81
|
-
|
82
|
-
condition="tcb.id ='{}'"></v-select>
|
81
|
+
condition="tcb.id in {}"></v-select>
|
83
82
|
</div>
|
84
83
|
<div :class="$parent.$parent.style" style="width: auto;margin-top:8px;float: right">
|
85
84
|
<button type="button" class="button_search button_spacing" @click="search()">查询</button>
|
@@ -257,6 +256,10 @@ export default {
|
|
257
256
|
bus.$off('fresh-main')
|
258
257
|
},
|
259
258
|
methods: {
|
259
|
+
clean(){
|
260
|
+
this.$refs.paged.$refs.criteria.model.f_checker_id = ''
|
261
|
+
this.$refs.paged.$refs.criteria.model.f_check_book_id = []
|
262
|
+
},
|
260
263
|
getchecker(val){
|
261
264
|
this.$refs.paged.$refs.criteria.model.f_checker_id = ''
|
262
265
|
if(val && val.length > 0){
|