safecheck-client 3.0.39-8 → 3.0.39-81
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 +5 -5
- package/src/App.vue +31 -26
- package/src/assets//345/256/232/344/275/215.png +0 -0
- package/src/components/Util/ImgSelfSafePlus.vue +2 -2
- package/src/components/android/AndroidDefectDeal.vue +2 -2
- package/src/components/android/NewCheckpaperAndroid.vue +2 -2
- package/src/components/android/PhoneUpUserinfo.vue +11 -0
- package/src/components/android/rejectInspecCheck.vue +322 -0
- package/src/components/pc/AddPlanItemYyChange.vue +5 -1
- package/src/components/pc/NewCheckpaper.vue +108 -14
- package/src/components/pc/NewCheckpaperTemp.vue +1308 -1295
- package/src/components/pc/PaperDefectMain.vue +1 -1
- package/src/components/pc/RoleSelector.vue +172 -172
- package/src/components/pc/SafeCheckOrder/SafeCheckOrderList.vue +34 -0
- package/src/components/rongcheng/AddPlanItem.vue +344 -344
- package/src/components/rongcheng/CheckCurrentCreate.vue +1081 -1081
- package/src/components/rongcheng/PaperDefectMain.vue +828 -828
- package/src/components/rongcheng/PaperStatem.vue +6 -6
- package/src/components/rongcheng/PhoneUpUserinfo.vue +1 -0
- package/src/filiale/BFshiye/android/AndroidDefectDeal.vue +652 -0
- package/src/filiale/BFshiye/android/PhoneUpUserinfo.vue +3 -1
- package/src/filiale/BFshiye/android/SafecheckUserInfo.vue +2 -2
- package/src/filiale/BFshiye/pc/DefectListNew.vue +637 -0
- package/src/filiale/BFshiye/pc/NewCheckpaper.vue +18 -56
- package/src/filiale/BFshiye/pc/checkUserList.vue +772 -772
- package/src/filiale/BFshiye/pc.js +17 -16
- package/src/filiale/baiyin/android/SafecheckUserInfo.vue +775 -0
- package/src/filiale/baiyin/android.js +12 -11
- package/src/filiale/bayan/pc/NewCheckpaper.vue +2 -2
- package/src/filiale/bayan/pc/SelectAreaReport.vue +1 -0
- package/src/filiale/bayan/pc/SummaryOfSecurityInspectionProgress.vue +7 -7
- package/src/filiale/dexin/android/SafecheckDevicesTemp.vue +1419 -1360
- package/src/filiale/dexin/android/SafecheckOrderV.vue +1 -1
- package/src/filiale/dexin/android/SafecheckOrderVTemp.vue +4 -1
- package/src/filiale/dexin/pc/PaperList.vue +840 -840
- package/src/filiale/hanzhong/pc/CheckHiddenDanger.vue +2 -2
- package/src/filiale/hanzhong/pc/CheckNumberStatistics.vue +1 -1
- package/src/filiale/hanzhong/pc/CheckSafeDetail.vue +6 -1
- package/src/filiale/hanzhong/pc/CheckSafeStatus.vue +1 -1
- package/src/filiale/hanzhong/pc/CheckerSafeDetail.vue +1 -1
- package/src/filiale/huatong/android/SafecheckOrderV.vue +2 -2
- package/src/filiale/jiaocheng/android/AddPlanItem.vue +20 -0
- package/src/filiale/jiaocheng/android/CurrentCreate.vue +1083 -0
- package/src/filiale/jiaocheng/android.js +1 -0
- package/src/filiale/jiaocheng/pc/CheckSearchUser.vue +18 -1
- package/src/filiale/jiaocheng/pc/NewCheckpaper.vue +64 -4
- package/src/filiale/jiaocheng/pc/PaperList.vue +803 -0
- package/src/filiale/jiaocheng/pc.js +1 -0
- package/src/filiale/jinhuang/android/AddPlanItem.vue +430 -0
- package/src/filiale/jinhuang/android/PhoneUpUserinfo.vue +183 -145
- package/src/filiale/jinhuang/android.js +2 -1
- package/src/filiale/kelai/android/PaperFeedback.vue +1553 -1550
- package/src/filiale/kelai/android/PhoneUpUserinfo.vue +1 -1
- package/src/filiale/kelai/android/SafecheckOrderV.vue +1 -1
- package/src/filiale/kelai/android/SafecheckUserInfo.vue +1 -1
- package/src/filiale/kelai/pc/PaperList.vue +13 -0
- package/src/filiale/kelai/pc/UserInfoAudit.vue +126 -90
- package/src/filiale/liaoyuan/pc/DefectPaperWeiXiu.vue +4 -6
- package/src/filiale/liaoyuan/pc/NewCheckpaper.vue +7 -7
- package/src/filiale/liaoyuan/pc/checkPlanList.vue +2 -3
- package/src/filiale/qingjian/android/PhoneUpUserinfo.vue +1357 -1270
- package/src/filiale/qingjian/android/SafecheckDevices.vue +1 -1
- package/src/filiale/qingjian/android/SafecheckOrderV.vue +3 -0
- package/src/filiale/qingjian/android/SafecheckUserInfo.vue +823 -800
- package/src/filiale/qingjian/pc/NewCheckpaper.vue +1919 -1919
- package/src/filiale/rongchuang/android/AddPlanItemVisitingWithoutMeeting.vue +454 -0
- package/src/filiale/rongchuang/android/AddPlanItemYy.vue +498 -0
- package/src/filiale/rongchuang/android/PhoneUpUserinfo.vue +1262 -0
- package/src/filiale/rongchuang/android/SafecheckDevices.vue +1 -1
- package/src/filiale/rongchuang/android/SafecheckOrderV.vue +3 -2
- package/src/filiale/rongchuang/android.js +3 -0
- package/src/filiale/rongchuang/pc/NewCheckpaper.vue +13 -1
- package/src/filiale/rongchuang/pc/checkPlanList.vue +398 -0
- package/src/filiale/rongchuang/pc.js +18 -17
- package/src/filiale/shanxian/pc/NewCheckpaper.vue +4 -4
- package/src/filiale/siyang/android/PhoneInsurancePurchaseDetail.vue +532 -498
- package/src/filiale/tongchuan/android/PhoneUpUserinfo.vue +888 -889
- package/src/filiale/tongchuan/android/SafecheckDevices.vue +909 -885
- package/src/filiale/tongchuan/pc/AMapTrailShowZk.vue +226 -0
- package/src/filiale/tongchuan/pc/CheckPlanCountChartAreaByWangGeYuan.vue +137 -0
- package/src/filiale/tongchuan/pc/CheckSearchUser.vue +47 -1
- package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +46 -0
- package/src/filiale/tongchuan/pc/NoCheckplanSafecheck.vue +34 -0
- package/src/filiale/tongchuan/pc/PaperDefectMain.vue +34 -0
- package/src/filiale/tongchuan/pc/PaperList.vue +44 -10
- package/src/filiale/tongchuan/pc/PersonTrack.vue +269 -0
- package/src/filiale/tongchuan/pc/SelectCheckPlan.vue +42 -2
- package/src/filiale/tongchuan/pc.js +3 -0
- package/src/filiale/wensu/android/SafecheckOrderV.vue +2444 -2444
- package/src/filiale/wensu/android/SafecheckUserInfo.vue +712 -712
- package/src/filiale/wensu/pc/CheckSearchUser.vue +1251 -1251
- package/src/filiale/wenxi/pc/PaperList.vue +9 -3
- package/src/filiale/wuan/android/SafecheckOrderV.vue +2242 -2242
- package/src/filiale/wuan/android/SafecheckUserInfo.vue +659 -659
- package/src/filiale/yangchunboneng/android/AndiroidSecurityAudit.vue +2 -1
- package/src/filiale/yangchunboneng/android/CurrentCreate.vue +1191 -1191
- package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +913 -913
- package/src/filiale/yangchunboneng/android.js +21 -21
- package/src/filiale/yangchunboneng/pc/CheckBookList.vue +353 -353
- package/src/filiale/yangchunboneng/pc/CheckPlanAreaList.vue +3 -3
- package/src/filiale/yangchunboneng/pc/CheckSearchUser.vue +1197 -1197
- package/src/filiale/yangchunboneng/pc/HiddenSituation.vue +171 -171
- package/src/filiale/yangchunboneng/pc/PaperDefectMain.vue +1112 -1112
- package/src/filiale/yangchunboneng/pc/PaperList.vue +757 -757
- package/src/filiale/yangchunboneng/pc/SelectCheckPlan.vue +331 -331
- package/src/filiale/yangchunboneng/pc.js +29 -29
- package/src/main.js +33 -33
- package/src/rongcheng.js +319 -319
- package/src/safecheck-android.js +316 -315
- package/yarn-error.log +0 -140
|
@@ -170,16 +170,6 @@
|
|
|
170
170
|
<!-- <right-tree @re-res="$parent.$parent.getRes" :initresid="$parent.$parent.$login.f.orgid">-->
|
|
171
171
|
<!-- </right-tree>-->
|
|
172
172
|
<!-- </div>-->
|
|
173
|
-
<div class="col-sm-4 form-group" v-show="$parent.$parent.criteriaShow" style="margin: 0">
|
|
174
|
-
<role-selector-safe
|
|
175
|
-
role-name="安检员"
|
|
176
|
-
role-lable="安 检 员 "
|
|
177
|
-
@re-res="$parent.$parent.getRes"
|
|
178
|
-
:value.sync="model.f_checker_id"
|
|
179
|
-
v-model="model.f_checker_id"
|
|
180
|
-
condition="f_checker_name = '{}'">
|
|
181
|
-
</role-selector-safe>
|
|
182
|
-
</div>
|
|
183
173
|
<div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
|
|
184
174
|
<label class="font_normal_body">操作人员</label>
|
|
185
175
|
<input type="text" class="input_search" v-model="model.f_checker"
|
|
@@ -222,6 +212,28 @@
|
|
|
222
212
|
:value-single="true">
|
|
223
213
|
</v-select>
|
|
224
214
|
</div>
|
|
215
|
+
<div class="form-group col-sm-2" v-show="$parent.$parent.criteriaShow">
|
|
216
|
+
<label class="font_normal_body">网 格 员</label>
|
|
217
|
+
<v-select class="select_list select"
|
|
218
|
+
placeholder='请选择' style="width: 60%"
|
|
219
|
+
:value.sync="model.f_book_checker" v-model="model.f_book_checker"
|
|
220
|
+
:options='$parent.$parent.users'
|
|
221
|
+
filer-key="name"
|
|
222
|
+
close-on-select clear-button
|
|
223
|
+
condition="f_book_checker like '%{}%' and f_checker_name = '{}'"
|
|
224
|
+
:value-single="true">
|
|
225
|
+
</v-select>
|
|
226
|
+
</div>
|
|
227
|
+
<div class="col-sm-4 form-group" v-show="$parent.$parent.criteriaShow" style="margin: 0">
|
|
228
|
+
<role-selector-safe
|
|
229
|
+
role-name="安检员"
|
|
230
|
+
role-lable="安 检 员 "
|
|
231
|
+
@re-res="$parent.$parent.getRes"
|
|
232
|
+
:value.sync="model.f_checker_id"
|
|
233
|
+
v-model="model.f_checker_id"
|
|
234
|
+
condition="f_checker_name = '{}'">
|
|
235
|
+
</role-selector-safe>
|
|
236
|
+
</div>
|
|
225
237
|
</div>
|
|
226
238
|
<modal :show.sync="$parent.$parent.showModal" v-ref:modal backdrop="false">
|
|
227
239
|
<div slot="modal-header" class="modal-header">
|
|
@@ -432,6 +444,7 @@ export default {
|
|
|
432
444
|
value: ''
|
|
433
445
|
}, ...this.$appdata.getParam('安检状态')] : [{label: '全部', value: ''}],
|
|
434
446
|
f_checkplans: this.$appdata.getParam('有无计划'),
|
|
447
|
+
users:[{label: '全部', value: ''}],
|
|
435
448
|
showcheckmsg: false,
|
|
436
449
|
checkInfo: {},
|
|
437
450
|
orderDefault: "'f_offsite_time'",
|
|
@@ -629,6 +642,26 @@ export default {
|
|
|
629
642
|
})
|
|
630
643
|
})
|
|
631
644
|
},
|
|
645
|
+
initBookChecker(){
|
|
646
|
+
new HttpResetClass().load('POST', '/rs/search', {
|
|
647
|
+
data: {
|
|
648
|
+
source: `root.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($网格员$) != -1)`,
|
|
649
|
+
userid: this.$login.f.id
|
|
650
|
+
}
|
|
651
|
+
}, {resolveMsg: null, rejectMsg: null}).then(res=>{
|
|
652
|
+
let data = res.data
|
|
653
|
+
const addedNames = new Set()
|
|
654
|
+
this.users = []
|
|
655
|
+
data.forEach(user => {
|
|
656
|
+
if (user.state === '在职') {
|
|
657
|
+
if (!addedNames.has(user.name)) {
|
|
658
|
+
this.users.push({ label: user.name, value: user.name })
|
|
659
|
+
addedNames.add(user.name)
|
|
660
|
+
}
|
|
661
|
+
}
|
|
662
|
+
});
|
|
663
|
+
})
|
|
664
|
+
}
|
|
632
665
|
},
|
|
633
666
|
|
|
634
667
|
ready() {
|
|
@@ -641,6 +674,7 @@ export default {
|
|
|
641
674
|
this.Mreadibook(`('${this.$login.f.orgid}')`)
|
|
642
675
|
co(gen)
|
|
643
676
|
this.getTableBrands()
|
|
677
|
+
this.initBookChecker()
|
|
644
678
|
},
|
|
645
679
|
watch: {
|
|
646
680
|
'model.f_no_checkplan'(val) {
|
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="basic-main" style="height: 100%">
|
|
3
|
+
<div class="row">
|
|
4
|
+
<div class="col-sm-9 amap-main">
|
|
5
|
+
<div class="form-horizontal select-overspread container-fluid auto">
|
|
6
|
+
<div class="row">
|
|
7
|
+
<div class="col-sm-3 form-input-group" style="width: 20%">
|
|
8
|
+
<label class="control-label">公  司</label>
|
|
9
|
+
<right-tree-safe @re-res="getRes" >
|
|
10
|
+
</right-tree-safe>
|
|
11
|
+
</div>
|
|
12
|
+
<div class="col-sm-3 form-input-group" style="width: 20%">
|
|
13
|
+
<label class="control-label" >轨迹时间</label>
|
|
14
|
+
<datepicker placeholder="轨迹时间"
|
|
15
|
+
:value.sync="searchCondition.date"
|
|
16
|
+
v-model="searchCondition.date"
|
|
17
|
+
:format="'yyyy-MM-dd'">
|
|
18
|
+
</datepicker>
|
|
19
|
+
</div>
|
|
20
|
+
<div class="col-sm-3 form-input-group" style="width: 20%">
|
|
21
|
+
<label class="control-label">安检员</label>
|
|
22
|
+
<v-select :value.sync="searchCondition.userId" v-model='searchCondition.userId'
|
|
23
|
+
:value-single="true" clear-button search
|
|
24
|
+
:options='searchUserEndOption' placeholder='请选择'
|
|
25
|
+
></v-select>
|
|
26
|
+
</div>
|
|
27
|
+
<div class="col-sm-3 form-input-group" style="width: 20%">
|
|
28
|
+
<label class="control-label">班组</label>
|
|
29
|
+
<v-select :value.sync="searchCondition.departmentId" v-model='searchCondition.departmentId'
|
|
30
|
+
:value-single="true" clear-button search
|
|
31
|
+
:options='searchDepartmentOption' placeholder='请选择'
|
|
32
|
+
></v-select>
|
|
33
|
+
</div>
|
|
34
|
+
<div class="col-sm-3 form-input-group" style="width: 20%">
|
|
35
|
+
<label class="control-label">网格员</label>
|
|
36
|
+
<v-select class="select_list select"
|
|
37
|
+
placeholder='请选择' style="width: 60%"
|
|
38
|
+
:value.sync="f_book_checker" v-model="f_book_checker"
|
|
39
|
+
:options='users'
|
|
40
|
+
filer-key="name"
|
|
41
|
+
close-on-select clear-button
|
|
42
|
+
:value-single="true">
|
|
43
|
+
</v-select>
|
|
44
|
+
</div>
|
|
45
|
+
<div class="col-sm-3 form-input-group" style="width: 20%;float:right;">
|
|
46
|
+
<button class="btn btn-primary" @click="search">查询</button>
|
|
47
|
+
</div>
|
|
48
|
+
</div>
|
|
49
|
+
</div>
|
|
50
|
+
<a-map-trajectory-new :outerlinedata.sync="outerlinedata" :pathnavigatorstyle="pathnavigatorstyle" :dom="dom"></a-map-trajectory-new>
|
|
51
|
+
</div>
|
|
52
|
+
<div class="col-sm-3">
|
|
53
|
+
<div id="zzz" class="basic-main" style="flex:1;margin-left: 0px;overflow: hidden">
|
|
54
|
+
<div class="flex">
|
|
55
|
+
<div class="panel panel-info" style="flex: 4;margin-top:0px;height: 50%">
|
|
56
|
+
<div class="panel-heading" style="height: auto">
|
|
57
|
+
<h3 class="panel-title">轨迹记录</h3>
|
|
58
|
+
</div>
|
|
59
|
+
<div class="panel-body" style="overflow: scroll; height: 700px">
|
|
60
|
+
<accordion :one-at-a-time="true" v-if="reponData.length>0">
|
|
61
|
+
<template v-for="row in reponData">
|
|
62
|
+
<panel is-open="false" type="primary" @click="chengeLocation(row)">
|
|
63
|
+
<strong slot="header">人员姓名:{{row.name}}</strong>
|
|
64
|
+
<!-- <div v-for="(idx,item) in row.result" @click="chengeLocation(item)" :class="{'alert alert-info':idx%2===0,'alert alert-success':idx%2!==0}">-->
|
|
65
|
+
<!-- 轨迹时间段:{{item.f_start_date}} ~ {{item.f_end_date}}-->
|
|
66
|
+
<!-- </div>-->
|
|
67
|
+
</panel>
|
|
68
|
+
</template>
|
|
69
|
+
</accordion>
|
|
70
|
+
<h4 class="panel-title" v-else>暂无相关数据</h4>
|
|
71
|
+
</div>
|
|
72
|
+
</div>
|
|
73
|
+
</div>
|
|
74
|
+
</div>
|
|
75
|
+
</div>
|
|
76
|
+
</div>
|
|
77
|
+
|
|
78
|
+
</div>
|
|
79
|
+
</template>
|
|
80
|
+
|
|
81
|
+
<script>
|
|
82
|
+
import {HttpResetClass} from 'vue-client'
|
|
83
|
+
import { douglasPeuckerForAMap } from '../../../components/map/douglasPeuckerForAMap'
|
|
84
|
+
|
|
85
|
+
export default {
|
|
86
|
+
title: "安检员轨迹展示",
|
|
87
|
+
data() {
|
|
88
|
+
return {
|
|
89
|
+
showTaskPoints: [],
|
|
90
|
+
taskModel: {},
|
|
91
|
+
// 当前分公司下所有的用户id
|
|
92
|
+
toUserIds: '',
|
|
93
|
+
// 当前公司的所有安检员
|
|
94
|
+
searchUserEndOption: [],
|
|
95
|
+
searchDepartmentOption: [],
|
|
96
|
+
// 请求到的结果集合
|
|
97
|
+
reponData: [],
|
|
98
|
+
// 点集
|
|
99
|
+
outerlinedata: [],
|
|
100
|
+
pathnavigatorstyle: {
|
|
101
|
+
// 图标宽度
|
|
102
|
+
width: 16,
|
|
103
|
+
// 图标高度
|
|
104
|
+
height: 32,
|
|
105
|
+
// 图标地址(外链地址或者Base64)
|
|
106
|
+
iconBase64: 'https://webapi.amap.com/ui/1.1/ui/misc/PathSimplifier/examples/imgs/car.png'
|
|
107
|
+
},
|
|
108
|
+
// 分公司ids
|
|
109
|
+
f_filialeids: '',
|
|
110
|
+
path: [],
|
|
111
|
+
aMap: null,
|
|
112
|
+
map: null,
|
|
113
|
+
filialeOptions: [],
|
|
114
|
+
userid: null,
|
|
115
|
+
dom: 'amapIdLOCUS' + Math.round(Math.random() * 10) + Math.round(Math.random() * 10),
|
|
116
|
+
rootSubmenuKeys: ['1', '2'],
|
|
117
|
+
users:[{label: '全部', value: ''}],
|
|
118
|
+
f_book_checker:'',
|
|
119
|
+
openKeys: ['1'],
|
|
120
|
+
searchCondition: {
|
|
121
|
+
condition: '1 = 1',
|
|
122
|
+
orderTime: 'ps.f_realtime asc',
|
|
123
|
+
date: '',
|
|
124
|
+
userId: undefined,
|
|
125
|
+
departmentId: undefined
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
},
|
|
129
|
+
methods: {
|
|
130
|
+
chengeLocation(row) {
|
|
131
|
+
const points = douglasPeuckerForAMap(row.points, 2, 'tm')
|
|
132
|
+
this.outerlinedata = [{ path: points, speed: Math.ceil(points.length / 2), name: `${this.searchCondition.date}的轨迹` }]
|
|
133
|
+
},
|
|
134
|
+
search() {
|
|
135
|
+
var condition = '1 = 1'
|
|
136
|
+
if (!this.f_filialeids) {
|
|
137
|
+
return this.$showMessage('请选择需要查询的分公司')
|
|
138
|
+
}
|
|
139
|
+
if (!this.searchCondition.date) {
|
|
140
|
+
return this.$showMessage('请选择需要查看的轨迹时间')
|
|
141
|
+
}
|
|
142
|
+
// if (!this.searchCondition.userId[0]) {
|
|
143
|
+
// return this.$showMessage('请选择需要查看的轨迹所属人员')
|
|
144
|
+
// }
|
|
145
|
+
|
|
146
|
+
if (typeof this.searchCondition.date !== 'string') {
|
|
147
|
+
this.searchCondition.date = this.searchCondition.date.format('YYYY-MM-DD')
|
|
148
|
+
}
|
|
149
|
+
condition += " and ps.f_realtime >= '" + this.searchCondition.date + " 00:00:00' and ps.f_realtime <= '" + this.searchCondition.date + " 23:59:59'"
|
|
150
|
+
let userIds = []
|
|
151
|
+
if (this.searchCondition.userId && !userIds.includes(this.searchCondition.userId)) {
|
|
152
|
+
userIds.push(this.searchCondition.userId)
|
|
153
|
+
}
|
|
154
|
+
if (this.f_book_checker && !userIds.includes(this.f_book_checker)) {
|
|
155
|
+
userIds.push(this.f_book_checker)
|
|
156
|
+
}
|
|
157
|
+
if (userIds.length > 0) {
|
|
158
|
+
const idsStr = userIds.map(id => `'${id}'`).join(',')
|
|
159
|
+
condition += ` and ps.f_user_id in (${idsStr})`
|
|
160
|
+
}
|
|
161
|
+
let condition2 = '1 = 1'
|
|
162
|
+
if(this.searchCondition.departmentId){
|
|
163
|
+
condition2 += ` and d.id = '${this.searchCondition.departmentId}'`
|
|
164
|
+
}
|
|
165
|
+
this.searchCondition.condition = condition
|
|
166
|
+
this.$resetpost('rs/logic/getPhoneState', { condition: this.searchCondition.condition, condition2, orderTime: this.searchCondition.orderTime }, {resolveMsg: "轨迹记录查询成功", rejectMsg: "轨迹记录查询失败"}).then((response)=>{
|
|
167
|
+
if (response.data.state === 'success') {
|
|
168
|
+
this.reponData = response.data.result
|
|
169
|
+
// const points = douglasPeuckerForAMap(response.data.result, 2, 'tm')
|
|
170
|
+
// this.outerlinedata = [{ path: points, speed: Math.ceil(points.length / 2), name: `${this.searchCondition.date}的轨迹` }]
|
|
171
|
+
} else {
|
|
172
|
+
this.$showMessage("该用户当日使用app时间较短或行程较少,不足够生成轨迹")
|
|
173
|
+
}
|
|
174
|
+
})
|
|
175
|
+
},
|
|
176
|
+
getRes(obj){
|
|
177
|
+
// this.model.f_filialeids = this.$login.convertToIn(obj.resids);
|
|
178
|
+
if (obj.res != undefined && obj.res.length > 0 && obj.res[0] != undefined) {
|
|
179
|
+
this.getNewData(obj.res[0])
|
|
180
|
+
}
|
|
181
|
+
this.f_filialeids = this.$login.convertToIn(obj.resids);
|
|
182
|
+
},
|
|
183
|
+
//获取定位人员类表
|
|
184
|
+
async getNewData(organization){
|
|
185
|
+
// let organization = '公司名称'
|
|
186
|
+
// let userRolestr = '需要定位人员'
|
|
187
|
+
let userRolestr = '安检员'
|
|
188
|
+
let res =await new HttpResetClass().load('POST', '/rs/search', {
|
|
189
|
+
// source: 'this.getParentByType($department$).getAllChildrens().where(row.getAttributes().get($rolestr$).indexOf($需要定位人员$) != -1))',
|
|
190
|
+
source: "this.getParentByName($"+organization+"$).getAllChildrens().where(row.getAttributes().get($resourcetype$)==$user$).where(row.getAttributes().get($rolestr$)!=null).where(row.getAttributes().get($rolestr$).indexOf($"+userRolestr+"$)!=-1)",
|
|
191
|
+
userid: this.$login.f.id
|
|
192
|
+
}, {resolveMsg: null, rejectMsg: null})
|
|
193
|
+
let dataEnd = [{label:'全部',value:''}]
|
|
194
|
+
let idsEnd = []
|
|
195
|
+
res.data.forEach(res=>{
|
|
196
|
+
let h=true
|
|
197
|
+
dataEnd.forEach(per=>{
|
|
198
|
+
if(res.id==per.value){
|
|
199
|
+
h=false
|
|
200
|
+
}
|
|
201
|
+
})
|
|
202
|
+
if(h){
|
|
203
|
+
dataEnd.push({label:res.name,value:res.id})
|
|
204
|
+
idsEnd.push(res.id)
|
|
205
|
+
}
|
|
206
|
+
})
|
|
207
|
+
this.toUserIds = this.$login.convertToIn(idsEnd); //所有的员工ID
|
|
208
|
+
this.searchUserEndOption = dataEnd
|
|
209
|
+
|
|
210
|
+
let resp = await new HttpResetClass().load('POST', `/rs/sql/safe_singleTable_OrderBy`, {
|
|
211
|
+
data: {
|
|
212
|
+
items:'*',
|
|
213
|
+
tablename: 't_department',
|
|
214
|
+
condition: `parentid = '${this.$login.f.orgid}' and f_dep_type = '部门'`,
|
|
215
|
+
orderitem:'id'
|
|
216
|
+
}
|
|
217
|
+
}, {resolveMsg: null, rejectMsg: null})
|
|
218
|
+
//tag)
|
|
219
|
+
const departments = [{label: '全部', value: ''}]
|
|
220
|
+
for (const item of resp.data) {
|
|
221
|
+
departments.push({
|
|
222
|
+
label: item.name,
|
|
223
|
+
value: item.id
|
|
224
|
+
})
|
|
225
|
+
}
|
|
226
|
+
this.searchDepartmentOption = departments
|
|
227
|
+
},
|
|
228
|
+
toStandardDateString () {
|
|
229
|
+
const dt = new Date()
|
|
230
|
+
const month = dt.getMonth() + 1
|
|
231
|
+
const date = dt.getDate()
|
|
232
|
+
return dt.getFullYear() + '-' + (month < 10 ? '0' + month : month) + '-' + (date < 10 ? '0' + date : date)
|
|
233
|
+
},
|
|
234
|
+
initBookChecker(){
|
|
235
|
+
new HttpResetClass().load('POST', '/rs/search', {
|
|
236
|
+
data: {
|
|
237
|
+
source: `root.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($网格员$) != -1)`,
|
|
238
|
+
userid: this.$login.f.id
|
|
239
|
+
}
|
|
240
|
+
}, {resolveMsg: null, rejectMsg: null}).then(res=>{
|
|
241
|
+
let data = res.data
|
|
242
|
+
const addedNames = new Set()
|
|
243
|
+
this.users = []
|
|
244
|
+
data.forEach(user => {
|
|
245
|
+
if (user.state === '在职') {
|
|
246
|
+
if (!addedNames.has(user.name)) {
|
|
247
|
+
this.users.push({label:user.name,value:user.id})
|
|
248
|
+
addedNames.add(user.name)
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
})
|
|
252
|
+
console.log(this.users)
|
|
253
|
+
})
|
|
254
|
+
},
|
|
255
|
+
|
|
256
|
+
},
|
|
257
|
+
ready(){
|
|
258
|
+
this.searchCondition.date = this.toStandardDateString()
|
|
259
|
+
this.initBookChecker()
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
</script>
|
|
263
|
+
|
|
264
|
+
<style lang="less" scoped>
|
|
265
|
+
.amap-main {
|
|
266
|
+
height: 90%;
|
|
267
|
+
padding-right:10px;
|
|
268
|
+
}
|
|
269
|
+
</style>
|
|
@@ -59,6 +59,17 @@
|
|
|
59
59
|
:show-rest-button="reset">
|
|
60
60
|
</datepicker>
|
|
61
61
|
</div>
|
|
62
|
+
<div :class="{'form-group col-sm-3':$parent.$parent.$parent.showItem,'form-group col-sm-2':!$parent.$parent.$parent.showItem}">
|
|
63
|
+
<label class="font_normal_body">网 格 员</label>
|
|
64
|
+
<v-select class="select_list select"
|
|
65
|
+
placeholder='请选择' style="width: 60%"
|
|
66
|
+
:value.sync="model.f_book_checker" v-model="model.f_book_checker"
|
|
67
|
+
:options='$parent.$parent.users'
|
|
68
|
+
filer-key="name"
|
|
69
|
+
close-on-select clear-button
|
|
70
|
+
:value-single="true">
|
|
71
|
+
</v-select>
|
|
72
|
+
</div>
|
|
62
73
|
<!--<div :class="{'form-group col-sm-3':$parent.$parent.$parent.showItem,'form-group col-sm-2':!$parent.$parent.$parent.showItem}" v-if="$parent.$parent.criteriaShow">-->
|
|
63
74
|
<!--<label class="font_normal_body">安检起始</label>-->
|
|
64
75
|
<!--<datepicker-->
|
|
@@ -144,6 +155,7 @@
|
|
|
144
155
|
</template>
|
|
145
156
|
<script>
|
|
146
157
|
import {PagedList} from 'vue-client'
|
|
158
|
+
import HttpResetClass from "vue-client/src/plugins/HttpResetClass";
|
|
147
159
|
|
|
148
160
|
|
|
149
161
|
export default {
|
|
@@ -184,6 +196,7 @@
|
|
|
184
196
|
f_start_time:'',
|
|
185
197
|
f_end_time:''
|
|
186
198
|
},
|
|
199
|
+
users:[{label: '全部', value: ''}],
|
|
187
200
|
checker: this.$login.f,
|
|
188
201
|
checkers: [],
|
|
189
202
|
checkersname: [],
|
|
@@ -225,10 +238,16 @@
|
|
|
225
238
|
condition2 += ` AND f_offsite_time <= '${this.f_end_time} 23:59:59'`
|
|
226
239
|
}
|
|
227
240
|
if (this.$refs.paged.$refs.cri.model.f_checker_id){
|
|
228
|
-
debugger
|
|
229
241
|
condition3 += ` AND f_checker in ${this.$refs.paged.$refs.cri.model.f_checker_id} `
|
|
230
|
-
condition2 += ` AND f_checker_name in ${this.$refs.paged.$refs.cri.model.f_checker_id} `
|
|
242
|
+
condition2 += ` AND tcp.f_checker_name in ${this.$refs.paged.$refs.cri.model.f_checker_id} `
|
|
231
243
|
}
|
|
244
|
+
|
|
245
|
+
if (this.$refs.paged.$refs.cri.model.f_book_checker){
|
|
246
|
+
condition3 += ` AND f_checker = '${this.$refs.paged.$refs.cri.model.f_book_checker}' `
|
|
247
|
+
condition2 += ` AND tcp.f_checker_name = '${this.$refs.paged.$refs.cri.model.f_book_checker}' `
|
|
248
|
+
condition2 += ` AND tcb.f_checker_name like '%${this.$refs.paged.$refs.cri.model.f_book_checker}%' `
|
|
249
|
+
}
|
|
250
|
+
|
|
232
251
|
this.model.f_start_time=this.f_start_time
|
|
233
252
|
this.model.f_end_time=this.f_end_time
|
|
234
253
|
this.model.condition1=condition1
|
|
@@ -239,12 +258,33 @@
|
|
|
239
258
|
getRes(obj){
|
|
240
259
|
this.model.f_filialeids = this.$login.convertToIn(obj.resids);
|
|
241
260
|
//tag
|
|
261
|
+
},
|
|
262
|
+
initBookChecker(){
|
|
263
|
+
new HttpResetClass().load('POST', '/rs/search', {
|
|
264
|
+
data: {
|
|
265
|
+
source: `root.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($网格员$) != -1)`,
|
|
266
|
+
userid: this.$login.f.id
|
|
267
|
+
}
|
|
268
|
+
}, {resolveMsg: null, rejectMsg: null}).then(res=>{
|
|
269
|
+
let data = res.data
|
|
270
|
+
const addedNames = new Set()
|
|
271
|
+
this.users = []
|
|
272
|
+
data.forEach(user => {
|
|
273
|
+
if (user.state === '在职') {
|
|
274
|
+
if (!addedNames.has(user.name)) {
|
|
275
|
+
this.users.push({ label: user.name, value: user.name })
|
|
276
|
+
addedNames.add(user.name)
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
});
|
|
280
|
+
})
|
|
242
281
|
}
|
|
243
282
|
},
|
|
244
283
|
ready() {
|
|
245
284
|
this.model.id = this.$login.f.id
|
|
246
285
|
this.model.f_subcompany = this.$login.f.f_fengongsi
|
|
247
286
|
this.model.f_filialeid = this.$login.f.orgid
|
|
287
|
+
this.initBookChecker()
|
|
248
288
|
},
|
|
249
289
|
|
|
250
290
|
watch: {
|
|
@@ -14,6 +14,8 @@ let specialComp = {
|
|
|
14
14
|
'check-book-entry': (resolve) => { require(['./pc/CheckBookEntry'], resolve) },
|
|
15
15
|
'check-book-details': (resolve) => { require(['./pc/CheckBookDetails'], resolve) },
|
|
16
16
|
'check-book-list': (resolve) => { require(['./pc/CheckBookList'], resolve) },
|
|
17
|
+
'amap-trail-show-zk': (resolve) => { require(['./pc/AMapTrailShowZk'], resolve) },
|
|
18
|
+
'person-track': (resolve) => { require(['./pc/PersonTrack'], resolve) },
|
|
17
19
|
|
|
18
20
|
// 安检结果查看列表
|
|
19
21
|
'defect-paper': (resolve) => { require(['./pc/DefectPaper'], resolve) },
|
|
@@ -23,6 +25,7 @@ let specialComp = {
|
|
|
23
25
|
'check-plan': (resolve) => { require(['./pc/CheckPlan'], resolve) },
|
|
24
26
|
'select-check-plan': (resolve) => { require(['./pc/SelectCheckPlan'], resolve) },
|
|
25
27
|
'CheckPlanCountChartArea': (resolve) => { require(['./pc/CheckPlanCountChartArea'], resolve) },
|
|
28
|
+
'CheckPlanCountChartAreaByWangGeYuan': (resolve) => { require(['./pc/CheckPlanCountChartAreaByWangGeYuan'], resolve) },
|
|
26
29
|
'check_screen': (resolve) => { require(['./pc/repairScreen'], resolve) },
|
|
27
30
|
'hiddensituation': (resolve) => { require(['./pc/HiddenSituation'], resolve) },
|
|
28
31
|
'role-selector-safe': (resolve) => { require(['./pc/RoleSelector'], resolve) },
|