diff --git a/src/pages/08_request-list/RequestListView.vue b/src/pages/08_request-list/RequestListView.vue index 76699d64..302f2977 100644 --- a/src/pages/08_request-list/RequestListView.vue +++ b/src/pages/08_request-list/RequestListView.vue @@ -15,7 +15,7 @@ import DutyExpansion from './DutyExpansion.vue'; import MessengerExpansion from './MessengerExpansion.vue'; // NOTE: Store -import { baseUrl } from 'src/stores/utils'; +import { baseUrl, dialog } from 'src/stores/utils'; import { dateFormatJS } from 'src/utils/datetime'; import { useRequestList } from 'src/stores/request-list'; import { @@ -44,7 +44,7 @@ import { CreatedBy } from 'src/stores/types'; import { getUserId } from 'src/services/keycloak'; import { QuotationFull } from 'src/stores/quotations/types'; -const { locale } = useI18n(); +const { locale, t } = useI18n(); // NOTE: Variable const route = useRoute(); @@ -52,7 +52,7 @@ const optionStore = useOptionStore(); const requestListStore = useRequestList(); const flowTemplateStore = useWorkflowTemplate(); -const workList = ref(); +const workList = ref([]); const statusFile = ref({ customer: {}, employee: {}, @@ -159,7 +159,20 @@ onMounted(async () => { watch(() => route.params['requestListId'], getData); -async function triggerChangeStatusWork(step: Step) { +async function triggerChangeStatusWork(step: Step, responsibleUserId?: string) { + if (step.workStatus === 'Ready' && !responsibleUserId) { + dialog({ + color: 'warning', + icon: 'mdi-alert', + title: t('form.warning.title'), + actionText: t('dialog.action.ok'), + message: t('dialog.message.warningSelectDeliveryStaff'), + action: async () => { + await nextTick(); + }, + }); + } + const res = await requestListStore.editStatusRequestWork(step); if (res) { const indexWork = workList.value?.findIndex( @@ -683,14 +696,18 @@ function goToQuotation( :product="value.productService.product" @change-status=" (v) => { - triggerChangeStatusWork({ - workStatus: v.requestWorkStatus, - step: - v.step === undefined - ? pageState.currentStep - : v.step.step, - requestWorkId: value.id || '', - }); + triggerChangeStatusWork( + { + workStatus: v.requestWorkStatus, + step: + v.step === undefined + ? pageState.currentStep + : v.step.step, + requestWorkId: value.id || '', + }, + value.stepStatus?.[pageState.currentStep - 1] + .responsibleUserId, + ); } " > @@ -764,7 +781,9 @@ function goToQuotation( " />