人员管控
This commit is contained in:
parent
4db1e0dff5
commit
94e640ade3
|
|
@ -60,4 +60,13 @@ export function getPersonDetail(query) {
|
|||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
/* 人员历史轨迹 */
|
||||
export function getHistoryGj(query) {
|
||||
return request({
|
||||
url: '/bracelet/consControl/getHistoryGj',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
<div class="content">
|
||||
<div id="searchBox" class="layout" v-if="isShowHistoryGj">
|
||||
<el-button type="primary" plain @click="clsoeHistoryGj" style="margin-right: 10px;">返回</el-button>
|
||||
<el-date-picker v-model="chooseDate" @change="loadGj" :editable="false" :clearable="false" type="date"
|
||||
<el-date-picker v-model="chooseDate" @change="loadHistoryGj" :editable="false" :clearable="false" type="date"
|
||||
format="yyyy-MM-dd" value-format="yyyy-MM-dd" placeholder="选择日期">
|
||||
</el-date-picker>
|
||||
</div>
|
||||
|
|
@ -73,8 +73,9 @@
|
|||
<div class="layout" v-if="person.sh.isWarn == 0"><img
|
||||
src="../../../../assets/person_img/position_nowarn.png">正常
|
||||
</div>
|
||||
<div class="layout info" v-if="person.sh.isWarn == 1"><img
|
||||
src="../../../../assets/person_img/position_warn.png">异常</div>
|
||||
<div class="layout" v-if="person.sh.isWarn == 1"><img
|
||||
src="../../../../assets/person_img/position_warn.png">异常
|
||||
</div>
|
||||
<div class="layout info"><img src="../../../../assets/person_img/temp.png">{{ person.sh.temp }}</div>
|
||||
</div>
|
||||
<div class="layout">
|
||||
|
|
@ -169,7 +170,7 @@
|
|||
</template>
|
||||
|
||||
<script>
|
||||
import { personsTree, teamPersonByTower, spotCheck, getCheckConfig, checkConfig, getPersonsInfo, getPersonDetail } from "@/api/construction/manage/personManage.js";
|
||||
import { personsTree, teamPersonByTower, spotCheck, getCheckConfig, checkConfig, getPersonsInfo, getPersonDetail, getHistoryGj } from "@/api/construction/manage/personManage.js";
|
||||
import no_warn from "@/assets/svg/no_warn.svg";
|
||||
import no_warn2 from "@/assets/svg/no_warn2.svg";
|
||||
import warn from "@/assets/svg/warn.svg";
|
||||
|
|
@ -214,13 +215,6 @@ export default {
|
|||
},
|
||||
// 表单校验
|
||||
rules: {},
|
||||
//记录设备位置数据
|
||||
deviceData: [
|
||||
{ "position": { lng: 116.404, lat: 39.915 }, "deviceName": "设备11", show: false, },
|
||||
{ "position": { lng: 116.405, lat: 39.915 }, "deviceName": "设备22", show: false, },
|
||||
{ "position": { lng: 116.404, lat: 39.916 }, "deviceName": "设备33", show: false, },
|
||||
{ "position": { lng: 116.404, lat: 39.917 }, "deviceName": "设备44", show: false, },
|
||||
],
|
||||
map: null,
|
||||
BMap: null,
|
||||
// 作业杆塔
|
||||
|
|
@ -260,99 +254,33 @@ export default {
|
|||
isPerson: false,
|
||||
isShowHistoryGj: false,
|
||||
// 轨迹定位数组
|
||||
gjArr: [
|
||||
{ lon: 117.287800, lat: 31.255550 },
|
||||
{ lon: 117.287450, lat: 31.255650 },
|
||||
{ lon: 117.287700, lat: 31.255750 },
|
||||
{ lon: 117.287650, lat: 31.255850 },
|
||||
],
|
||||
gjArr: [],
|
||||
person: {
|
||||
name: '张三',
|
||||
phone: '18855798259',
|
||||
teamName: '张三班组',
|
||||
idCard: '341181199807165636',
|
||||
warnName: '离开工作区域/人脸验证异常',
|
||||
warnType: 'danger',
|
||||
hasSafetyHat: true,
|
||||
name: null,
|
||||
phone: null,
|
||||
teamName: null,
|
||||
idCard: null,
|
||||
warnName: null,
|
||||
warnType: 'success',
|
||||
hasSafetyHat: false,
|
||||
sh: {
|
||||
devId: 37,
|
||||
name: '1号手环',
|
||||
elec: 10,
|
||||
isWarn: 0,
|
||||
temp: '37℃',
|
||||
heartRate: '80次/分',
|
||||
bloodPressure: '150/80mmHg',
|
||||
mjCode: '1号马甲'
|
||||
devId: null,
|
||||
name: null,
|
||||
elec: 0,
|
||||
isWarn: 1,
|
||||
temp: null,
|
||||
heartRate: null,
|
||||
bloodPressure: null,
|
||||
mjCode: null,
|
||||
},
|
||||
hat: {
|
||||
name: '1号安全帽',
|
||||
name: null,
|
||||
},
|
||||
workTeamNum: 5,
|
||||
workPersonNum: 30
|
||||
workTeamNum: 0,
|
||||
workPersonNum: 0
|
||||
},
|
||||
// 预警表格
|
||||
warnTable: [
|
||||
{
|
||||
warnTime: '2024-08-15 11:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 12:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 13:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 11:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 12:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 13:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 11:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 12:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 13:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 11:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 12:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 13:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 11:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 12:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
{
|
||||
warnTime: '2024-08-15 13:32:12',
|
||||
warnContent: '离开工作区域'
|
||||
},
|
||||
],
|
||||
warnTable: [],
|
||||
//保存表格数据
|
||||
hatTable: [
|
||||
{
|
||||
|
|
@ -550,7 +478,7 @@ export default {
|
|||
this.dialogVisible2 = false
|
||||
},
|
||||
// 获取班组下的人员定位及杆塔坐标
|
||||
laodPersonsInfo(params) {
|
||||
loadPersonsInfo(params) {
|
||||
getPersonsInfo(params).then((res) => {
|
||||
const data = res.data;
|
||||
if (data) {
|
||||
|
|
@ -584,13 +512,54 @@ export default {
|
|||
}).catch((res) => { })
|
||||
},
|
||||
// 人员树选中人员加载的数据
|
||||
loadPersonDetail() {
|
||||
loadPersonDetail(params) {
|
||||
getPersonDetail(params).then((res) => {
|
||||
const data = res.data;
|
||||
if (data) {
|
||||
if (data && data.vo) {
|
||||
const obj = data.vo;
|
||||
this.warnTable = obj.warnInfoList;
|
||||
this.person.name = obj.name;
|
||||
this.person.phone = obj.phone;
|
||||
this.person.teamName = obj.teamName;
|
||||
this.person.idCard = obj.idCard;
|
||||
this.person.warnName = obj.warnName;
|
||||
this.person.warnType = obj.warnType;
|
||||
this.person.hasSafetyHat = obj.hasSafetyHat;
|
||||
this.person.sh.devId = obj.bracelet.devId;
|
||||
this.person.sh.name = obj.bracelet.name;
|
||||
this.person.sh.elec = obj.bracelet.elec;
|
||||
this.person.sh.isWarn = obj.bracelet.isWarn;
|
||||
this.person.sh.temp = this.handleData(obj.bracelet.temp);
|
||||
this.person.sh.heartRate = this.handleData(obj.bracelet.heartRate);
|
||||
this.person.sh.bloodPressure = this.handleData(obj.bracelet.bloodPressure);
|
||||
this.person.sh.mjCode = this.handleData(obj.mjCode);
|
||||
this.person.hat.name = obj.safetyHat.name;
|
||||
}
|
||||
}).catch((res) => { })
|
||||
},
|
||||
// 人员历史轨迹
|
||||
loadHistoryGj() {
|
||||
// 手环设备ID和开始时间
|
||||
let obj = {
|
||||
'id': this.person.sh.devId,
|
||||
'startTime': this.chooseDate
|
||||
};
|
||||
getHistoryGj(obj).then((res) => {
|
||||
const data = res.data;
|
||||
if (data && data.length > 0) {
|
||||
this.gjArr = data;
|
||||
} else {
|
||||
this.gjArr = [];
|
||||
}
|
||||
this.loadGj();
|
||||
}).catch((res) => { })
|
||||
},
|
||||
handleData(value) {
|
||||
if (!value) {
|
||||
return '--';
|
||||
}
|
||||
return value;
|
||||
},
|
||||
handler({ BMap, map }) {
|
||||
this.BMap = BMap;
|
||||
this.map = map;
|
||||
|
|
@ -623,7 +592,7 @@ export default {
|
|||
'id': towerId,
|
||||
'teamId': teamId
|
||||
}
|
||||
this.laodPersonsInfo(obj);
|
||||
this.loadPersonsInfo(obj);
|
||||
} else if (node.level === 4) {
|
||||
this.isTower = false;
|
||||
this.isTeam = false;
|
||||
|
|
@ -671,6 +640,12 @@ export default {
|
|||
this.isTower = false;
|
||||
this.isTeam = false;
|
||||
this.isPerson = true;
|
||||
// id:人员ID type: 0 班组成员 1 临时人员
|
||||
const obj = {
|
||||
'id': item.id,
|
||||
'type': item.type
|
||||
}
|
||||
this.loadPersonDetail(obj);
|
||||
},
|
||||
/* 添加人员定位的覆盖物 */
|
||||
addPersonMarker(item) {
|
||||
|
|
@ -695,25 +670,24 @@ export default {
|
|||
marker.addEventListener("click", () => { this.clickMarker(item) });
|
||||
},
|
||||
// 人员绑定手环历史轨迹
|
||||
openHistoryGj(devId) {
|
||||
openHistoryGj() {
|
||||
this.removeOverlay();
|
||||
this.loadHistoryGj();
|
||||
this.isShowHistoryGj = true;
|
||||
this.loadGj(this.chooseDate);
|
||||
},
|
||||
// 关闭历史轨迹
|
||||
clsoeHistoryGj(devId) {
|
||||
clsoeHistoryGj() {
|
||||
this.removeOverlay();
|
||||
this.isShowHistoryGj = false;
|
||||
const obj = {
|
||||
'id': this.id,
|
||||
'teamId': this.teamId
|
||||
}
|
||||
this.laodPersonsInfo(obj);
|
||||
this.loadPersonsInfo(obj);
|
||||
},
|
||||
// 获取人员运动轨迹
|
||||
loadGj(val) {
|
||||
loadGj() {
|
||||
this.removeOverlay();
|
||||
alert(val);
|
||||
const list = this.gjArr;
|
||||
if (list.length >= 2) { // 轨迹数组大于2个才会展示轨迹
|
||||
// 已轨迹的起点作为中心点
|
||||
|
|
|
|||
Loading…
Reference in New Issue