diff --git a/src/pages/app/ApprovalManagement.vue b/src/pages/app/ApprovalManagement.vue index b332772..d1f081a 100644 --- a/src/pages/app/ApprovalManagement.vue +++ b/src/pages/app/ApprovalManagement.vue @@ -10,8 +10,11 @@ import {getContractList} from "/@src/service/contractApi.ts"; onBeforeMount(async () => { - await getIntegratedPaymentList() + await getIntegratedApprovalList() + const userSession = useUserSession() + params.sessionUser = userSession.user.data }) + const isModalOpen = ref(false) const selectedRow = ref(null) const prcsNo = ref('') @@ -63,6 +66,7 @@ const notyf = useNotyf() const params = reactive({ title: '', + sessionUser: '', priceData: [], regSdt:'', regEdt:'', @@ -82,17 +86,32 @@ const params = reactive({ rowData: [], }) +const searchParamsList = reactive({ + cateCd : '', //분야코드 + stCd : '', //등록상태 + apprStat : '', //결재상태 + regNm : '', //담당자 + regSdt: '',//등록시작일 + regEdt: '',//등록종료일 +}) + function formatRegDt(value) { return value ? value.substring(0, 16) : '' } -async function getIntegratedPaymentList() { +async function getIntegratedApprovalList() { + const today = new Date() + searchParamsList.regSdt = new Date().setDate(today.getDate() - 30) + const approvalParams = { - title: '', - page: '1', - row: '10', + title: params.title, + regSdt: formatDatefromString(params.regSdt), + regEdt: formatDatefromString(params.regEdt), + page: 1, + row: itemsPerPage, sabun: '17131303', // 김진형 17131303, 손원창 17131304 } + const result = await getIntegratedApproval(approvalParams) params.approvalParams = result.content.map(item => ({ ...item, @@ -134,17 +153,39 @@ const gubunMap = { SVCM: '가격조사', } -const searchApproval = async () => { - const searchParams = { - params: { - title: params.title, - page: '1', - row: '10', - }, +const searchApproval = async (item) => { + + let itemPerChangePage; + if(item == totalPages.value){ + const remain = totalItems.value % itemsPerPage + itemPerChangePage = remain === 0? itemsPerPage : remain + }else{ + itemPerChangePage = itemsPerPage } + + const searchParams = { + title: params.title, + // apprStat: searchParamsList.apprStat, + regSdt: formatDatefromString(searchParamsList.regSdt),//등록시작일 + regEdt: formatDatefromString(searchParamsList.regEdt),//등록종료일 + page: item,//페이지 + row: itemPerChangePage, //아이템갯수 + sabun: '17131303', // 김진형 17131303, 손원창 17131304 + } + + console.log('itemPerChangePage', itemPerChangePage) + console.log('itemsPerPage', itemsPerPage) + const result = await getIntegratedApproval(searchParams) - params.approvalParams = result.content + params.approvalParams = result.content.map(item => ({ + ...item, + process: gubunMap[item.gubun] || '', + })) + totalItems.value = result.totalElements + totalPages.value = result.totalPages console.log(params.approvalParams) + console.log('itemPerChangePage', itemPerChangePage) + console.log('itemsPerPage', itemsPerPage) } type User = (typeof users)[0] @@ -176,7 +217,10 @@ const onRowClick = async (row) => { } } - +watch(currentPage, (newParams) => { + currentPage.value = newParams + searchApproval(currentPage.value) +})