权限更改

This commit is contained in:
zengmingjie 2025-06-22 18:18:16 +08:00
parent 1ee3fe56e2
commit 16cc80d4ce
5 changed files with 95 additions and 56 deletions

View File

@ -1,3 +1,3 @@
NODE_ENV = 'development'
VUE_APP_API_URL = 'http://114.66.57.139:8088'
VUE_APP_API_URL = 'http://114.66.57.139:5002'
VUE_APP_MESSAGE_SDK_DEBUG = true

View File

@ -126,64 +126,70 @@ export default {
signaData: {
handler(newVal) {
if (newVal) {
newVal.forEach((newItem) => {
// BatchId
if (newItem.BatchId) {
const existingTimer = this.droneTimers.get(newItem.BatchId);
if (existingTimer) {
clearInterval(existingTimer); //
}
let positionID = localStorage.getItem("positionID");
const match = newVal.some((item) =>
positionID.includes(item.positionId)
);
if (match) {
newVal.forEach((newItem) => {
// BatchId
if (newItem.BatchId) {
const existingTimer = this.droneTimers.get(newItem.BatchId);
if (existingTimer) {
clearInterval(existingTimer); //
}
// 15
newItem.currTime = window.mapConfig.currTime;
//
const timer = this.startTimer(newItem);
this.droneTimers.set(newItem.BatchId, timer);
// 15
newItem.currTime = window.mapConfig.currTime;
//
const timer = this.startTimer(newItem);
this.droneTimers.set(newItem.BatchId, timer);
//
const existingIndex = this.drones.findIndex(
(d) => d.BatchId === newItem.BatchId
);
newItem.times = moment(newItem.CreateTime).format("HH:mm:ss");
if (existingIndex !== -1) {
this.$set(this.drones, existingIndex, { ...newItem });
} else {
this.drones.push({ ...newItem });
}
}
});
if (newVal.length === 0) {
this.iswarning = false;
this.showAudioPrompt = false; //
}
if (this.drones) {
mapUavFiex(this.drones);
}
let alarm = this.drones.find((d) => d.alarmLevel === 1);
const media = this.$refs.uavAudio; // ref "uavAudio"
if (alarm) {
this.iswarning = true;
this.$nextTick(() => {
if (media) {
media.muted = true; //
media
.play()
.then(() => {
console.log("播放成功,取消静音");
media.muted = false; //
})
.catch((error) => {
console.log("播放失败:", error);
this.showAudioPrompt = true; //
});
//
const existingIndex = this.drones.findIndex(
(d) => d.BatchId === newItem.BatchId
);
newItem.times = moment(newItem.CreateTime).format("HH:mm:ss");
if (existingIndex !== -1) {
this.$set(this.drones, existingIndex, { ...newItem });
} else {
this.drones.push({ ...newItem });
}
}
});
} else {
this.iswarning = false;
if (media) {
media.pause(); //
media.currentTime = 0; //
if (newVal.length === 0) {
this.iswarning = false;
this.showAudioPrompt = false; //
}
if (this.drones) {
mapUavFiex(this.drones);
}
let alarm = this.drones.find((d) => d.alarmLevel === 1);
const media = this.$refs.uavAudio; // ref "uavAudio"
if (alarm) {
this.iswarning = true;
this.$nextTick(() => {
if (media) {
media.muted = true; //
media
.play()
.then(() => {
console.log("播放成功,取消静音");
media.muted = false; //
})
.catch((error) => {
console.log("播放失败:", error);
this.showAudioPrompt = true; //
});
}
});
} else {
this.iswarning = false;
if (media) {
media.pause(); //
media.currentTime = 0; //
}
}
}
}
@ -276,6 +282,7 @@ export default {
this.isContracted = !this.isContracted; //
},
handleDroneClick(value) {
console.log(value, "value");
if (value.drone_lon == 0 || value.drone_lat == 0) {
} else {
window.marsMap.setCameraView({

View File

@ -62,7 +62,7 @@ export default {
? localhostPath
: process.env.VUE_APP_API_URL;
connection = new signalR.HubConnectionBuilder()
.withUrl(uploadUrl + "/websocket", {
.withUrl("ws://114.66.57.139:5001" + "/websocket", {
skipNegotiation: true,
transport: signalR.HttpTransportType.WebSockets
})

View File

@ -85,6 +85,7 @@ export default {
localStorage.setItem("expires", res.data.expires); //
localStorage.setItem("userId", res.data.userid); // id
localStorage.setItem("isAdmin", res.data.isAdmin); //
localStorage.setItem("positionID", res.data.positionIds); //
// Vue 2 Pinia

View File

@ -82,6 +82,7 @@
<script>
"use script";
import { userList, userAdd, userUpdate, userDelete } from "@/api/user.js";
import { devPositionList } from "@/api/position.js";
export default {
name: "webDevice",
data() {
@ -126,6 +127,14 @@ export default {
key: false
}
]
},
{
label: "防区",
type: "select",
model: "positionId",
options: [],
multiple: true,
rules: [{ required: true, message: "请选择防区", trigger: "change" }]
}
],
tableData: [],
@ -165,6 +174,22 @@ export default {
this.headdenForm({}, "search");
},
methods: {
initPosition() {
devPositionList().then((res) => {
if (res.code === 0) {
this.PositionList = res.data.items;
this.formDrawerList.forEach((item) => {
if (item.label === "防区") {
item.options = res.data.items.map((item) => {
item.label = item.name;
item.key = item.id;
return item;
});
}
});
}
});
},
getStatusStyle(value) {
return {
color: value == 0 ? "green" : "red"
@ -188,6 +213,7 @@ export default {
this.formDrawerList[0].disabled = false;
this.formDrawerList[1].disabled = false;
this.formDrawerList[1].show = true;
this.initPosition();
this.drawer = true;
} else if (type === "search") {
params = JSON.parse(JSON.stringify(this.$refs.myForm.ruleForm));
@ -214,6 +240,11 @@ export default {
this.isType = "edit";
this.title = "编辑人员";
this.fromItem = value;
console.log(value, "value.positionId");
this.fromItem.positionId = value.positionId.map((item) => {
return String(item);
});
this.initPosition();
this.formDrawerList[0].disabled = true;
this.formDrawerList[1].disabled = true;
this.formDrawerList[1].show = false;