member
This commit is contained in:
@ -21,8 +21,8 @@ const ConfirmDialog = ({ open, onClose, title, content, onYes, onNo, onOpenChang
|
|||||||
</DialogBody>
|
</DialogBody>
|
||||||
</DialogHeader>
|
</DialogHeader>
|
||||||
<DialogFooter className="flex justify-end gap-2 pt-4">
|
<DialogFooter className="flex justify-end gap-2 pt-4">
|
||||||
<Button color="secondary" onClick={onNo}>No</Button>
|
<Button type="button" color="secondary" onClick={onNo}>No</Button>
|
||||||
<Button color="primary" disabled={a} onClick={() => onClickYes()}>Yes</Button>
|
<Button type="button" color="primary" disabled={a} onClick={() => onClickYes()}>Yes</Button>
|
||||||
</DialogFooter>
|
</DialogFooter>
|
||||||
</DialogContent>
|
</DialogContent>
|
||||||
</Dialog>
|
</Dialog>
|
||||||
|
|||||||
@ -112,11 +112,11 @@ export default function AdmAccess({page,groups,formData,handleClose,fetchCustome
|
|||||||
<div className="space-y-4">
|
<div className="space-y-4">
|
||||||
<div className="space-y-2">
|
<div className="space-y-2">
|
||||||
<p className="text-sm">Pin Status: {getPinStatus(formData.status).msg}</p>
|
<p className="text-sm">Pin Status: {getPinStatus(formData.status).msg}</p>
|
||||||
<Button variant="default" onClick={(e) => buttonStatus(e)}>{getPinStatus(formData.status).btn}</Button>
|
<Button type="button" variant="default" onClick={(e) => buttonStatus(e)}>{getPinStatus(formData.status).btn}</Button>
|
||||||
</div>
|
</div>
|
||||||
<div className="space-y-2">
|
<div className="space-y-2">
|
||||||
<p className="text-sm">Reset PIN</p>
|
<p className="text-sm">Reset PIN</p>
|
||||||
<Button variant="default" disabled={isAdmin} onClick={(e) => buttonResetPin(e)}>Reset PIN</Button>
|
<Button type="button" variant="default" disabled={isAdmin} onClick={(e) => buttonResetPin(e)}>Reset PIN</Button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -124,11 +124,11 @@ export default function AdmAccess({page,groups,formData,handleClose,fetchCustome
|
|||||||
<div className="space-y-4">
|
<div className="space-y-4">
|
||||||
<div className="space-y-2">
|
<div className="space-y-2">
|
||||||
<p className="text-sm">Change Group</p>
|
<p className="text-sm">Change Group</p>
|
||||||
<Button variant="default" disabled={isAdmin} onClick={(e) => openChangeGroupDialog(e)}>Change Group</Button>
|
<Button type="button" variant="default" disabled={isAdmin} onClick={(e) => openChangeGroupDialog(e)}>Change Group</Button>
|
||||||
</div>
|
</div>
|
||||||
<div className="space-y-2">
|
<div className="space-y-2">
|
||||||
<p className="text-sm">Edit Member</p>
|
<p className="text-sm">Edit Member</p>
|
||||||
<Button variant="default" disabled={isAdmin} onClick={() => setViewOnly(!viewOnly)}>{viewOnly ? 'Open Edit' : 'Close Edit'}</Button>
|
<Button type="button" variant="default" disabled={isAdmin} onClick={() => setViewOnly(!viewOnly)}>{viewOnly ? 'Open Edit' : 'Close Edit'}</Button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -171,19 +171,24 @@ const DetailMember = ({ showAddDialog, setShowAddDialog, handleSubmit, initialDa
|
|||||||
|
|
||||||
function buttonOnSubmit(e:any) {
|
function buttonOnSubmit(e:any) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
if (dialogType === 'update') {
|
const requiredFields:any = {
|
||||||
// if (page === 'kyc' && formData.destinationGroup === "Premium" && !formData.approval_description_premium) return toast.warning(`Approval Premium Description needed!`)
|
msisdn: "msisdn",
|
||||||
// if (page === 'kyc' && formData.destinationGroup === "Agent" && !formData.approval_description_premium) return toast.warning(`Approval Agent Description needed!`)
|
email: "email",
|
||||||
if (!formData.msisdn||!formData.email||!formData.fullname||!formData.username||!formData.address||!formData.nationality||!formData.date_birth||!formData.gender) {
|
fullname: "fullname",
|
||||||
return toast.warning(`Required fields cannot be empty: msisdn, email, fullname, username, Address, Nationality, Date Of Birth, Gender.!`)
|
username: "username",
|
||||||
|
address: "Address",
|
||||||
|
nationality: "Nationality",
|
||||||
|
date_birth: "Date Of Birth",
|
||||||
|
gender: "Gender"
|
||||||
|
};
|
||||||
|
|
||||||
|
const missingFields = Object.keys(requiredFields).filter((key) => !formData[key]);
|
||||||
|
|
||||||
|
if (missingFields.length > 0) {
|
||||||
|
const missingNames = missingFields.map((key:any) => requiredFields[key]).join(", ");
|
||||||
|
return toast.warning(`Required fields cannot be empty: ${missingNames}!`);
|
||||||
}
|
}
|
||||||
}
|
// dialogType === 'update'
|
||||||
if (dialogType === 'create') {
|
|
||||||
if (!formData.msisdn||!formData.email||!formData.fullname||!formData.username||!formData.address||!formData.nationality||!formData.date_birth||!formData.gender) {
|
|
||||||
return toast.warning(`Required fields cannot be empty: msisdn, email, fullname, username, Address, Nationality, Date Of Birth, Gender.!`)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// if (page === 'kyc' && !formData.description) return toast.warning(`Description for approval needed!`)
|
|
||||||
handleSubmit(formData);
|
handleSubmit(formData);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -208,9 +213,8 @@ const DetailMember = ({ showAddDialog, setShowAddDialog, handleSubmit, initialDa
|
|||||||
</DialogHeader>
|
</DialogHeader>
|
||||||
<DialogBody ref={parentRef}>
|
<DialogBody ref={parentRef}>
|
||||||
<div className="flex flex-col">
|
<div className="flex flex-col">
|
||||||
{alert.show && (
|
<form>
|
||||||
<Alert variant="danger"><h3>{alert.message}</h3></Alert>
|
{alert.show && (<Alert variant="danger"><h3>{alert.message}</h3></Alert>)}
|
||||||
)}
|
|
||||||
|
|
||||||
{/* <div className="card-body grid gap-5"> */}
|
{/* <div className="card-body grid gap-5"> */}
|
||||||
<div className="card-body grid grid-cols-1 md:grid-cols-2 gap-5">
|
<div className="card-body grid grid-cols-1 md:grid-cols-2 gap-5">
|
||||||
@ -284,20 +288,20 @@ const DetailMember = ({ showAddDialog, setShowAddDialog, handleSubmit, initialDa
|
|||||||
) : ""}
|
) : ""}
|
||||||
|
|
||||||
<div className="col-span-1 md:col-span-2 flex justify-end gap-5">
|
<div className="col-span-1 md:col-span-2 flex justify-end gap-5">
|
||||||
<Button disabled={isAdmin} onClick={(e:any) => btnPrevDef(e)} color="secondary">{ viewOnly ? (`Open Edit`) : (`Close Edit`) }</Button>
|
<Button type="button" disabled={isAdmin} onClick={(e:any) => btnPrevDef(e)} color="secondary">{ viewOnly ? (`Open Edit`) : (`Close Edit`) }</Button>
|
||||||
<Button type="button" variant="outline" onClick={() => handleAddDialog(false)}>Cancel</Button>
|
<Button type="button" variant="outline" onClick={() => handleAddDialog(false)}>Cancel</Button>
|
||||||
{/* <Button onClick={(e) => buttonOnSubmit(e, formData)} variant="default">Save Changes</Button> */}
|
{/* <Button onClick={(e) => buttonOnSubmit(e, formData)} variant="default">Save Changes</Button> */}
|
||||||
{
|
{
|
||||||
formData.isneedapproval == 1 && page === 'kyc' ? (
|
formData.isneedapproval == 1 && page === 'kyc' ? (
|
||||||
<Button onClick={onReject} variant="destructive" color="warning">Reject</Button>
|
<Button type="button" onClick={onReject} variant="destructive" color="warning">Reject</Button>
|
||||||
) : ('')
|
) : ('')
|
||||||
}
|
}
|
||||||
<Button onClick={(e) => buttonOnSubmit(e)} color="primary" variant="default" disabled={isAdmin}>
|
<Button type="submit" onClick={(e) => buttonOnSubmit(e)} color="primary" variant="default" disabled={isAdmin}>
|
||||||
{ formData.id ? (formData.isneedapproval == 1 && page === 'kyc' ? (`Edit & Approve`) : (`Edit`)) : ("Create") }
|
{ formData.id ? (formData.isneedapproval == 1 && page === 'kyc' ? (`Edit & Approve`) : (`Edit`)) : ("Create") }
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</DialogBody>
|
</DialogBody>
|
||||||
</DialogContent>
|
</DialogContent>
|
||||||
|
|||||||
Reference in New Issue
Block a user