Yansen 2 vuotta sitten
vanhempi
commit
3855a4348f

+ 4
- 3
src/layouts/AuthLayout/index.jsx Näytä tiedosto

@@ -16,7 +16,8 @@ export default (props) => {
16 16
   const { theme } = useModel('system');
17 17
   const { user, menus } = useModel('user');
18 18
   const location = useLocation();
19
-  const currentRoute = useRoute();
19
+  const { meta } = useRoute() || {};
20
+  const { noLayout = false, noSiderBar = false } = meta || {};
20 21
 
21 22
   const splitMenus = useMemo(() => menus.map(x => ({ ...x, children: undefined })), [menus]);
22 23
   const siderMenus = useMemo(() => {
@@ -29,13 +30,13 @@ export default (props) => {
29 30
       <HtmlTitle />
30 31
       <RequireLogin>
31 32
         {
32
-          currentRoute && currentRoute.meta && currentRoute.meta.noLayout
33
+          noLayout
33 34
             ? <Outlet />
34 35
             : (
35 36
               <Layout style={{ minHeight: '100vh' }}>
36 37
                 <Header theme={theme} menus={splitMenus} location={location} />
37 38
                 <Layout>
38
-                  <SiderBar theme={theme} menus={siderMenus} location={location} />
39
+                  { !noSiderBar && <SiderBar theme={theme} menus={siderMenus} location={location} /> }
39 40
                   <Container location={location} />
40 41
                 </Layout>
41 42
               </Layout>

+ 11
- 1
src/pages/message/index.jsx Näytä tiedosto

@@ -3,11 +3,19 @@ import { useNavigate, Link } from 'react-router-dom';
3 3
 import { queryTable } from '@/utils/request';
4 4
 import { ProTable } from '@ant-design/pro-components';
5 5
 import { Button, message, Popconfirm } from 'antd';
6
-import { getMessageList } from '@/services/message';
6
+import { getMessageList, setMessageReaded } from '@/services/message';
7 7
 
8 8
 const queryMessage = queryTable(getMessageList);
9 9
 
10 10
 export default (props) => {
11
+  const actionRef = React.useRef();
12
+
13
+  const setReaded = (id) => {
14
+    setMessageReaded(id).then(() => {
15
+      actionRef.current.reset();
16
+    })
17
+  }
18
+
11 19
   const columns = [
12 20
     {
13 21
       title: '时间',
@@ -63,6 +71,7 @@ export default (props) => {
63 71
             key={1}
64 72
             type="link"
65 73
             disabled={record.isReaded}
74
+            onClick={() => setReaded(record.id)}
66 75
           >
67 76
             设为已读
68 77
           </Button>,
@@ -80,6 +89,7 @@ export default (props) => {
80 89
   return (
81 90
     <ProTable
82 91
       rowKey="id"
92
+      actionRef={actionRef}
83 93
       request={queryMessage}
84 94
       columns={columns}
85 95
     />

+ 5
- 4
src/routes/routes.jsx Näytä tiedosto

@@ -51,6 +51,7 @@ import MessageDetail from '@/pages/message/detail';
51 51
  *    title: 用于页面或者菜单的标题, 没有此字段, 菜单不会显示
52 52
  *    hideInMenu: 布尔值, 如果为 false, 菜单不会显示
53 53
  *    noLayout: 布尔值, 如果为 true, 将不会使用默认布局
54
+ *    noSiderBar: 布尔值, 如果为 true, 将没有左侧菜单栏
54 55
  *    target: 字符串, 如果为 _blank, 将在新窗口打开
55 56
  * }
56 57
  */
@@ -260,7 +261,7 @@ export const authRoutes = [
260 261
         path: 'stockClassification/list',
261 262
         element: <StockClassificationList />,
262 263
         meta: {
263
-          title: '库存分类管理',
264
+          title: '库存分类',
264 265
         },
265 266
       },
266 267
       {
@@ -275,21 +276,21 @@ export const authRoutes = [
275 276
         path: 'log',
276 277
         element: <StockLog />,
277 278
         meta: {
278
-          title: '库存操作日志',
279
+          title: '操作日志',
279 280
         },
280 281
       },
281 282
       {
282 283
         path: 'roles',
283 284
         element: <Roles />,
284 285
         meta: {
285
-          title: '系统角色管理',
286
+          title: '角色管理',
286 287
         },
287 288
       },
288 289
       {
289 290
         path: 'user',
290 291
         element: <UserList />,
291 292
         meta: {
292
-          title: '系统用户管理',
293
+          title: '用户管理',
293 294
         },
294 295
       },
295 296
       {

+ 3
- 1
src/services/message.js Näytä tiedosto

@@ -1,4 +1,4 @@
1
-import { restful } from '@/utils/request';
1
+import request, { restful } from '@/utils/request';
2 2
 
3 3
 const [
4 4
   getMessageList,
@@ -9,3 +9,5 @@ export {
9 9
   getMessageList,
10 10
   getMessage,
11 11
 }
12
+
13
+export const setMessageReaded = id => request.put(`/noticeMessage/${id}/readed`)