From 391303809e0a37a3dcf67efa2ac2bd1b7e4c21cf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=AD=99=E6=99=AF=E5=AD=A6?=
<5412262+sun_jing_xue@user.noreply.gitee.com>
Date: Mon, 11 Aug 2025 16:17:27 +0800
Subject: [PATCH] =?UTF-8?q?=E6=B6=88=E6=81=AF=E9=80=9A=E7=9F=A5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/layouts/Header.tsx | 2 +
src/layouts/MessageNotice.tsx | 45 +++++++++++++++++++
src/pages/login/login.tsx | 15 +------
.../admission/SupplierEntryReview/index.tsx | 11 ++++-
src/servers/api/user.ts | 8 ++++
5 files changed, 65 insertions(+), 16 deletions(-)
create mode 100644 src/layouts/MessageNotice.tsx
diff --git a/src/layouts/Header.tsx b/src/layouts/Header.tsx
index 3a5b84e..60a63b3 100644
--- a/src/layouts/Header.tsx
+++ b/src/layouts/Header.tsx
@@ -4,12 +4,14 @@ import LogoImg from '@/assets/img/logo.png';
//导入菜单组件
import Language from './Language';
import User from './User';
+import MessageNotice from './MessageNotice';
import './layout.less';
const HeaderComponent: React.FC = () => {
return (
+
diff --git a/src/layouts/MessageNotice.tsx b/src/layouts/MessageNotice.tsx
new file mode 100644
index 0000000..ec03704
--- /dev/null
+++ b/src/layouts/MessageNotice.tsx
@@ -0,0 +1,45 @@
+import React, { useEffect, useState } from 'react';
+import { Badge, Tooltip } from 'antd';
+import { BellOutlined } from '@ant-design/icons';
+import { getCountMessage } from '@/servers/api/user';
+import { history } from 'umi';
+const MessageNotice: React.FC = () => {
+ const [count, setCount] = useState
(0);
+
+ useEffect(() => {
+ let alive = true;
+ // 拉未读数量
+ (async () => {
+ try {
+ const res = await getCountMessage();
+ // 兼容不同后端返回:res?.data 或 res?.count
+ const c = res?.data ?? 0;
+ if (alive) setCount(Number(c) || 0);
+ } catch {
+ if (alive) setCount(0);
+ }
+ })();
+ return () => { alive = false; };
+ }, []);
+
+ return count !== 0 ? (
+
+
+ {
+ const activeKey = sessionStorage.getItem('activeKey') || '';
+ if (activeKey === 'accountLogin') {
+ history.push('/supplierMessage')
+ } else {
+ history.push('/backend/supplierNews')
+ }
+ }}
+ />
+
+
+ ) : null
+};
+
+
+export default MessageNotice;
diff --git a/src/pages/login/login.tsx b/src/pages/login/login.tsx
index b012e48..21d8c21 100644
--- a/src/pages/login/login.tsx
+++ b/src/pages/login/login.tsx
@@ -44,19 +44,6 @@ const LoginPage: React.FC = () => {
}, [activeKey]);
- // 组件挂载时,检查是否有记住的用户名
- useEffect(() => {
- // const savedUser = localStorage.getItem('remember_user');
- // if (savedUser) {
- // const user = JSON.parse(savedUser);
- // form.setFieldsValue({
- // username: user.username,
- // password: user.password,
- // remember: true,
- // });
- // }
- }, [form]);
-
// 修改密码确认回调
const handleChangePwd = async (values: { userId: string; newPassword: string; confirmPassword: string; }) => {
try {
@@ -95,7 +82,7 @@ const LoginPage: React.FC = () => {
} else {
localStorage.removeItem('remember_user');
}
-
+ sessionStorage.setItem('activeKey', activeKey)
sessionStorage.setItem('token', loginRes.data.token);
//存入供应商用户id
if (activeKey === 'supplierLogin') {
diff --git a/src/pages/supplier/admission/SupplierEntryReview/index.tsx b/src/pages/supplier/admission/SupplierEntryReview/index.tsx
index 5b9f4ab..6055d04 100644
--- a/src/pages/supplier/admission/SupplierEntryReview/index.tsx
+++ b/src/pages/supplier/admission/SupplierEntryReview/index.tsx
@@ -133,6 +133,13 @@ const SupplierEntryReview: React.FC = () => {
ellipsis: true,
width: 120,
},
+ {
+ title: '准入单位',
+ dataIndex: 'orgName',
+ align: 'center',
+ ellipsis: true,
+ width: 120,
+ },
{
title: '准入部门',
dataIndex: 'deptName',
@@ -223,8 +230,8 @@ const SupplierEntryReview: React.FC = () => {
-
-
+
+
diff --git a/src/servers/api/user.ts b/src/servers/api/user.ts
index a043900..4c54cab 100644
--- a/src/servers/api/user.ts
+++ b/src/servers/api/user.ts
@@ -11,6 +11,14 @@ export async function getUserList(params: API.UserListRequest) {
params,
});
}
+/**
+ * 获取用户信息
+ */
+export async function getCountMessage() {
+ return request('/supplierMessage/getCountMessage', {
+ method: 'GET',
+ });
+}
/**
* 获取全国列表
* @param params 查询参数