diff --git a/public/vite.svg b/public/vite.svg
deleted file mode 100644
index e7b8dfb..0000000
--- a/public/vite.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/api/axios.js b/src/api/axios.js
index cff5057..ad29c3a 100644
--- a/src/api/axios.js
+++ b/src/api/axios.js
@@ -2,7 +2,7 @@ import { message } from "antd";
import axios from "axios";
import { logout } from "../features/auth/authSlice";
-const baseURL = "http://127.0.0.1:8080";
+const baseURL = import.meta.env.VITE_API_URL;
const axiosInstance = axios.create({
baseURL: baseURL,
diff --git a/src/config/menuConfig.js b/src/config/menuConfig.js
index 1ce51bc..a9aa6a4 100644
--- a/src/config/menuConfig.js
+++ b/src/config/menuConfig.js
@@ -65,7 +65,7 @@ const menuConfig = [
path: "/userdetail",
label: "个人信息",
icon: UserOutlined,
- roles: ["USER", "LEADER", "DEVICE_ADMIN"],
+ roles: ["USER", "LEADER", "DEVICE_ADMIN", "ADMIN"],
},
];
diff --git a/src/pages/admin/UserDetailModal.jsx b/src/pages/admin/UserDetailModal.jsx
index 18ea8b8..fdd797f 100644
--- a/src/pages/admin/UserDetailModal.jsx
+++ b/src/pages/admin/UserDetailModal.jsx
@@ -7,27 +7,21 @@ export default function UserDetailModal({
visiable,
mode = "create",
user,
+ roles,
onclose,
onSuccess,
}) {
const [form] = Form.useForm();
const [initialValues, setInitialValues] = useState();
const [teams, setTeams] = useState([]);
- const [roles, setRoles] = useState([]);
const fetchTeams = async () => {
const data = await axiosInstance.get("/teams");
setTeams(data);
};
- const fetchRoles = async () => {
- const data = await axiosInstance.get("/role");
- setRoles(data);
- };
-
useEffect(() => {
fetchTeams();
- fetchRoles();
}, []);
useEffect(() => {
diff --git a/src/pages/admin/UserManage.jsx b/src/pages/admin/UserManage.jsx
index 4f85b3d..f5cfad6 100644
--- a/src/pages/admin/UserManage.jsx
+++ b/src/pages/admin/UserManage.jsx
@@ -11,12 +11,18 @@ export default function UserManage() {
const [modalMode, setModalMode] = useState();
const [selectedUser, setSelectedUser] = useState();
const [modalOpen, setModalOpen] = useState(false);
+ const [roles, setRoles] = useState([]);
const [pagination, setPagination] = useState({
current: 1,
pageSize: 10,
total: 0,
});
+ const fetchRoles = async () => {
+ const data = await axiosInstance.get("/role");
+ setRoles(data);
+ };
+
const fetchData = async (pagination, name) => {
const data = await axiosInstance.get("/user", {
params: {
@@ -32,13 +38,8 @@ export default function UserManage() {
});
};
- const fetchTeams = async () => {
- const data = await axiosInstance.get("/teams");
- setTeams(data);
- };
-
useEffect(() => {
- // fetchTeams();
+ fetchRoles();
fetchData({
current: 1,
pageSize: 10,
@@ -98,6 +99,13 @@ export default function UserManage() {
+
+ roles.find((r) => r.value === roleId)?.label || "未知角色"
+ }
+ />
{
@@ -131,6 +139,7 @@ export default function UserManage() {
visiable={modalOpen}
mode={modalMode}
user={selectedUser}
+ roles={roles}
onclose={() => {
setModalOpen(false);
setSelectedUser(null);
diff --git a/src/pages/deviceAdmin/DeviceDetailModal.jsx b/src/pages/deviceAdmin/DeviceDetailModal.jsx
index 0289ecc..12e640f 100644
--- a/src/pages/deviceAdmin/DeviceDetailModal.jsx
+++ b/src/pages/deviceAdmin/DeviceDetailModal.jsx
@@ -76,7 +76,7 @@ export default function DeviceDetailModal({
if (imageFile) {
const formData = new FormData();
formData.append("image", imageFile);
- await axiosInstance.post(`device/${device.id}/image`, formData, {
+ await axiosInstance.post(`device/${device.deviceId}/image`, formData, {
headers: {
"Content-Type": "multipart/form-data",
},