瀏覽代碼

iAmSmart

master
Anna Ho 1 年之前
父節點
當前提交
ed2cd4a11d
共有 3 個檔案被更改,包括 37 行新增20 行删除
  1. +8
    -8
      src/pages/authentication/IAmSmartRegister.js
  2. +26
    -12
      src/pages/authentication/auth-forms/IAmSmartFormWizard.js
  3. +3
    -0
      src/utils/ApiPathConst.js

+ 8
- 8
src/pages/authentication/IAmSmartRegister.js 查看文件

@@ -15,7 +15,7 @@ import {
Button, Button,
} from '@mui/material'; } from '@mui/material';
import VisibilityIcon from '@mui/icons-material/Visibility'; import VisibilityIcon from '@mui/icons-material/Visibility';
import { GET_USERNAME } from "utils/ApiPathConst";
import { GET_ID } from "utils/ApiPathConst";


// project import // project import
import Loadable from 'components/Loadable'; import Loadable from 'components/Loadable';
@@ -55,7 +55,7 @@ const Register = () => {
const [activeStep, setActiveStep] = useState(0); const [activeStep, setActiveStep] = useState(0);
const [completed, setCompleted] = useState([false]); const [completed, setCompleted] = useState([false]);
const [updateValid, setUpdateValid] = useState(false); const [updateValid, setUpdateValid] = useState(false);
const [username, setUsername] = useState("");
const [idNo, setIdNo] = useState("");


const totalSteps = () => { const totalSteps = () => {
return steps.length; return steps.length;
@@ -73,19 +73,19 @@ const Register = () => {
return completedSteps() === totalSteps(); return completedSteps() === totalSteps();
}; };


const handleCheckUsername = async () => {
const response = await axios.get(`${GET_USERNAME}`, {
const handleCheckID = async () => {
const response = await axios.get(`${GET_ID}`, {
params: { params: {
username: username,
idNo: idNo,
} }
}) })
return Number(response.data[0]) === 1 return Number(response.data[0]) === 1
} }


const handleNext = async () => { const handleNext = async () => {
const test = await handleCheckUsername()
const test = await handleCheckID()
if (test) { if (test) {
notifyActionError("此用戶登入名稱已被注冊,請使用其他用戶登入名稱")
notifyActionError("此用戶已注冊,請返回登入頁面並進行登入流程。")
} else { } else {
const newActiveStep = const newActiveStep =
isLastStep() && !allStepsCompleted() isLastStep() && !allStepsCompleted()
@@ -150,7 +150,7 @@ const Register = () => {
) : ( ) : (
<React.Fragment> <React.Fragment>
<AuthWrapper> <AuthWrapper>
<CustomFormWizard setUpdateValid={setUpdateValid} step={activeStep} setUsername={setUsername}/>
<CustomFormWizard setUpdateValid={setUpdateValid} step={activeStep} setIdNo={setIdNo}/>
{/* <CustomFormWizard step={activeStep} /> */} {/* <CustomFormWizard step={activeStep} /> */}
</AuthWrapper> </AuthWrapper>
<Stack direction="row" sx={{ pb: 2 }}> <Stack direction="row" sx={{ pb: 2 }}>


+ 26
- 12
src/pages/authentication/auth-forms/IAmSmartFormWizard.js 查看文件

@@ -21,7 +21,7 @@ import { useFormik, FormikProvider } from 'formik';
import * as yup from 'yup'; import * as yup from 'yup';


import axios from "axios"; import axios from "axios";
import { POST_PUBLIC_USER_REGISTER, POST_CAPTCHA, GET_USER_EMAIL } from "utils/ApiPathConst";
import { POST_IAMSMART_USER_REGISTER, POST_CAPTCHA, GET_USER_EMAIL } from "utils/ApiPathConst";


import * as ComboData from "utils/ComboData"; import * as ComboData from "utils/ComboData";


@@ -177,6 +177,20 @@ const CustomFormWizard = (props) => {
} }
}, [checkEmailBlur]) }, [checkEmailBlur])


useEffect(() => {
if (iAmSmartData) {
formik.setFieldValue("enName", iAmSmartData.enName??"");
formik.setFieldValue("cnName", iAmSmartData.cnName??"");
formik.setFieldValue("idNo", iAmSmartData.idNo??"");
formik.setFieldValue("checkDigit", iAmSmartData.checkDigit??"");
formik.setFieldValue("email", iAmSmartData.email??"");
formik.setFieldValue("phone", iAmSmartData.phone??"");
formik.setFieldValue("phoneCountryCode", iAmSmartData.phoneCountryCode??"");
formik.setFieldValue("address1", iAmSmartData.address1??"");
props.setIdNo(iAmSmartData.idNo??"");
}
}, [iAmSmartData])

const onCaptchaChange = () => { const onCaptchaChange = () => {
HttpUtils.post({ HttpUtils.post({
url: POST_CAPTCHA, url: POST_CAPTCHA,
@@ -274,12 +288,12 @@ const CustomFormWizard = (props) => {
} }


const user = { const user = {
enName: values.enName,
chName: values.chName,
enName: iAmSmartData.enName,
chName: iAmSmartData.chName,
emailAddress: values.email, emailAddress: values.email,
idDocType: values.idDocType,
identification: values.idNo,
checkDigit: values.checkDigit,
idDocType: "HKID",
identification: iAmSmartData.idNo,
checkDigit: iAmSmartData.checkDigit,
tncFlag: tncFlag, tncFlag: tncFlag,
type: "IND", type: "IND",
}; };
@@ -293,7 +307,7 @@ const CustomFormWizard = (props) => {
formData.append("userAddress", JSON.stringify(userAddress)); formData.append("userAddress", JSON.stringify(userAddress));


if (isValid) { if (isValid) {
axios.post(POST_PUBLIC_USER_REGISTER, formData, {
axios.post(POST_IAMSMART_USER_REGISTER, formData, {
headers: { headers: {
"Content-Type": "multipart/form-data" "Content-Type": "multipart/form-data"
} }
@@ -339,13 +353,13 @@ const CustomFormWizard = (props) => {


const formik = useFormik({ const formik = useFormik({
initialValues: ({ initialValues: ({
email: '',
emailConfirm: '',
address1: '',
email: iAmSmartData.email??"",
emailConfirm: iAmSmartData.email??"",
address1: iAmSmartData.address1??"",
address2: '', address2: '',
address3: '', address3: '',
phone: '',
phoneCountryCode: '852',
phone: iAmSmartData.phone??"",
phoneCountryCode: iAmSmartData.phoneCountryCode??"852",
submit: null, submit: null,
fax: '', fax: '',
faxCountryCode: '852', faxCountryCode: '852',


+ 3
- 0
src/utils/ApiPathConst.js 查看文件

@@ -43,10 +43,13 @@ export const POST_CAPTCHA = apiPath+'/captcha';


//register //register
export const POST_PUBLIC_USER_REGISTER = apiPath+'/user/register'; export const POST_PUBLIC_USER_REGISTER = apiPath+'/user/register';
export const POST_IAMSMART_USER_REGISTER = apiPath+'/user/smart/register';
export const GET_USERNAME = apiPath+'/user/username'; export const GET_USERNAME = apiPath+'/user/username';
export const GET_USER_EMAIL = apiPath+'/user/email'; export const GET_USER_EMAIL = apiPath+'/user/email';
export const GET_ID = apiPath+'/user/verifyID';
export const GET_VERIFY_USER_ACCOUNT = apiPath+'/user/verifyEmail'; export const GET_VERIFY_USER_ACCOUNT = apiPath+'/user/verifyEmail';



//Public //Public
export const GET_PUBLIC_ORG_USER_LIST = apiPath+'/user/listOrg'; export const GET_PUBLIC_ORG_USER_LIST = apiPath+'/user/listOrg';
export const GET_SET_PRIMARY_USER = apiPath+'/user/primary'; export const GET_SET_PRIMARY_USER = apiPath+'/user/primary';


Loading…
取消
儲存