修改促销、优化页面布局
Change-Id: Iae813b5b6557efa7059fe6d94bc32e96c984e4ea
diff --git a/src/pages/UserCenter/UserStatusChecker.jsx b/src/pages/UserCenter/UserStatusChecker.jsx
new file mode 100644
index 0000000..7b8b303
--- /dev/null
+++ b/src/pages/UserCenter/UserStatusChecker.jsx
@@ -0,0 +1,58 @@
+import React, { useEffect, useState, useContext } from 'react';
+import axios from 'axios';
+import { UserContext } from '../../context/UserContext';
+
+const UserStatusChecker = () => {
+ const { user } = useContext(UserContext); // 假设你在上下文中已经有 user 信息
+ const [statusMessage, setStatusMessage] = useState('');
+ const [statusType, setStatusType] = useState('normal'); // normal / warning / danger
+
+ useEffect(() => {
+ if (user?.id) {
+ checkUserShareRate(user.id);
+ }
+ }, [user]);
+
+ const checkUserShareRate = async (userId) => {
+ try {
+ const response = await axios.get(`/users/${userId}/share-rate`);
+ const message = response.data;
+
+ setStatusMessage(message);
+
+ if (message.includes('账号已被注销')) {
+ setStatusType('danger');
+ } else if (message.includes('警告')) {
+ setStatusType('warning');
+ } else {
+ setStatusType('normal');
+ }
+
+ } catch (error) {
+ console.error('获取用户状态失败:', error);
+ setStatusMessage('无法获取用户状态');
+ setStatusType('danger');
+ }
+ };
+
+ const getStatusStyle = () => {
+ switch (statusType) {
+ case 'warning':
+ return { backgroundColor: '#fff3cd', color: '#856404', padding: '10px', borderRadius: '8px' };
+ case 'danger':
+ return { backgroundColor: '#f8d7da', color: '#721c24', padding: '10px', borderRadius: '8px' };
+ default:
+ return { backgroundColor: '#d4edda', color: '#155724', padding: '10px', borderRadius: '8px' };
+ }
+ };
+
+ return (
+ <div style={{ marginTop: '20px' }}>
+ <div style={getStatusStyle()}>
+ <strong>账号状态提示:</strong> {statusMessage}
+ </div>
+ </div>
+ );
+};
+
+export default UserStatusChecker;