+
@@ -263,7 +265,7 @@
({
id: "",
- sick: "",
- absence: "",
- late: "",
- government: "",
- study: "",
- year: new Date().getFullYear(),
+ sumSick: "",
+ sumRest: "",
+ sumLate: "",
+ sumAbsent: "",
+ sumEducation: "",
+ leaveYear: new Date().getFullYear(),
});
const mixin = useCounterMixin();
@@ -500,6 +502,7 @@ const {
dateToISO,
showLoader,
hideLoader,
+ dialogConfirm,
} = mixin;
const route = useRoute();
@@ -581,12 +584,12 @@ const filter = ref(""); //search data table
/** NEW */
const visibleColumns = ref([
"no",
- "year",
- "sick",
- "absence",
- "late",
- "government",
- "study",
+ "leaveYear",
+ "sumSick",
+ "sumRest",
+ "sumLate",
+ "sumAbsent",
+ "sumEducation",
]);
/** old */
@@ -695,66 +698,66 @@ const columns = ref([
a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
},
{
- name: "year",
+ name: "leaveYear",
align: "left",
label: "ปี",
sortable: true,
- field: "year",
+ field: "leaveYear",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
sort: (a: string, b: string) =>
a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
},
{
- name: "sick",
+ name: "sumSick",
align: "left",
label: "ลาป่วย",
sortable: true,
- field: "sick",
+ field: "sumSick",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
sort: (a: string, b: string) =>
a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
},
{
- name: "absence",
+ name: "sumRest",
align: "left",
label: "ลากิจและพักผ่อน",
sortable: true,
- field: "absence",
+ field: "sumRest",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
sort: (a: string, b: string) =>
a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
},
{
- name: "late",
+ name: "sumLate",
align: "left",
label: "มาสาย",
sortable: true,
- field: "late",
+ field: "sumLate",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
sort: (a: string, b: string) =>
a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
},
{
- name: "government",
+ name: "sumAbsent",
align: "left",
label: "ขาดราชการ",
sortable: true,
- field: "government",
+ field: "sumAbsent",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
sort: (a: string, b: string) =>
a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }),
},
{
- name: "study",
+ name: "sumEducation",
align: "left",
label: "ลาศึกษาต่อ",
sortable: true,
- field: "study",
+ field: "sumEducation",
headerStyle: "font-size: 14px",
style: "font-size: 14px",
sort: (a: string, b: string) =>
@@ -930,41 +933,20 @@ const fetchData = async () => {
await http
.get(config.API.profileLeaveId(profileId.value))
.then((res) => {
- const data = [
- {
- id: "11",
- sick: "11",
- absence: "11",
- late: "11",
- government: "11",
- study: "11",
- year: new Date().getFullYear(),
- },
- {
- id: "22",
- sick: "22",
- absence: "22",
- late: "22",
- government: "22",
- study: "22",
- year: new Date().getFullYear(),
- },
- ];
-
- rows.value = data
- // const data = res.data.result;
- // data.map((e: DetailData) => {
- // rows.value.push({
- // id: e.id,
- // sick: e.sick ? e.sick : "-",
- // absence: e.absence ? e.absence : "-",
- // late: e.late ? e.late : "-",
- // government: e.government ? e.government : "-",
- // study: e.study ? e.study : "-",
- // year: e.year ? e.year : "-",
-
- // });
- // });
+ // rows.value = data
+ const data = res.data.result;
+ console.log(data);
+ data.map((e: DetailData) => {
+ rows.value.push({
+ id: e.id,
+ sumSick: e.sumSick ? e.sumSick : "-",
+ sumRest: e.sumRest ? e.sumRest : "-",
+ sumLate: e.sumLate ? e.sumLate : "-",
+ sumAbsent: e.sumAbsent ? e.sumAbsent : "-",
+ sumEducation: e.sumEducation ? e.sumEducation : "-",
+ leaveYear: e.leaveYear ? Number(e.leaveYear) + 543 : "-",
+ });
+ });
})
.catch((e) => {
// messageError($q, e);
@@ -1010,12 +992,12 @@ const clickHistory = async (row: RequestItemsObject) => {
data.map((e: ResponseObject) => {
rowsHistory.value.push({
id: e.id,
- sick: e.sick ? e.sick : "-",
- absence: e.absence ? e.absence : "-",
- late: e.late ? e.late : "-",
- government: e.government ? e.government : "-",
- study: e.study ? e.study : "-",
- year: e.year ? e.year : "-",
+ sumSick: e.sumSick ? e.sumSick : "-",
+ sumRest: e.sumRest ? e.sumRest : "-",
+ sumLate: e.sumLate ? e.sumLate : "-",
+ sumAbsent: e.sumAbsent ? e.sumAbsent : "-",
+ sumEducation: e.sumEducation ? e.sumEducation : "-",
+ leaveYear: e.leaveYear ? e.leaveYear : "-",
});
});
})
@@ -1081,12 +1063,12 @@ const getData = () => {
// coupleDay.value = row.coupleDay;
// therapyDay.value = row.therapyDay;
formData.id = row.id;
- formData.sick = row.sick;
- formData.absence = row.absence;
- formData.late = row.late;
- formData.government = row.government;
- formData.study = row.study;
- formData.year = row.year == "-" ? 0 : row.year;
+ formData.sumSick = row.sumSick =='-' ? '':row.sumSick;
+ formData.sumRest = row.sumRest =='-' ? '':row.sumRest;
+ formData.sumLate = row.sumLate =='-' ? '':row.sumLate;
+ formData.sumAbsent = row.sumAbsent =='-' ? '':row.sumAbsent;
+ formData.sumEducation = row.sumEducation =='-' ? '':row.sumEducation;
+ formData.leaveYear = row.leaveYear == "-" ? 0 : Number(row.leaveYear) - 543;
// id.value = row.id;
// typeLeave.value = row.typeLeaveId;
@@ -1187,9 +1169,13 @@ const clickSave = async () => {
myFormAdd.value.validate().then(async (result: boolean) => {
if (result) {
if (modalEdit.value) {
- await editData();
+ await dialogConfirm($q, () => {
+ editData();
+ });
} else {
- await saveData();
+ await dialogConfirm($q, () => {
+ saveData();
+ });
}
}
});
@@ -1205,14 +1191,12 @@ const saveData = async () => {
showLoader();
await http
.post(config.API.profileLeaveId(profileId.value), {
- dateStartLeave: dateToISO(dateRange.value[0]),
- dateEndLeave: dateToISO(dateRange.value[1]),
- numLeave: numLeave.value,
- sumLeave: numUsedLeave.value,
- totalLeave: sum,
- status: statLeave.value,
- reason: reason.value,
- typeLeaveId: typeLeave.value,
+ leaveYear: formData.leaveYear,
+ sumSick: formData.sumSick,
+ sumRest: formData.sumRest,
+ sumLate: formData.sumLate,
+ sumAbsent: formData.sumAbsent,
+ sumEducation: formData.sumEducation,
})
.then((res) => {
success($q, "บันทึกข้อมูลสำเร็จ");
@@ -1235,15 +1219,13 @@ const editData = async () => {
showLoader();
await http
- .put(config.API.profileLeaveId(id.value), {
- dateStartLeave: dateToISO(dateRange.value[0]),
- dateEndLeave: dateToISO(dateRange.value[1]),
- numLeave: numLeave.value,
- sumLeave: numUsedLeave.value,
- totalLeave: sum,
- status: statLeave.value,
- reason: reason.value,
- typeLeaveId: typeLeave.value,
+ .put(config.API.profileLeaveId(formData.id), {
+ leaveYear: formData.leaveYear,
+ sumSick: formData.sumSick,
+ sumRest: formData.sumRest,
+ sumLate: formData.sumLate,
+ sumAbsent: formData.sumAbsent,
+ sumEducation: formData.sumEducation,
})
.then((res) => {
success($q, "บันทึกข้อมูลสำเร็จ");
@@ -1260,7 +1242,7 @@ const editData = async () => {
const deleteData = async () => {
showLoader();
await http
- .delete(config.API.profileLeaveId(id.value))
+ .delete(config.API.profileLeaveId(formData.id))
.then((res) => {
success($q, "ลบข้อมูลสำเร็จ");
modalAdd.value = false;
@@ -1346,6 +1328,7 @@ const clickClose = async () => {
// * @param props ค่า props ใน row ที่เลือก
// */
const selectData = async (props: DataProps) => {
+ console.log(props);
modalEdit.value = true;
// modal.value = true;
modalAdd.value = true;
@@ -1353,12 +1336,12 @@ const selectData = async (props: DataProps) => {
rowIndex.value = props.rowIndex;
formData.id = props.row.id;
- formData.sick = props.row.sick;
- formData.absence = props.row.absence;
- formData.late = props.row.late;
- formData.government = props.row.government;
- formData.study = props.row.study;
- formData.year = props.row.year == "-" ? 0 : props.row.year;
+ formData.sumSick = props.row.sumSick == '-' ? '':props.row.sumSick;
+ formData.sumRest = props.row.sumRest == '-' ? '':props.row.sumRest;
+ formData.sumLate = props.row.sumLate == '-' ? '':props.row.sumLate;
+ formData.sumAbsent = props.row.sumAbsent == '-' ? '':props.row.sumAbsent;
+ formData.sumEducation = props.row.sumEducation == '-' ? '':props.row.sumEducation;
+ formData.leaveYear = props.row.leaveYear == "-" ? 0 : Number(props.row.leaveYear) - 543;
// id.value = props.row.id;
// typeLeave.value = props.row.typeLeaveId;
@@ -1522,12 +1505,12 @@ const getClass = (val: boolean) => {
function clearForm() {
formData.id = "";
- formData.sick = "";
- formData.absence = "";
- formData.late = "";
- formData.government = "";
- formData.study = "";
- formData.year = 0;
+ formData.sumSick = "";
+ formData.sumRest = "";
+ formData.sumLate = "";
+ formData.sumAbsent = "";
+ formData.sumEducation = "";
+ formData.leaveYear = 0;
}
// watch(()=>modalAdd.value,()=>{
// clearForm()
diff --git a/src/modules/04_registry/interface/request/Leave.ts b/src/modules/04_registry/interface/request/Leave.ts
index 6d7fe947c..972fd2d52 100644
--- a/src/modules/04_registry/interface/request/Leave.ts
+++ b/src/modules/04_registry/interface/request/Leave.ts
@@ -20,12 +20,12 @@ interface DataProps {
//ข้อมูล
interface RequestItemsObject {
id: string;
- year: string|number;
- sick: string;
- absence: string;
- late: string;
- government: string;
- study: string;
+ leaveYear: string|number;
+ sumRest: string;
+ sumLate: string;
+ sumAbsent: string;
+ sumEducation: string;
+ sumSick: string;
}
//ข้อมูล
@@ -52,12 +52,12 @@ interface Columns {
interface DetailData {
id: string;
- sick: string;
- absence: string;
- late: string;
- government: string;
- study: string;
- year: string|number;
+ sumSick: string;
+ sumRest: string;
+ sumLate: string;
+ sumAbsent: string;
+ sumEducation: string;
+ leaveYear: string|number;
}
export type { RequestItemsObject, Columns, DataProps, RequestItemsTotalObject,DetailData };
diff --git a/src/modules/04_registry/interface/response/Leave.ts b/src/modules/04_registry/interface/response/Leave.ts
index e8c0cc0a8..405e0b7ec 100644
--- a/src/modules/04_registry/interface/response/Leave.ts
+++ b/src/modules/04_registry/interface/response/Leave.ts
@@ -14,12 +14,12 @@
interface ResponseObject {
id: string;
- year: string|number;
- sick: string;
- absence: string;
- late: string;
- government: string;
- study: string;
+ sumSick: string;
+ sumRest: string;
+ sumLate: string;
+ sumAbsent: string;
+ sumEducation: string;
+ leaveYear: string|number;
}
interface ResponseTotalObject {