// @ts-nocheck
import React, { useEffect, useState } from 'react';
import classnames from 'classnames';
// 统一的form表单的PropType
import { CommonLoginFormPropType } from '@/propType/form/loginForm';
import { LocaleProvider } from '@/locales';
import CustomTab from '@/components/tab';
import { FM } from '@/locales';
import { Close_Icon_svg, QrCode_Icon_svg } from '@/data';
import styles from './styles.less';
// 自定义封装短信登录部分
import SmsLoginForm from '@/components/Sms';
import OtherAuthGroup from '@/components/OtherAuth';
import PwdLoginForm from '@/components/Pwd';
import QRCode from '@/components/QRCode';
import SettingPwdContent from '../settingPwd';
const tabConfigList = [
{
title: ,
value: 'sms',
},
{
title: ,
value: 'account',
},
];
interface PropTypes {
visible: boolean;
type: ['customer', 'business'];
registerType: ['customer', 'business'];
isShowRegisterAccount: boolean;
}
const LogForm = (props: PropTypes) => {
const { visible, registerType, type, isShowRegisterAccount } = props;
const [isShowRegisterModal, setIsShowRegisterModal] = useState(false);
const [isShowQRCode, setIsShowQRCode] = useState(false);
const [selectedTabValue, setSelectedTabValue] = useState('sms');
const [isShowResetPwdModal, setIsShowResetPwdModal] = useState(false);
const [resetPwdModalType, setResetPwdModalType] = useState('phone');
const [registerModalTabValue, setRegisterModalTabValue] = useState('phone');
const handleLoginSuccess = (res) => {
setIsShowRegisterModal(false);
setIsShowResetPwdModal(false);
if (props?.onSuccess) {
props.onSuccess(res);
}
};
const handleLoginFailed = (errInfo) => {
if (props?.onFailed) {
props.onFailed(errInfo);
}
};
const handleCloseClick = () => {
let modalType = '';
if (isShowModal) {
modalType = 'login';
} else if (isShowRegisterModal) {
modalType = 'register';
} else {
modalType = 'resetPwd';
}
switch (modalType) {
case 'login':
setIsShowModal(false);
break;
case 'register':
setIsShowRegisterModal(false);
break;
case 'resetPwd':
setIsShowResetPwdModal(false);
break;
default:
}
if (props?.onCancel) {
props.onCancel(modalType);
}
};
const commonFormProps: CommonLoginFormPropType = {
isShowMsg: true,
onBeforeSubmit: props?.onBeforeSubmit ? props?.onBeforeSubmit : () => true,
onSuccess: handleLoginSuccess,
onFailed: handleLoginFailed,
};
const handleRegisterClick = (value) => {
// setRegisterModalTabValue(value);
// setIsShowRegisterModal(true);
// setIsShowModal(false);
if (props?.onRegisterClick) {
props.onRegisterClick();
}
};
const handleResetPwdClick = (modalType) => {
// setResetPwdModalType(modalType);
// setIsShowResetPwdModal(true);
// setIsShowModal(false);
if (props?.onResetPwdClick) {
props.onResetPwdClick();
}
};
const renderResetPwdModalContent = () => {
return (
);
};
const handleSettingPwdModalSuccess = (values) => {
setIsShowResetPwdModal(false);
setIsShowModal(true);
};
const renderQrCodeGroup = () => {
return (
<>
setIsShowQRCode(true)}
>
扫描二维码
{isShowQRCode && (
)}
>
);
};
const renderLoginModalContent = () => {
return (
{
setSelectedTabValue(value);
}}
>
{/* 短信验证码登录 */}
{/* 其他登录方式 */}
{/* 账户密码登录方式 */}
{/* 其他登录方式 */}
{/* 二维码区域 */}
{renderQrCodeGroup()}
);
};
return (
{/* */}
{/* 登录表单部分 */}
{renderLoginModalContent()}
{/*/!* 注册表单部分 *!/*/}
{isShowResetPwdModal && renderResetPwdModalContent()}
);
};
LogForm.defaultProps = {
visible: false,
type: 'business',
registerType: 'client',
isShowRegisterAccount: true,
};
export default LogForm;