diff --git a/src/pages/05_quotation/QuotationForm.vue b/src/pages/05_quotation/QuotationForm.vue index 6030d906..c769c3dc 100644 --- a/src/pages/05_quotation/QuotationForm.vue +++ b/src/pages/05_quotation/QuotationForm.vue @@ -26,6 +26,7 @@ import { deleteItem } from 'stores/utils'; import { runOcr, parseResultMRZ } from 'src/utils/ocr'; // NOTE Import Types +import { RequestData, RequestDataStatus } from 'src/stores/request-list/types'; import { View } from './types.ts'; import { PayCondition, @@ -80,6 +81,7 @@ import UploadFileSection from 'src/components/upload-file/UploadFileSection.vue' import { columnPaySplit } from './constants'; import { precisionRound } from 'src/utils/arithmetic'; import { useConfigStore } from 'src/stores/config'; +import { useRequestList } from 'src/stores/request-list'; import QuotationFormMetadata from './QuotationFormMetadata.vue'; import BadgeComponent from 'src/components/BadgeComponent.vue'; import PaymentForm from './PaymentForm.vue'; @@ -114,11 +116,14 @@ const quotationStore = useQuotationStore(); const invoiceStore = useInvoice(); const paymentStore = usePayment(); const optionStore = useOptionStore(); +const requestStore = useRequestList(); const { t, locale } = useI18n(); const ocrStore = useOcrStore(); const $q = useQuasar(); const openQuotation = ref(false); +const rowsRequestList = ref([]); + const { currentFormData: quotationFormData, currentFormState: quotationFormState, @@ -415,13 +420,31 @@ async function fetchStatus() { title: 'ProcessComplete', status: getStatus(quotationFormData.value.quotationStatus, 5, 4), active: () => view.value === View.Complete, - handler: () => { + handler: async () => { view.value = View.Complete; + await fetchRequest(); }, }, ]; } +async function fetchRequest() { + const res = await requestStore.getRequestDataList({ + query: quotationFormState.value.inputSearchRequest, + page: 1, + pageSize: 999999, + requestDataStatus: + quotationFormState.value.statusFilterRequest === 'All' + ? undefined + : quotationFormState.value.statusFilterRequest, + quotationId: quotationFormData.value.id, + }); + + if (res) { + rowsRequestList.value = res.result; + } +} + async function fetchQuotation() { if ( (!!currentQuotationId.value || !!quotationFormData.value.id) && @@ -1224,6 +1247,17 @@ async function exampleReceipt(id: string) { window.open(url.data.link, '_blank'); } } + +watch( + [ + () => quotationFormState.value.statusFilterRequest, + () => quotationFormState.value.inputSearchRequest, + ], + () => { + console.log('asdasd'); + fetchRequest(); + }, +);