hejianhao
2025-03-06 8cff650f3418f5cc982a1ac9d92b0e8574cce589
修改登录页和欢迎页ui
4个文件已修改
2个文件已删除
6个文件已添加
147 ■■■■ 已修改文件
management/public/LogoSCUnboundedSans.ttf 补丁 | 查看 | 原始文档 | blame | 历史
management/public/account.png 补丁 | 查看 | 原始文档 | blame | 历史
management/public/code.png 补丁 | 查看 | 原始文档 | blame | 历史
management/public/font.css 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
management/public/loginBg.png 补丁 | 查看 | 原始文档 | blame | 历史
management/public/logo.svg 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
management/public/logo/wellcome.png 补丁 | 查看 | 原始文档 | blame | 历史
management/public/password.png 补丁 | 查看 | 原始文档 | blame | 历史
management/public/pro_icon.svg 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
management/src/pages/Login/index.tsx 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
management/src/pages/Login/style.less 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
management/src/pages/system/welco/index.jsx 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
management/public/LogoSCUnboundedSans.ttf
Binary files differ
management/public/account.png
management/public/code.png
management/public/font.css
@@ -0,0 +1,6 @@
@font-face {
    font-family: 'LogoSCUnboundedSans';
    src: url('./LogoSCUnboundedSans.ttf');
    font-weight: normal;
    font-style: normal;
}
management/public/loginBg.png
management/public/logo.svg
File was deleted
management/public/logo/wellcome.png
management/public/password.png
management/public/pro_icon.svg
File was deleted
management/src/pages/Login/index.tsx
@@ -11,6 +11,7 @@
import Settings from '../../../config/defaultSettings';
import EditPwd from './editPwd.jsx';
import { updatePwd } from './service.js';
import bgImg from '../../../public/loginBg.png';
import './style.less';
const Lang = () => {
@@ -62,6 +63,9 @@
    return {
      height: '100vh',
      overflow: 'auto',
      backgroundImage: `url(${bgImg})`,
      backgroundSize: 'cover',
      backgroundPosition: 'center',
    };
  });
@@ -72,7 +76,7 @@
      id: 'pages.login.success',
      defaultMessage: '登录成功!',
    });
    const userInfo = { userName: data.name,...data };
    const userInfo = { userName: data.name, ...data };
    localStorage.setItem('userInfo', JSON.stringify(userInfo));
    let permissionList: any[] = [
      "/work_order_transaction_management/work_order_item_configuration",
@@ -122,7 +126,7 @@
    setInitialState((s: any) => ({
      ...s,
      token: data.token,
      userName:data.name,
      userName: data.name,
      permission: accessObj,
      currentUser: userInfo,
      settings: Settings,
@@ -165,15 +169,11 @@
            top: '50%',
            left: '50%',
            transform: 'translate(-50%,-50%)',
            display: 'flex',
            alignItems: 'center',
          }}
        >
          <div style={{ width: '787px', fontSize: '26px', textAlign: 'center' }}>
            <h1>
              “三个身边”群众工作机制
            </h1>
            <h1>平台</h1>
          <div className='sysName'>
            <div>“三个身边”</div>
            <div>群众工作机制</div>
          </div>
          <LoginForm
            contentStyle={{
@@ -197,7 +197,7 @@
              await handleSubmit(values as API.LoginParams);
            }}
          >
            <h1 style={{ fontSize: '26px', textAlign: 'center', marginBottom: '20px' }}>登录</h1>
            <div style={{ fontSize: '23px', lineHeight: '32px', textAlign: 'center', marginBottom: '45px', fontWeight: 'bold' }}>登录</div>
            {status === 'error' && loginType === 'username' && (
              <LoginMessage
                content={intl.formatMessage({
@@ -212,7 +212,7 @@
                  name="phone"
                  fieldProps={{
                    size: 'large',
                    prefix: <UserOutlined />,
                    prefix: <img src={require('../../../public/account.png')} style={{ width: 18, height: 18 }} />,
                  }}
                  placeholder="请输入账号"
                  rules={[
@@ -226,7 +226,7 @@
                  name="password"
                  fieldProps={{
                    size: 'large',
                    prefix: <LockOutlined />,
                    prefix: <img src={require('../../../public/password.png')} style={{ width: 18, height: 18 }} />,
                  }}
                  placeholder="请输入密码"
                  rules={[
@@ -236,12 +236,12 @@
                    },
                  ]}
                />
                <Space>
                <div className='codeBox'>
                  <ProFormText
                    name="code"
                    fieldProps={{
                      size: 'large',
                      prefix: <SafetyOutlined />,
                      prefix: <img src={require('../../../public/code.png')} style={{ width: 18, height: 18 }} />,
                    }}
                    placeholder="请输入验证码"
                    rules={[
@@ -251,10 +251,10 @@
                      },
                    ]}
                  />
                  <div style={{ marginBottom: '24px' }}>
                    <Captcha onChange={handleClick} ref={captchaRef} bgColor="#fff" />
                  <div>
                    <Captcha onChange={handleClick} ref={captchaRef} bgColor="#fff" height={52} />
                  </div>
                </Space>
                </div>
              </>
            )}
            {status === 'error' && loginType === 'mobile' && <LoginMessage content="验证码错误" />}
management/src/pages/Login/style.less
@@ -1,16 +1,101 @@
.ant-pro-form-login-container {
    background-color: #fff;
    border-radius: 23px;
    padding: 45px 60px;
    padding: 38px 95px 65px 95px;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
    margin-left: 50px;
    margin-top: 69px;
}
.ant-pro-form-login-header {
    width: 190px;
    height: 190px;
.sysName {
    text-align: center;
    font-family: 'LogoSCUnboundedSans';
    font-weight: 400;
    letter-spacing: 2px;
    background: linear-gradient(270deg, #FFEEA7 0%, #FDF9FA 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    font-size: 70px;
    line-height: 101px;
}
.ant-pro-form-login-top {
    display: none;
.ant-form-item {
    width: 480px;
    margin-bottom: 20px;
}
.ant-input-affix-wrapper {
    padding: 14px 18px;
    background: #F5F5F5;
    border-radius: 10px;
    border: 1px solid rgba(0, 0, 0, 0.15);
}
.ant-input-affix-wrapper:hover {
    border-color: #FC8D55;
}
.ant-input-affix-wrapper:focus-within {
    border-color: #FC8D55;
    box-shadow: 0 0 0 2px rgba(252, 141, 85, 0.2);
}
.ant-pro-form-login-main {
    width: unset !important;
    min-width: unset !important;
}
.codeBox {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-radius: 10px;
    background: #F5F5F5;
    border: 1px solid rgba(0, 0, 0, 0.15);
    margin-bottom: 25px;
    position: relative;
    .ant-form-item-additional {
        position: absolute;
        bottom: -1.5rem;
    }
    .ant-form-item {
        width: 365px;
        margin-bottom: unset;
        .ant-input-affix-wrapper {
            background: unset !important;
        }
        .ant-input-outlined {
            border: unset !important;
        }
    }
}
canvas {
    border-radius: 0 10px 10px 0;
}
.codeBox:hover {
    border-color: #FC8D55;
    background-color: #fff;
}
.codeBox:focus-within {
    border-color: #FC8D55;
    box-shadow: 0 0 0 2px rgba(252, 141, 85, 0.2);
}
.ant-btn {
    height: 50px;
    background: linear-gradient(270deg, #FC8D55 0%, #FF4948 100%);
    border-radius: 25px;
}
.ant-btn-variant-solid:hover {
    background: linear-gradient(270deg, #FC8D55 0%, #FF4948 100%) !important;
}
management/src/pages/system/welco/index.jsx
@@ -4,7 +4,7 @@
const SystemSettings = () => {
    return (
        <PageContainer title={''} className={'weclome'}>
            <img src={require('../../../../public/logo/welcome.png')} style={{ width: "100%", height: "calc(100vh - 74px)" }} />
            <img src={require('../../../../public/logo/wellcome.png')} style={{ width: "100%", height: "calc(100vh - 74px)" }} />
        </PageContainer>
    )