fix: new worker
Some checks failed
Spell Check / Spell Check with Typos (push) Failing after 5s

This commit is contained in:
Thanaphon Saengchan 2025-09-18 11:13:35 +07:00
parent 00f9b5f4c4
commit d53eb15a88
5 changed files with 254 additions and 140 deletions

View file

@ -113,7 +113,7 @@ const props = withDefaults(
defineProps<{
customerBranchId?: string;
disabledWorkerId?: string[];
preselectWorker?: Employee[];
preselectWorker?: (Employee & { workerNew: boolean })[];
}>(),
{},
);
@ -133,7 +133,7 @@ const optionStore = useOptionStore();
const employeeStore = useEmployeeStore();
const open = defineModel<boolean>('open', { default: false });
const newWorkerList = defineModel<
const newWorkerList = ref<
(EmployeeWorker & {
attachment?: {
name?: string;
@ -143,7 +143,7 @@ const newWorkerList = defineModel<
_meta?: Record<string, any>;
}[];
})[]
>('newWorkerList', { default: [] });
>([]);
const workerSelected = ref<Employee[]>([]);
const workerList = ref<Employee[]>([]);
const importWorkerCriteria = ref<{
@ -208,7 +208,13 @@ function getEmployeeImageUrl(item: Employee) {
function init() {
if (props.preselectWorker) {
workerSelected.value = JSON.parse(JSON.stringify(props.preselectWorker));
workerSelected.value = JSON.parse(
JSON.stringify(props.preselectWorker.filter((v) => !v.workerNew)),
);
newWorkerList.value = JSON.parse(
JSON.stringify(props.preselectWorker.filter((v) => v.workerNew)),
);
}
getWorkerList();
}
@ -608,11 +614,14 @@ watch(
solid
id="btn-success"
@click="
(emits('success', {
worker: workerSelected,
newWorker: newWorkerList,
}),
(open = false))
() => {
$emit('success', {
worker: workerSelected,
newWorker: newWorkerList,
});
open = false;
}
"
>
{{ $t('general.select', { msg: $t('quotation.employeeList') }) }}
@ -634,9 +643,11 @@ watch(
if (employeeFormState.currentTab === 'personalInfo') {
const currentEmployeeId =
await employeeFormStore.submitPersonal(onCreateImageList);
quotationForm.injectNewEmployee({
data: { ...currentFromDataEmployee, id: currentEmployeeId },
});
newWorkerList.push(
quotationForm.injectNewEmployee({
data: { ...currentFromDataEmployee, id: currentEmployeeId },
}),
);
employeeFormState.isEmployeeEdit = false;
employeeFormState.dialogType = 'info';
}