From 249e09774d2a834cb8c882e4755906484f3f0669 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 15 Apr 2025 14:38:29 +0700 Subject: [PATCH] fix group --- src/pages/members/kyc/Kyc.tsx | 1 - src/pages/members/manage-members/Columns.tsx | 3 +- .../members/manage-members/ManageMembers.tsx | 1 - .../manage-members/blocks/AdmAccess.tsx | 39 +++--- .../manage-members/blocks/DetailMember.tsx | 123 ++++++++++-------- 5 files changed, 89 insertions(+), 78 deletions(-) diff --git a/src/pages/members/kyc/Kyc.tsx b/src/pages/members/kyc/Kyc.tsx index 49f1fdd..b3ecff9 100644 --- a/src/pages/members/kyc/Kyc.tsx +++ b/src/pages/members/kyc/Kyc.tsx @@ -135,7 +135,6 @@ const Kyc = () => { delete updateData.suco_name; delete updateData.aldeia_id; delete updateData.aldeia_name; - delete updateData.group_id; delete updateData.group_name; delete updateData.group_description; delete updateData.group_status; diff --git a/src/pages/members/manage-members/Columns.tsx b/src/pages/members/manage-members/Columns.tsx index 6c83c0b..983178e 100644 --- a/src/pages/members/manage-members/Columns.tsx +++ b/src/pages/members/manage-members/Columns.tsx @@ -180,5 +180,6 @@ export const initialMember = { aldeia: '', profession: '', approval_description_premium: '', - approval_description_agent: '' + approval_description_agent: '', + group_id: '' }; diff --git a/src/pages/members/manage-members/ManageMembers.tsx b/src/pages/members/manage-members/ManageMembers.tsx index 9710ce1..6d9cdd2 100644 --- a/src/pages/members/manage-members/ManageMembers.tsx +++ b/src/pages/members/manage-members/ManageMembers.tsx @@ -120,7 +120,6 @@ const ManageMembers = () => { delete updateData.suco_name; delete updateData.aldeia_id; delete updateData.aldeia_name; - delete updateData.group_id; delete updateData.group_name; delete updateData.group_description; delete updateData.group_status; diff --git a/src/pages/members/manage-members/blocks/AdmAccess.tsx b/src/pages/members/manage-members/blocks/AdmAccess.tsx index 0c4ceec..bf735c3 100644 --- a/src/pages/members/manage-members/blocks/AdmAccess.tsx +++ b/src/pages/members/manage-members/blocks/AdmAccess.tsx @@ -21,33 +21,33 @@ import ConfirmDialog from '@/components/confirm'; const BASE_URL_CUSTOMER = apiConfig.service_customer; // ACCESS ADM -export default function AdmAccess({page,formData,handleClose,fetchCustomers,viewOnly,setViewOnly}: any) { +export default function AdmAccess({page,groups,formData,handleClose,fetchCustomers,viewOnly,setViewOnly}: any) { const [dialogOpen, setDialogOpen] = useState(false); const [dialogType, setDialogType] = useState(''); const [changeGroup, setChangeGroup] = useState(''); const [changeGroupD, setChangeGroupD] = useState(false); - const [groups, setGroups] = useState([]); + // const [groups, setGroups] = useState([]); useEffect(() => { - fetchGroups(); + // fetchGroups(); }, []); - const fetchGroups = async () => { - try { - let getGroups = await axios.get(`${BASE_URL_CUSTOMER}/groups/list`, { - params: { - limit: 50, - page: 1, - with_deleted: false, - order_field: 'name', - order_direction: 'ASC' - } - }); - setGroups(getGroups.data.data.list); - } catch (error: any) { - toast.error(error.message); - } - }; + // const fetchGroups = async () => { + // try { + // let getGroups = await axios.get(`${BASE_URL_CUSTOMER}/groups/list`, { + // params: { + // limit: 50, + // page: 1, + // with_deleted: false, + // order_field: 'name', + // order_direction: 'ASC' + // } + // }); + // setGroups(getGroups.data.data.list); + // } catch (error: any) { + // toast.error(error.message); + // } + // }; const handleYes = async () => { try { @@ -119,6 +119,7 @@ export default function AdmAccess({page,formData,handleClose,fetchCustomers,view function btnConfirmDialog(status: boolean) { setDialogOpen(status); } + if (!formData.id) return ''; if (page !== 'kyc') { return ( diff --git a/src/pages/members/manage-members/blocks/DetailMember.tsx b/src/pages/members/manage-members/blocks/DetailMember.tsx index 85035ad..4eac2e1 100644 --- a/src/pages/members/manage-members/blocks/DetailMember.tsx +++ b/src/pages/members/manage-members/blocks/DetailMember.tsx @@ -24,6 +24,7 @@ import { Input } from '@/components/ui/input'; import { Button } from '@/components/ui/button'; const BASE_URL_MASTER_DATA = apiConfig.service_master_data; const URL_NATIONALITY = apiConfig.nationality; +const BASE_URL_CUSTOMER = apiConfig.service_customer; import { initialMember } from "../Columns"; import AdmAccess from './AdmAccess'; import CustomerWallet from './CustomerWallet'; @@ -38,10 +39,8 @@ const DetailMember = ({ showAddDialog, setShowAddDialog, handleSubmit, initialDa const [aldeias, setAldeias] = useState([]); const [postoAdm, setPostoAdm] = useState([]); const [sucos, setSucos] = useState([]); + const [groups, setGroups] = useState([]); const [genders] = useState([ { name: 'Male',id: 'M' }, { name: 'Female',id: 'F' }]) - const [status] = useState([ - { name: 'Active',id: 'Y' }, { name: 'Inactive',id: 'N' }, { name: 'Suspend PIN',id: 'P' }, { name: 'Suspend OTP',id: 'O' } - ]) const [banks] = useState([ { name: 'BNCTL',id: 'BNCTL' }, { name: 'BRI',id: 'BRI' }, { name: 'BNU',id: 'BNU' }, { name: 'Mandiri',id: 'Mandiri' } ]) @@ -53,7 +52,7 @@ const DetailMember = ({ showAddDialog, setShowAddDialog, handleSubmit, initialDa useEffect(() => { setFormData(initialData || {}); - // fetchMasterData() + fetchMasterData() }, [initialData]); const handleChange = async (e: any) => { @@ -121,48 +120,59 @@ const DetailMember = ({ showAddDialog, setShowAddDialog, handleSubmit, initialDa async function fetchMasterData() { try { - let getMunicipios = await axios.get(`${BASE_URL_MASTER_DATA}/municipios/list`, { - params: { - limit: 50, - page: 1, - with_deleted: false, - order_field: 'name', - order_direction: 'ASC', - } + let getGroups = await axios.get(`${BASE_URL_CUSTOMER}/groups/list`, { + params: { + limit: 50, + page: 1, + with_deleted: false, + order_field: 'name', + order_direction: 'ASC' + } }); - setMunicipios(getMunicipios.data.data.list) - let getPostoAdms = await axios.get(`${BASE_URL_MASTER_DATA}/postoadms/list`, { - params: { - limit: 50, - page: 1, - with_deleted: false, - order_field: 'name', - order_direction: 'ASC', - } - }); - setPostoAdm(getPostoAdms.data.data.list) - let getSucos = await axios.get(`${BASE_URL_MASTER_DATA}/sucos/list`, { - params: { - limit: 50, - page: 1, - with_deleted: false, - order_field: 'name', - order_direction: 'ASC', - } - }); - setSucos(getSucos.data.data.list) - let getAldeias = await axios.get(`${BASE_URL_MASTER_DATA}/aldeias/list`, { - params: { - limit: 50, - page: 1, - with_deleted: false, - order_field: 'name', - order_direction: 'ASC', - } - }); - setAldeias(getAldeias.data.data.list) - } catch (error) { + setGroups(getGroups.data.data.list); + // let getMunicipios = await axios.get(`${BASE_URL_MASTER_DATA}/municipios/list`, { + // params: { + // limit: 50, + // page: 1, + // with_deleted: false, + // order_field: 'name', + // order_direction: 'ASC', + // } + // }); + // setMunicipios(getMunicipios.data.data.list) + // let getPostoAdms = await axios.get(`${BASE_URL_MASTER_DATA}/postoadms/list`, { + // params: { + // limit: 50, + // page: 1, + // with_deleted: false, + // order_field: 'name', + // order_direction: 'ASC', + // } + // }); + // setPostoAdm(getPostoAdms.data.data.list) + // let getSucos = await axios.get(`${BASE_URL_MASTER_DATA}/sucos/list`, { + // params: { + // limit: 50, + // page: 1, + // with_deleted: false, + // order_field: 'name', + // order_direction: 'ASC', + // } + // }); + // setSucos(getSucos.data.data.list) + // let getAldeias = await axios.get(`${BASE_URL_MASTER_DATA}/aldeias/list`, { + // params: { + // limit: 50, + // page: 1, + // with_deleted: false, + // order_field: 'name', + // order_direction: 'ASC', + // } + // }); + // setAldeias(getAldeias.data.data.list) + } catch (error:any) { console.log(error); + toast.error(error.message) } } @@ -213,20 +223,21 @@ const DetailMember = ({ showAddDialog, setShowAddDialog, handleSubmit, initialDa
- {(formData.id || dialogType === "create") ? generateInput(formData, handleChange, 'Group', 'group_name', 'text', true, true): ''} + {(formData.id || dialogType === "create") ? generateList(formData, handleChange, groups, 'group_id', 'Group', true, dialogType === "update"||false): ''} + {/* {(formData.id || dialogType === "create") ? generateInput(formData, handleChange, 'Group', 'group_name', 'text', true, true): ''} */} {(formData.id || dialogType === "create") ? generateInput(formData, handleChange, 'Username', 'username', 'text', true, dialogType==='create'?false:true): ''} {(formData.id || dialogType === "create") ? generateInput(formData, handleChange, 'Full Name', 'fullname', 'text', true, viewOnly): ''} {(formData.id || dialogType === "create") ? generateImage(formData, handleChange, 'Photo', 'photouser'): ''} - {(formData.id || dialogType === "create") ? generateList(formData, handleChange, genders, 'gender', 'Gender', null, true): ''} + {(formData.id || dialogType === "create") ? generateList(formData, handleChange, genders, 'gender', 'Gender', true, false): ''} {(formData.id || dialogType === "create") ? generateInput(formData, handleChange, 'Date of Birth', 'date_birth', 'date', true, viewOnly): ''} - {(formData.id || dialogType === "create") ? generateInput(formData, handleChange, 'Phone Number', 'msisdn', 'text', true, viewOnly): ''} + {(formData.id || dialogType === "create") ? generateInput(formData, handleChange, 'Phone Number', 'msisdn', 'text', true, dialogType === "update"||false): ''} {(formData.id || dialogType === "create") ? generateInput(formData, handleChange, 'Email', 'email', 'text', true, viewOnly): ''} {/* {generateList(formData, handleChange, status, 'status', 'Status', null, true)} */} - {(formData.id || dialogType === "create") ? generateList(formData, handleChange, profession, 'profession', 'Profession', null, false): ''} - {(formData.id || dialogType === "create") ? generateList(formData, handleChange, municipios, 'municipio', 'Municipio', null, false): ''} - {(formData.id || dialogType === "create") ? generateList(formData, handleChange, postoAdm, 'posto_adms', 'Posto', 'posto_adms_id', false): ''} - {(formData.id || dialogType === "create") ? generateList(formData, handleChange, sucos, 'suco', 'Suco', 'sucos_id', false): ''} - {(formData.id || dialogType === "create") ? generateList(formData, handleChange, aldeias, 'aldeia', 'Aldeia', null, false): ''} + {(formData.id || dialogType === "create") ? generateList(formData, handleChange, profession, 'profession', 'Profession', false, false): ''} + {(formData.id || dialogType === "create") ? generateList(formData, handleChange, municipios, 'municipio', 'Municipio', false, false): ''} + {(formData.id || dialogType === "create") ? generateList(formData, handleChange, postoAdm, 'posto_adms', 'Posto', false, false): ''} + {(formData.id || dialogType === "create") ? generateList(formData, handleChange, sucos, 'suco', 'Suco', false, false): ''} + {(formData.id || dialogType === "create") ? generateList(formData, handleChange, aldeias, 'aldeia', 'Aldeia', false, false): ''} {(formData.id || dialogType === "create") ? generateInput(formData, handleChange, 'Nationality', 'nationality', 'text', true, viewOnly): ''}
@@ -257,7 +268,7 @@ const DetailMember = ({ showAddDialog, setShowAddDialog, handleSubmit, initialDa {(formData.id || dialogType === "create") ? generateImage(formData, handleChange, 'File Document & Selfie', 'file_document_id_selfie'): ''} {(formData.id || dialogType === "create") ? generateImage(formData, handleChange, 'File Commercial License', 'file_commercial_license'): ''} - {(formData.id || dialogType === "create") ? generateList(formData, handleChange, banks, 'bank_name', 'Bank Name', null, false): ''} + {(formData.id || dialogType === "create") ? generateList(formData, handleChange, banks, 'bank_name', 'Bank Name', false, false): ''} {(formData.id || dialogType === "create") ? generateInput(formData, handleChange, 'Bank Account', 'bank_account', 'text', false, viewOnly): ''} {(formData.id || dialogType === "create") ? generateInput(formData, handleChange, 'iBank Number', 'ibank_number', 'text', false, viewOnly): ''} @@ -265,7 +276,7 @@ const DetailMember = ({ showAddDialog, setShowAddDialog, handleSubmit, initialDa {(formData.id&&(!page||formData.destinationGroup === "Agent")) ? generateInput(formData, handleChange, 'Approval Agent Description', 'approval_description_agent', 'text', false, viewOnly): ''} {(formData.id && page!=='kyc') ? ( - + ): ""} {(formData.id && page!=='kyc') ? ( @@ -323,14 +334,14 @@ function generateInput(formData:any, handleChange:any, label:string, name:string } // ON DEV (DI SELECT MASI HILANG) -function generateList(formData:any, handleChange: any, list:any, name:string, label: string, difId: any, required: boolean) { +function generateList(formData:any, handleChange: any, list:any, name:string, label: string, required: boolean, disabled: boolean) { return ( <>
- (handleChange({ target : { name, value: e }}))}>