fix crud transation type

This commit is contained in:
bagusajisaputroo
2025-03-25 17:04:25 +07:00
parent bf8e1a90f6
commit 6435911b3c
6 changed files with 63 additions and 96 deletions

View File

@ -104,10 +104,10 @@ const AddFeeDialog = () => {
maximum_amount: formField.maximum_amount,
deduct_amount: formField.deduct_amount,
deduct_percentage: formField.deduct_percentage,
priority: formField.priority,
transaction_type: formField.transaction_type,
status: formField.status,
status_include: formField.status_include
status_include: formField.status_include,
priority: formField.priority ? 'Y' : 'N'
};
};
useEffect(() => {
@ -160,10 +160,9 @@ const AddFeeDialog = () => {
setAlert({ show: false, message: '' });
const response = await PostData(`${API_URL}/transactionfees/create`, {
...formField,
priority: formField.priority ? 'Y' : 'N'
...formField
});
console.log(response);
if (response?.status) {
toast.success('Success Create Transfer Fee');
reload();
@ -348,8 +347,8 @@ const AddFeeDialog = () => {
<SelectValue placeholder="Select Status" />
</SelectTrigger>
<SelectContent>
<SelectItem value="Y">Y</SelectItem>
<SelectItem value="N">N</SelectItem>
<SelectItem value="Y">Active</SelectItem>
<SelectItem value="N">Inactive</SelectItem>
</SelectContent>
</Select>
</div>
@ -363,8 +362,8 @@ const AddFeeDialog = () => {
<SelectValue placeholder="Select Status" />
</SelectTrigger>
<SelectContent>
<SelectItem value="Y">Y</SelectItem>
<SelectItem value="N">N</SelectItem>
<SelectItem value="Y">Yes</SelectItem>
<SelectItem value="N">No</SelectItem>
</SelectContent>
</Select>
</div>
@ -373,15 +372,15 @@ const AddFeeDialog = () => {
<Select
value={formField.priority ? 'Y' : 'N'}
onValueChange={(value) =>
setFormField({ ...formField, priority: value === 'Y' })
setFormField((prev) => ({ ...prev, priority: value === 'Y' }))
}
>
<SelectTrigger>
<SelectValue placeholder="Select Priority" />
</SelectTrigger>
<SelectContent>
<SelectItem value="Y">Y</SelectItem>
<SelectItem value="N">N</SelectItem>
<SelectItem value="Y">Yes</SelectItem>
<SelectItem value="N">No</SelectItem>
</SelectContent>
</Select>
</div>

View File

@ -72,7 +72,7 @@ const EditFeeDialog = () => {
period_end: '',
deduct_amount: 0,
deduct_percentage: 0,
priority: '',
priority: false,
status: '',
status_include: '',
transaction_type: '',
@ -96,7 +96,8 @@ const EditFeeDialog = () => {
async (e: React.FormEvent<HTMLFormElement>) => {
e.preventDefault();
const response = await PutData(`${API_URL}/transactionfees/update/${selectedTransferFee}`, {
...formField
...formField,
priority: formField.priority ? 'Y' : 'N' // Ubah ke "Y" atau "N"
});
if (response?.status) {
handleEditFeeDialog(false, null);
@ -165,9 +166,10 @@ const EditFeeDialog = () => {
order_field: sorting[0].id,
order_direction: sorting[0].desc ? 'DESC' : 'ASC'
});
setTransactionTypes(response?.data.list || []);
// console.log('Transaction Type: ', response?.data.list);
setTransactionTypes(response?.data.list);
} catch (error) {
console.error('Error fetching customer', error);
console.error('Error fetching Transaction Type', error);
}
};
@ -188,29 +190,10 @@ const EditFeeDialog = () => {
period_end: response.data.period_end,
deduct_amount: response.data.deduct_amount,
deduct_percentage: response.data.deduct_percentage,
priority: response.data.priority,
priority: response.data.priority === 'Y',
status: response.data.status,
status_include: response.data.status_include,
transaction_type: response.data.transaction_type.id
// updated_by: parsedUser?.username ,
// updated_at: new Date().toISOString().slice(0, 19).replace('T', ' ')
}));
} else {
setFormField((prev) => ({
...prev,
name: '',
description: '',
minimum_amount: 0,
maximum_amount: 0,
period_start: '',
period_end: '',
deduct_amount: 0,
deduct_percentage: 0,
priority: '',
status: '',
status_include: '',
transaction_type: ''
}));
}
}, []);
@ -230,7 +213,7 @@ const EditFeeDialog = () => {
period_end: '',
deduct_amount: 0,
deduct_percentage: 0,
priority: '',
priority: false,
status: '',
status_include: '',
transaction_type: '',
@ -416,8 +399,8 @@ const EditFeeDialog = () => {
<SelectValue placeholder="Select Status" />
</SelectTrigger>
<SelectContent>
<SelectItem value="Y">Y</SelectItem>
<SelectItem value="N">N</SelectItem>
<SelectItem value="Y">Active</SelectItem>
<SelectItem value="N">Inactive</SelectItem>
</SelectContent>
</Select>
</div>
@ -433,26 +416,29 @@ const EditFeeDialog = () => {
<SelectValue placeholder="Select Status" />
</SelectTrigger>
<SelectContent>
<SelectItem value="Y">Y</SelectItem>
<SelectItem value="N">N</SelectItem>
<SelectItem value="Y">Yes</SelectItem>
<SelectItem value="N">No</SelectItem>
</SelectContent>
</Select>
</div>
<div className="w-full">
<label className="form-label">Priority</label>
<Select
value={formField.priority}
onValueChange={(value) => setFormField({ ...formField, priority: value })}
value={formField.priority ? 'Y' : 'N'} // Menyesuaikan nilai
onValueChange={(value) =>
setFormField((prev) => ({ ...prev, priority: value === 'Y' }))
}
>
<SelectTrigger>
<SelectValue placeholder="Select Status" />
<SelectValue placeholder="Select Priority" />
</SelectTrigger>
<SelectContent>
<SelectItem value="Y">Y</SelectItem>
<SelectItem value="N">N</SelectItem>
<SelectItem value="Y">Yes</SelectItem>
<SelectItem value="N">No</SelectItem>
</SelectContent>
</Select>
</div>
{/* <div className="w-full">
<label className="form-label">Priotity</label>
<Select

View File

@ -136,14 +136,6 @@ const ManageTransferFeeContextProvider = ({ children }: { children: React.ReactN
enableHiding: false,
meta: { headerClassName: 'w-[150px]' }
},
{
accessorFn: (row) => row.priority,
id: 'priority',
header: ({ column }) => <DataGridColumnHeader title="Priority" column={column} />,
enableSorting: true,
enableHiding: false,
meta: { headerClassName: 'w-[100px]' }
},
{
accessorFn: (row) => row.transaction_type?.name,
id: 'transactionTypeId',
@ -153,7 +145,23 @@ const ManageTransferFeeContextProvider = ({ children }: { children: React.ReactN
meta: { headerClassName: 'w-[250px]' }
},
{
accessorFn: (row) => row.status_include,
accessorFn: (row) => (row.priority === 'Y' ? 'Yes' : 'No'),
id: 'priority',
header: ({ column }) => <DataGridColumnHeader title="Priority" column={column} />,
enableSorting: true,
enableHiding: false,
meta: { headerClassName: 'w-[100px]' }
},
{
accessorFn: (row) => (row.status === 'Y' ? 'Active' : 'Inactieve'),
id: 'status',
header: ({ column }) => <DataGridColumnHeader title="Status" column={column} />,
enableSorting: true,
enableHiding: false,
meta: { headerClassName: 'w-[150px]' }
},
{
accessorFn: (row) => (row.status_include === 'Y' ? 'Yes' : 'No'),
id: 'status_include',
header: ({ column }) => <DataGridColumnHeader title="Status Include" column={column} />,
enableSorting: true,