This commit is contained in:
setthawutttty 2024-02-21 13:41:39 +07:00
parent cdc5746454
commit 189b3236a8
3 changed files with 32 additions and 8 deletions

View file

@ -13,12 +13,13 @@ import type {
import type { QTableProps } from "quasar"; import type { QTableProps } from "quasar";
import DialogAddPosition from "@/modules/01_metadataNew/components/position/DialogAddPosition.vue"; import DialogAddPosition from "@/modules/01_metadataNew/components/position/DialogAddPosition.vue";
const editPosition = ref<boolean>(false) const editPosition = ref<boolean>(false);
const modalAddPosition = ref<boolean>(false); const modalAddPosition = ref<boolean>(false);
const levelOpsMain = ref<DataOption[]>([]); const levelOpsMain = ref<DataOption[]>([]);
const dataLevel = ref<any>(); const dataLevel = ref<any>();
const levelOps = ref<DataOption[]>([]); const levelOps = ref<DataOption[]>([]);
const isSpecial = ref<boolean>(false)
const formPositionSelect = reactive<FormPositionSelect>({ const formPositionSelect = reactive<FormPositionSelect>({
positionId: "", positionId: "",
posTypeId: "", posTypeId: "",
@ -29,6 +30,7 @@ const formPositionSelect = reactive<FormPositionSelect>({
positionExecutive: "", positionExecutive: "",
positionExecutiveField: "", positionExecutiveField: "",
positionArea: "", positionArea: "",
isSpecial: false,
}); });
const rows = ref<RowDetailPositions[]>([]); const rows = ref<RowDetailPositions[]>([]);
@ -179,6 +181,7 @@ function copyDetiail(data: RowDetailPositions) {
* @param data อมลตำแหน * @param data อมลตำแหน
*/ */
function editDetiail(data: RowDetailPositions) { function editDetiail(data: RowDetailPositions) {
console.log(data)
formPositionSelect.positionId = data.id; formPositionSelect.positionId = data.id;
formPositionSelect.posTypeId = data.posTypeId; formPositionSelect.posTypeId = data.posTypeId;
formPositionSelect.positionName = data.positionName; formPositionSelect.positionName = data.positionName;
@ -188,8 +191,9 @@ function editDetiail(data: RowDetailPositions) {
formPositionSelect.positionExecutive = data.posExecutiveId; formPositionSelect.positionExecutive = data.posExecutiveId;
formPositionSelect.positionExecutiveField = data.positionExecutiveField; formPositionSelect.positionExecutiveField = data.positionExecutiveField;
formPositionSelect.positionArea = data.positionArea; formPositionSelect.positionArea = data.positionArea;
formPositionSelect.isSpecial = data.isSpecial;
modalAddPosition.value = true; modalAddPosition.value = true;
editPosition.value = true editPosition.value = true;
} }
/** /**
@ -372,8 +376,17 @@ onMounted(() => {
<div v-if="col.name == 'no'"> <div v-if="col.name == 'no'">
{{ props.rowIndex + 1 }} {{ props.rowIndex + 1 }}
</div> </div>
<div v-else-if="col.name === 'posLevelName'">
{{
props.row.posLevelName
? props.row.isSpecial == true
? `${props.row.posLevelName} (ฉ)`
: props.row.posLevelName
: "-"
}}
</div>
<div v-else> <div v-else>
{{ col.value }} {{ col.value ? col.value:'-' }}
</div> </div>
</q-td> </q-td>
<q-td auto-width> <q-td auto-width>

View file

@ -32,7 +32,7 @@ const formPositionSelect = reactive<FormPositionSelectDialog>({
positionArea: "", positionArea: "",
}); });
const $q = useQuasar(); const $q = useQuasar();
const isSpecial = ref<boolean>(false)
const props = defineProps({ const props = defineProps({
getData:Function getData:Function
}) })
@ -102,6 +102,7 @@ function saveSelectEdit() {
: formPositionSelect.positionExecutive, // : formPositionSelect.positionExecutive, //
posDictExecutiveField: formPositionSelect.positionExecutiveField!==null?formPositionSelect.positionExecutiveField:'', // posDictExecutiveField: formPositionSelect.positionExecutiveField!==null?formPositionSelect.positionExecutiveField:'', //
posDictArea: formPositionSelect.positionArea !== null ? formPositionSelect.positionArea:'', /// posDictArea: formPositionSelect.positionArea !== null ? formPositionSelect.positionArea:'', ///
isSpecial:isSpecial.value
}; };
await http await http
.put(config.API.orgPosPositionById(formPositionSelect.positionId), body) .put(config.API.orgPosPositionById(formPositionSelect.positionId), body)
@ -135,11 +136,15 @@ function onSubmitSelectEdit() {
posTypeId: formPositionSelect.positionType, //* posTypeId: formPositionSelect.positionType, //*
posLevelId: formPositionSelect.positionLevel, //* posLevelId: formPositionSelect.positionLevel, //*
posExecutiveId: posExecutiveId:
formPositionSelect.positionExecutive == "" formPositionSelect.positionExecutive == null
? null ? ''
: formPositionSelect.positionExecutive, // : formPositionSelect.positionExecutive, //
posDictExecutiveField: formPositionSelect.positionExecutiveField, // posDictExecutiveField: formPositionSelect.positionExecutiveField == null ? '':formPositionSelect.positionExecutiveField, //
posDictArea: formPositionSelect.positionArea, /// posDictArea: formPositionSelect.positionArea == null ? '':formPositionSelect.positionArea, ///
isSpecial:isSpecial.value
}; };
await http await http
.post(config.API.orgPosPosition, body) .post(config.API.orgPosPosition, body)
@ -245,6 +250,7 @@ watch(
formPositionSelect.positionExecutiveField = formPositionSelect.positionExecutiveField =
dataList.positionExecutiveField; dataList.positionExecutiveField;
formPositionSelect.positionArea = dataList.positionArea; formPositionSelect.positionArea = dataList.positionArea;
isSpecial.value = dataList.isSpecial;
} }
} }
} }
@ -386,6 +392,9 @@ function close() {
hide-bottom-space hide-bottom-space
/> />
</div> </div>
<div class="col-6 self-center">
<q-checkbox size="md" v-model="isSpecial" label="ฉ" />
</div>
</div> </div>
</q-card-section> </q-card-section>
<q-separator /> <q-separator />

View file

@ -60,6 +60,7 @@ interface FormPositionSelect {
positionExecutive: string; positionExecutive: string;
positionExecutiveField: string; positionExecutiveField: string;
positionArea: string; positionArea: string;
isSpecial: boolean;
} }
interface ListMenu { interface ListMenu {
label: string; label: string;
@ -81,6 +82,7 @@ interface RowDetailPositions {
posTypeId: string; posTypeId: string;
posLevelId: string; posLevelId: string;
posExecutiveId: string; posExecutiveId: string;
isSpecial: boolean;
} }
interface RowListForm { interface RowListForm {