fix(FE): adding capacity to kandang and change confirmation modal marketing with note

This commit is contained in:
randy-ar
2025-11-19 13:00:21 +07:00
parent 8662bcb63b
commit 429f2b9109
7 changed files with 97 additions and 40 deletions
@@ -5,6 +5,7 @@ import CheckboxInput from '@/components/input/CheckboxInput';
import { OptionType } from '@/components/input/SelectInput';
import Modal, { useModal } from '@/components/Modal';
import ConfirmationModal from '@/components/modal/ConfirmationModal';
import ConfirmationModalWithNotes from '@/components/modal/ConfirmationModalWithNotes';
import Table from '@/components/Table';
import RowCollapseOptions from '@/components/table/RowCollapseOptions';
import RowDropdownOptions from '@/components/table/RowDropdownOptions';
@@ -170,7 +171,7 @@ const SalesOrderTable = () => {
.filter((row) => row.latest_approval.step_number === 2)
.map((row) => row.id);
const approveMarketingHandler = async () => {
const approveMarketingHandler = async (notes: string) => {
let idsToProcess: number[] = [];
if (approveAction === 'APPROVED') {
@@ -191,7 +192,8 @@ const SalesOrderTable = () => {
const approveMarketingRes = await SalesOrderApi.bulkApprovals(
idsToProcess,
approveAction
approveAction,
notes
);
if (isResponseSuccess(approveMarketingRes)) {
@@ -450,10 +452,10 @@ const SalesOrderTable = () => {
}}
/>
<ConfirmationModal
<ConfirmationModalWithNotes
ref={confirmationModal.ref}
type={approveAction === 'APPROVED' ? 'success' : 'error'}
text={`Apakah anda yakin ingin ${approveAction} data penjualan (${idsToProcess.length} data)?`}
text={`Apakah anda yakin ingin ${approveAction == 'APPROVED' ? 'approve' : 'reject'} data penjualan (${idsToProcess.length} data)?`}
secondaryButton={{
text: 'Tidak',
onClick: confirmationModal.closeModal,
@@ -5,6 +5,7 @@ import Card from '@/components/Card';
import { FormHeader } from '@/components/helper/form/FormHeader';
import { useModal } from '@/components/Modal';
import ConfirmationModal from '@/components/modal/ConfirmationModal';
import ConfirmationModalWithNotes from '@/components/modal/ConfirmationModalWithNotes';
import ApprovalSteps, {
useApprovalSteps,
} from '@/components/pages/ApprovalSteps';
@@ -78,11 +79,12 @@ const SalesOrderDetail = ({
refresh?.();
};
const confirmationModalApproveClickHandler = async () => {
const confirmationModalApproveClickHandler = async (notes: string) => {
setIsLoading(true);
const res = await SalesOrderApi.singleApproval(
initialValues?.id as number,
approvalAction
approvalAction,
notes
);
setIsLoading(false);
confirmationModal.closeModal();
@@ -91,13 +93,17 @@ const SalesOrderDetail = ({
refreshApproval?.();
};
const confirmationModalDeliveryClickHandler = async () => {
const confirmationModalDeliveryClickHandler = async (notes: string) => {
setIsLoading(true);
// await MarketingApi.delivery(initialValues?.id as number);
const res = await SalesOrderApi.delivery(
initialValues?.id as number,
notes
);
setIsLoading(false);
deliveryModal.closeModal();
toast.success('Successfully delivered Sales Order!');
toast.success(res?.message as string);
refresh?.();
refreshApproval?.();
};
return (
@@ -285,7 +291,7 @@ const SalesOrderDetail = ({
onClick: confirmationModalDeleteClickHandler,
}}
/>
<ConfirmationModal
<ConfirmationModalWithNotes
ref={confirmationModal.ref}
type={approvalAction === 'APPROVED' ? 'success' : 'error'}
text={`Apakah anda yakin ingin ${approvalAction} data penjualan ini?`}
@@ -299,7 +305,7 @@ const SalesOrderDetail = ({
onClick: confirmationModalApproveClickHandler,
}}
/>
<ConfirmationModal
<ConfirmationModalWithNotes
ref={deliveryModal.ref}
type={'success'}
text={`Apakah anda yakin ingin deliver penjualan ini?`}
@@ -303,9 +303,9 @@ const SalesForm = ({
wrapper: 'bg-white w-full',
}}
>
{/* <div className='text-blue-500'>{JSON.stringify(initialValues)}</div>
<div className='text-blue-500'>{JSON.stringify(initialValues)}</div>
<div className='text-green-500'>{JSON.stringify(formik.values)}</div>
<div className='text-red-500'>{JSON.stringify(formik.errors)}</div> */}
<div className='text-red-500'>{JSON.stringify(formik.errors)}</div>
<SalesOrderProductTable
data={memoSalesOrder}
rowSelection={rowSelection}