diff --git a/src/pages/master/products/blocks/AddDialog.tsx b/src/pages/master/products/blocks/AddDialog.tsx index 3cdcf3c..1b8fc20 100644 --- a/src/pages/master/products/blocks/AddDialog.tsx +++ b/src/pages/master/products/blocks/AddDialog.tsx @@ -15,13 +15,25 @@ import { } from '@/components/ui/dialog'; import { Input } from '@/components/ui/input'; import { Button } from '@/components/ui/button'; +import { + Select, + SelectContent, + SelectItem, + SelectTrigger, + SelectValue +} from '@/components/ui/select'; + +interface ProviderProps { + id: number; + name: string; +} const API_URL = apiConfig.service_master_data; const AddDialog = () => { const parentRef = useRef(null); const parsedUser = getAuth()?.user; const { showAddDialog, handleAddDialog } = useManageProductsContext(); - const { PostData } = useCallApi(); + const { PostData, GetData } = useCallApi(); const { reload } = useDataGrid(); const [alert, setAlert] = useState({ show: false, @@ -36,10 +48,12 @@ const AddDialog = () => { cashback_cash: 0, status: '', providerId: '', + process_on_third_party: '', created_by: '', created_at: '' }; const [formField, setFormField] = useState(initialState); + const [providers, setProviders] = useState([]); const created_time = new Date(); const formattedTime = created_time.toISOString().slice(0, 19).replace('T', ' '); @@ -67,6 +81,23 @@ const AddDialog = () => { [formField] ); + const doFetchProvider = useCallback(async (sorting: any) => { + try { + const response = await GetData(`${API_URL}/provider/list`, { + limit: 100, + page: 1, + with_deleted: false, + order_field: sorting[0].id, + order_direction: sorting[0].desc == false ? 'ASC' : 'DESC' + }); + + console.log('PROVIDER: ', response?.data); + setProviders(response?.data.list); + } catch (error) { + console.error('Error fetching provider', error); + } + }, []); + const handleSubmit = (e: React.FormEvent) => { e.preventDefault(); @@ -90,6 +121,10 @@ const AddDialog = () => { setAlert({ show: false, message: '' }); }; + useEffect(() => { + doFetchProvider([{ id: 'id', desc: false }]); + }, []); + useEffect(() => { if (showAddDialog) { setFormField({ @@ -232,12 +267,18 @@ const AddDialog = () => { - setFormField({ ...formField, status: e.target.value })} - /> + onValueChange={(value) => setFormField({ ...formField, status: value })} + > + + + + + Yes + No + + @@ -246,12 +287,45 @@ const AddDialog = () => { - setFormField({ ...formField, providerId: e.target.value })} - /> + onValueChange={(value) => + setFormField({ ...formField, providerId: value.toString() }) + } + > + + + + + {providers.map((provider) => ( + + {provider.name} + + ))} + + + + + +
+
+ +