import React from 'react';
import { Form, Button, Input, Row, InputNumber, Utils } from 'knowdesign';
import message from '@src/components/Message';
import { FormMap } from './config';
import Api from '../../api';
import { useHistory } from 'react-router-dom';
import { systemCipherKey } from '@src/constants/common';
export enum FormItemType {
input = 'input',
inputPassword = 'inputPassword',
inputNumber = 'inputNumber',
custom = 'custom',
}
export interface IFormItem {
key: string;
type: FormItemType;
attrs?: any;
rules?: any[];
invisible?: boolean;
customFormItem?: any;
}
export const renderFormItem = (item: IFormItem) => {
switch (item.type) {
default:
case FormItemType.input:
return ;
case FormItemType.inputPassword:
return ;
case FormItemType.inputNumber:
return ;
case FormItemType.custom:
return (item as IFormItem).customFormItem;
}
};
export const LoginForm: React.FC = (props) => {
const [form] = Form.useForm();
const history = useHistory();
const handleSubmit = async ({ userName, pw }: { userName: string; pw: string }) => {
Utils.post(Api.login, {
userName,
pw: Utils.encryptAES(pw, systemCipherKey),
}).then((res) => {
message.success('登录成功');
localStorage.setItem('userInfo', JSON.stringify(res));
const redirectPath = window.location.search.slice('?redirect='.length) || '/';
history.replace(redirectPath);
});
};
return (
<>
>
);
};