From 468d4e74e24242b1a2ddb2815d26ee202926cebe Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期四, 06 二月 2025 16:55:04 +0800
Subject: [PATCH] #

---
 rsf-admin/src/page/login/index.jsx |   33 ++++++++++++++++++++++++++++++++-
 1 files changed, 32 insertions(+), 1 deletions(-)

diff --git a/rsf-admin/src/page/login/Login.jsx b/rsf-admin/src/page/login/index.jsx
similarity index 82%
rename from rsf-admin/src/page/login/Login.jsx
rename to rsf-admin/src/page/login/index.jsx
index f212d46..634211a 100644
--- a/rsf-admin/src/page/login/Login.jsx
+++ b/rsf-admin/src/page/login/index.jsx
@@ -17,8 +17,10 @@
     useTranslate,
     useLogin,
     useNotify,
+    SelectInput,
 } from 'react-admin';
 import { LOGIN_BACKGROUND } from '@/config/setting';
+import { tenants } from '@/api/auth';
 
 const Login = () => {
     const [loading, setLoading] = useState(false);
@@ -27,6 +29,22 @@
     const notify = useNotify();
     const login = useLogin();
     const location = useLocation();
+
+    const [tenantList, setTenantList] = React.useState([]);
+    const [tenantId, setTenantId] = React.useState(null);
+
+    React.useEffect(() => {
+        tenants().then(data => {
+            setTenantList(data);
+            if (data.length > 0) {
+                setTenantId(data[0].id);
+            }
+        })
+    }, []);
+
+    React.useEffect(() => {
+        console.log(tenantId);
+    }, [tenantId]);
 
     const handleSubmit = (auth) => {
         setLoading(true);
@@ -123,6 +141,19 @@
                     </Box>
                     <Box sx={{ padding: '0 1em 1em 1em' }}>
                         <Box sx={{ marginTop: '1em' }}>
+                            <SelectInput
+                                label="page.login.tenant"
+                                source="tenantId"
+                                choices={tenantList.map(item => ({
+                                    id: item.id,
+                                    name: item.name
+                                }))}
+                                validate={required()}
+                                value={tenantId}
+                                onChange={e => setTenantId(e.target.value)}
+                            />
+                        </Box>
+                        <Box sx={{ marginTop: '.1em' }}>
                             <TextInput
                                 autoFocus
                                 source="username"
@@ -131,7 +162,7 @@
                                 validate={required()}
                             />
                         </Box>
-                        <Box sx={{ marginTop: '1em' }}>
+                        <Box sx={{ marginTop: '.1em' }}>
                             <TextInput
                                 source="password"
                                 label={translate('ra.auth.password')}

--
Gitblit v1.9.1