From 8c4f7706be469b03c1d06de7635773ca3bf57374 Mon Sep 17 00:00:00 2001 From: myname Date: Wed, 15 Nov 2023 15:29:39 +0900 Subject: [PATCH] =?UTF-8?q?2023-11-15=2015:29=20=EC=B2=AD=EC=86=8C?= =?UTF-8?q?=EB=85=84=20=EA=B0=95=EC=82=AC=20=EC=9E=90=EB=8F=99=20=EB=B0=B0?= =?UTF-8?q?=EC=A0=95=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ve/aplct/comweb/CommonWebController.java | 187 +++++++++- .../service/VEAutoAsgnmMIXService.java | 4 + .../eduInfo/service/VEAutoAsgnmVO.java | 347 ++++++++++++++++++ .../eduInfo/service/VEEduMIXService.java | 3 + .../service/impl/VEAutoAsgnmMIXDAO.java | 7 + .../impl/VEAutoAsgnmMIXServiceImpl.java | 5 + .../eduInfo/service/impl/VEEduMIXDAO.java | 7 +- .../service/impl/VEEduMIXServiceImpl.java | 5 + .../web/OprtnInstrTngrPrflContoller.java | 12 + .../ve/edu/VEAutoAsgnm_MIX_SQL_Tibero.xml | 110 +++++- .../sqlmap/ve/edu/VEEdu_MIX_SQL_Tibero.xml | 17 + .../oprtn/tngrVisitEdu/eduCnfrmMngList.jsp | 72 +++- .../jsp/oprtn/tngrVisitEdu/instrMngDetail.jsp | 55 +-- .../popup/instrLctrStngMdfyPopup.jsp | 2 + 14 files changed, 799 insertions(+), 34 deletions(-) diff --git a/src/main/java/kcc/ve/aplct/comweb/CommonWebController.java b/src/main/java/kcc/ve/aplct/comweb/CommonWebController.java index e8cec87e..a4cbae36 100644 --- a/src/main/java/kcc/ve/aplct/comweb/CommonWebController.java +++ b/src/main/java/kcc/ve/aplct/comweb/CommonWebController.java @@ -630,14 +630,19 @@ public class CommonWebController { int p=0; { for (int i=0;i vEEduAplctVOList = vEEduMIXService.selectTngrRsltPagingList_EA(vEEduAplctVO); + + + //step2.배정 대상별 가능한 대상 강사 찾기 및 등록 + int p=0; + { + for (int i=0;i vEInstrAssiEduAplctVOList = null; + + //필수 조건(월별시수제한, 요일, 희망지역) + { + System.out.println("===step2-1.가능 강사중 월별 시수이상을 받지 않은자 & 해당 요일에 수업 가능한 강사 리스트(필)==="); + //step2-1.가능 강사중 월별 시수이상을 받지 않은자 & 해당 요일에 수업 가능한 강사 리스트(필) + vEAutoAsgnmVO = new VEAutoAsgnmVO(); + vEAutoAsgnmVO.setEduHopeMnt(s_eduHopeDt.substring(5,7)); + vEAutoAsgnmVO.setYr(s_eduHopeDt.substring(0,4)); + vEAutoAsgnmVO.setInstrDiv("10"); //10-청소년, 20-성인 + vEAutoAsgnmVO.setEduChasiOrd(p_tChasiInfo.getEduChasiOrd()); + + vEInstrAssiEduAplctVOList = vEAutoAsgnmMIXService.selectInstrMntAsgnmtChasiList(vEAutoAsgnmVO); + + //step2-2.희망 지역 강사 검색(필) + + for (int j=0;j0) { + VEInstrAsgnmVO p_vEInstrAsgnmVO = new VEInstrAsgnmVO(); + p_vEInstrAsgnmVO.setEduAplctOrd(p_tChasiInfo.getEduAplctOrd()); + p_vEInstrAsgnmVO.setEduChasiOrd(p_tChasiInfo.getEduChasiOrd()); + + p_vEInstrAsgnmVO.setUserId(vEInstrAssiEduAplctVOList.get(0).getUserId()); //배정 강사 + p_vEInstrAsgnmVO.setRmrks("배정기준1순위"); + + p_vEInstrAsgnmVO.setFrstRegisterId(p_loginVO.getUniqId()); + p_vEInstrAsgnmVO.setAsgnmAprvlCd("10"); //수락요청전 + p_vEInstrAsgnmVO.setAsgnmAprvlId(p_loginVO.getUniqId()); + + + System.out.println("===//강사배정-대상 강사가 있어야 강사를 할당한다.==="); + + //저장 + vEEduChasiInstrAsgnmService.insert(p_vEInstrAsgnmVO); + + //저장여부 확인 + //step3-1.해당 차시에 강사 배정이 있는지 확인 + VEInstrAsgnmVO vEInstrAsgnmVOTmp = vEEduChasiInstrAsgnmService.selectDetail(p_vEInstrAsgnmVO); + if (vEInstrAsgnmVOTmp!=null) { + System.out.println("===O저장확인==="); + i_ret = 1; + + }else { + System.out.println("===X저장안됨==="); + } + } + + return i_ret; + } + } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEAutoAsgnmMIXService.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEAutoAsgnmMIXService.java index a2750b23..097c699f 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEAutoAsgnmMIXService.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEAutoAsgnmMIXService.java @@ -16,5 +16,9 @@ public interface VEAutoAsgnmMIXService { //step3-1.월별시수대비할당이적은자 우선(필) List selectInstrPriorityList(VEAutoAsgnmVO paramVO) throws Exception; + + + //월별 교육시간 배정 정보 + List selectAsgnmInfoList(VEAutoAsgnmVO paramVO) throws Exception; } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEAutoAsgnmVO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEAutoAsgnmVO.java index 0e8174ce..a4417b3f 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEAutoAsgnmVO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEAutoAsgnmVO.java @@ -30,6 +30,49 @@ public class VEAutoAsgnmVO extends ComDefaultVO implements Serializable { private String rownum; //배정순번 + private String m01Tm; //할당된 시간 + private String m02Tm; //할당된 시간 + private String m03Tm; //할당된 시간 + private String m04Tm; //할당된 시간 + private String m05Tm; //할당된 시간 + private String m06Tm; //할당된 시간 + private String m07Tm; //할당된 시간 + private String m08Tm; //할당된 시간 + private String m09Tm; //할당된 시간 + private String m10Tm; //할당된 시간 + private String m11Tm; //할당된 시간 + private String m12Tm; //할당된 시간 + + private String mTmSum; //할당된 시간 + + private String m01Area; //할당된 지역수 + private String m02Area; //할당된 지역수 + private String m03Area; //할당된 지역수 + private String m04Area; //할당된 지역수 + private String m05Area; //할당된 지역수 + private String m06Area; //할당된 지역수 + private String m07Area; //할당된 지역수 + private String m08Area; //할당된 지역수 + private String m09Area; //할당된 지역수 + private String m10Area; //할당된 지역수 + private String m11Area; //할당된 지역수 + private String m12Area; //할당된 지역수 + + private String m01Isc; //실제 받은 시간 + private String m02Isc; //받은 시간 + private String m03Isc; //받은 시간 + private String m04Isc; //받은 시간 + private String m05Isc; //받은 시간 + private String m06Isc; //받은 시간 + private String m07Isc; //받은 시간 + private String m08Isc; //받은 시간 + private String m09Isc; //받은 시간 + private String m10Isc; //받은 시간 + private String m11Isc; //받은 시간 + private String m12Isc; //받은 시간 + + private String mIscSum; //받은 시간 + public String getEduHopeMnt() { return eduHopeMnt; @@ -118,6 +161,310 @@ public class VEAutoAsgnmVO extends ComDefaultVO implements Serializable { public void setRownum(String rownum) { this.rownum = rownum; } + + public String getM01Tm() { + return m01Tm; + } + + public void setM01Tm(String m01Tm) { + this.m01Tm = m01Tm; + } + + public String getM02Tm() { + return m02Tm; + } + + public void setM02Tm(String m02Tm) { + this.m02Tm = m02Tm; + } + + public String getM03Tm() { + return m03Tm; + } + + public void setM03Tm(String m03Tm) { + this.m03Tm = m03Tm; + } + + public String getM04Tm() { + return m04Tm; + } + + public void setM04Tm(String m04Tm) { + this.m04Tm = m04Tm; + } + + public String getM05Tm() { + return m05Tm; + } + + public void setM05Tm(String m05Tm) { + this.m05Tm = m05Tm; + } + + public String getM06Tm() { + return m06Tm; + } + + public void setM06Tm(String m06Tm) { + this.m06Tm = m06Tm; + } + + public String getM07Tm() { + return m07Tm; + } + + public void setM07Tm(String m07Tm) { + this.m07Tm = m07Tm; + } + + public String getM08Tm() { + return m08Tm; + } + + public void setM08Tm(String m08Tm) { + this.m08Tm = m08Tm; + } + + public String getM09Tm() { + return m09Tm; + } + + public void setM09Tm(String m09Tm) { + this.m09Tm = m09Tm; + } + + public String getM10Tm() { + return m10Tm; + } + + public void setM10Tm(String m10Tm) { + this.m10Tm = m10Tm; + } + + public String getM11Tm() { + return m11Tm; + } + + public void setM11Tm(String m11Tm) { + this.m11Tm = m11Tm; + } + + public String getM12Tm() { + return m12Tm; + } + + public void setM12Tm(String m12Tm) { + this.m12Tm = m12Tm; + } + + public String getM01Area() { + return m01Area; + } + + public void setM01Area(String m01Area) { + this.m01Area = m01Area; + } + + public String getM02Area() { + return m02Area; + } + + public void setM02Area(String m02Area) { + this.m02Area = m02Area; + } + + public String getM03Area() { + return m03Area; + } + + public void setM03Area(String m03Area) { + this.m03Area = m03Area; + } + + public String getM04Area() { + return m04Area; + } + + public void setM04Area(String m04Area) { + this.m04Area = m04Area; + } + + public String getM05Area() { + return m05Area; + } + + public void setM05Area(String m05Area) { + this.m05Area = m05Area; + } + + public String getM06Area() { + return m06Area; + } + + public void setM06Area(String m06Area) { + this.m06Area = m06Area; + } + + public String getM07Area() { + return m07Area; + } + + public void setM07Area(String m07Area) { + this.m07Area = m07Area; + } + + public String getM08Area() { + return m08Area; + } + + public void setM08Area(String m08Area) { + this.m08Area = m08Area; + } + + public String getM09Area() { + return m09Area; + } + + public void setM09Area(String m09Area) { + this.m09Area = m09Area; + } + + public String getM10Area() { + return m10Area; + } + + public void setM10Area(String m10Area) { + this.m10Area = m10Area; + } + + public String getM11Area() { + return m11Area; + } + + public void setM11Area(String m11Area) { + this.m11Area = m11Area; + } + + public String getM12Area() { + return m12Area; + } + + public void setM12Area(String m12Area) { + this.m12Area = m12Area; + } + + public String getM01Isc() { + return m01Isc; + } + + public void setM01Isc(String m01Isc) { + this.m01Isc = m01Isc; + } + + public String getM02Isc() { + return m02Isc; + } + + public void setM02Isc(String m02Isc) { + this.m02Isc = m02Isc; + } + + public String getM03Isc() { + return m03Isc; + } + + public void setM03Isc(String m03Isc) { + this.m03Isc = m03Isc; + } + + public String getM04Isc() { + return m04Isc; + } + + public void setM04Isc(String m04Isc) { + this.m04Isc = m04Isc; + } + + public String getM05Isc() { + return m05Isc; + } + + public void setM05Isc(String m05Isc) { + this.m05Isc = m05Isc; + } + + public String getM06Isc() { + return m06Isc; + } + + public void setM06Isc(String m06Isc) { + this.m06Isc = m06Isc; + } + + public String getM07Isc() { + return m07Isc; + } + + public void setM07Isc(String m07Isc) { + this.m07Isc = m07Isc; + } + + public String getM08Isc() { + return m08Isc; + } + + public void setM08Isc(String m08Isc) { + this.m08Isc = m08Isc; + } + + public String getM09Isc() { + return m09Isc; + } + + public void setM09Isc(String m09Isc) { + this.m09Isc = m09Isc; + } + + public String getM10Isc() { + return m10Isc; + } + + public void setM10Isc(String m10Isc) { + this.m10Isc = m10Isc; + } + + public String getM11Isc() { + return m11Isc; + } + + public void setM11Isc(String m11Isc) { + this.m11Isc = m11Isc; + } + + public String getM12Isc() { + return m12Isc; + } + + public void setM12Isc(String m12Isc) { + this.m12Isc = m12Isc; + } + + public String getmTmSum() { + return mTmSum; + } + + public void setmTmSum(String mTmSum) { + this.mTmSum = mTmSum; + } + + public String getmIscSum() { + return mIscSum; + } + + public void setmIscSum(String mIscSum) { + this.mIscSum = mIscSum; + } } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduMIXService.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduMIXService.java index 12febe0d..95ed51e6 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduMIXService.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduMIXService.java @@ -27,6 +27,9 @@ public interface VEEduMIXService { List selectTngrRsltPagingList(VEEduAplctVO paramVO) throws Exception; + //대량강사자동배정대상 - step0,1 - 개별 + List selectTngrRsltPagingList_EA(VEEduAplctVO paramVO) throws Exception; + List selectTngrRsltList(VEEduAplctVO paramVO) throws Exception; //특정강사배정을 위한 대상 차시 리스트 diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEAutoAsgnmMIXDAO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEAutoAsgnmMIXDAO.java index 0a99e25b..a6dec789 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEAutoAsgnmMIXDAO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEAutoAsgnmMIXDAO.java @@ -34,5 +34,12 @@ public class VEAutoAsgnmMIXDAO extends EgovAbstractDAO { return tlist; } + public List selectAsgnmInfoList(VEAutoAsgnmVO paramVO) { + @SuppressWarnings("unchecked") + List tlist = (List) list("VEAutoAsgnmDAO.selectAsgnmInfoList", paramVO); + return tlist; + } + + } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEAutoAsgnmMIXServiceImpl.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEAutoAsgnmMIXServiceImpl.java index aff446c5..5d307944 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEAutoAsgnmMIXServiceImpl.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEAutoAsgnmMIXServiceImpl.java @@ -38,4 +38,9 @@ public class VEAutoAsgnmMIXServiceImpl implements VEAutoAsgnmMIXService { return vEAutoAsgnmMIXDAO.selectInstrPriorityList(paramVO); } + @Override + public List selectAsgnmInfoList(VEAutoAsgnmVO paramVO) throws Exception{ + return vEAutoAsgnmMIXDAO.selectAsgnmInfoList(paramVO); + } + } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXDAO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXDAO.java index b0a8ffdb..d2e9d54e 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXDAO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXDAO.java @@ -67,7 +67,12 @@ public class VEEduMIXDAO extends EgovAbstractDAO { List tlist = (List) list("VEEduMIXDAO.selectTngrRsltPagingList", paramVO); return tlist; } - + + public List selectTngrRsltPagingList_EA(VEEduAplctVO paramVO) { + @SuppressWarnings("unchecked") + List tlist = (List) list("VEEduMIXDAO.selectTngrRsltPagingList_EA", paramVO); + return tlist; + } public List selectTngrRsltList(VEEduAplctVO paramVO) { @SuppressWarnings("unchecked") diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXServiceImpl.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXServiceImpl.java index c36695ad..2b0b0d7b 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXServiceImpl.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXServiceImpl.java @@ -60,6 +60,11 @@ public class VEEduMIXServiceImpl implements VEEduMIXService { return vEEduMIXDAO.selectTngrRsltPagingList(paramVO); } + @Override + public List selectTngrRsltPagingList_EA(VEEduAplctVO paramVO) throws Exception{ + return vEEduMIXDAO.selectTngrRsltPagingList_EA(paramVO); + } + @Override public List selectTngrRsltList(VEEduAplctVO paramVO) throws Exception{ return vEEduMIXDAO.selectTngrRsltList(paramVO); diff --git a/src/main/java/kcc/ve/oprtn/instr/tngrVisitEdu/instrInfo/web/OprtnInstrTngrPrflContoller.java b/src/main/java/kcc/ve/oprtn/instr/tngrVisitEdu/instrInfo/web/OprtnInstrTngrPrflContoller.java index f67646ec..9049efc7 100644 --- a/src/main/java/kcc/ve/oprtn/instr/tngrVisitEdu/instrInfo/web/OprtnInstrTngrPrflContoller.java +++ b/src/main/java/kcc/ve/oprtn/instr/tngrVisitEdu/instrInfo/web/OprtnInstrTngrPrflContoller.java @@ -53,6 +53,8 @@ import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ScholInfoService; import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ScholInfoVO; import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEEduPnltyService; import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrAsgnmVO; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEAutoAsgnmMIXService; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEAutoAsgnmVO; import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailService; import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO; import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrMixService; @@ -224,6 +226,9 @@ public class OprtnInstrTngrPrflContoller { @Resource(name="instrHstryOrdGnrService") private EgovIdGnrService instrHstryOrdGnrService; + @Resource(name = "vEAutoAsgnmMIXService") + private VEAutoAsgnmMIXService vEAutoAsgnmMIXService; + /** * 1.강사등록신청 목록 조회 - */ @@ -1770,6 +1775,13 @@ public class OprtnInstrTngrPrflContoller { List selectAsgnmInfoT2List = vEInstrMixService.selectAsgnmInfoT2(t_vEInstrDetailVO); model.addAttribute("asgnmInfoT2List",selectAsgnmInfoT2List); + + VEAutoAsgnmVO vEAutoAsgnmVO = new VEAutoAsgnmVO(); + vEAutoAsgnmVO.setUserId(vEInstrDetailVO.getUserId()); + List vEInstrAssiEduAplctVOList = null; + vEInstrAssiEduAplctVOList = vEAutoAsgnmMIXService.selectAsgnmInfoList(vEAutoAsgnmVO); + model.addAttribute("vEInstrAssiEduAplctVOList",vEInstrAssiEduAplctVOList); + return "/oprtn/tngrVisitEdu/instrMngDetail"; } diff --git a/src/main/resources/egovframework/sqlmap/ve/edu/VEAutoAsgnm_MIX_SQL_Tibero.xml b/src/main/resources/egovframework/sqlmap/ve/edu/VEAutoAsgnm_MIX_SQL_Tibero.xml index 93d27866..e888a409 100644 --- a/src/main/resources/egovframework/sqlmap/ve/edu/VEAutoAsgnm_MIX_SQL_Tibero.xml +++ b/src/main/resources/egovframework/sqlmap/ve/edu/VEAutoAsgnm_MIX_SQL_Tibero.xml @@ -637,5 +637,113 @@ AND aa.user_id IN ($userIds$) )aaa ORDER BY aaa.instrSumChasi*10000/(aaa.asgnmTm+1) asc - + + + + diff --git a/src/main/resources/egovframework/sqlmap/ve/edu/VEEdu_MIX_SQL_Tibero.xml b/src/main/resources/egovframework/sqlmap/ve/edu/VEEdu_MIX_SQL_Tibero.xml index 70a61756..6bc56de4 100644 --- a/src/main/resources/egovframework/sqlmap/ve/edu/VEEdu_MIX_SQL_Tibero.xml +++ b/src/main/resources/egovframework/sqlmap/ve/edu/VEEdu_MIX_SQL_Tibero.xml @@ -2435,6 +2435,23 @@ + + +