diff --git a/src/modules/05_placement/components/AppointMent/DialogOrders.vue b/src/modules/05_placement/components/AppointMent/DialogOrders.vue index f335327da..56d81a01b 100644 --- a/src/modules/05_placement/components/AppointMent/DialogOrders.vue +++ b/src/modules/05_placement/components/AppointMent/DialogOrders.vue @@ -276,26 +276,19 @@ async function sendToCommand() { // }); } -/** ฟังก์ชันเลือกประเภทคำสั่ง */ -function filterSelectOrder() { - const data = rowsData.value; - - selected.value = []; - rows.value = data.filter((v: PersonData) => { +function filterSelectOrder(data: PersonData[]) { + return data.filter((v: PersonData) => { switch (commandType.value) { case "C-PM-05": return v.typeCommand === "APPOINT"; - case "C-PM-39": return v.typeCommand === "SLIP"; - case "C-PM-07": return v.typeCommand === "MOVE"; - case "C-PM-47": - return v.posTypeName === "บริหาร" || v.posTypeName === "อำนวยการ"; + return v.typeCommand === "ROYAL"; default: - return []; + return []; // ไม่กรอง ถ้าไม่มีประเภท } }); } @@ -314,9 +307,11 @@ function filterSelector(val: string, update: Function) { } function onSearch() { + selected.value = []; + const filteredByType = filterSelectOrder(rowsData.value); rows.value = onSearchDataTable( filterKeyword2.value, - rowsData.value, + filteredByType, columns2.value ? columns2.value : [] ); } @@ -330,6 +325,7 @@ watch( async () => { if (props.Modal === true) { selected.value = []; + rows.value = rowsData.value; commandType.value = ""; const data = await storeCommand.getCommandTypes(); commandMainOp.value = data.filter( @@ -366,7 +362,7 @@ watch( use-input hide-selected fill-input - @update:model-value="filterSelectOrder" + @update:model-value="onSearch" @filter="(inputValue:string, doneFn:Function) => filterSelector(inputValue, doneFn ) " @@ -456,6 +452,7 @@ watch(