From c993b0005df6cccdc8d701a16493eb40fb4f4c73 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 19 九月 2024 17:14:45 +0800
Subject: [PATCH] #
---
zy-acs-flow/public/login_bg11.jpg | 0
zy-acs-flow/public/login_bg1.jpg | 0
zy-acs-flow/public/login_bg3.jpg | 0
zy-acs-flow/public/login_bg788.jpg | 0
zy-acs-flow/src/page/login/Login.jsx | 140 ++++++++++++++++++++++++++++++++++++++++++++--
zy-acs-flow/public/login_bg12.jpg | 0
zy-acs-flow/public/login_bg.jpg | 0
zy-acs-flow/public/login_bg66.jpg | 0
zy-acs-flow/src/App.jsx | 2
zy-acs-flow/public/login_bg223.jpg | 0
10 files changed, 134 insertions(+), 8 deletions(-)
diff --git a/zy-acs-flow/public/login_bg.jpg b/zy-acs-flow/public/login_bg.jpg
new file mode 100644
index 0000000..1671796
--- /dev/null
+++ b/zy-acs-flow/public/login_bg.jpg
Binary files differ
diff --git a/zy-acs-flow/public/login_bg1.jpg b/zy-acs-flow/public/login_bg1.jpg
new file mode 100644
index 0000000..960aafe
--- /dev/null
+++ b/zy-acs-flow/public/login_bg1.jpg
Binary files differ
diff --git a/zy-acs-flow/public/login_bg11.jpg b/zy-acs-flow/public/login_bg11.jpg
new file mode 100644
index 0000000..6e92df1
--- /dev/null
+++ b/zy-acs-flow/public/login_bg11.jpg
Binary files differ
diff --git a/zy-acs-flow/public/login_bg12.jpg b/zy-acs-flow/public/login_bg12.jpg
new file mode 100644
index 0000000..c005200
--- /dev/null
+++ b/zy-acs-flow/public/login_bg12.jpg
Binary files differ
diff --git a/zy-acs-flow/public/login_bg223.jpg b/zy-acs-flow/public/login_bg223.jpg
new file mode 100644
index 0000000..ddb8406
--- /dev/null
+++ b/zy-acs-flow/public/login_bg223.jpg
Binary files differ
diff --git a/zy-acs-flow/public/login_bg3.jpg b/zy-acs-flow/public/login_bg3.jpg
new file mode 100644
index 0000000..0f36942
--- /dev/null
+++ b/zy-acs-flow/public/login_bg3.jpg
Binary files differ
diff --git a/zy-acs-flow/public/login_bg66.jpg b/zy-acs-flow/public/login_bg66.jpg
new file mode 100644
index 0000000..463c1c7
--- /dev/null
+++ b/zy-acs-flow/public/login_bg66.jpg
Binary files differ
diff --git a/zy-acs-flow/public/login_bg788.jpg b/zy-acs-flow/public/login_bg788.jpg
new file mode 100644
index 0000000..7a5e114
--- /dev/null
+++ b/zy-acs-flow/public/login_bg788.jpg
Binary files differ
diff --git a/zy-acs-flow/src/App.jsx b/zy-acs-flow/src/App.jsx
index 47c662d..f026581 100644
--- a/zy-acs-flow/src/App.jsx
+++ b/zy-acs-flow/src/App.jsx
@@ -56,7 +56,7 @@
defaultTheme={DEFAULT_THEME_MODE}
i18nProvider={i18nProvider}
dataProvider={DataProvider(DATA_PROVIDER_SPRING)}
- // loginPage={Login}
+ loginPage={Login}
dashboard={Dashboard}
>
{permissions => (
diff --git a/zy-acs-flow/src/page/login/Login.jsx b/zy-acs-flow/src/page/login/Login.jsx
index 29e615c..bd2ad7e 100644
--- a/zy-acs-flow/src/page/login/Login.jsx
+++ b/zy-acs-flow/src/page/login/Login.jsx
@@ -1,10 +1,136 @@
+import * as React from 'react';
+import { useState } from 'react';
+import { useLocation } from 'react-router-dom';
+
+import {
+ Avatar,
+ Box,
+ Button,
+ Card,
+ CardActions,
+ CircularProgress,
+} from '@mui/material';
+import LockIcon from '@mui/icons-material/Lock';
+import {
+ Form,
+ required,
+ TextInput,
+ useTranslate,
+ useLogin,
+ useNotify,
+} from 'react-admin';
const Login = () => {
- return (
- <>
- <h1>Login</h1>
- </>
- )
-}
+ const [loading, setLoading] = useState(false);
+ const translate = useTranslate();
-export default Login;
\ No newline at end of file
+ const notify = useNotify();
+ const login = useLogin();
+ const location = useLocation();
+
+ const handleSubmit = (auth) => {
+ setLoading(true);
+ login(
+ auth,
+ location.state ? (location.state).nextPathname : '/'
+ ).catch((error) => {
+ setLoading(false);
+ notify(
+ typeof error === 'string'
+ ? error
+ : typeof error === 'undefined' || !error.message
+ ? 'ra.auth.sign_in_error'
+ : error.message,
+ {
+ type: 'error',
+ messageArgs: {
+ _:
+ typeof error === 'string'
+ ? error
+ : error && error.message
+ ? error.message
+ : undefined,
+ },
+ }
+ );
+ });
+ };
+
+ return (
+ <Form onSubmit={handleSubmit} noValidate>
+ <Box
+ sx={{
+ display: 'flex',
+ flexDirection: 'column',
+ minHeight: '100vh',
+ alignItems: 'center',
+ justifyContent: 'flex-start',
+ background: `url(/login_bg.jpg)`,
+ backgroundRepeat: 'no-repeat',
+ backgroundSize: 'cover',
+ }}
+ >
+ {/* https://unsplash.com/ */}
+ <Card sx={{ minWidth: 300, marginTop: '6em', backgroundColor: '#fff' }}>
+ <Box
+ sx={{
+ margin: '1em',
+ display: 'flex',
+ justifyContent: 'center',
+ }}
+ >
+ <Avatar sx={{ bgcolor: 'secondary.main' }}>
+ <LockIcon />
+ </Avatar>
+ </Box>
+ <Box
+ sx={{
+ marginTop: '1em',
+ display: 'flex',
+ justifyContent: 'center',
+ color: theme => theme.palette.grey[500],
+ }}
+ >
+ Hint: root / 123456
+ </Box>
+ <Box sx={{ padding: '0 1em 1em 1em' }}>
+ <Box sx={{ marginTop: '1em' }}>
+ <TextInput
+ autoFocus
+ source="username"
+ label={translate('ra.auth.username')}
+ disabled={loading}
+ validate={required()}
+ />
+ </Box>
+ <Box sx={{ marginTop: '1em' }}>
+ <TextInput
+ source="password"
+ label={translate('ra.auth.password')}
+ type="password"
+ disabled={loading}
+ validate={required()}
+ />
+ </Box>
+ </Box>
+ <CardActions sx={{ padding: '0 1em 1em 1em' }}>
+ <Button
+ variant="contained"
+ type="submit"
+ color="primary"
+ disabled={loading}
+ fullWidth
+ >
+ {loading && (
+ <CircularProgress size={25} thickness={2} />
+ )}
+ {translate('ra.auth.sign_in')}
+ </Button>
+ </CardActions>
+ </Card>
+ </Box>
+ </Form>
+ );
+};
+
+export default Login;
--
Gitblit v1.9.1