File was renamed from rsf-admin/src/page/login/Login.jsx |
| | |
| | | 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); |
| | |
| | | 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); |
| | |
| | | </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" |
| | |
| | | validate={required()} |
| | | /> |
| | | </Box> |
| | | <Box sx={{ marginTop: '1em' }}> |
| | | <Box sx={{ marginTop: '.1em' }}> |
| | | <TextInput |
| | | source="password" |
| | | label={translate('ra.auth.password')} |