@@ -1,6 +1,6 @@ | |||
// material-ui | |||
import { | |||
Grid, Typography, Button, Checkbox | |||
Grid, Button, Checkbox | |||
} from '@mui/material'; | |||
import { FormControlLabel } from '@material-ui/core'; | |||
import MainCard from "../../components/MainCard"; | |||
@@ -33,7 +33,7 @@ const OrganizationCard = ({ userData, loadDataFun, id }) => { | |||
addressLine3: yup.string().max(255, "length must <= 255"), | |||
fax_countryCode: yup.string().min(3, '請輸入國際區號').nullable(), | |||
tel_countryCode: yup.string().min(3, '請輸入國際區號'), | |||
phoneNumber: yup.string().min(8,'請輸入有效聯絡電話').required('請輸入聯絡電話'), | |||
phoneNumber: yup.string().min(8, '請輸入有效聯絡電話').required('請輸入聯絡電話'), | |||
faxNumber: yup.string().min(8, '請輸入8位數字').nullable(), | |||
brExpiryDate: yup.string().min(8).required('請輸入商業登記證有效日期'), | |||
brNo: yup.string().min(8, '請輸入有效商業登記證號碼').max(8, '請輸入有效商業登記證號碼').required('請輸入商業登記證號碼'), | |||
@@ -93,11 +93,8 @@ const OrganizationCard = ({ userData, loadDataFun, id }) => { | |||
border={false} | |||
content={false} | |||
> | |||
<Typography variant="h5" sx={{ mt: 3, ml: 3, mb: 1 }}> | |||
Information | |||
</Typography> | |||
<form onSubmit={formik.handleSubmit}> | |||
<form onSubmit={formik.handleSubmit} style={{ padding: 24 }}> | |||
{/*top*/} | |||
<Grid item s={12} md={12} lg={12} sx={{ mb: 3 }} alignItems={"start"} justifyContent="center"> | |||
@@ -176,24 +173,18 @@ const OrganizationCard = ({ userData, loadDataFun, id }) => { | |||
<Grid container spacing={1}> | |||
{FieldUtils.getTextField({ | |||
label: FieldUtils.notNullFieldLabel("BR No.:"), | |||
valueName: "brNo", | |||
disabled: (!editMode && !createMode), | |||
form: formik | |||
})} | |||
<Grid item lg={4} > | |||
{FieldUtils.getTextField({ | |||
label: FieldUtils.notNullFieldLabel("BR No.:"), | |||
valueName: "brNo", | |||
disabled: (!editMode && !createMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4} > | |||
{/* <Checkbox | |||
name="creditor" | |||
label="is Creditor" | |||
checked={formik.values.creditor} | |||
onChange={formik.handleChange} | |||
disabled={!editMode && !createMode} | |||
/> */} | |||
<FormControlLabel | |||
control={<Checkbox checked={formik.values.creditor}/>} | |||
control={<Checkbox checked={formik.values.creditor} />} | |||
label="is Creditor" | |||
name="creditor" | |||
onChange={formik.handleChange} | |||
@@ -203,34 +194,43 @@ const OrganizationCard = ({ userData, loadDataFun, id }) => { | |||
<Grid item lg={4} ></Grid> | |||
{FieldUtils.getTextField({ | |||
label: FieldUtils.notNullFieldLabel("Name (Eng):"), | |||
valueName: "enCompanyName", | |||
disabled: (!editMode && !createMode), | |||
form: formik | |||
})} | |||
<Grid item lg={4} > | |||
{FieldUtils.getTextField({ | |||
label: FieldUtils.notNullFieldLabel("Name (Eng):"), | |||
valueName: "enCompanyName", | |||
disabled: (!editMode && !createMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4} > | |||
{FieldUtils.getTextField({ | |||
label: "Name (Ch):", | |||
valueName: "chCompanyName", | |||
disabled: (!editMode && !createMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4} > | |||
{FieldUtils.getDateField({ | |||
label: FieldUtils.notNullFieldLabel("Expiry Date:"), | |||
valueName: "brExpiryDate", | |||
disabled: (!editMode && !createMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4} > | |||
{FieldUtils.getTextField({ | |||
label: FieldUtils.notNullFieldLabel("Contact Person:"), | |||
valueName: "contactPerson", | |||
disabled: (!editMode && !createMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4} > | |||
{FieldUtils.getPhoneField({ | |||
label: FieldUtils.notNullFieldLabel("Contact Tel:"), | |||
valueName: { | |||
@@ -240,7 +240,9 @@ const OrganizationCard = ({ userData, loadDataFun, id }) => { | |||
disabled: (!editMode && !createMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4} > | |||
{FieldUtils.getPhoneField({ | |||
label: "Fax No:", | |||
valueName: { | |||
@@ -250,7 +252,9 @@ const OrganizationCard = ({ userData, loadDataFun, id }) => { | |||
disabled: (!editMode && !createMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4} > | |||
{FieldUtils.getComboField({ | |||
label: FieldUtils.notNullFieldLabel("Country:"), | |||
valueName: "country", | |||
@@ -258,7 +262,9 @@ const OrganizationCard = ({ userData, loadDataFun, id }) => { | |||
dataList: ComboData.country, | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4} > | |||
{FieldUtils.getComboField({ | |||
label: FieldUtils.notNullFieldLabel("District:"), | |||
valueName: "district", | |||
@@ -266,14 +272,17 @@ const OrganizationCard = ({ userData, loadDataFun, id }) => { | |||
dataList: ComboData.district, | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4} > | |||
{FieldUtils.getAddressField({ | |||
label: FieldUtils.notNullFieldLabel("Address:"), | |||
valueName: ["addressLine1", "addressLine2", "addressLine3"], | |||
disabled: (!editMode && !createMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={12} ></Grid> | |||
@@ -63,7 +63,7 @@ const OrganizationDetailPage = () => { | |||
: | |||
<Grid container rowSpacing={4.5} columnSpacing={2.75}> | |||
<Grid item xs={12} sx={{mb: -2.25}}> | |||
<Typography variant="h5">Organization</Typography> | |||
<Typography variant="h5" >Organization Details</Typography> | |||
</Grid> | |||
{/*col 1*/} | |||
<Grid item xs={12} > | |||
@@ -1,10 +1,10 @@ | |||
// material-ui | |||
import { | |||
Grid, Typography, Button | |||
Grid, Button | |||
} from '@mui/material'; | |||
import MainCard from "../../components/MainCard"; | |||
import * as React from "react"; | |||
import {useEffect, useState} from "react"; | |||
import { useEffect, useState } from "react"; | |||
import * as yup from 'yup'; | |||
import { useFormik } from 'formik'; | |||
@@ -16,34 +16,34 @@ import * as ComboData from "../../utils/ComboData"; | |||
// ==============================|| DASHBOARD - DEFAULT ||============================== // | |||
const UserInformationCard_Individual = ({formData, loadDataFun}) => { | |||
const UserInformationCard_Individual = ({ formData, loadDataFun }) => { | |||
const [currentUserData, setCurrentUserData] = useState(formData); | |||
const [editMode, setEditMode] = useState(false); | |||
const [locked, setLocked] = useState(false); | |||
const formik = useFormik({ | |||
enableReinitialize:true, | |||
initialValues:currentUserData, | |||
validationSchema:yup.object().shape({ | |||
enableReinitialize: true, | |||
initialValues: currentUserData, | |||
validationSchema: yup.object().shape({ | |||
enName: yup.string().max(255).required('請輸入英文姓名'), | |||
chName: yup.string().max(255).required('請輸入中文姓名'), | |||
addressLine1: yup.string().max(255).required('請輸入第一行地址'), | |||
addressLine2: yup.string().max(255).nullable(), | |||
addressLine3: yup.string().max(255).nullable(), | |||
emailAddress: yup.string().email('請輸入電郵格式').max(255).required('請輸入電郵'), | |||
identification: yup.string().min(7,"請輸入證件號碼").required('請輸入證件號碼'), | |||
checkDigit:yup.string().max(1).required('請輸入括號內的數字或字母').nullable(), | |||
identification: yup.string().min(7, "請輸入證件號碼").required('請輸入證件號碼'), | |||
checkDigit: yup.string().max(1).required('請輸入括號內的數字或字母').nullable(), | |||
idDocType: yup.string().max(255).required('請輸入證件類別'), | |||
tel_countryCode: yup.string().min(3,'請輸入3位數字').required('請輸入國際區號'), | |||
fax_countryCode: yup.string().min(3,'請輸入3位數字'), | |||
phoneNumber: yup.string().min(8,'請輸入8位數字').required('請輸入聯絡電話'), | |||
faxNumber: yup.string().min(8,'請輸入8位數字').nullable(), | |||
tel_countryCode: yup.string().min(3, '請輸入3位數字').required('請輸入國際區號'), | |||
fax_countryCode: yup.string().min(3, '請輸入3位數字'), | |||
phoneNumber: yup.string().min(8, '請輸入8位數字').required('請輸入聯絡電話'), | |||
faxNumber: yup.string().min(8, '請輸入8位數字').nullable(), | |||
}), | |||
onSubmit:values=>{ | |||
onSubmit: values => { | |||
console.log(values); | |||
HttpUtils.post({ | |||
url: UrlUtils.POST_IND_USER+"/"+formData.id, | |||
url: UrlUtils.POST_IND_USER + "/" + formData.id, | |||
params: { | |||
prefix: values.prefix, | |||
enName: values.enName, | |||
@@ -55,21 +55,21 @@ const UserInformationCard_Individual = ({formData, loadDataFun}) => { | |||
}, | |||
identification: values.identification, | |||
checkDigit: values.checkDigit, | |||
faxNo:{ | |||
faxNo: { | |||
countryCode: values.fax_countryCode, | |||
faxNumber: values.faxNumber | |||
}, | |||
emailAddress:values.emailAddress, | |||
address:{ | |||
country:values.country, | |||
district:values.district, | |||
emailAddress: values.emailAddress, | |||
address: { | |||
country: values.country, | |||
district: values.district, | |||
addressLine1: values.addressLine1, | |||
addressLine2: values.addressLine2, | |||
addressLine3: values.addressLine3, | |||
}, | |||
}, | |||
onSuccess: function(){ | |||
loadDataFun(); | |||
onSuccess: function () { | |||
loadDataFun(); | |||
} | |||
}); | |||
} | |||
@@ -91,202 +91,213 @@ const UserInformationCard_Individual = ({formData, loadDataFun}) => { | |||
const onVerifiedClick = () => { | |||
HttpUtils.get({ | |||
url: UrlUtils.GET_IND_USER_VERIFY+"/"+formData.id, | |||
onSuccess: function(){ | |||
url: UrlUtils.GET_IND_USER_VERIFY + "/" + formData.id, | |||
onSuccess: function () { | |||
loadDataFun(); | |||
} | |||
}); | |||
}; | |||
const doLock = () => { | |||
HttpUtils.get({ | |||
url: UrlUtils.GET_USER_LOCK+"/"+formData.id, | |||
onSuccess: function(){ | |||
loadDataFun(); | |||
url: UrlUtils.GET_USER_LOCK + "/" + formData.id, | |||
onSuccess: function () { | |||
loadDataFun(); | |||
} | |||
}); | |||
}); | |||
}; | |||
const doUnlock = () => { | |||
HttpUtils.get({ | |||
url: UrlUtils.GET_USER_UNLOCK+"/"+formData.id, | |||
onSuccess: function(){ | |||
loadDataFun(); | |||
url: UrlUtils.GET_USER_UNLOCK + "/" + formData.id, | |||
onSuccess: function () { | |||
loadDataFun(); | |||
} | |||
}); | |||
}); | |||
}; | |||
return ( | |||
<MainCard elevation={0} | |||
border={false} | |||
content={false} | |||
> | |||
<Typography variant="h5" sx={{mt: 3, ml: 3, mb: 1}}> | |||
Individual User Information | |||
</Typography> | |||
<MainCard elevation={0} | |||
border={false} | |||
content={false} | |||
> | |||
<form onSubmit={formik.handleSubmit}> | |||
<form onSubmit={formik.handleSubmit} style={{ padding: 24 }}> | |||
{/*top button*/} | |||
<Grid item s={12} md={12} lg={12} sx={{mb: 3}} alignItems={"start"} justifyContent="center"> | |||
<Grid item s={12} md={12} lg={12} sx={{ mb: 3 }} alignItems={"start"} justifyContent="center"> | |||
<Grid container maxWidth justifyContent="flex-start"> | |||
{editMode? | |||
<> | |||
<Grid item sx={{ml: 3, mr: 3}}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
onClick={loadDataFun} | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
> | |||
Reset & Back | |||
</Button> | |||
</Grid> | |||
<Grid item sx={{ml: 3, mr: 3}}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
type="submit" | |||
color="success" | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
> | |||
Save | |||
</Button> | |||
</Grid> | |||
</> | |||
: | |||
<> | |||
<Grid item sx={{ml: 3, mr: 3}}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
onClick={onEditClick} | |||
> | |||
Edit | |||
</Button> | |||
</Grid> | |||
</> | |||
} | |||
{editMode ? | |||
<> | |||
<Grid item sx={{ ml: 3, mr: 3 }}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
onClick={loadDataFun} | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
> | |||
Reset & Back | |||
</Button> | |||
</Grid> | |||
<Grid item sx={{ ml: 3, mr: 3 }}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
type="submit" | |||
color="success" | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
> | |||
Save | |||
</Button> | |||
</Grid> | |||
</> | |||
: | |||
<> | |||
<Grid item sx={{ ml: 3, mr: 3 }}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
onClick={onEditClick} | |||
> | |||
Edit | |||
</Button> | |||
</Grid> | |||
</> | |||
} | |||
</Grid> | |||
</Grid> | |||
{/*end top button*/} | |||
<Grid container spacing={1}> | |||
{FieldUtils.getTextField({ | |||
label:"Username:", | |||
valueName:"username", | |||
disabled:true, | |||
form: formik | |||
})} | |||
{FieldUtils.getTextField({ | |||
label:"English Name:", | |||
valueName:"enName", | |||
disabled:(!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getTextField({ | |||
label:"Created Date:", | |||
valueName:"createDate", | |||
disabled:true, | |||
form: formik | |||
})} | |||
{FieldUtils.getTextField({ | |||
label:"Prefix:", | |||
valueName:"prefix", | |||
disabled:(!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getTextField({ | |||
label:"Chinese Name:", | |||
valueName:"chName", | |||
disabled:(!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getTextField({ | |||
label:"Last Updated:", | |||
valueName:"modifieDate", | |||
disabled:true, | |||
form: formik | |||
})} | |||
{FieldUtils.getComboField({ | |||
label:"ID Type:", | |||
valueName:"idDocType", | |||
disabled:(!editMode), | |||
dataList: ComboData.idDocType, | |||
filterOptions:(options) => options, | |||
getOptionLabel:(item) => item?typeof item==='string'?item:(item["type"]?item["type"]+"-"+item["label"]:""):"", | |||
onInputChange:(event, newValue, setInputValue)=>{ | |||
if(newValue == null){ | |||
setInputValue(""); | |||
} | |||
let _val = newValue.split("-"); | |||
if(_val[0]){ | |||
setInputValue(_val[0]); | |||
} | |||
}, | |||
onChange:(event, newValue)=>{ | |||
if(newValue == null){ | |||
formik.setFieldValue("idDocType",""); | |||
return; | |||
} | |||
formik.setFieldValue("idDocType",newValue.type); | |||
}, | |||
form: formik | |||
})} | |||
{FieldUtils.getPhoneField({ | |||
label:"Contact Tel:", | |||
valueName:{ | |||
code: "tel_countryCode", | |||
num:"phoneNumber" | |||
}, | |||
disabled:(!editMode), | |||
form: formik | |||
})} | |||
<Grid item lg={4}> | |||
<Grid container alignItems={"center"}> | |||
<Grid item xs={4} s={4} md={4} lg={4} | |||
sx={{ml: 3, mr: 3, display: 'flex', alignItems: 'center'}}> | |||
Verified: | |||
</Grid> | |||
{ | |||
currentUserData.verifiedBy || editMode? | |||
<Grid item xs={6}> | |||
<Grid container spacing={1}> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Username:", | |||
valueName: "username", | |||
disabled: true, | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "English Name:", | |||
valueName: "enName", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Created Date:", | |||
valueName: "createDate", | |||
disabled: true, | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Prefix:", | |||
valueName: "prefix", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Chinese Name:", | |||
valueName: "chName", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Last Updated:", | |||
valueName: "modifieDate", | |||
disabled: true, | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getComboField({ | |||
label: "ID Type:", | |||
valueName: "idDocType", | |||
disabled: (!editMode), | |||
dataList: ComboData.idDocType, | |||
filterOptions: (options) => options, | |||
getOptionLabel: (item) => item ? typeof item === 'string' ? item : (item["type"] ? item["type"] + "-" + item["label"] : "") : "", | |||
onInputChange: (event, newValue, setInputValue) => { | |||
if (newValue == null) { | |||
setInputValue(""); | |||
} | |||
let _val = newValue.split("-"); | |||
if (_val[0]) { | |||
setInputValue(_val[0]); | |||
} | |||
}, | |||
onChange: (event, newValue) => { | |||
if (newValue == null) { | |||
formik.setFieldValue("idDocType", ""); | |||
return; | |||
} | |||
formik.setFieldValue("idDocType", newValue.type); | |||
}, | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getPhoneField({ | |||
label: "Contact Tel:", | |||
valueName: { | |||
code: "tel_countryCode", | |||
num: "phoneNumber" | |||
}, | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
<Grid container alignItems={"center"}> | |||
<Grid item xs={12} md={3} lg={3} sx={{ display: 'flex', alignItems: 'center' }}> | |||
Verified: | |||
</Grid> | |||
{ | |||
currentUserData.verifiedBy || editMode ? | |||
<Grid item xs={12} md={6} lg={6}> | |||
{FieldUtils.initField({ | |||
valueName:"verifiedStatus", | |||
disabled:true, | |||
form: formik, | |||
})} | |||
valueName: "verifiedStatus", | |||
disabled: true, | |||
form: formik, | |||
})} | |||
</Grid> | |||
: | |||
<> | |||
<Grid item xs={4}> | |||
{FieldUtils.initField({ | |||
valueName:"verifiedStatus", | |||
disabled:true, | |||
<Grid item xs={10} md={4} lg={4}> | |||
{FieldUtils.initField({ | |||
valueName: "verifiedStatus", | |||
disabled: true, | |||
form: formik, | |||
})} | |||
</Grid> | |||
@@ -304,174 +315,186 @@ const UserInformationCard_Individual = ({formData, loadDataFun}) => { | |||
</Button> | |||
</Grid> | |||
</> | |||
} | |||
</Grid> | |||
} | |||
</Grid> | |||
</Grid> | |||
<Grid item lg={4}> | |||
<Grid container alignItems={"center"}> | |||
<Grid item xs={4} s={4} md={4} lg={4} | |||
sx={{ml: 3, mr: 3, display: 'flex', alignItems: 'center'}}> | |||
ID No.: | |||
</Grid> | |||
<Grid item lg={4}> | |||
<Grid container alignItems={"center"}> | |||
<Grid item xs={12} md={3} lg={3} sx={{ display: 'flex', alignItems: 'center' }}> | |||
ID No.: | |||
</Grid> | |||
<Grid item lg={6}> | |||
<Grid container> | |||
{formik.values.idDocType =="HKID"? | |||
<Grid item xs={12} md={6} lg={6}> | |||
<Grid container> | |||
{formik.values.idDocType == "HKID" ? | |||
<> | |||
<Grid item lg={8}> | |||
{FieldUtils.initField({ | |||
valueName:"identification", | |||
disabled:(!editMode), | |||
form: formik, | |||
placeholder:"證件號碼", | |||
inputProps:{ | |||
maxLength: 7, | |||
onKeyDown: (e) => { | |||
if (e.key === 'Enter') { | |||
e.preventDefault(); | |||
} | |||
}, | |||
} | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.initField({ | |||
valueName:"checkDigit", | |||
disabled:(!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
</>: | |||
<Grid item lg={8}> | |||
{FieldUtils.initField({ | |||
valueName: "identification", | |||
disabled: (!editMode), | |||
form: formik, | |||
placeholder: "證件號碼", | |||
inputProps: { | |||
maxLength: 7, | |||
onKeyDown: (e) => { | |||
if (e.key === 'Enter') { | |||
e.preventDefault(); | |||
} | |||
}, | |||
} | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.initField({ | |||
valueName: "checkDigit", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
</> : | |||
<Grid item lg={12}> | |||
{FieldUtils.initField({ | |||
valueName:"identification", | |||
disabled:(!editMode), | |||
valueName: "identification", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
} | |||
</Grid> | |||
} | |||
</Grid> | |||
</Grid> | |||
</Grid> | |||
</Grid> | |||
{FieldUtils.getPhoneField({ | |||
label:"Fax No.:", | |||
valueName:{ | |||
code: "fax_countryCode", | |||
num:"faxNumber" | |||
}, | |||
disabled:(!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getTextField({ | |||
label:"Last Login:", | |||
valueName:"lastLoginDate", | |||
disabled:true, | |||
form: formik | |||
})} | |||
{FieldUtils.getComboField({ | |||
label:"Country:", | |||
valueName:"country", | |||
dataList: ComboData.country, | |||
disabled:(!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getTextField({ | |||
label:"Email:", | |||
valueName:"emailAddress", | |||
disabled:(!editMode), | |||
form: formik | |||
})} | |||
<Grid item lg={4}> | |||
<Grid container alignItems={"center"}> | |||
<Grid item xs={4} s={4} md={4} lg={4} | |||
sx={{ml: 3, mr: 3, display: 'flex', alignItems: 'center'}}> | |||
Status: | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getPhoneField({ | |||
label: "Fax No.:", | |||
valueName: { | |||
code: "fax_countryCode", | |||
num: "faxNumber" | |||
}, | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
{ | |||
editMode? | |||
<Grid item lg={7}> | |||
{FieldUtils.initField({ | |||
valueName:"status", | |||
disabled:true, | |||
form: formik, | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Last Login:", | |||
valueName: "lastLoginDate", | |||
disabled: true, | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getComboField({ | |||
label: "Country:", | |||
valueName: "country", | |||
dataList: ComboData.country, | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Email:", | |||
valueName: "emailAddress", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
<Grid container alignItems={"center"}> | |||
<Grid item xs={12} md={3} lg={3} sx={{ display: 'flex', alignItems: 'center' }}> | |||
Status: | |||
</Grid> | |||
{ | |||
editMode ? | |||
<Grid item xs={12} md={6} lg={6}> | |||
{FieldUtils.initField({ | |||
valueName: "status", | |||
disabled: true, | |||
form: formik, | |||
})} | |||
</Grid> | |||
: | |||
<> | |||
<Grid item lg={4}> | |||
{FieldUtils.initField({ | |||
valueName:"status", | |||
disabled:true, | |||
<Grid item lg={4}> | |||
{FieldUtils.initField({ | |||
valueName: "status", | |||
disabled: true, | |||
form: formik, | |||
})} | |||
</Grid> | |||
{locked? | |||
<Grid item lg={1}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
color="success" | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
onClick={doUnlock} | |||
> | |||
Active | |||
</Button> | |||
</Grid> | |||
: | |||
<Grid item lg={1}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
color="error" | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
onClick={doLock} | |||
> | |||
Lock | |||
</Button> | |||
</Grid> | |||
{locked ? | |||
<Grid item lg={1}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
color="success" | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
onClick={doUnlock} | |||
> | |||
Active | |||
</Button> | |||
</Grid> | |||
: | |||
<Grid item lg={1}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
color="error" | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
onClick={doLock} | |||
> | |||
Lock | |||
</Button> | |||
</Grid> | |||
} | |||
</> | |||
} | |||
</Grid> | |||
</> | |||
} | |||
</Grid> | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getAddressField({ | |||
label:"Address:", | |||
valueName:["addressLine1","addressLine2","addressLine3"], | |||
disabled:(!editMode), | |||
form: formik})} | |||
label: "Address:", | |||
valueName: ["addressLine1", "addressLine2", "addressLine3"], | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
{FieldUtils.getComboField({ | |||
label:"District:", | |||
valueName:"district", | |||
dataList: ComboData.district, | |||
disabled:(!editMode), | |||
form: formik})} | |||
<Grid item lg={4}> | |||
{FieldUtils.getComboField({ | |||
label: "District:", | |||
valueName: "district", | |||
dataList: ComboData.district, | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
</Grid> | |||
</Grid> | |||
</form> | |||
</MainCard> | |||
</form> | |||
</MainCard> | |||
); | |||
}; | |||
@@ -13,9 +13,6 @@ import Loadable from 'components/Loadable'; | |||
const LoadingComponent = Loadable(React.lazy(() => import('../extra-pages/LoadingComponent'))); | |||
const UserInformationCard = Loadable(React.lazy(() => import('./UserInformationCard_Individual'))); | |||
// import UserInformationCard from "./UserInformationCard_Individual"; | |||
// import LoadingComponent from "../extra-pages/LoadingComponent"; | |||
// ==============================|| DASHBOARD - DEFAULT ||============================== // | |||
@@ -75,7 +72,7 @@ const UserMaintainPage_Individual = () => { | |||
: | |||
<Grid container rowSpacing={4.5} columnSpacing={2.75}> | |||
<Grid item xs={12} sx={{mb: -2.25}}> | |||
<Typography variant="h5">Individual User</Typography> | |||
<Typography variant="h5">Individual User Details</Typography> | |||
</Grid> | |||
{/*col 1*/} | |||
<Grid item xs={12} > | |||
@@ -43,7 +43,7 @@ const UserInformationCard_Organization = ({ userData, loadDataFun, orgData }) => | |||
phoneNumber: yup.string().min(8, '請輸入8位數字').required('請輸入聯絡電話'), | |||
faxNumber: yup.string().min(8, '請輸入8位數字').nullable(), | |||
brExpiryDate: yup.string().min(8, '請輸入商業登記證有效日期'), | |||
brNo: yup.string().min(8, '請輸入有效商業登記證號碼').max(8,'請輸入有效商業登記證號碼').required('請輸入商業登記證號碼'), | |||
brNo: yup.string().min(8, '請輸入有效商業登記證號碼').max(8, '請輸入有效商業登記證號碼').required('請輸入商業登記證號碼'), | |||
}), | |||
onSubmit: (values) => { | |||
HttpUtils.post({ | |||
@@ -119,7 +119,7 @@ const UserInformationCard_Organization = ({ userData, loadDataFun, orgData }) => | |||
const doLock = () => { | |||
setConfirmText("Confirm to Lock this Account?"); | |||
setConfirmAction({ | |||
function: function(){ | |||
function: function () { | |||
HttpUtils.get({ | |||
url: UrlUtils.GET_USER_LOCK + "/" + userData.id, | |||
onSuccess: function () { | |||
@@ -133,9 +133,9 @@ const UserInformationCard_Organization = ({ userData, loadDataFun, orgData }) => | |||
const doUnlock = () => { | |||
setConfirmText("Confirm to Un-Lock this Account?"); | |||
setConfirmAction({ | |||
function:function(){ | |||
function: function () { | |||
HttpUtils.get({ | |||
url: UrlUtils.GET_USER_UNLOCK + "/" + userData.id, | |||
onSuccess: function () { | |||
@@ -153,9 +153,6 @@ const UserInformationCard_Organization = ({ userData, loadDataFun, orgData }) => | |||
border={false} | |||
content={false} | |||
> | |||
<Typography variant="h5" sx={{ mt: 3, ml: 3, mb: 1 }}> | |||
Information | |||
</Typography> | |||
<form onSubmit={formik.handleSubmit}> | |||
@@ -218,301 +215,327 @@ const UserInformationCard_Organization = ({ userData, loadDataFun, orgData }) => | |||
</Grid> | |||
</Grid> | |||
{/*end top button*/} | |||
<Grid container spacing={1}> | |||
{FieldUtils.getTextField({ | |||
label: "Username:", | |||
valueName: "username", | |||
disabled: true, | |||
form: formik | |||
})} | |||
{FieldUtils.getTextField({ | |||
label: "Name:", | |||
valueName: "contactPerson", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getTextField({ | |||
label: "Created Date:", | |||
valueName: "createDate", | |||
disabled: true, | |||
form: formik | |||
})} | |||
{FieldUtils.getTextField({ | |||
label: "Email:", | |||
valueName: "emailBus", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getPhoneField({ | |||
label: "Contact Tel:", | |||
valueName: { | |||
code: "tel_countryCode", | |||
num: "phoneNumber" | |||
}, | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getTextField({ | |||
label: "Last Updated:", | |||
valueName: "modifieDate", | |||
disabled: true, | |||
form: formik | |||
})} | |||
{FieldUtils.getComboField({ | |||
label: "Organization:", | |||
valueName: "orgId", | |||
disabled: (!editMode), | |||
dataList: orgData, | |||
filterOptions: (options, state) => { | |||
if (!state || !state.inputValue) return options; | |||
let searchStr = state.inputValue.toLowerCase().toLowerCase().trim(); | |||
const displayOptions = options.filter((option) => { | |||
let brNo = option.brNo.toLowerCase().trim(); | |||
let enCompanyName = option.enCompanyName ? option.enCompanyName.toLowerCase().trim() : ""; | |||
let chCompanyName = option.chCompanyName ? option.chCompanyName.toLowerCase().trim() : ""; | |||
return brNo.includes(searchStr) || enCompanyName.includes(searchStr) || chCompanyName.includes(searchStr); | |||
}, | |||
); | |||
return displayOptions; | |||
}, | |||
getOptionLabel: (item) => item ? typeof item === 'number' ? item + "" : (item["brNo"] ? item["brNo"] + "-" + item["enCompanyName"] : "") : "", | |||
isOptionEqualToValue: (option, newValue, setValue, setInputValue) => { | |||
if (option.id == newValue) { | |||
setValue(option); | |||
setInputValue(option["brNo"] + "-" + option["enCompanyName"]); | |||
return true; | |||
} | |||
return option == newValue; | |||
}, | |||
onInputChange: (event, newValue, setInputValue) => { | |||
if (newValue != null) { | |||
setInputValue(newValue); | |||
} | |||
}, | |||
onChange: (event, newValue) => { | |||
if (newValue == null) { | |||
formik.setFieldValue("orgId", ""); | |||
return; | |||
} | |||
formik.setFieldValue("orgId", newValue.id); | |||
}, | |||
form: formik | |||
})} | |||
<Grid item lg={4}> | |||
<Grid container alignItems={"center"}> | |||
<Grid item xs={4} s={4} md={4} lg={4} | |||
sx={{ ml: 3, mr: 3, display: 'flex', alignItems: 'center' }}> | |||
Verified: | |||
</Grid> | |||
<div style={{ paddingLeft: 24, paddingRight: 24 }}> | |||
<Grid container spacing={1}> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Username:", | |||
valueName: "username", | |||
disabled: true, | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Name:", | |||
valueName: "contactPerson", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
{ | |||
currentUserData.verifiedBy || editMode ? | |||
<Grid item xs={6}> | |||
{FieldUtils.initField({ | |||
valueName: "verifiedStatus", | |||
disabled: true, | |||
form: formik, | |||
})} | |||
</Grid> | |||
: | |||
<> | |||
<Grid item xs={4}> | |||
{FieldUtils.initField({ | |||
valueName: "verifiedStatus", | |||
disabled: true, | |||
form: formik, | |||
})} | |||
</Grid> | |||
<Grid item xs={1}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
onClick={()=>{onVerifiedClick()}} | |||
> | |||
Verify | |||
</Button> | |||
</Grid> | |||
</> | |||
} | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Created Date:", | |||
valueName: "createDate", | |||
disabled: true, | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Email:", | |||
valueName: "emailBus", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
</Grid> | |||
{FieldUtils.getTextField({ | |||
label: "Last Login:", | |||
valueName: "lastLoginDate", | |||
disabled: true, | |||
form: formik | |||
})} | |||
<Grid item lg={4}> | |||
{FieldUtils.getPhoneField({ | |||
label: "Contact Tel:", | |||
valueName: { | |||
code: "tel_countryCode", | |||
num: "phoneNumber" | |||
}, | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={8}></Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Last Updated:", | |||
valueName: "modifieDate", | |||
disabled: true, | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
<Grid container alignItems={"center"}> | |||
<Grid item xs={4} s={4} md={4} lg={4} | |||
sx={{ ml: 3, mr: 3, display: 'flex', alignItems: 'center' }}> | |||
Status: | |||
</Grid> | |||
{ | |||
editMode ? | |||
<Grid item xs={7} s={7} md={7} lg={6}> | |||
{FieldUtils.initField({ | |||
valueName: "status", | |||
disabled: true, | |||
form: formik, | |||
})} | |||
</Grid> | |||
: | |||
<> | |||
<Grid item lg={4}> | |||
<Grid item lg={4}> | |||
{FieldUtils.getComboField({ | |||
label: "Organization:", | |||
valueName: "orgId", | |||
disabled: (!editMode), | |||
dataList: orgData, | |||
filterOptions: (options, state) => { | |||
if (!state || !state.inputValue) return options; | |||
let searchStr = state.inputValue.toLowerCase().toLowerCase().trim(); | |||
const displayOptions = options.filter((option) => { | |||
let brNo = option.brNo.toLowerCase().trim(); | |||
let enCompanyName = option.enCompanyName ? option.enCompanyName.toLowerCase().trim() : ""; | |||
let chCompanyName = option.chCompanyName ? option.chCompanyName.toLowerCase().trim() : ""; | |||
return brNo.includes(searchStr) || enCompanyName.includes(searchStr) || chCompanyName.includes(searchStr); | |||
}, | |||
); | |||
return displayOptions; | |||
}, | |||
getOptionLabel: (item) => item ? typeof item === 'number' ? item + "" : (item["brNo"] ? item["brNo"] + "-" + item["enCompanyName"] : "") : "", | |||
isOptionEqualToValue: (option, newValue, setValue, setInputValue) => { | |||
if (option.id == newValue) { | |||
setValue(option); | |||
setInputValue(option["brNo"] + "-" + option["enCompanyName"]); | |||
return true; | |||
} | |||
return option == newValue; | |||
}, | |||
onInputChange: (event, newValue, setInputValue) => { | |||
if (newValue != null) { | |||
setInputValue(newValue); | |||
} | |||
}, | |||
onChange: (event, newValue) => { | |||
if (newValue == null) { | |||
formik.setFieldValue("orgId", ""); | |||
return; | |||
} | |||
formik.setFieldValue("orgId", newValue.id); | |||
}, | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
<Grid container alignItems={"center"}> | |||
<Grid item xs={12} md={3} lg={3} sx={{ display: 'flex', alignItems: 'center' }}> | |||
Verified: | |||
</Grid> | |||
{ | |||
currentUserData.verifiedBy || editMode ? | |||
<Grid item xs={12} md={6} lg={6}> | |||
{FieldUtils.initField({ | |||
valueName: "status", | |||
valueName: "verifiedStatus", | |||
disabled: true, | |||
form: formik, | |||
})} | |||
</Grid> | |||
{formik.values.locked ? | |||
<Grid lg={1}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
color="success" | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
onClick={doUnlock} | |||
> | |||
Active | |||
</Button> | |||
: | |||
<> | |||
<Grid item xs={10} md={4} lg={4}> | |||
{FieldUtils.initField({ | |||
valueName: "verifiedStatus", | |||
disabled: true, | |||
form: formik, | |||
})} | |||
</Grid> | |||
: | |||
<Grid item lg={1}> | |||
<Grid item xs={1} md={1} lg={1}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
color="error" | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
onClick={doLock} | |||
onClick={() => { onVerifiedClick() }} | |||
> | |||
Lock | |||
Verify | |||
</Button> | |||
</Grid> | |||
} | |||
</> | |||
} | |||
</> | |||
} | |||
</Grid> | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Last Login:", | |||
valueName: "lastLoginDate", | |||
disabled: true, | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={8}></Grid> | |||
<Grid item lg={4}> | |||
<Grid container alignItems={"center"}> | |||
<Grid item xs={12} md={3} lg={3} sx={{ display: 'flex', alignItems: 'center' }}> | |||
Status: | |||
</Grid> | |||
{ | |||
editMode ? | |||
<Grid item xs={12} md={6} lg={6}> | |||
{FieldUtils.initField({ | |||
valueName: "status", | |||
disabled: true, | |||
form: formik, | |||
})} | |||
</Grid> | |||
: | |||
<> | |||
<Grid item xs={10} md={4} lg={4}> | |||
{FieldUtils.initField({ | |||
valueName: "status", | |||
disabled: true, | |||
form: formik, | |||
})} | |||
</Grid> | |||
{formik.values.locked ? | |||
<Grid item xs={1} md={1} lg={1}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
color="success" | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
onClick={doUnlock} | |||
> | |||
Active | |||
</Button> | |||
</Grid> | |||
: | |||
<Grid item xs={1} md={1} lg={1}> | |||
<Button | |||
size="large" | |||
variant="contained" | |||
color="error" | |||
sx={{ | |||
textTransform: 'capitalize', | |||
alignItems: 'end' | |||
}} | |||
onClick={doLock} | |||
> | |||
Lock | |||
</Button> | |||
</Grid> | |||
} | |||
</> | |||
} | |||
</Grid> | |||
</Grid> | |||
</Grid> | |||
</div> | |||
<div style={{ paddingLeft: 24, paddingRight: 24 }}> | |||
<Grid container spacing={1} > | |||
<Grid item lg={12} > | |||
<Grid container alignItems={"center"}> | |||
<Grid item lg={1} > | |||
<Typography variant="h5" sx={{ display: 'flex', alignItems: 'center' }}> | |||
Organization | |||
</Typography> | |||
</Grid> | |||
<Grid item lg={2} > | |||
<Button variant="contained" | |||
onClick={createOrgClick} | |||
> | |||
Create Organization | |||
</Button> | |||
</Grid> | |||
</Grid> | |||
</Grid> | |||
<Grid container spacing={1}> | |||
<Grid item lg={1} > | |||
<Typography variant="h5" sx={{ mt: 3, ml: 3, mb: 1 }}> | |||
Organization | |||
</Typography> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Org.Name (English):", | |||
valueName: "enCompanyName", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={2}> | |||
<Button variant="contained" | |||
onClick={createOrgClick} | |||
> | |||
Create Organization | |||
</Button> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "Org.Name (Chinese):", | |||
valueName: "chCompanyName", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getTextField({ | |||
label: "BR No.:", | |||
valueName: "brNo", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getComboField({ | |||
label: "Country:", | |||
valueName: "country", | |||
dataList: ComboData.country, | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
</Grid> | |||
<Grid container spacing={1}> | |||
{FieldUtils.getTextField({ | |||
label: "Org.Name (English):", | |||
valueName: "enCompanyName", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getTextField({ | |||
label: "Org.Name (Chinese):", | |||
valueName: "chCompanyName", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getTextField({ | |||
label: "BR No.:", | |||
valueName: "brNo", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getComboField({ | |||
label: "Country:", | |||
valueName: "country", | |||
dataList: ComboData.country, | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getPhoneField({ | |||
label: "Fax No.:", | |||
valueName: { | |||
code: "fax_countryCode", | |||
num: "faxNumber" | |||
}, | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getDateField({ | |||
label: "BR Expiry Date.:", | |||
valueName: "brExpiryDate", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getAddressField({ | |||
label: "Address:", | |||
valueName: ["addressLine1", "addressLine2", "addressLine3"], | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
{FieldUtils.getComboField({ | |||
label: "District:", | |||
valueName: "district", | |||
dataList: ComboData.district, | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
<Grid item lg={4}> | |||
{FieldUtils.getPhoneField({ | |||
label: "Fax No.:", | |||
valueName: { | |||
code: "fax_countryCode", | |||
num: "faxNumber" | |||
}, | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getDateField({ | |||
label: "BR Expiry Date.:", | |||
valueName: "brExpiryDate", | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getAddressField({ | |||
label: "Address:", | |||
valueName: ["addressLine1", "addressLine2", "addressLine3"], | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
<Grid item lg={4}> | |||
{FieldUtils.getComboField({ | |||
label: "District:", | |||
valueName: "district", | |||
dataList: ComboData.district, | |||
disabled: (!editMode), | |||
form: formik | |||
})} | |||
</Grid> | |||
</Grid> | |||
</Grid> | |||
</div> | |||
</form> | |||
<div> | |||
@@ -533,8 +556,8 @@ const UserInformationCard_Organization = ({ userData, loadDataFun, orgData }) => | |||
<Typography variant="h3" style={{ padding: '16px' }}>{confirmText}</Typography> | |||
</DialogContent> | |||
<DialogActions> | |||
<Button onClick={() => {setIsConfirmPopUp(false)}}>Close</Button> | |||
<Button onClick={() => {confirmAction?.function();}}>Confirm</Button> | |||
<Button onClick={() => { setIsConfirmPopUp(false) }}>Close</Button> | |||
<Button onClick={() => { confirmAction?.function(); }}>Confirm</Button> | |||
</DialogActions> | |||
</Dialog> | |||
</div> | |||
@@ -85,7 +85,7 @@ const UserMaintainPage_Organization = () => { | |||
: | |||
<Grid container rowSpacing={4.5} columnSpacing={2.75}> | |||
<Grid item xs={12} sx={{mb: -2.25}}> | |||
<Typography variant="h5">Organization User</Typography> | |||
<Typography variant="h5">Organization User Details</Typography> | |||
</Grid> | |||
{/*col 1*/} | |||
<Grid item xs={12} > | |||
@@ -5,103 +5,98 @@ import { | |||
import Combo from "./Combo"; | |||
export const notNullFieldLabel=(label)=>{ | |||
return (<>{label}<span style={{"color": "red"}}>*</span></>) | |||
export const notNullFieldLabel = (label) => { | |||
return (<>{label}<span style={{ "color": "red" }}>*</span></>) | |||
} | |||
export const getDateField = ({ label, valueName, form, disabled }) => { | |||
return <Grid item lg={4} > | |||
<Grid container alignItems={"center"}> | |||
<Grid item lg={4} | |||
sx={{ ml: 3, mr: 3, display: 'flex', alignItems: 'center' }}> | |||
{label} | |||
</Grid> | |||
<Grid item lg={6}> | |||
{initField({ | |||
type: "date", | |||
valueName: valueName, | |||
form: form, | |||
disabled: disabled | |||
})} | |||
</Grid> | |||
return <Grid container alignItems={"center"}> | |||
<Grid item xs={12} md={3} lg={3} sx={{ display: 'flex', alignItems: 'center' }}> | |||
{label} | |||
</Grid> | |||
<Grid item xs={12} md={6} lg={6}> | |||
{initField({ | |||
type: "date", | |||
valueName: valueName, | |||
form: form, | |||
disabled: disabled | |||
})} | |||
</Grid> | |||
</Grid>; | |||
} | |||
export const getTextField = ({ label, valueName, form, disabled }) => { | |||
return <Grid container alignItems={"center"}> | |||
<Grid item xs={12} md={3} lg={3} | |||
sx={{display: 'flex', alignItems: 'center' }}> | |||
{label} | |||
</Grid> | |||
<Grid item xs={12} md={6} lg={6}> | |||
{initField({ | |||
type: "text", | |||
valueName: valueName, | |||
form: form, | |||
disabled: disabled | |||
})} | |||
</Grid> | |||
</Grid>; | |||
<Grid item xs={12} md={3} lg={3} | |||
sx={{ display: 'flex', alignItems: 'center' }}> | |||
{label} | |||
</Grid> | |||
<Grid item xs={12} md={6} lg={6}> | |||
{initField({ | |||
type: "text", | |||
valueName: valueName, | |||
form: form, | |||
disabled: disabled | |||
})} | |||
</Grid> | |||
</Grid>; | |||
} | |||
export const getTextArea = ({ label, valueName, form, disabled, ...props }) => { | |||
return <Grid container alignItems={"center"}> | |||
<Grid item xs={12} md={3} lg={3} | |||
sx={{display: 'flex', alignItems: 'center' }}> | |||
{label} | |||
</Grid> | |||
<Grid item xs={12} md={6} lg={6}> | |||
{initField({ | |||
type: "text", | |||
valueName: valueName, | |||
form: form, | |||
disabled: disabled, | |||
multiline: true, | |||
row: 10, | |||
minRows: 4, | |||
maxRows: 4, | |||
props | |||
})} | |||
</Grid> | |||
</Grid>; | |||
<Grid item xs={12} md={3} lg={3} | |||
sx={{ display: 'flex', alignItems: 'center' }}> | |||
{label} | |||
</Grid> | |||
<Grid item xs={12} md={6} lg={6}> | |||
{initField({ | |||
type: "text", | |||
valueName: valueName, | |||
form: form, | |||
disabled: disabled, | |||
multiline: true, | |||
row: 10, | |||
minRows: 4, | |||
maxRows: 4, | |||
props | |||
})} | |||
</Grid> | |||
</Grid>; | |||
} | |||
export const getPhoneField = ({ label, valueName, form, disabled }) => { | |||
return <Grid container alignItems={"center"}> | |||
<Grid item xs={12} md={3} lg={3} | |||
sx={{display: 'flex', alignItems: 'center' }}> | |||
{label} | |||
</Grid> | |||
<Grid item xs={12} md={9} lg={9}> | |||
<Stack direction="row"> | |||
{initField({ | |||
type: "tel", | |||
valueName: valueName.code, | |||
form: form, | |||
disabled: disabled, | |||
width:'25%' | |||
})} | |||
{initField({ | |||
type: "tel", | |||
valueName: valueName.num, | |||
form: form, | |||
disabled: disabled | |||
})} | |||
</Stack> | |||
</Grid> | |||
</Grid>; | |||
<Grid item xs={12} md={3} lg={3} | |||
sx={{ display: 'flex', alignItems: 'center' }}> | |||
{label} | |||
</Grid> | |||
<Grid item xs={12} md={6} lg={6}> | |||
<Stack direction="row"> | |||
{initField({ | |||
type: "tel", | |||
valueName: valueName.code, | |||
form: form, | |||
disabled: disabled, | |||
width: '25%' | |||
})} | |||
{initField({ | |||
type: "tel", | |||
valueName: valueName.num, | |||
form: form, | |||
disabled: disabled | |||
})} | |||
</Stack> | |||
</Grid> | |||
</Grid>; | |||
} | |||
export const getAddressField = ({ label, valueName, form, disabled }) => { | |||
return <Grid item lg={4} > | |||
<Grid container alignItems={"top"}> | |||
<Grid item xs={4} s={4} md={4} lg={4} | |||
sx={{ ml: 3, mr: 3, display: 'flex', alignItems: 'top' }}> | |||
return <Grid container alignItems={"top"}> | |||
<Grid item xs={12} md={3} lg={3} sx={{ display: 'flex', alignItems: 'top' }}> | |||
<Grid item lg={12} sx={{ alignItems: 'center' }}>{label}</Grid> | |||
</Grid> | |||
<Grid item lg={6}> | |||
<Grid item xs={12} md={6} lg={6}> | |||
<Grid item lg={12}> | |||
{initField({ | |||
type: "text", | |||
@@ -127,18 +122,15 @@ export const getAddressField = ({ label, valueName, form, disabled }) => { | |||
})} | |||
</Grid> | |||
</Grid> | |||
</Grid> | |||
</Grid>; | |||
</Grid>; | |||
} | |||
export const getComboField = ({ label, dataList, valueName, form, disabled, getOptionLabel, onInputChange, onChange, filterOptions, ...props }) => { | |||
return <Grid item lg={4} > | |||
<Grid container alignItems={"center"}> | |||
<Grid item lg={4} | |||
sx={{ ml: 3, mr: 3, display: 'flex', alignItems: 'center' }}> | |||
return <Grid container alignItems={"center"}> | |||
<Grid item xs={12} md={3} lg={3} sx={{ display: 'flex', alignItems: 'center' }}> | |||
{label} | |||
</Grid> | |||
<Grid item lg={6}> | |||
<Grid item xs={12} md={6} lg={6}> | |||
<Combo | |||
valueName={valueName} | |||
disabled={disabled} | |||
@@ -150,35 +142,12 @@ export const getComboField = ({ label, dataList, valueName, form, disabled, getO | |||
onChange={onChange} | |||
{...props} | |||
/> | |||
{/* <Autocomplete | |||
id={key} | |||
name={key} | |||
disabled={disabled} | |||
options={dataList} | |||
value={form.values[key]|| null} | |||
getOptionLabel={option => option?(displayField?option[displayField]:option):""} | |||
onChange={(e, val) => { | |||
console.log(val); | |||
let v = val; | |||
if(valueKey){ | |||
v = val[valueKey]; | |||
} | |||
form.setFieldValue(key, v); | |||
}} | |||
renderInput={params => ( | |||
<TextField | |||
fullWidth | |||
name={key} | |||
{...params} | |||
/> | |||
)} | |||
/> */} | |||
</Grid> | |||
</Grid> | |||
</Grid>; | |||
</Grid>; | |||
} | |||
export const initField = ({ type, valueName, form, disabled, multiline, placeholder, inputProps,width, ...props }) => { | |||
export const initField = ({ type, valueName, form, disabled, multiline, placeholder, inputProps, width, ...props }) => { | |||
let err = Boolean(form.errors[valueName]); | |||
return <TextField | |||
@@ -199,7 +168,7 @@ export const initField = ({ type, valueName, form, disabled, multiline, placehol | |||
WebkitTextFillColor: "#000000", | |||
background: "#f8f8f8", | |||
}, | |||
width:width?width:'100%' | |||
width: width ? width : '100%' | |||
}} | |||
{...props} | |||
/> | |||