文案修改
This commit is contained in:
BIN
public/3156245b41302edd52a992df20d51aea.png
Normal file
BIN
public/3156245b41302edd52a992df20d51aea.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.1 MiB |
BIN
public/image.png
Normal file
BIN
public/image.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.3 MiB |
BIN
public/room.png
BIN
public/room.png
Binary file not shown.
|
Before Width: | Height: | Size: 999 B |
@@ -10,7 +10,7 @@ export interface RosInspectionRecordLineImageQueryDTO {
|
|||||||
|
|
||||||
export interface OrderItem {
|
export interface OrderItem {
|
||||||
property: string;
|
property: string;
|
||||||
tableIndex: number;
|
tableIndex?: number;
|
||||||
asc?: boolean;
|
asc?: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ const recognizeTypeMap: Record<number, string> = {
|
|||||||
1: "电缆表面破损",
|
1: "电缆表面破损",
|
||||||
2: "桥架断裂",
|
2: "桥架断裂",
|
||||||
3: "隧道积水",
|
3: "隧道积水",
|
||||||
4: "墙体裂缝",
|
4: "墙体渗漏",
|
||||||
};
|
};
|
||||||
|
|
||||||
const recognitionStatusMap: Record<number, RecognitionStatusText> = {
|
const recognitionStatusMap: Record<number, RecognitionStatusText> = {
|
||||||
@@ -117,6 +117,7 @@ async function fetchAlarmList() {
|
|||||||
const response = (await getAlarmPage({
|
const response = (await getAlarmPage({
|
||||||
page: currentPage.value,
|
page: currentPage.value,
|
||||||
limit: pageSize,
|
limit: pageSize,
|
||||||
|
orderList: [{ property: 'createTime', asc: false }],
|
||||||
query: {
|
query: {
|
||||||
recognizeType: normalizeRecognizeType(recognizeType.value),
|
recognizeType: normalizeRecognizeType(recognizeType.value),
|
||||||
warning: normalizeWarningFilter(warningFilter.value),
|
warning: normalizeWarningFilter(warningFilter.value),
|
||||||
@@ -228,7 +229,7 @@ onMounted(() => {
|
|||||||
<option value="1">电缆表面破损</option>
|
<option value="1">电缆表面破损</option>
|
||||||
<option value="2">桥架断裂</option>
|
<option value="2">桥架断裂</option>
|
||||||
<option value="3">隧道积水</option>
|
<option value="3">隧道积水</option>
|
||||||
<option value="4">墙体裂缝</option>
|
<option value="4">墙体渗漏</option>
|
||||||
</select>
|
</select>
|
||||||
<select v-model="warningFilter" class="toolbar-select">
|
<select v-model="warningFilter" class="toolbar-select">
|
||||||
<option value="">全部预警状态</option>
|
<option value="">全部预警状态</option>
|
||||||
|
|||||||
@@ -28,22 +28,22 @@ const distributionRange = ref<DistributionRange>("近一周");
|
|||||||
const reportData: AlarmReportRecord[] = [
|
const reportData: AlarmReportRecord[] = [
|
||||||
{ id: "AL-001", type: "线缆破损", robot: "巡检机器人 R1", project: "西江隧道", status: "待研判", time: "2026-06-23 10:24:18" },
|
{ id: "AL-001", type: "线缆破损", robot: "巡检机器人 R1", project: "西江隧道", status: "待研判", time: "2026-06-23 10:24:18" },
|
||||||
{ id: "AL-002", type: "局部高温", robot: "巡检机器人 Q1", project: "青云隧道", status: "待处理", time: "2026-06-23 10:18:42" },
|
{ id: "AL-002", type: "局部高温", robot: "巡检机器人 Q1", project: "青云隧道", status: "待处理", time: "2026-06-23 10:18:42" },
|
||||||
{ id: "AL-003", type: "墙体裂缝", robot: "巡检机器人 N3", project: "南山隧道", status: "处置完成", time: "2026-06-23 09:56:11" },
|
{ id: "AL-003", type: "墙体渗漏", robot: "巡检机器人 N3", project: "南山隧道", status: "处置完成", time: "2026-06-23 09:56:11" },
|
||||||
{ id: "AL-004", type: "水渍渗漏", robot: "巡检机器人 R2", project: "西江隧道", status: "误判", time: "2026-06-23 09:20:36" },
|
{ id: "AL-004", type: "水渍渗漏", robot: "巡检机器人 R2", project: "西江隧道", status: "误判", time: "2026-06-23 09:20:36" },
|
||||||
{ id: "AL-005", type: "应急门开启异常", robot: "巡检机器人 N1", project: "南山隧道", status: "待处理", time: "2026-06-23 08:42:57" },
|
{ id: "AL-005", type: "应急门开启异常", robot: "巡检机器人 N1", project: "南山隧道", status: "待处理", time: "2026-06-23 08:42:57" },
|
||||||
{ id: "AL-006", type: "局部高温", robot: "巡检机器人 N3", project: "南山隧道", status: "处置完成", time: "2026-06-22 19:12:06" },
|
{ id: "AL-006", type: "局部高温", robot: "巡检机器人 N3", project: "南山隧道", status: "处置完成", time: "2026-06-22 19:12:06" },
|
||||||
{ id: "AL-007", type: "线缆破损", robot: "巡检机器人 R1", project: "西江隧道", status: "处置完成", time: "2026-06-22 17:46:28" },
|
{ id: "AL-007", type: "线缆破损", robot: "巡检机器人 R1", project: "西江隧道", status: "处置完成", time: "2026-06-22 17:46:28" },
|
||||||
{ id: "AL-008", type: "墙体裂缝", robot: "巡检机器人 Q2", project: "青云隧道", status: "待研判", time: "2026-06-22 16:08:40" },
|
{ id: "AL-008", type: "墙体渗漏", robot: "巡检机器人 Q2", project: "青云隧道", status: "待研判", time: "2026-06-22 16:08:40" },
|
||||||
{ id: "AL-009", type: "水渍渗漏", robot: "巡检机器人 R4", project: "西江隧道", status: "待处理", time: "2026-06-22 14:21:19" },
|
{ id: "AL-009", type: "水渍渗漏", robot: "巡检机器人 R4", project: "西江隧道", status: "待处理", time: "2026-06-22 14:21:19" },
|
||||||
{ id: "AL-010", type: "局部高温", robot: "巡检机器人 N1", project: "南山隧道", status: "误判", time: "2026-06-22 11:03:50" },
|
{ id: "AL-010", type: "局部高温", robot: "巡检机器人 N1", project: "南山隧道", status: "误判", time: "2026-06-22 11:03:50" },
|
||||||
{ id: "AL-011", type: "线缆破损", robot: "巡检机器人 R3", project: "西江隧道", status: "处置完成", time: "2026-06-16 13:14:09" },
|
{ id: "AL-011", type: "线缆破损", robot: "巡检机器人 R3", project: "西江隧道", status: "处置完成", time: "2026-06-16 13:14:09" },
|
||||||
{ id: "AL-012", type: "局部高温", robot: "巡检机器人 Q1", project: "青云隧道", status: "待处理", time: "2026-06-15 16:42:33" },
|
{ id: "AL-012", type: "局部高温", robot: "巡检机器人 Q1", project: "青云隧道", status: "待处理", time: "2026-06-15 16:42:33" },
|
||||||
{ id: "AL-013", type: "墙体裂缝", robot: "巡检机器人 N2", project: "南山隧道", status: "处置完成", time: "2026-06-12 09:25:50" },
|
{ id: "AL-013", type: "墙体渗漏", robot: "巡检机器人 N2", project: "南山隧道", status: "处置完成", time: "2026-06-12 09:25:50" },
|
||||||
{ id: "AL-014", type: "水渍渗漏", robot: "巡检机器人 R2", project: "西江隧道", status: "误判", time: "2026-06-08 20:14:27" },
|
{ id: "AL-014", type: "水渍渗漏", robot: "巡检机器人 R2", project: "西江隧道", status: "误判", time: "2026-06-08 20:14:27" },
|
||||||
{ id: "AL-015", type: "应急门开启异常", robot: "巡检机器人 Q3", project: "青云隧道", status: "待研判", time: "2026-05-28 11:38:44" },
|
{ id: "AL-015", type: "应急门开启异常", robot: "巡检机器人 Q3", project: "青云隧道", status: "待研判", time: "2026-05-28 11:38:44" },
|
||||||
{ id: "AL-016", type: "局部高温", robot: "巡检机器人 N4", project: "南山隧道", status: "处置完成", time: "2026-05-19 15:07:18" },
|
{ id: "AL-016", type: "局部高温", robot: "巡检机器人 N4", project: "南山隧道", status: "处置完成", time: "2026-05-19 15:07:18" },
|
||||||
{ id: "AL-017", type: "线缆破损", robot: "巡检机器人 R1", project: "西江隧道", status: "待处理", time: "2026-05-06 08:11:52" },
|
{ id: "AL-017", type: "线缆破损", robot: "巡检机器人 R1", project: "西江隧道", status: "待处理", time: "2026-05-06 08:11:52" },
|
||||||
{ id: "AL-018", type: "墙体裂缝", robot: "巡检机器人 Q2", project: "青云隧道", status: "误判", time: "2026-04-23 14:54:06" },
|
{ id: "AL-018", type: "墙体渗漏", robot: "巡检机器人 Q2", project: "青云隧道", status: "误判", time: "2026-04-23 14:54:06" },
|
||||||
{ id: "AL-019", type: "水渍渗漏", robot: "巡检机器人 N1", project: "南山隧道", status: "处置完成", time: "2026-04-12 10:03:16" },
|
{ id: "AL-019", type: "水渍渗漏", robot: "巡检机器人 N1", project: "南山隧道", status: "处置完成", time: "2026-04-12 10:03:16" },
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -222,7 +222,7 @@ const recognitionActionOptions: RecognitionActionOption[] = [
|
|||||||
{ code: "CABLE_SURFACE_DAMAGE", value: "1", label: "电缆表面破损" },
|
{ code: "CABLE_SURFACE_DAMAGE", value: "1", label: "电缆表面破损" },
|
||||||
{ code: "BRIDGE_BREAK", value: "2", label: "桥架断裂" },
|
{ code: "BRIDGE_BREAK", value: "2", label: "桥架断裂" },
|
||||||
{ code: "TUNNEL_WATER", value: "3", label: "隧道积水" },
|
{ code: "TUNNEL_WATER", value: "3", label: "隧道积水" },
|
||||||
{ code: "WALL_CRACK", value: "4", label: "墙体裂缝" },
|
{ code: "WALL_CRACK", value: "4", label: "墙体渗漏" },
|
||||||
];
|
];
|
||||||
const taskNodeTypeMap: Record<PatrolPointType, "via_point" | "action_point"> = {
|
const taskNodeTypeMap: Record<PatrolPointType, "via_point" | "action_point"> = {
|
||||||
业务点: "action_point",
|
业务点: "action_point",
|
||||||
|
|||||||
@@ -484,7 +484,7 @@ const recognizeTypeMap: Record<number, string> = {
|
|||||||
1: "电缆表面破损",
|
1: "电缆表面破损",
|
||||||
2: "桥架断裂",
|
2: "桥架断裂",
|
||||||
3: "隧道积水",
|
3: "隧道积水",
|
||||||
4: "墙体裂缝",
|
4: "墙体渗漏",
|
||||||
};
|
};
|
||||||
const recognizeTypeCodeMap = Object.fromEntries(
|
const recognizeTypeCodeMap = Object.fromEntries(
|
||||||
Object.entries(recognizeTypeMap).map(([value, label]) => [label, Number(value)]),
|
Object.entries(recognizeTypeMap).map(([value, label]) => [label, Number(value)]),
|
||||||
@@ -513,7 +513,7 @@ const inspectionActionLoading = ref(false);
|
|||||||
const lastDispatchTime = ref("");
|
const lastDispatchTime = ref("");
|
||||||
const alertLoading = ref(false);
|
const alertLoading = ref(false);
|
||||||
const alertError = ref("");
|
const alertError = ref("");
|
||||||
const alertTabs = ["局部高温", "电缆表面破损", "桥架断裂", "隧道积水", "墙体裂缝"] as const;
|
const alertTabs = ["局部高温", "电缆表面破损", "桥架断裂", "隧道积水", "墙体渗漏"] as const;
|
||||||
const activeAlertTab = ref<(typeof alertTabs)[number]>("局部高温");
|
const activeAlertTab = ref<(typeof alertTabs)[number]>("局部高温");
|
||||||
const activeCameraMode = ref<"white" | "infrared">("white");
|
const activeCameraMode = ref<"white" | "infrared">("white");
|
||||||
const activeDeviceId = ref("");
|
const activeDeviceId = ref("");
|
||||||
@@ -1636,18 +1636,19 @@ function getStatusClass(status: DeviceItem["status"]) {
|
|||||||
</div>
|
</div>
|
||||||
<div class="video-panel">
|
<div class="video-panel">
|
||||||
<div class="video-screen">
|
<div class="video-screen">
|
||||||
<video v-if="currentMonitorVideo" ref="monitorVideoRef" :key="currentMonitorVideo"
|
<img src="/image.png" alt="" class="monitor-video">
|
||||||
|
<!-- <video v-if="currentMonitorVideo" ref="monitorVideoRef" :key="currentMonitorVideo"
|
||||||
:class="['monitor-video', { infrared: activeCameraMode === 'infrared' }]" autoplay muted
|
:class="['monitor-video', { infrared: activeCameraMode === 'infrared' }]" autoplay muted
|
||||||
playsinline></video>
|
playsinline></video> -->
|
||||||
<div class="scan-line"></div>
|
<div class="scan-line"></div>
|
||||||
<!-- <div class="video-overlay top-left">实时视频流</div>
|
<!-- <div class="video-overlay top-left">实时视频流</div>
|
||||||
<div class="video-overlay top-right">
|
<div class="video-overlay top-right">
|
||||||
{{ activeCameraMode === "white" ? "白光镜头" : "红外镜头" }}
|
{{ activeCameraMode === "white" ? "白光镜头" : "红外镜头" }}
|
||||||
</div> -->
|
</div> -->
|
||||||
<div class="video-overlay bottom-left">{{ currentRobot.id }}</div>
|
<div class="video-overlay bottom-left">{{ currentRobot.id }}</div>
|
||||||
<div v-if="streamLoading" class="video-empty">视频流连接中...</div>
|
<!-- <div v-if="streamLoading" class="video-empty">视频流连接中...</div>
|
||||||
<div v-else-if="streamError" class="video-empty">{{ streamError }}</div>
|
<div v-else-if="streamError" class="video-empty">{{ streamError }}</div>
|
||||||
<div v-else-if="!currentMonitorVideo" class="video-empty">当前机器人暂无视频地址</div>
|
<div v-else-if="!currentMonitorVideo" class="video-empty">当前机器人暂无视频地址</div> -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ const patrolRecords: PatrolRecord[] = [
|
|||||||
startTime: "2026-06-23 10:08:34",
|
startTime: "2026-06-23 10:08:34",
|
||||||
endTime: "2026-06-23 11:12:25",
|
endTime: "2026-06-23 11:12:25",
|
||||||
alarms: [
|
alarms: [
|
||||||
{ id: "AL-003", type: "墙体裂缝", reportTime: "2026-06-23 10:36:41" },
|
{ id: "AL-003", type: "墙体渗漏", reportTime: "2026-06-23 10:36:41" },
|
||||||
{ id: "AL-006", type: "水渍渗漏", reportTime: "2026-06-23 10:54:18" },
|
{ id: "AL-006", type: "水渍渗漏", reportTime: "2026-06-23 10:54:18" },
|
||||||
{ id: "AL-007", type: "局部高温", reportTime: "2026-06-23 11:02:33" },
|
{ id: "AL-007", type: "局部高温", reportTime: "2026-06-23 11:02:33" },
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -71,10 +71,10 @@ export const recentAlertPhotoSources = {
|
|||||||
"桥架断裂": createAlertPhoto("crack", "#89d8ff"),
|
"桥架断裂": createAlertPhoto("crack", "#89d8ff"),
|
||||||
"隧道积水": createAlertPhoto("heat", "#ffc86c"),
|
"隧道积水": createAlertPhoto("heat", "#ffc86c"),
|
||||||
"局部高温": createAlertPhoto("heat", "#ffc86c"),
|
"局部高温": createAlertPhoto("heat", "#ffc86c"),
|
||||||
"墙体裂缝": createAlertPhoto("crack", "#89d8ff"),
|
"墙体渗漏": createAlertPhoto("crack", "#89d8ff"),
|
||||||
} as const;
|
} as const;
|
||||||
|
|
||||||
const fallbackAlertPhoto = recentAlertPhotoSources["墙体裂缝"];
|
const fallbackAlertPhoto = recentAlertPhotoSources["墙体渗漏"];
|
||||||
|
|
||||||
export function getRecentAlertPhoto(type: string) {
|
export function getRecentAlertPhoto(type: string) {
|
||||||
return recentAlertPhotoSources[type as keyof typeof recentAlertPhotoSources] ?? fallbackAlertPhoto;
|
return recentAlertPhotoSources[type as keyof typeof recentAlertPhotoSources] ?? fallbackAlertPhoto;
|
||||||
|
|||||||
Reference in New Issue
Block a user