API รายละเอียด รายการลงเวลา

This commit is contained in:
DESKTOP-1R2VSQH\Lenovo ThinkPad E490 2023-11-28 12:07:06 +07:00
parent b4f269cd94
commit 9100062af6
5 changed files with 22 additions and 11 deletions

View file

@ -7,7 +7,7 @@ export default {
/**รายการลงเวลาปฏิบัติงาน */
logRecord: () => `${leave}/log-record`,
timeRecord: () => `${leave}/time-record`,
timeRecordById: (id: string) => `${leave}/time-record/${id}`,
recordById: (id: string, type: string) => `${leave}/${type}/${id}`,
/** เปลี่ยนแปลงลงเวลา*/
leaveSearch: () => `${leave}/search`,
leaveRound: () => `${leave}/round`,

View file

@ -24,6 +24,10 @@ const props = defineProps({
type: Boolean,
require: true,
},
typeTab: {
type: String,
require: true,
},
detail: {
type: Object,
require: true,
@ -59,10 +63,10 @@ const formData = reactive<FormDetail>({
* function เรยกรายการลงเวลาตาม
* @param id รายการลงเวลาปฏงาน
*/
async function fetchDetailByid(id: string) {
async function fetchDetailByid(id: string, type: string) {
showLoader();
await http
.get(config.API.timeRecordById(id))
.get(config.API.recordById(id, type))
.then((res) => {
const data = res.data.result;
formData.checkInDate = data.checkInDate && date2Thai(data.checkInDate);
@ -111,7 +115,9 @@ function closePopup() {
watch(
() => props.modal,
() => {
props.modal === true && props.detail && fetchDetailByid(props.detail.id);
props.modal === true &&
props.detail &&
fetchDetailByid(props.detail.id, props.typeTab as string);
}
);
</script>

View file

@ -206,7 +206,7 @@ onMounted(async () => {
:rowsPerPage="rowsPerPage"
:maxPage="maxPage"
@update:pagination="updatePaging"
:tab="'1'"
:tab="'time-record'"
/>
</template>

View file

@ -165,7 +165,7 @@ onMounted(async () => {
:rowsPerPage="rowsPerPage"
:maxPage="maxPage"
@update:pagination="updatePagingProp"
:tab="'2'"
:tab="'log-record'"
/>
</template>

View file

@ -64,15 +64,15 @@ function updateProp(newPagination: any, page: number) {
emit("update:pagination", newPagination, page);
}
const typeTab = ref<string>("");
/**
* Function openPopup และแสดงรายละเอยด
* @param data อมลรายละเอยด
*/
function clickDetail(data: any) {
if (props.tab === "1") {
modal.value = true;
dataDetail.value = data;
}
typeTab.value = props.tab as string;
modal.value = true;
dataDetail.value = data;
}
/** Function ปิด popup */
@ -156,7 +156,12 @@ watch([() => currentPage.value, () => pagination.value.rowsPerPage], () => {
</template>
</d-table>
<DialogDetail :modal="modal" :detail="dataDetail" :close="closeDetail" />
<DialogDetail
:modal="modal"
:detail="dataDetail"
:typeTab="typeTab"
:close="closeDetail"
/>
</template>
<style scoped></style>