From 671d6d91eccbf70a7671bcb12dc1d60a48c5be89 Mon Sep 17 00:00:00 2001
From: LiLongLong <13717757313@163.com>
Date: Mon, 10 Mar 2025 13:13:13 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=B5=8B=E9=87=8F=E5=BC=80?=
=?UTF-8?q?=E5=A7=8B=E9=A1=B5=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.env | 2 +-
package.json | 2 +-
src/App.tsx | 2 --
src/assets/menu/icon_substrate.svg | 1 +
src/components/SideMenu.tsx | 11 +++++++++
src/index.tsx | 11 +++++++++
src/pages/measure/components/MeasureAction.tsx | 28 +---------------------
src/pages/measure/components/MeasureConfig.tsx | 24 +++++++++++++++----
src/pages/measure/components/graph/MarkLayer.tsx | 1 -
src/pages/measure/components/graph/ResultLayer.tsx | 3 ---
src/pages/rail/rail.scss | 0
src/pages/rail/railConfig.tsx | 11 +++++++++
src/services/measure/type.ts | 2 +-
src/store/device/deviceState.ts | 1 -
14 files changed, 58 insertions(+), 41 deletions(-)
create mode 100644 src/assets/menu/icon_substrate.svg
create mode 100644 src/pages/rail/rail.scss
create mode 100644 src/pages/rail/railConfig.tsx
diff --git a/.env b/.env
index febab32..93da990 100644
--- a/.env
+++ b/.env
@@ -1 +1 @@
-REACT_APP_WS_URL=192.168.1.200:80/ws
+REACT_APP_WS_URL=192.168.1.200:8080/ws
diff --git a/package.json b/package.json
index d787bc8..56424a1 100644
--- a/package.json
+++ b/package.json
@@ -2,7 +2,7 @@
"name": "outline",
"version": "0.1.0",
"private": true,
- "proxy": "http://192.168.1.200:80",
+ "proxy": "http://192.168.1.200:8080",
"dependencies": {
"@babel/core": "^7.16.0",
"@pmmmwh/react-refresh-webpack-plugin": "^0.5.3",
diff --git a/src/App.tsx b/src/App.tsx
index c989531..2cdf77c 100644
--- a/src/App.tsx
+++ b/src/App.tsx
@@ -7,13 +7,11 @@ import { default as AppHeader } from "./components/Header";
import { default as AppFooter } from "./components/Footer";
import SideMenu from "./components/SideMenu";
import { createWebSocket, sharedWsUrl } from "./services/socket";
-import { updateUser } from "./store/features/contextSlice";
import { useAppDispatch } from "./utils/hooks";
import { updateDeviceState } from "./store/device/deviceState";
const { Header, Footer, Sider, Content } = Layout;
function App() {
- const navigate = useNavigate();
const dispatch = useAppDispatch();
useEffect(() => {
diff --git a/src/assets/menu/icon_substrate.svg b/src/assets/menu/icon_substrate.svg
new file mode 100644
index 0000000..bc8ae07
--- /dev/null
+++ b/src/assets/menu/icon_substrate.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/components/SideMenu.tsx b/src/components/SideMenu.tsx
index 5050302..d9e3de7 100644
--- a/src/components/SideMenu.tsx
+++ b/src/components/SideMenu.tsx
@@ -2,6 +2,8 @@ import type { MenuProps } from "antd";
import { Menu } from "antd";
import icon_logo from "../assets/icon_logo.svg";
import icon_measure from "../assets/menu/icon_measure.svg";
+import icon_substrate from "../assets/menu/icon_substrate.svg";
+
import { useNavigate, useLocation } from "react-router-dom";
import "./SideMenu.scss";
@@ -23,6 +25,15 @@ const items: MenuItem[] = [
}
],
},
+ {
+ key: "rail",
+ label: "轨形管理",
+ icon:
,
+ children: [{
+ key: '/rail/config',
+ label: '轨形配置'
+ }]
+ }
];
export default function SideMenu() {
diff --git a/src/index.tsx b/src/index.tsx
index 0b5f9f5..0ca3e2c 100644
--- a/src/index.tsx
+++ b/src/index.tsx
@@ -7,6 +7,9 @@ import Measure from "./pages/measure/Measure";
import MeasureConfig from "./pages/measure/components/MeasureConfig";
import MeasureDetail from "./pages/measure/components/MeasureDetail";
import MeasureAction from "./pages/measure/components/MeasureAction";
+
+import RailConfig from "./pages/rail/railConfig";
+
import App from "./App";
import reportWebVitals from "./reportWebVitals";
@@ -37,6 +40,14 @@ const router = createBrowserRouter([
}
],
},
+ {
+ path: "rail/config",
+ element: ,
+ children:[{
+ path: 'rail/config',
+ element:
+ }]
+ }
],
},
{
diff --git a/src/pages/measure/components/MeasureAction.tsx b/src/pages/measure/components/MeasureAction.tsx
index 892bfe9..df2e774 100644
--- a/src/pages/measure/components/MeasureAction.tsx
+++ b/src/pages/measure/components/MeasureAction.tsx
@@ -10,8 +10,7 @@ import {
} from "../../../services/measure/analysis";
import { createWebSocket, sharedWsUrl } from "../../../services/socket";
import { switchMeasureAfterSave } from "../../../store/features/contextSlice";
-import { AnalysisReport, AnalyzeAngle } from "../../../services/measure/type";
-import { MeasureState, taskStatusDescMap } from "../../../services/wsTypes";
+import { AnalysisReport } from "../../../services/measure/type";
import { useAppDispatch, useAppSelector } from "../../../utils/hooks";
import Gr_round from '../../../assets/green_round.svg';
import Bl_round from '../../../assets/blue_round.svg';
@@ -43,8 +42,6 @@ export default function MeasureAction() {
const [angleMarkBackup, setAngleMarkBackup] = useState(true);
const afterSave = useAppSelector((store) => store.context.newMeasureAfterSave);
- const [angles, setAngles] = useState([]);
- const [taskStatus, setTaskStatus] = useState("IDLE");
// 初始按钮文本为“开始测量”
const [startBtnText, setStartBtnText] = useState("开始测量");
// 测量是否完成的状态
@@ -160,15 +157,11 @@ export default function MeasureAction() {
startMeasurement().then((res) => {
if (res.status !== 0) {
message.error(res.data.info);
- let name = taskStatusDescMap["IDLE"];
- setTaskStatusName(name);
} else {
const newStatusList = [...initialStatusList];
newStatusList[0].color = "b";
setStatusList(newStatusList);
message.success("已通知设备开始测量");
- let name = taskStatusDescMap["IDLE"];
- setTaskStatusName(name);
// 测量启动成功后,按钮文本变为“重新测量”
setStartBtnText("重新测量");
}
@@ -194,27 +187,8 @@ export default function MeasureAction() {
});
};
- const [taskStatusName, setTaskStatusName] = useState("");
useEffect(() => {
const subscription = wsClient.dataOb.subscribe((data) => {
- // 处理任务状态消息
- if (data.messageType === "STATE" && data.path === "/measurement-task/get-task-state") {
- if (!data.data) return;
- if (data.data.taskStatus === "IDLE") {
- setTaskStatusName("空闲");
- } else if (!data.data.isMeasuringLeftEnd) {
- setTaskStatusName("左侧正在测量");
- statusList[0].isReady = true;
- setStatusList([...statusList]);
- } else if (data.data.isMeasuringLeftEnd && !data.data.isMeasuringRightEnd) {
- setTaskStatusName("右侧正在测量");
- } else {
- let name = taskStatusDescMap[data.data.taskStatus];
- setTaskStatusName(name);
- }
- setTaskStatus(data.data.taskStatus);
- }
-
// 处理状态变化事件
if (data.messageType === "EVENT" && data.path === "/measurement-task/event") {
if (data.data === "START_RECORD_LEFT") {
diff --git a/src/pages/measure/components/MeasureConfig.tsx b/src/pages/measure/components/MeasureConfig.tsx
index e1396a7..a0ced0d 100644
--- a/src/pages/measure/components/MeasureConfig.tsx
+++ b/src/pages/measure/components/MeasureConfig.tsx
@@ -1,4 +1,4 @@
-import { Button, Form, Input, message } from "antd";
+import { Button, Form, Input, message, Select } from "antd";
import { useEffect, useState } from "react";
import { useNavigate } from "react-router";
import { createMeasure } from "../../../services/measure/analysis";
@@ -9,17 +9,25 @@ export default function MeasureConfig() {
const [messageApi, contextHolder] = message.useMessage();
const context = useAppSelector(store => store.context);
+ const deviceState = useAppSelector(store => store.deviceState);
const onFinish = (values: any) => {
console.log("Received values of form: ", values);
+ //判断是否连接了设备
+ if(!deviceState.isConnect){
+ message.error('设备尚未连接或连接失败,请重新连接')
+ return;
+ }
createMeasure({
operatorName: values["username"],
name: values["measureName"],
lineName: values["lineName"],
location: values["position"],
+ direction: values["direction"]
}).then(res => {
if (res.status !== 0) {
messageApi.error(res.data.info);
} else {
+
navigate("../action");
}
});
@@ -84,9 +92,17 @@ export default function MeasureConfig() {
- {
-
- }
+
+ {/* */}
+
+