diff --git a/src/main/java/kcc/com/cmm/util/DateUtil.java b/src/main/java/kcc/com/cmm/util/DateUtil.java index d8a50e9e..4ae69f21 100644 --- a/src/main/java/kcc/com/cmm/util/DateUtil.java +++ b/src/main/java/kcc/com/cmm/util/DateUtil.java @@ -212,4 +212,14 @@ public final class DateUtil { return strWeek; } + + public static int getNowyyyyMMddReturnInt() { + DateTimeFormatter formatter2 = DateTimeFormatter.ofPattern("yyyyMMdd"); + return Integer.parseInt(LocalDateTime.now().format(formatter2)); + } + public static LocalDate getStringToLocalDate(String p_date) { + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); + LocalDate date = LocalDate.parse(p_date, formatter); + return date; + } } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/VELctrDetailVO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/VELctrDetailVO.java index e14a5daa..7df508fd 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/VELctrDetailVO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/VELctrDetailVO.java @@ -22,6 +22,10 @@ public class VELctrDetailVO extends ComDefaultVO implements Serializable { private String userNm; //사용자 이름 private String lctrStngOrd; //강의설정순번 + private String lctrStngOrdTtl; // 참여현황 - 총계 + private String lctrStngOrdSbmt; // 참여현황 - 참여 + + private String sunLctrYn; //일요일 강의 여부 private String monLctrYn; //월요일 강의 여부 private String tueLctrYn; //화요일 강의 여부 @@ -120,6 +124,13 @@ public class VELctrDetailVO extends ComDefaultVO implements Serializable { //ve_lctr_rsrch_mng private String rsrchInstrDiv; private String rsrchStrtDt; + + // 조사 상태 + private String rsrchState; + + + + ; private String rsrchEndDt; private String stngYrMnt; //설정년월 @@ -355,6 +366,18 @@ public class VELctrDetailVO extends ComDefaultVO implements Serializable { public String getLctrStngOrd() { return lctrStngOrd; } + public String getLctrStngOrdTtl() { + return lctrStngOrdTtl; + } + public void setLctrStngOrdTtl(String lctrStngOrdTtl) { + this.lctrStngOrdTtl = lctrStngOrdTtl; + } + public String getLctrStngOrdSbmt() { + return lctrStngOrdSbmt; + } + public void setLctrStngOrdSbmt(String lctrStngOrdSbmt) { + this.lctrStngOrdSbmt = lctrStngOrdSbmt; + } public void setLctrStngOrd(String lctrStngOrd) { this.lctrStngOrd = lctrStngOrd; } @@ -571,6 +594,12 @@ public class VELctrDetailVO extends ComDefaultVO implements Serializable { public String getRsrchStrtDt() { return rsrchStrtDt; } + public String getRsrchState() { + return rsrchState; + } + public void setRsrchState(String rsrchState) { + this.rsrchState = rsrchState; + } public void setRsrchStrtDt(String rsrchStrtDt) { this.rsrchStrtDt = rsrchStrtDt; } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/VELctrRsrchMngService.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/VELctrRsrchMngService.java index e5a10344..0b22dcdf 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/VELctrRsrchMngService.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/VELctrRsrchMngService.java @@ -28,4 +28,8 @@ public interface VELctrRsrchMngService { //조사진행목록 List selectPagingListLctr(VELctrDetailVO paramVO) throws Exception; + // lctrStngOrd 값 가져오기 + // 강의조사 요청목록에 참여현황 데이터 정제를 위함 + List findByLctrStngOrd(String stngYrMnt) throws Exception; + } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/impl/VELctrRsrchMngDAO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/impl/VELctrRsrchMngDAO.java index d08f408a..70fcd817 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/impl/VELctrRsrchMngDAO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/impl/VELctrRsrchMngDAO.java @@ -74,4 +74,9 @@ public class VELctrRsrchMngDAO extends EgovAbstractDAO { List tlist = (List) list("VELctrRsrchMngDAO.selectPagingListLctr", paramVO); return tlist; } + + public List findByLctrStngOrd(String stngYrMnt) throws Exception { + List tlist = (List) list("VELctrRsrchMngDAO.findByLctrStngOrd", stngYrMnt); + return tlist; + } } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/impl/VELctrRsrchMngServiceImpl.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/impl/VELctrRsrchMngServiceImpl.java index e20b5c44..5f5263b8 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/impl/VELctrRsrchMngServiceImpl.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/lctrInfo/service/impl/VELctrRsrchMngServiceImpl.java @@ -57,4 +57,8 @@ public class VELctrRsrchMngServiceImpl implements VELctrRsrchMngService { public List selectPagingListLctr(VELctrDetailVO paramVO) throws Exception{ return vELctrRsrchMngDAO.selectPagingListLctr(paramVO); } + + public List findByLctrStngOrd(String stngYrMnt) throws Exception{ + return vELctrRsrchMngDAO.findByLctrStngOrd(stngYrMnt); + } } diff --git a/src/main/java/kcc/ve/oprtn/instr/tngrVisitEdu/lctrRsrch/web/OprtnLctrRsrchTngrContoller.java b/src/main/java/kcc/ve/oprtn/instr/tngrVisitEdu/lctrRsrch/web/OprtnLctrRsrchTngrContoller.java index 7b8cea0b..d97b1678 100644 --- a/src/main/java/kcc/ve/oprtn/instr/tngrVisitEdu/lctrRsrch/web/OprtnLctrRsrchTngrContoller.java +++ b/src/main/java/kcc/ve/oprtn/instr/tngrVisitEdu/lctrRsrch/web/OprtnLctrRsrchTngrContoller.java @@ -1,11 +1,13 @@ package kcc.ve.oprtn.instr.tngrVisitEdu.lctrRsrch.web; +import java.time.LocalDate; import java.util.List; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; @@ -15,6 +17,8 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.support.RedirectAttributes; +import com.ctc.wstx.util.DataUtil; + import egovframework.rte.fdl.idgnr.EgovIdGnrService; import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo; import kcc.com.cmm.EgovMessageSource; @@ -22,6 +26,7 @@ import kcc.com.cmm.LoginVO; import kcc.com.cmm.service.EgovCmmUseService; import kcc.com.cmm.service.EgovFileMngService; import kcc.com.cmm.service.EgovFileMngUtil; +import kcc.com.cmm.util.DateUtil; import kcc.com.utl.user.service.CheckAdrProcessUtil; import kcc.com.utl.user.service.CheckFileUtil; import kcc.com.utl.user.service.CheckLoginUtil; @@ -204,6 +209,34 @@ public class OprtnLctrRsrchTngrContoller { //2. pageing step2 vELctrDetailVO = vEPagingUtil.setPagingStep2_VELctrDetailVO(vELctrDetailVO, paginationInfo); List selectVELctrDetailVOList = vELctrRsrchMngService.selectPagingList(vELctrDetailVO); + + LocalDate nowDate = LocalDate.now(); + selectVELctrDetailVOList.stream().forEach(t->{ + try { + List lctrStngOrdList = vELctrRsrchMngService.findByLctrStngOrd(t.getStngYrMnt()); + // 참여현황 총 토탈 카운트 + t.setLctrStngOrdTtl(Integer.toString(lctrStngOrdList.size())); + // 참여현황 참여 카운트 + t.setLctrStngOrdSbmt(Long.toString(lctrStngOrdList.stream().filter(s -> StringUtils.isNotEmpty(s)).count())); + + LocalDate startDate = DateUtil.getStringToLocalDate(t.getRsrchStrtDt()); + LocalDate endDate = DateUtil.getStringToLocalDate(t.getRsrchEndDt()); + + // 진행중 체크 + // 공통 코드 추가 VE0034 01 : 진행전, 02 : 진행중, 03 : 마감 + if(nowDate.isEqual(startDate) || nowDate.isEqual(endDate)) {t.setRsrchState("02");} + else if(nowDate.isBefore(startDate)) {t.setRsrchState("01");} + else if(nowDate.isAfter(endDate)) {t.setRsrchState("03");} + + t.getRsrchEndDt(); + t.getRsrchState(); + DateUtil.getNowyyyyMMddReturnInt(); + + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + }); //3.pageing step3 diff --git a/src/main/resources/egovframework/sqlmap/ve/lctr/VELctrRsrchMng_SQL_Cubrid.xml b/src/main/resources/egovframework/sqlmap/ve/lctr/VELctrRsrchMng_SQL_Cubrid.xml index 869471b3..6cb1883f 100644 --- a/src/main/resources/egovframework/sqlmap/ve/lctr/VELctrRsrchMng_SQL_Cubrid.xml +++ b/src/main/resources/egovframework/sqlmap/ve/lctr/VELctrRsrchMng_SQL_Cubrid.xml @@ -357,4 +357,65 @@ LIMIT #recordCountPerPage# OFFSET #firstIndex# + + + + + + + + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/tngrVisitEdu/lctrRsrchMngList.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/tngrVisitEdu/lctrRsrchMngList.jsp index 275a2cb2..ea82ece9 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/tngrVisitEdu/lctrRsrchMngList.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/tngrVisitEdu/lctrRsrchMngList.jsp @@ -232,7 +232,8 @@ 강의조사월 조사시작일 조사마감일 - 마감여부 + 참여현황 + 마감여부 @@ -253,9 +254,11 @@ - - - + + ${list.lctrStngOrdSbmt } / ${list.lctrStngOrdTtl } + + +