From 438deaa2b01938a1cdff07f31909ff664a25f473 Mon Sep 17 00:00:00 2001 From: Vectorune Date: Wed, 8 Oct 2025 14:45:52 +0800 Subject: [PATCH] 11 --- Dockerfile | 2 +- README.md | 2 +- public/runtime-config.js | 2 +- src/http/AuthorizeAxios.js | 4 +-- src/http/CreatMessageCommonAxios.js | 4 +-- src/menu.zip | Bin 0 -> 1389 bytes src/menu/DashboardMenuItems.js | 24 ++++++++++-------- src/page/Authentication/Login/index.jsx | 8 +++--- src/page/Dashboard/DataCheck.zip | Bin 0 -> 3305 bytes .../DataPrint/RecordCard/CardAction.js | 2 +- .../UserManagement/AddUserDrawer.jsx | 2 +- src/routes/DashboardRoutes.js | 10 +++++--- 12 files changed, 32 insertions(+), 28 deletions(-) create mode 100644 src/menu.zip create mode 100644 src/page/Dashboard/DataCheck.zip diff --git a/Dockerfile b/Dockerfile index c753c6f..4fbcc3f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,7 +4,7 @@ COPY build /usr/share/nginx/html COPY deploy/entrypoint.sh /entrypoint.sh COPY deploy/nginx.conf /etc/nginx/conf.d/default.conf -ENV BACKEND_ADDRESS="http://localhost:31000" +ENV BACKEND_ADDRESS="http://43.138.83.20:10001" ENV BACKEND_TIMEOUT=10000 RUN chmod +x /entrypoint.sh diff --git a/README.md b/README.md index 58beeac..5be0f46 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ In the project directory, you can run: ### `npm start` Runs the app in the development mode.\ -Open [http://localhost:3000](http://localhost:3000) to view it in your browser. +Open [http://43.138.83.20:3000](http://43.138.83.20:3000) to view it in your browser. The page will reload when you make changes.\ You may also see any lint errors in the console. diff --git a/public/runtime-config.js b/public/runtime-config.js index d8c457b..3ab824d 100644 --- a/public/runtime-config.js +++ b/public/runtime-config.js @@ -1,2 +1,2 @@ -window.BACKEND_ADDRESS = "http://localhost:31000"; +window.BACKEND_ADDRESS = "http://localhost:8080"; window.BACKEND_TIMEOUT = 10000; \ No newline at end of file diff --git a/src/http/AuthorizeAxios.js b/src/http/AuthorizeAxios.js index 00b69f6..e8f467b 100644 --- a/src/http/AuthorizeAxios.js +++ b/src/http/AuthorizeAxios.js @@ -2,8 +2,8 @@ import axios from 'axios'; import baseWebConfig from "../config/BaseWebConfig"; const authorizeAxios = axios.create({ - baseURL: window.BACKEND_ADDRESS || baseWebConfig.baseUrl, - timeout: window.BACKEND_TIMEOUT || baseWebConfig.timeout, + baseURL: baseWebConfig.baseUrl, + timeout: baseWebConfig.timeout, }); // 传入messageApi diff --git a/src/http/CreatMessageCommonAxios.js b/src/http/CreatMessageCommonAxios.js index c19b9e4..29ab009 100644 --- a/src/http/CreatMessageCommonAxios.js +++ b/src/http/CreatMessageCommonAxios.js @@ -3,8 +3,8 @@ import baseWebConfig from "../config/BaseWebConfig"; const creatMessageCommonAxios = (messageApi) => { const instance = axios.create({ - baseURL: window.BACKEND_ADDRESS || baseWebConfig.baseUrl, - timeout: window.BACKEND_TIMEOUT || baseWebConfig.timeout, + baseURL: baseWebConfig.baseUrl, + timeout: baseWebConfig.timeout, }); const defaultResponse = { diff --git a/src/menu.zip b/src/menu.zip new file mode 100644 index 0000000000000000000000000000000000000000..7ec5acf8338c6ff23732067a224d153c777dea11 GIT binary patch literal 1389 zcmWIWW@Zs#0D-+Nn$chelwbwYxv6=j`TjkDnAR5G74>J+%>Rj>`#0lV+NREl-{wv-&)@&KGXLJ0 z!)23=)|GP2+OT^{f!o@4z3m2!pTnN)X`fTos+6`WuTSd)<5BP1M;3W>-d(^_d`fL@ zbV5K<0=IIX=FFJtCk(3%Uzxq1(G{{|)7@itR`~xi*E}AY^CTme`T2}1OEzD)x~k{a ztxLHsJMx;EvzK(Rc5U7g<*{lb>xl=R65RF6z32K~scP_aUgdInm&4NoC6jL{Z4&7E zxFt{8;m&WF9QWw!a_%05Tb;8HyzAN)vqU#Rm*?$M3Ck@4nXb{ZSJiEtax7v6(=-mR z876+$ttB_+owTnq`*$r`Ta9t)i_>{J3mm50o??1v@ny+^wuP;0K8g7LoB32>>fX=t z_Yw@Oe!q&X`}6rzuG^^<$){5ko;*tO@UC2PG{!Z!WLDmlgBd9yOH>oQ+EY81JQdd# zfkK&NEdw z@Z5t3yYE|ff6QORnWNIj$)Ut{CX@B4X{-%nY5(drj<)@OuE(#N>B!4raKzEPL6!f_ z9Gy>c504t3yzQN0Y*+UxR)&?my)M6gV@}bfiM(>>nbg%;XEqz@efp68L4CXXJHc&1 zCBn!4-anXH&-QCk_~s6+q+>7g#B4ABd$r-u_bC&qn2Nvrxgx#iWA*zz5B*ESM9Pjh zG^<~HW4y2{MmvAg+JCHwR0~SjcaDCP`wL91-xwJfK*=4Pu!B=eN;31(i$RGNm|lA) zZuC2BAkbEBe{`kyv_)@p6&!SUI6AvH4R@T|8evhEGGBGoDrKRZGdgR0A|;sj_=?Ce ztFw4{w%tp(S-$`8%m2EU&qOpmO`K+FBzE3LbETo=p^4MABIWyc?w%)=_kW9;#-6EL zW^k;l-=#exa`K@E4cWImFPz-jx76Sk@3A$hbCt!foXXkDuN>yBvByK@>z%oazHMNi z&f}yzd+R#sm>z|$R?o`{{cZc3XBjlz{ja8QFFspj{vxjHs~@ec+4KL5{i^RaS<6=E z2ev_E};;_8h7&-`^8H?E$banCGM-Qsav zuAB8grT}k7CVOzuU@Hk!fI$WV0uTxkd|V6)U@jwr1VcZ!DtD^l9bo990)(;HN)MQ^ z3P4TDKn#u*tYrzZUCj4#`Ddx%w+l1Qk?pz(EWfa&0AyRdgSBw@h?NcGM`j?@1p1eQ yg@HkhftQPy>&WA+M~;5JeDUhvE4MBm4$sVs$}A}6<=S=l^5Jv$c0S(mOc4MEq9X_Z literal 0 HcmV?d00001 diff --git a/src/menu/DashboardMenuItems.js b/src/menu/DashboardMenuItems.js index 100ee05..7ca3ff0 100644 --- a/src/menu/DashboardMenuItems.js +++ b/src/menu/DashboardMenuItems.js @@ -6,7 +6,9 @@ import { MonitorOutlined, ReconciliationOutlined, UsergroupAddOutlined, - UserSwitchOutlined + UserSwitchOutlined, + NotificationOutlined, + SettingOutlined } from "@ant-design/icons"; import React from "react"; import {NavLink} from "react-router-dom"; @@ -44,21 +46,21 @@ const DashboardMenuItems = [ icon: , label: 用户管理 }, - // { - // key: `announcement-management`, - // icon: , - // label: `公告管理`, - // }, { key: `/data-maintenance`, icon: , label: 数据维护 }, - // { - // key: `settings`, - // icon: , - // label: 系统设置 - // } + { + key: `/generate-certificate`, + icon: , + label: 证书生成 + }, + { + key: `settings`, + icon: , + label: 系统设置 + } ] }, { diff --git a/src/page/Authentication/Login/index.jsx b/src/page/Authentication/Login/index.jsx index 8f27e56..2cee0e3 100644 --- a/src/page/Authentication/Login/index.jsx +++ b/src/page/Authentication/Login/index.jsx @@ -89,7 +89,7 @@ function Login(props) {
} size={"large"} style={{marginBottom: '20px'}} @@ -116,9 +116,9 @@ function Login(props) {
Powered by ©2023 - - {new Date().getFullYear()} SimRobot Studio - SimRobot Studio - 来自哈尔滨师范大学计算机科学与信息工程学院软件工程系 + - {new Date().getFullYear()}来自哈师大教务处 + +
diff --git a/src/page/Dashboard/DataCheck.zip b/src/page/Dashboard/DataCheck.zip new file mode 100644 index 0000000000000000000000000000000000000000..a2a84c93ff5c5abb0da099f8079255a04b705a95 GIT binary patch literal 3305 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 dKZ~#UO8;4=EnvU{G!WqDi}&;1n^ { const commonAxios = creatMessageCommonAxios(messageApi); const downloadRecord = (recordId) => { - let baseUrl = window.BACKEND_ADDRESS || baseWebConfig.baseUrl + let baseUrl = baseWebConfig.baseUrl commonAxios.get(`${baseUrl}/api/v1/workload/certificate/download/${recordId}`, {responseType: 'blob'}).then((response) => { if (response.data.type === 'application/json') { messageApi.error('证明已失效 (GENERATE_CERTIFICATE_ERROR_007)'); diff --git a/src/page/Dashboard/UserManagement/AddUserDrawer.jsx b/src/page/Dashboard/UserManagement/AddUserDrawer.jsx index db8e59b..23ff7ed 100644 --- a/src/page/Dashboard/UserManagement/AddUserDrawer.jsx +++ b/src/page/Dashboard/UserManagement/AddUserDrawer.jsx @@ -13,7 +13,7 @@ const AddUserDrawer = props => { }; const fileUploadProps = { name: 'file', - action: window.BACKEND_ADDRESS || baseWebConfig.baseUrl + '/api/v1/teacher/import', + action: baseWebConfig.baseUrl + '/api/v1/teacher/import', headers: { authorization: `Bearer ${localStorage.getItem('token') || ''}`, }, diff --git a/src/routes/DashboardRoutes.js b/src/routes/DashboardRoutes.js index 93b7443..bd4245f 100644 --- a/src/routes/DashboardRoutes.js +++ b/src/routes/DashboardRoutes.js @@ -34,10 +34,12 @@ const DashboardRoutes = { path: 'data-maintenance', element: }, + //未找到 { path: 'system-settings', element: }, + //未找到 { path: 'generate-certificate', element: @@ -46,10 +48,10 @@ const DashboardRoutes = { path: 'user-management', element: }, - { - path: 'about-us', - element: - }, + //{ + // path: 'about-us', + // element: + //}, ] }