This commit is contained in:
myname 2023-12-20 18:17:40 +09:00
commit 869570ff89
46 changed files with 2784 additions and 1877 deletions

View File

@ -24,6 +24,8 @@ import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.cop.bbs.service.BoardMasterVO; import kcc.let.cop.bbs.service.BoardMasterVO;
import kcc.let.cop.bbs.service.BoardVO; import kcc.let.cop.bbs.service.BoardVO;
import kcc.let.uat.uia.service.SsoLoginVO; import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.uss.notify.service.NotifyManageVO;
import kcc.let.utl.fcc.service.EgovCryptoUtil; import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.aplct.fndtnEnhanceTrn.service.FndtnEnhanceTrnService; import kcc.ve.aplct.fndtnEnhanceTrn.service.FndtnEnhanceTrnService;
import kcc.ve.cmm.VeConstants; import kcc.ve.cmm.VeConstants;
@ -79,7 +81,9 @@ public class MyPageController {
//온라인콘텐츠과정 관리 //온라인콘텐츠과정 관리
@Resource(name = "fndtnEnhanceTrnService") @Resource(name = "fndtnEnhanceTrnService")
private FndtnEnhanceTrnService fndtnEnhanceTrnService; private FndtnEnhanceTrnService fndtnEnhanceTrnService;
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
private static final Logger LOGGER = LoggerFactory.getLogger(MyPageController.class); private static final Logger LOGGER = LoggerFactory.getLogger(MyPageController.class);
@ -307,7 +311,77 @@ public class MyPageController {
return "web/my/myQnaMngList"; return "web/my/myQnaMngList";
} }
@RequestMapping(value = { "/web/my/myNotifyMngList.do" })
public String myNotifyMngList(
HttpServletRequest request
, @ModelAttribute("notifyManageVO") NotifyManageVO notifyManageVO
, ModelMap model
) throws Exception {
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); // 권한에 따른 로그인 정보 가져오기
//1.pageing step1
PaginationInfo paginationInfo = this.setNotiPagingStep1(notifyManageVO);
//2. pageing step2
notifyManageVO = this.setNotiPagingStep2(notifyManageVO, paginationInfo);
//
notifyManageVO.setToUserId(loginVO.getUniqId());
/*if(StringUtils.isNotEmpty(notifyManageVO.getSearchStatus())) {
String status = "";
if("Y".equals(notifyManageVO.getSearchStatus()))
status = "IS NOT NULL";
if("N".equals(notifyManageVO.getSearchStatus()))
status = "IS NULL";
notifyManageVO.setSearchQuery(" AND qn.QNA_ANSWER_CN "+status);
} */
List<NotifyManageVO> notifyManageVOList = notifyManageService.selectPagingList(notifyManageVO);
//3.pageing step3
paginationInfo = this.setNotiPagingStep3(notifyManageVOList, paginationInfo);
model.addAttribute("paginationInfo", paginationInfo);
// 사용자 이름 디코딩
// vEPrcsDetailVOList.stream().forEach(t->t.setMberNm(egovCryptoUtil.decrypt(t.getMberNm())));
//대상 리스트, 페이징 정보 전달
model.addAttribute("list", notifyManageVOList);
// return "web/my/myQnaMngList";
return "web/my/myNotifyMngList";
}
@RequestMapping(value = { "/web/my/myNotifyMngDetail.do"})
public String myNotifyMngDetail(
@ModelAttribute("notifyManageVO") NotifyManageVO notifyManageVO
, ModelMap model
, RedirectAttributes redirectAttributes
, HttpSession session
, HttpServletRequest request
) throws Exception {
//로그인 처리====================================
//로그인 정보 가져오기
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
if (loginVO == null || ssoLoginVO == null) {
return checkLoginUtil.getUserLoginPage(model, request); //로그인 정보가 없으면 로그인 페이지로 이동한다.
}
//로그인 처리====================================
//과정 조회
NotifyManageVO notifyManageInfo = notifyManageService.findById(notifyManageVO);
model.addAttribute("info", notifyManageInfo);
//세부과정 목록 조회
return "web/my/myNotifyMngDetail";
}
@RequestMapping(value = { "/web/my/myQnaMngDetail.do"}) @RequestMapping(value = { "/web/my/myQnaMngDetail.do"})
public String myQnaMngDetail( public String myQnaMngDetail(
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO @ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
@ -394,4 +468,40 @@ public class MyPageController {
return p_paginationInfo; return p_paginationInfo;
} }
private PaginationInfo setNotiPagingStep1(NotifyManageVO notifyManageVO) {
// pageing step1
PaginationInfo paginationInfo = new PaginationInfo();
paginationInfo.setCurrentPageNo(notifyManageVO.getPageIndex());
paginationInfo.setRecordCountPerPage(notifyManageVO.getPageUnit());
paginationInfo.setPageSize(notifyManageVO.getPageSize());
return paginationInfo;
}
private NotifyManageVO setNotiPagingStep2(NotifyManageVO notifyManageVO, PaginationInfo paginationInfo) {
// pageing step2
notifyManageVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
notifyManageVO.setLastIndex(paginationInfo.getLastRecordIndex());
notifyManageVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
if("".equals(notifyManageVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
notifyManageVO.setSearchSortCnd("prcs_ord");
notifyManageVO.setSearchSortOrd("desc");
}
return notifyManageVO;
}
private PaginationInfo setNotiPagingStep3(List<NotifyManageVO> vEPrcsDetailVOList, PaginationInfo paginationInfo) {
// pageing step3
int totCnt = 0;
if(vEPrcsDetailVOList.size() > 0) totCnt = vEPrcsDetailVOList.get(0).getTotCnt();
paginationInfo.setTotalRecordCount(totCnt);
return paginationInfo;
}
} }

View File

@ -3,6 +3,7 @@ package kcc.let.uss.notify.service;
import java.util.List; import java.util.List;
import egovframework.rte.fdl.cmmn.exception.FdlException; import egovframework.rte.fdl.cmmn.exception.FdlException;
import kcc.com.cmm.LoginVO;
/** /**
* *
@ -34,13 +35,31 @@ public interface NotifyManageService {
void mngDel(NotifyManageVO notifyManageVO); void mngDel(NotifyManageVO notifyManageVO);
void insertNotifyEduForAdmin(String userId, String eduAplctOrd, List<String> eduChasiOrdList, String lctrDivCd) throws FdlException; void insertNotifyEduForAdmin(LoginVO loginVO, String eduAplctOrd, List<String> eduChasiOrdList, String lctrDivCd) throws FdlException;
void insertNotifyClsrmForAdmin(String userId, String eduAplctOrd, String lctrDivCd) throws FdlException; void insertNotifyClsrmForAdmin(LoginVO loginVO, String eduAplctOrd, String lctrDivCd) throws FdlException;
List<NotifyManageVO> selectPagingList(NotifyManageVO notifyManageVO); List<NotifyManageVO> selectPagingList(NotifyManageVO notifyManageVO);
NotifyManageVO findById(NotifyManageVO notifyManageVO); NotifyManageVO findById(NotifyManageVO notifyManageVO);
void updateNotifyChkWhereCmmNotifyOrd(String cmmNotifyOrd); void updateNotifyChkWhereCmmNotifyOrd(String cmmNotifyOrd);
void insertNotifyAprvlCdForUser(LoginVO loginVO, String eduAplctOrd, String lctrDivCd, String aprvlCd) throws FdlException;
void insertNotifyAprvlCd5060ForUser(LoginVO loginVO, String prcsAplctPrdOrd, String lctrDivCd, List<String> eduAplctOrdList, String aprvlCd)
throws FdlException;
void insertNotifyAprvlCd5060CmpltForUser(LoginVO loginVO, String prcsAplctPrdOrd, String lctrDivCd, List<String> eduAplctOrdList, String aprvlCd)
throws FdlException;
void insertNotifyForInstr5060(LoginVO loginVO, String prcsAplctPrdOrd, String asgnmAprvlCd, String userId) throws FdlException;
void insertNotifyAsgnmCnfrmForInstr(LoginVO loginVO, String eduAplctOrd, String eduChasiOrd, String asgnmAprvlCd) throws FdlException;
int selectNotifyCnt(String uniqId);
} }

View File

@ -50,8 +50,8 @@ public class NotifyManageDAO extends EgovAbstractDAO {
update("VEANotifyMngDAO.mngDel", notifyManageVO); update("VEANotifyMngDAO.mngDel", notifyManageVO);
} }
public void insertNotifyEduForAdmin(NotifyManageVO notifyManageVO) { public void insertNotifyInfo(NotifyManageVO notifyManageVO) {
insert("VEANotifyDAO.insertNotifyEduForAdmin", notifyManageVO); insert("VEANotifyDAO.insertNotifyInfo", notifyManageVO);
} }
public List<NotifyManageVO> selectPagingList(NotifyManageVO notifyManageVO) { public List<NotifyManageVO> selectPagingList(NotifyManageVO notifyManageVO) {
@ -66,5 +66,21 @@ public class NotifyManageDAO extends EgovAbstractDAO {
update("VEANotifyDAO.updateNotifyChkWhereCmmNotifyOrd", cmmNotifyOrd); update("VEANotifyDAO.updateNotifyChkWhereCmmNotifyOrd", cmmNotifyOrd);
} }
public String findByUserIdFromVE_EDU_APLCT(String eduAplctOrd) {
return (String) select("VEANotifyDAO.findByUserIdFromVE_EDU_APLCT", eduAplctOrd);
}
public String findByLctrDivCdFromVePrcsAplctPrd(String prcsAplctPrdOrd) {
return (String) select("VEANotifyDAO.findByLctrDivCdFromVePrcsAplctPrd", prcsAplctPrdOrd);
}
public String selectNotifyInstr(NotifyManageVO notifyManageVO) {
return (String) select("VEANotifyDAO.selectNotifyInstr", notifyManageVO);
}
public int selectNotifyCnt(String uniqId) {
return (int) select("VEANotifyDAO.selectNotifyCnt", uniqId);
}
} }

View File

@ -4,11 +4,15 @@ import java.util.List;
import javax.annotation.Resource; import javax.annotation.Resource;
import org.apache.ibatis.javassist.compiler.ast.Symbol;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl; import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
import egovframework.rte.fdl.cmmn.exception.FdlException; import egovframework.rte.fdl.cmmn.exception.FdlException;
import egovframework.rte.fdl.idgnr.EgovIdGnrService; import egovframework.rte.fdl.idgnr.EgovIdGnrService;
import kcc.com.cmm.ComDefaultCodeVO;
import kcc.com.cmm.LoginVO;
import kcc.com.cmm.service.EgovCmmUseService;
import kcc.let.uss.notify.service.NotifyManageService; import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.uss.notify.service.NotifyManageVO; import kcc.let.uss.notify.service.NotifyManageVO;
@ -39,6 +43,10 @@ public class NotifyManageServiceImpl extends EgovAbstractServiceImpl implements
//교육과정순번 //교육과정순번
@Resource(name="veaCmmNotifyMngOrdGnrService") @Resource(name="veaCmmNotifyMngOrdGnrService")
private EgovIdGnrService veaCmmNotifyOrdGnrService; private EgovIdGnrService veaCmmNotifyOrdGnrService;
@Resource(name = "EgovCmmUseService")
private EgovCmmUseService egovCmmUseService;
@Override @Override
public List<NotifyManageVO> selectMngPagingList(NotifyManageVO notifyManageVO) { public List<NotifyManageVO> selectMngPagingList(NotifyManageVO notifyManageVO) {
@ -75,7 +83,7 @@ public class NotifyManageServiceImpl extends EgovAbstractServiceImpl implements
* @청소년 찾교 사용자 등록 -> 관리자 알림 * @청소년 찾교 사용자 등록 -> 관리자 알림
*/ */
@Override @Override
public void insertNotifyEduForAdmin(String userId, String eduAplctOrd, List<String> eduChasiOrdList, String lctrDivCd) throws FdlException { public void insertNotifyEduForAdmin(LoginVO loginVO, String eduAplctOrd, List<String> eduChasiOrdList, String lctrDivCd) throws FdlException {
// 담당자 ID 가져오기 // 담당자 ID 가져오기
@ -91,23 +99,22 @@ public class NotifyManageServiceImpl extends EgovAbstractServiceImpl implements
NotifyManageVO notifyManageVO = new NotifyManageVO(); NotifyManageVO notifyManageVO = new NotifyManageVO();
notifyManageVO.setCmmNotifyOrd(veaCmmNotifyOrdGnrService.getNextStringId()); notifyManageVO.setCmmNotifyOrd(veaCmmNotifyOrdGnrService.getNextStringId());
notifyManageVO.setLctrDivCd(lctrDivCd); notifyManageVO.setLctrDivCd(lctrDivCd);
notifyManageVO.setNotifyCn("["+userId+"]["+eduChasiOrdList.size()+"개 차시] 교육신청을 하였습니다."); notifyManageVO.setNotifyCn("["+loginVO.getId()+"]["+eduChasiOrdList.size()+"개 차시] 교육신청을 하였습니다.");
String notifyPath = ""; String notifyPath = "";
if("10".equals(lctrDivCd))
if("10".equals(lctrDivCd)) // 청소년
notifyPath = "/kccadr/oprtn/tngrVisitEdu/eduAplctMngDetail.do"; notifyPath = "/kccadr/oprtn/tngrVisitEdu/eduAplctMngDetail.do";
if("20".equals(lctrDivCd)) if("20".equals(lctrDivCd)) // 찾교
notifyPath = "/kccadr/oprtn/adultVisitEdu/eduAplctMngDetail.do"; notifyPath = "/kccadr/oprtn/adultVisitEdu/eduAplctMngDetail.do";
if("30".equals(lctrDivCd))
notifyPath = "/kccadr/oprtn/cpyrgExprnClsrm/oprtnAplctMngDetail.do";
notifyManageVO.setNotifyPath(notifyPath); notifyManageVO.setNotifyPath(notifyPath);
notifyManageVO.setNotifyChk("N"); notifyManageVO.setNotifyChk("N");
notifyManageVO.setEduAplctOrd(eduAplctOrd); notifyManageVO.setEduAplctOrd(eduAplctOrd);
notifyManageVO.setEduChasiOrd(eduChasiOrdList.toString()); notifyManageVO.setEduChasiOrd(eduChasiOrdList.toString());
notifyManageVO.setFrstRegisterId(userId); notifyManageVO.setFrstRegisterId(loginVO.getUniqId());
for(NotifyManageVO vo : notifyManageListVO) { for(NotifyManageVO vo : notifyManageListVO) {
notifyManageVO.setToUserId(vo.getMngUserId()); notifyManageVO.setToUserId(vo.getMngUserId());
notifyManageDAO.insertNotifyEduForAdmin(notifyManageVO); notifyManageDAO.insertNotifyInfo(notifyManageVO);
} }
// } // }
@ -117,7 +124,7 @@ public class NotifyManageServiceImpl extends EgovAbstractServiceImpl implements
* @체험교실 사용자 등록 -> 관리자 알림 * @체험교실 사용자 등록 -> 관리자 알림
*/ */
@Override @Override
public void insertNotifyClsrmForAdmin(String userId, String eduAplctOrd, String lctrDivCd) throws FdlException { public void insertNotifyClsrmForAdmin(LoginVO loginVO, String eduAplctOrd, String lctrDivCd) throws FdlException {
// 담당자 ID 가져오기 // 담당자 ID 가져오기
@ -132,20 +139,236 @@ public class NotifyManageServiceImpl extends EgovAbstractServiceImpl implements
NotifyManageVO notifyManageVO = new NotifyManageVO(); NotifyManageVO notifyManageVO = new NotifyManageVO();
notifyManageVO.setCmmNotifyOrd(veaCmmNotifyOrdGnrService.getNextStringId()); notifyManageVO.setCmmNotifyOrd(veaCmmNotifyOrdGnrService.getNextStringId());
notifyManageVO.setLctrDivCd(lctrDivCd); notifyManageVO.setLctrDivCd(lctrDivCd);
notifyManageVO.setNotifyCn("["+userId+"] 교육신청을 하였습니다."); notifyManageVO.setNotifyCn("["+loginVO.getId()+"] 교육신청을 하였습니다.");
String notifyPath = ""; String notifyPath = "";
notifyPath = "/kccadr/oprtn/cpyrgExprnClsrm/oprtnAplctMngDetail.do"; notifyPath = "/kccadr/oprtn/cpyrgExprnClsrm/oprtnAplctMngDetail.do";
notifyManageVO.setNotifyPath(notifyPath); notifyManageVO.setNotifyPath(notifyPath);
notifyManageVO.setNotifyChk("N"); notifyManageVO.setNotifyChk("N");
notifyManageVO.setEduAplctOrd(eduAplctOrd); notifyManageVO.setEduAplctOrd(eduAplctOrd);
notifyManageVO.setFrstRegisterId(userId); notifyManageVO.setFrstRegisterId(loginVO.getUniqId());
for(NotifyManageVO vo : notifyManageListVO) { for(NotifyManageVO vo : notifyManageListVO) {
notifyManageVO.setToUserId(vo.getMngUserId()); notifyManageVO.setToUserId(vo.getMngUserId());
notifyManageDAO.insertNotifyEduForAdmin(notifyManageVO); notifyManageDAO.insertNotifyInfo(notifyManageVO);
} }
} }
// 관리자가 사용자 신청 값을 수정하면 알림 등록
@Override
public void insertNotifyAprvlCdForUser(LoginVO loginVO, String eduAplctOrd, String lctrDivCd, String aprvlCd) throws FdlException {
// 상태 변경된 교육의 USERID 가져오기
NotifyManageVO notifyManageVO = new NotifyManageVO();
// 교육 담당자 조회 - 노티 받을 대상
notifyManageVO.setToUserId(notifyManageDAO.findByUserIdFromVE_EDU_APLCT(eduAplctOrd));
// pk
notifyManageVO.setCmmNotifyOrd(veaCmmNotifyOrdGnrService.getNextStringId());
notifyManageVO.setLctrDivCd(lctrDivCd);
// 청소년 , 성인 , 기소 , 기반 공통코드로 test 추출
String lctrDivNm = this.getCodeNm(lctrDivCd, "VE0011");
// 상태값 text
String aprvlNm = this.getCodeNm(aprvlCd, "VE0003");
notifyManageVO.setNotifyCn("["+lctrDivNm+"]교육 상태값이 "+aprvlNm+"(으)로 변경되었습니다.");
String notifyPath = "";
if( "10".equals(lctrDivCd) ) {
notifyPath = "/web/ve/aplct/tngrVisitEdu/eduAplct/eduAplctDetail.do";
}
else if( "20".equals(lctrDivCd) ) {
notifyPath = "/web/ve/aplct/adultVisitEdu/eduAplct/eduAplctDetail.do";
}
else if( "30".equals(lctrDivCd) ) {
notifyPath = "/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/exprnClsrmAplctDetail.do";
}
notifyManageVO.setNotifyPath(notifyPath);
notifyManageVO.setNotifyChk("N");
notifyManageVO.setEduAplctOrd(eduAplctOrd);
notifyManageVO.setFrstRegisterId(loginVO.getUniqId());
notifyManageDAO.insertNotifyInfo(notifyManageVO);
}
// 관리자가 사용자 신청 값을 수정하면 알림 등록
@Override
public void insertNotifyAprvlCd5060ForUser(LoginVO loginVO, String prcsAplctPrdOrd, String lctrDivCd, List<String> eduAplctOrdList, String aprvlCd) throws FdlException {
// 상태 변경된 교육의 USERID 가져오기
NotifyManageVO notifyManageVO = new NotifyManageVO();
// 교육 담당자 조회 - 노티 받을 대상
// pk
notifyManageVO.setLctrDivCd(lctrDivCd);
// 청소년 , 성인 , 기소 , 기반 공통코드로 test 추출
String lctrDivNm = this.getCodeNm(lctrDivCd, "VE0011");
// 상태값 text
String aprvlNm = this.getCodeNm(aprvlCd, "VE0003");
notifyManageVO.setNotifyCn("["+lctrDivNm+"]교육 상태값이 "+aprvlNm+"(으)로 변경되었습니다.");
String notifyPath = "";
if( "50".equals(lctrDivCd) ) {
notifyPath = "/web/ve/aplct/fndtnEnhanceTrn/eduAplctDetail.do";
}
else if( "60".equals(lctrDivCd) ) {
notifyPath = "/web/ve/aplct/sspnIdtmt/eduAplctDetail.do";
}
notifyManageVO.setNotifyPath(notifyPath);
notifyManageVO.setNotifyChk("N");
notifyManageVO.setEduAplctOrd(prcsAplctPrdOrd); //50, 60은 pk값이 다름
notifyManageVO.setFrstRegisterId(loginVO.getUniqId());
for(String eduAplctOrd : eduAplctOrdList) {
notifyManageVO.setCmmNotifyOrd(veaCmmNotifyOrdGnrService.getNextStringId());
notifyManageVO.setToUserId(notifyManageDAO.findByUserIdFromVE_EDU_APLCT(eduAplctOrd));
notifyManageDAO.insertNotifyInfo(notifyManageVO);
}
}
@Override
public void insertNotifyAprvlCd5060CmpltForUser(LoginVO loginVO, String prcsAplctPrdOrd, String lctrDivCd, List<String> eduAplctOrdList, String aprvlCd) throws FdlException {
// 상태 변경된 교육의 USERID 가져오기
NotifyManageVO notifyManageVO = new NotifyManageVO();
// 교육 담당자 조회 - 노티 받을 대상
// pk
notifyManageVO.setLctrDivCd(lctrDivCd);
// 청소년 , 성인 , 기소 , 기반 공통코드로 test 추출
String lctrDivNm = this.getCodeNm(lctrDivCd, "VE0011");
// 상태값 text
String aprvlNm = this.getCodeNm(aprvlCd, "VEA003");
notifyManageVO.setNotifyCn("["+lctrDivNm+"]교육 상태값이 "+aprvlNm+"(으)로 변경되었습니다.");
String notifyPath = "";
if( "50".equals(lctrDivCd) ) {
notifyPath = "/web/ve/aplct/fndtnEnhanceTrn/eduAplctDetail.do";
}
else if( "60".equals(lctrDivCd) ) {
notifyPath = "/web/ve/aplct/sspnIdtmt/eduAplctDetail.do";
}
notifyManageVO.setNotifyPath(notifyPath);
notifyManageVO.setNotifyChk("N");
notifyManageVO.setEduAplctOrd(prcsAplctPrdOrd); //50, 60은 pk값이 다름
notifyManageVO.setFrstRegisterId(loginVO.getUniqId());
for(String eduAplctOrd : eduAplctOrdList) {
notifyManageVO.setCmmNotifyOrd(veaCmmNotifyOrdGnrService.getNextStringId());
notifyManageVO.setToUserId(notifyManageDAO.findByUserIdFromVE_EDU_APLCT(eduAplctOrd));
notifyManageDAO.insertNotifyInfo(notifyManageVO);
}
}
@Override
public void insertNotifyForInstr5060(LoginVO loginVO, String prcsAplctPrdOrd, String asgnmAprvlCd, String userId) throws FdlException {
// 상태 변경된 교육의 USERID 가져오기
NotifyManageVO notifyManageVO = new NotifyManageVO();
// 교육 담당자 조회 - 노티 받을 대상
// pk
String lctrDivCd = notifyManageDAO.findByLctrDivCdFromVePrcsAplctPrd(prcsAplctPrdOrd);
notifyManageVO.setLctrDivCd(lctrDivCd);
// 청소년 , 성인 , 기소 , 기반 공통코드로 test 추출
String lctrDivNm = this.getCodeNm(lctrDivCd, "VE0011");
// 상태값 text
String aprvlNm = this.getCodeNm(asgnmAprvlCd, "VEA011");
notifyManageVO.setNotifyCn("["+lctrDivNm+"]강사 신청 상태가 "+aprvlNm+"(으)로 변경되었습니다.");
String notifyPath = "";
if( "50".equals(lctrDivCd) ) {
notifyPath = "/web/ve/instr/fndtnVisitEdu/asgnmInfo/instrAsgnmDetail.do";
}
else if( "60".equals(lctrDivCd) ) {
notifyPath = "/web/ve/instr/sspnIdtmt/asgnmInfo/instrAsgnmDetail.do";
}
notifyManageVO.setNotifyPath(notifyPath);
notifyManageVO.setNotifyChk("N");
notifyManageVO.setEduAplctOrd(prcsAplctPrdOrd);
notifyManageVO.setFrstRegisterId(loginVO.getUniqId());
notifyManageVO.setCmmNotifyOrd(veaCmmNotifyOrdGnrService.getNextStringId());
notifyManageVO.setToUserId(userId);
notifyManageDAO.insertNotifyInfo(notifyManageVO);
}
/*
* @
*/
@Override
public void insertNotifyAsgnmCnfrmForInstr(LoginVO loginVO, String eduAplctOrd, String eduChasiOrd, String asgnmAprvlCd) throws FdlException {
NotifyManageVO notifyManageVO = new NotifyManageVO();
notifyManageVO.setEduAplctOrd(eduAplctOrd);
notifyManageVO.setEduChasiOrd(eduChasiOrd);
String toUserId = notifyManageDAO.selectNotifyInstr(notifyManageVO);
// 상태값 text
String asgnmAprvlNm = this.getCodeNm(asgnmAprvlCd, "VE0019");
notifyManageVO.setNotifyCn("강사 상태가 "+asgnmAprvlNm+"(으)로 변경되었습니다.");
// 청소년 성인구분
String lctrDivCd = notifyManageDAO.findByLctrDivCdFromVePrcsAplctPrd(eduAplctOrd);
notifyManageVO.setLctrDivCd(lctrDivCd);
if("10".equals(lctrDivCd))
notifyManageVO.setNotifyPath("/web/ve/instr/tngrVisitEdu/asgnmInfo/instrAsgnmRqstDetail.do");
else if("20".equals(lctrDivCd))
notifyManageVO.setNotifyPath("/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmRqstDetail.do");
notifyManageVO.setNotifyChk("N");
notifyManageVO.setFrstRegisterId(loginVO.getUniqId());
notifyManageVO.setCmmNotifyOrd(veaCmmNotifyOrdGnrService.getNextStringId());
notifyManageVO.setToUserId(toUserId);
notifyManageDAO.insertNotifyInfo(notifyManageVO);
}
private String getCodeNm(String code, String codeId) {
ComDefaultCodeVO codeParam = new ComDefaultCodeVO();
codeParam.setCodeId(codeId);
codeParam.setCode(code);
return egovCmmUseService.selectCmmCodeDetailCodeValueOnlyName(codeParam);
}
@Override @Override
public List<NotifyManageVO> selectPagingList(NotifyManageVO notifyManageVO) { public List<NotifyManageVO> selectPagingList(NotifyManageVO notifyManageVO) {
@ -157,4 +380,8 @@ public class NotifyManageServiceImpl extends EgovAbstractServiceImpl implements
notifyManageDAO.updateNotifyChkWhereCmmNotifyOrd(cmmNotifyOrd); notifyManageDAO.updateNotifyChkWhereCmmNotifyOrd(cmmNotifyOrd);
} }
@Override
public int selectNotifyCnt(String uniqId) {
return notifyManageDAO.selectNotifyCnt(uniqId);
}
} }

View File

@ -164,7 +164,7 @@ public class EduAplctAdultServiceImpl implements EduAplctAdultService {
} }
// 성인 교육 신청 성공시 노티 insert // 성인 교육 신청 성공시 노티 insert
notifyManageService.insertNotifyEduForAdmin(loginVO.getMembId(), eduAplctOrd, eduChasiOrdList, vEEduAplctVO.getLctrDivCd()); notifyManageService.insertNotifyEduForAdmin(loginVO, eduAplctOrd, eduChasiOrdList, vEEduAplctVO.getLctrDivCd());
return true; return true;

View File

@ -6,6 +6,7 @@ import java.util.Map;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
@ -27,6 +28,7 @@ import kcc.com.cmm.service.impl.CmmUseDAO;
import kcc.com.utl.user.service.CheckFileUtil; import kcc.com.utl.user.service.CheckFileUtil;
import kcc.com.utl.user.service.CheckLoginUtil; import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO; import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil; import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.aplct.adultVisitEdu.eduAplct.service.EduAplctAdultService; import kcc.ve.aplct.adultVisitEdu.eduAplct.service.EduAplctAdultService;
import kcc.ve.cmm.VeConstants; import kcc.ve.cmm.VeConstants;
@ -105,10 +107,10 @@ public class EduAplctAdultController {
//교육과정신청 //교육과정신청
@Resource(name = "vEPrcsMIXService") @Resource(name = "vEPrcsMIXService")
private VEPrcsMIXService vEPrcsMIXService; private VEPrcsMIXService vEPrcsMIXService;
// 알림 서비스
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
//교육과정순번 //교육과정순번
@Resource(name="prcsGnrService") @Resource(name="prcsGnrService")
@ -258,6 +260,13 @@ public class EduAplctAdultController {
*/ */
@RequestMapping("eduAplctDetail.do") @RequestMapping("eduAplctDetail.do")
public String eduAplctDetail( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model , HttpServletRequest request ) throws Exception { public String eduAplctDetail( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model , HttpServletRequest request ) throws Exception {
// 확인 체크
if(StringUtils.isNotEmpty(vEEduAplctVO.getCmmNotifyOrd()))
{
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEEduAplctVO.getCmmNotifyOrd());
}
//기본데이터 불러오기 //기본데이터 불러오기
vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO); vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);

View File

@ -140,7 +140,7 @@ public class ExprnClsrmAplctServiceImpl implements ExprnClsrmAplctService {
// 저작권 등록 // 저작권 등록
veEduOprtnService.insert(oprtn); veEduOprtnService.insert(oprtn);
// 성인 교육 신청 성공시 노티 insert // 성인 교육 신청 성공시 노티 insert
notifyManageService.insertNotifyClsrmForAdmin(loginVO.getMembId(), eduAplctOrd, vEEduAplctVO.getLctrDivCd()); notifyManageService.insertNotifyClsrmForAdmin(loginVO, eduAplctOrd, vEEduAplctVO.getLctrDivCd());
return true; return true;
} }

View File

@ -9,6 +9,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSession;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
@ -29,6 +30,7 @@ import kcc.com.cmm.util.DateUtil;
import kcc.com.utl.user.service.CheckFileUtil; import kcc.com.utl.user.service.CheckFileUtil;
import kcc.com.utl.user.service.CheckLoginUtil; import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO; import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil; import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ExprnClsrmAplctService; import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ExprnClsrmAplctService;
import kcc.ve.cmm.VeConstants; import kcc.ve.cmm.VeConstants;
@ -135,6 +137,9 @@ public class ExprnClsrmAplctController {
@Resource(name = "vEPrcsAplctPrdService") @Resource(name = "vEPrcsAplctPrdService")
private VEPrcsAplctPrdService vEPrcsAplctPrdService; private VEPrcsAplctPrdService vEPrcsAplctPrdService;
// 알림 service
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
/** /**
* 체험교실신청 목록 화면 * 체험교실신청 목록 화면
*/ */
@ -350,6 +355,11 @@ public class ExprnClsrmAplctController {
@RequestMapping("exprnClsrmAplctDetail.do") @RequestMapping("exprnClsrmAplctDetail.do")
public String exprnClsrmAplctDetail( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model , HttpServletRequest request ) throws Exception { public String exprnClsrmAplctDetail( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model , HttpServletRequest request ) throws Exception {
// 확인 체크
if(StringUtils.isNotEmpty(vEEduAplctVO.getCmmNotifyOrd()))
{
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEEduAplctVO.getCmmNotifyOrd());
}
//기본데이터 불러오기 //기본데이터 불러오기
vEEduAplctVO = vEEduAplctService.selectOprtnDetail(vEEduAplctVO); vEEduAplctVO = vEEduAplctService.selectOprtnDetail(vEEduAplctVO);

View File

@ -29,6 +29,7 @@ import kcc.com.utl.user.service.CheckFileUtil;
import kcc.com.utl.user.service.CheckLoginUtil; import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.com.utl.user.service.QustnrCommonUtil; import kcc.com.utl.user.service.QustnrCommonUtil;
import kcc.let.uat.uia.service.SsoLoginVO; import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.uss.olp.qri.service.EgovQustnrRespondInfoService; import kcc.let.uss.olp.qri.service.EgovQustnrRespondInfoService;
import kcc.let.uss.olp.qri.service.QustnrRespondInfoVO; import kcc.let.uss.olp.qri.service.QustnrRespondInfoVO;
import kcc.let.utl.fcc.service.EgovCryptoUtil; import kcc.let.utl.fcc.service.EgovCryptoUtil;
@ -118,8 +119,9 @@ public class FndtnEnhanceTrnController {
//과정차시 관리 //과정차시 관리
@Resource(name = "vEPrcsAplctPrdService") @Resource(name = "vEPrcsAplctPrdService")
private VEPrcsAplctPrdService vEPrcsAplctPrdService; private VEPrcsAplctPrdService vEPrcsAplctPrdService;
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
//교육과정순번 //교육과정순번
@Resource(name="prcsGnrService") @Resource(name="prcsGnrService")
@ -454,6 +456,18 @@ public class FndtnEnhanceTrnController {
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO @ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
, ModelMap model , ModelMap model
, HttpServletRequest request ) throws Exception { , HttpServletRequest request ) throws Exception {
// 확인 체크
if(StringUtils.isNotEmpty(vEPrcsDetailVO.getCmmNotifyOrd()))
{
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEPrcsDetailVO.getCmmNotifyOrd());
}
//로그인 처리==================================== //로그인 처리====================================
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기 LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기 SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기

View File

@ -274,7 +274,7 @@ public class EduAplctTngrServiceImpl implements EduAplctTngrService {
} }
// 성인 교육 신청 성공시 노티 insert // 성인 교육 신청 성공시 노티 insert
notifyManageService.insertNotifyEduForAdmin(loginVO.getMembId(), eduAplctOrd, eduChasiOrdList, vEEduAplctVO.getLctrDivCd()); notifyManageService.insertNotifyEduForAdmin(loginVO, eduAplctOrd, eduChasiOrdList, vEEduAplctVO.getLctrDivCd());
return true; return true;
} }

View File

@ -7,6 +7,7 @@ import java.util.stream.Collectors;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
@ -24,6 +25,7 @@ import kcc.com.cmm.service.FileVO;
import kcc.com.utl.user.service.CheckFileUtil; import kcc.com.utl.user.service.CheckFileUtil;
import kcc.com.utl.user.service.CheckLoginUtil; import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO; import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil; import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngMixService; import kcc.ve.adv.tngr.stngInfo.service.VEAStngMixService;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngService; import kcc.ve.adv.tngr.stngInfo.service.VEAStngService;
@ -145,6 +147,8 @@ public class EduAplctTngrController {
@Resource(name = "vEInstrMixService") @Resource(name = "vEInstrMixService")
private VEInstrMixService vEInstrMixService; private VEInstrMixService vEInstrMixService;
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
/* /*
* START * START
@ -681,7 +685,13 @@ public class EduAplctTngrController {
*/ */
@RequestMapping("eduAplctDetail.do") @RequestMapping("eduAplctDetail.do")
public String eduAplctDetail( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model , HttpServletRequest request ) throws Exception { public String eduAplctDetail( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model , HttpServletRequest request ) throws Exception {
// 확인 체크
if(StringUtils.isNotEmpty(vEEduAplctVO.getCmmNotifyOrd()))
{
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEEduAplctVO.getCmmNotifyOrd());
}
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기 LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기 SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기

View File

@ -6,6 +6,7 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSession;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap; import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.ModelAttribute;
@ -16,6 +17,7 @@ import kcc.com.cmm.EgovMessageSource;
import kcc.com.cmm.LoginVO; import kcc.com.cmm.LoginVO;
import kcc.com.utl.user.service.CheckLoginUtil; import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO; import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil; import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.cmm.VeConstants; import kcc.ve.cmm.VeConstants;
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAsgnmMIXService; import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAsgnmMIXService;
@ -64,6 +66,9 @@ public class VEFndtnAsgnmController {
@Resource(name = "vEPrcsMIXService") @Resource(name = "vEPrcsMIXService")
private VEPrcsMIXService vEPrcsMIXService; private VEPrcsMIXService vEPrcsMIXService;
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
// 기반강화 강의목록(확정) // 기반강화 강의목록(확정)
@RequestMapping("/web/ve/instr/fndtnVisitEdu/asgnmInfo/instrAsgnmList.do") @RequestMapping("/web/ve/instr/fndtnVisitEdu/asgnmInfo/instrAsgnmList.do")
public String instrAsgnmList( public String instrAsgnmList(
@ -135,6 +140,12 @@ public class VEFndtnAsgnmController {
, ModelMap model , ModelMap model
, HttpServletRequest request , HttpServletRequest request
) throws Exception { ) throws Exception {
// 확인 체크
if(StringUtils.isNotEmpty(vEPrcsDetailVO.getCmmNotifyOrd()))
{
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEPrcsDetailVO.getCmmNotifyOrd());
}
//로그인 처리==================================== //로그인 처리====================================
//로그인 정보 가져오기 //로그인 정보 가져오기

View File

@ -6,6 +6,7 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSession;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap; import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.ModelAttribute;
@ -16,6 +17,7 @@ import kcc.com.cmm.EgovMessageSource;
import kcc.com.cmm.LoginVO; import kcc.com.cmm.LoginVO;
import kcc.com.utl.user.service.CheckLoginUtil; import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO; import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil; import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.cmm.VeConstants; import kcc.ve.cmm.VeConstants;
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAsgnmMIXService; import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAsgnmMIXService;
@ -64,6 +66,10 @@ public class VESspnIdtmtAsgnmController {
@Resource(name = "vEPrcsMIXService") @Resource(name = "vEPrcsMIXService")
private VEPrcsMIXService vEPrcsMIXService; private VEPrcsMIXService vEPrcsMIXService;
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
// 기반강화 강의목록(확정) // 기반강화 강의목록(확정)
@RequestMapping("/web/ve/instr/sspnIdtmt/asgnmInfo/instrAsgnmList.do") @RequestMapping("/web/ve/instr/sspnIdtmt/asgnmInfo/instrAsgnmList.do")
public String instrAsgnmList( public String instrAsgnmList(
@ -138,6 +144,12 @@ public class VESspnIdtmtAsgnmController {
//로그인 처리==================================== //로그인 처리====================================
//로그인 정보 가져오기 //로그인 정보 가져오기
// 확인 체크
if(StringUtils.isNotEmpty(vEPrcsDetailVO.getCmmNotifyOrd()))
{
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEPrcsDetailVO.getCmmNotifyOrd());
}
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기 LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기 SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기

View File

@ -159,6 +159,8 @@ public class VEInstrAsgnmVO extends ComDefaultVO implements Serializable {
private String avgScore; //평균점수 private String avgScore; //평균점수
private String cmmNotifyOrd; //평균점수
public String getMemoCn() { public String getMemoCn() {
@ -791,5 +793,11 @@ public class VEInstrAsgnmVO extends ComDefaultVO implements Serializable {
public void setAvgScore(String avgScore) { public void setAvgScore(String avgScore) {
this.avgScore = avgScore; this.avgScore = avgScore;
} }
public String getCmmNotifyOrd() {
return cmmNotifyOrd;
}
public void setCmmNotifyOrd(String cmmNotifyOrd) {
this.cmmNotifyOrd = cmmNotifyOrd;
}
} }

View File

@ -21,6 +21,7 @@ import kcc.com.cmm.LoginVO;
import kcc.com.cmm.util.IpUtil; import kcc.com.cmm.util.IpUtil;
import kcc.com.utl.user.service.CheckLoginUtil; import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO; import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil; import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.let.utl.fcc.service.EgovCryptoUtil4VO; import kcc.let.utl.fcc.service.EgovCryptoUtil4VO;
import kcc.let.utl.fcc.service.VisitEduTransUtil; import kcc.let.utl.fcc.service.VisitEduTransUtil;
@ -91,7 +92,11 @@ public class VEAsgnmController {
@Resource(name = "vEEduAplctService") @Resource(name = "vEEduAplctService")
private VEEduAplctService vEEduAplctService; private VEEduAplctService vEEduAplctService;
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
//청소년강사 강의 요청 목록 //청소년강사 강의 요청 목록
@RequestMapping("/web/ve/instr/tngrVisitEdu/asgnmInfo/instrAsgnmRqstList.do") @RequestMapping("/web/ve/instr/tngrVisitEdu/asgnmInfo/instrAsgnmRqstList.do")
public String instrAsgnmRqstList( public String instrAsgnmRqstList(
@ -324,6 +329,14 @@ public class VEAsgnmController {
try{ try{
System.out.println("adultVisitEdu-endInfo-instrEduEndDetail"); System.out.println("adultVisitEdu-endInfo-instrEduEndDetail");
// 확인 체크
if(StringUtils.isNotEmpty(vEInstrAsgnmVO.getCmmNotifyOrd()))
{
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEInstrAsgnmVO.getCmmNotifyOrd());
}
//로그인 처리==================================== //로그인 처리====================================
//로그인 정보 가져오기 //로그인 정보 가져오기
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기 LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
@ -445,6 +458,13 @@ public class VEAsgnmController {
, HttpServletRequest request , HttpServletRequest request
) throws Exception { ) throws Exception {
// 확인 체크
if(StringUtils.isNotEmpty(vEInstrAsgnmVO.getCmmNotifyOrd()))
{
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEInstrAsgnmVO.getCmmNotifyOrd());
}
try{ try{
System.out.println("tngrVisitEdu-asgnmInfo-instrAsgnmDetail"); System.out.println("tngrVisitEdu-asgnmInfo-instrAsgnmDetail");

View File

@ -199,6 +199,7 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
private String qestnrId30; private String qestnrId30;
private String eduPrcsOrd; private String eduPrcsOrd;
private String cmmNotifyOrd; //
@ -968,6 +969,12 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
public void setTrafficFee(String trafficFee) { public void setTrafficFee(String trafficFee) {
this.trafficFee = trafficFee; this.trafficFee = trafficFee;
} }
public String getCmmNotifyOrd() {
return cmmNotifyOrd;
}
public void setCmmNotifyOrd(String cmmNotifyOrd) {
this.cmmNotifyOrd = cmmNotifyOrd;
}
} }

View File

@ -218,7 +218,10 @@ public class EduAplctMngAdultController {
public String eduAplctMngDetail( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model ,HttpSession session, HttpServletRequest request ) throws Exception { public String eduAplctMngDetail( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model ,HttpSession session, HttpServletRequest request ) throws Exception {
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEEduAplctVO.getCmmNotifyOrd()); if(StringUtils.isNotEmpty(vEEduAplctVO.getCmmNotifyOrd()))
{
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEEduAplctVO.getCmmNotifyOrd());
}
LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;

View File

@ -1,5 +1,6 @@
package kcc.ve.oprtn.cndtnSspnIdtmt.web; package kcc.ve.oprtn.cndtnSspnIdtmt.web;
import java.util.ArrayList;
import java.util.Comparator; import java.util.Comparator;
import java.util.List; import java.util.List;
@ -28,6 +29,7 @@ import kcc.com.cmm.service.impl.CmmUseDAO;
import kcc.com.cmm.util.StringUtil; import kcc.com.cmm.util.StringUtil;
import kcc.com.utl.user.service.CheckLoginUtil; import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO; import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil; import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.aplct.sspnIdtmt.service.SspnIdtmtService; import kcc.ve.aplct.sspnIdtmt.service.SspnIdtmtService;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO; import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
@ -129,6 +131,10 @@ public class CndtnPrcsInfoMngController {
//과정신청기간순번 //과정신청기간순번
@Resource(name="prcsAplctPrdGnrService") @Resource(name="prcsAplctPrdGnrService")
private EgovIdGnrService prcsAplctPrdGnrService; private EgovIdGnrService prcsAplctPrdGnrService;
//알림 서비스
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
/** /**
* 기반강화연수 과정 관리 목록 화면 * 기반강화연수 과정 관리 목록 화면
@ -900,8 +906,25 @@ public class CndtnPrcsInfoMngController {
vEEduAplctVO.setLastUpdusrId(loginVO.getUniqId()); vEEduAplctVO.setLastUpdusrId(loginVO.getUniqId());
vEEduMIXService.updateAplctStateCd(vEEduAplctVO); vEEduMIXService.updateAplctStateCd(vEEduAplctVO);
// 기소유예 대상자 상태값 udpate // 기소유예 대상자 상태값 udpate
vEEduMIXService.updateEduStateCd(vEEduAplctVO); vEEduMIXService.updateEduStateCd(vEEduAplctVO);
// 알림 영역
List<String> eduAplctOrdList = new ArrayList<String>();
eduAplctOrdList.add(vEEduAplctVO.getEduAplctOrd());
vEEduAplctVO.setEduAplctOrdList(eduAplctOrdList);
notifyManageService.insertNotifyAprvlCd5060CmpltForUser(
loginVO
, vEEduAplctVO.getPrcsAplctPrdOrd()
, vEEduAplctVO.getLctrDivCd()
, vEEduAplctVO.getEduAplctOrdList()
, vEEduAplctVO.getAplctStateCd()
);
modelAndView.addObject("result", "success"); modelAndView.addObject("result", "success");
} catch (Exception e) { } catch (Exception e) {
modelAndView.addObject("result", ""); modelAndView.addObject("result", "");
@ -946,8 +969,6 @@ public class CndtnPrcsInfoMngController {
, HttpServletRequest request , HttpServletRequest request
) throws Exception { ) throws Exception {
System.out.println(vEPrcsDetailVO.getPrcsAplctPrdOrd() +"!!!");
ModelAndView modelAndView = new ModelAndView(); ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView"); modelAndView.setViewName("jsonView");
//로그인 처리==================================== //로그인 처리====================================
@ -965,6 +986,25 @@ public class CndtnPrcsInfoMngController {
// 교육 신청 테이블에 신청자 상태값 update // 교육 신청 테이블에 신청자 상태값 update
vEAPrcsAplctPrdInstrAsgnmService.udpateAprvlCdEduAplct(vEPrcsDetailVO); vEAPrcsAplctPrdInstrAsgnmService.udpateAprvlCdEduAplct(vEPrcsDetailVO);
/*var dataToSend = {
"eduAplctOrdList": selectedEduAplctOrd,
"aprvlCd": p_aprvlCd,
"prcsAplctPrdOrd": p_prcsAplctPrdOrd,
"lctrDivCd" : $("#lctrDivCd").val()
};
*/
notifyManageService.insertNotifyAprvlCd5060ForUser(
loginVO
, vEPrcsDetailVO.getPrcsAplctPrdOrd()
, vEPrcsDetailVO.getLctrDivCd()
, vEPrcsDetailVO.getEduAplctOrdList()
, vEPrcsDetailVO.getAprvlCd()
);
// 승인 - 승인일 경우 vea_aplct_detail_info TB에 넣어줘야함 // 승인 - 승인일 경우 vea_aplct_detail_info TB에 넣어줘야함
if("20".equals(vEPrcsDetailVO.getAprvlCd())) { if("20".equals(vEPrcsDetailVO.getAprvlCd())) {
this.aprvlCd20(vEPrcsDetailVO,loginVO.getUniqId()); this.aprvlCd20(vEPrcsDetailVO,loginVO.getUniqId());
@ -1045,9 +1085,20 @@ public class CndtnPrcsInfoMngController {
vEAPrcsAplctPrdInstrAsgnmService.updateAplctStateCdListAjax(vEPrcsDetailVO); vEAPrcsAplctPrdInstrAsgnmService.updateAplctStateCdListAjax(vEPrcsDetailVO);
} }
// 교육 신청 테이블에 신청자 상태값 update
notifyManageService.insertNotifyAprvlCd5060CmpltForUser(
loginVO
, vEPrcsDetailVO.getPrcsAplctPrdOrd()
, vEPrcsDetailVO.getLctrDivCd()
, vEPrcsDetailVO.getEduAplctOrdList()
, vEPrcsDetailVO.getAprvlCd()
);
// 교육 신청 테이블에 신청자 상태값 update
if(vEPrcsDetailVO.getSspnIdtmtTrgtOrdList() != null && !vEPrcsDetailVO.getSspnIdtmtTrgtOrdList().isEmpty()) if(vEPrcsDetailVO.getSspnIdtmtTrgtOrdList() != null && !vEPrcsDetailVO.getSspnIdtmtTrgtOrdList().isEmpty())
{ {
// 대상자 테이블에 update // 대상자 테이블에 update
@ -1409,7 +1460,8 @@ public class CndtnPrcsInfoMngController {
//선택한 강사 데이터 등록 처리 //선택한 강사 데이터 등록 처리
vEAPrcsAplctPrdInstrAsgnmVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id vEAPrcsAplctPrdInstrAsgnmVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id
vEAPrcsAplctPrdInstrAsgnmService.instrInsert(vEAPrcsAplctPrdInstrAsgnmVO); vEAPrcsAplctPrdInstrAsgnmService.instrInsert(vEAPrcsAplctPrdInstrAsgnmVO);
notifyManageService.insertNotifyForInstr5060(loginVO, vEAPrcsAplctPrdInstrAsgnmVO.getPrcsAplctPrdOrd(), vEAPrcsAplctPrdInstrAsgnmVO.getAsgnmAprvlCd(), vEAPrcsAplctPrdInstrAsgnmVO.getUserId());
} catch (Exception ex) { } catch (Exception ex) {

View File

@ -1,281 +1,295 @@
package kcc.ve.oprtn.comweb; package kcc.ve.oprtn.comweb;
import java.util.List; import java.util.List;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequest;
import org.springframework.stereotype.Controller;
import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap;
import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.ModelAndView;
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
import egovframework.rte.fdl.idgnr.EgovIdGnrService; import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo; import kcc.com.cmm.LoginVO;
import kcc.com.cmm.LoginVO; import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.com.utl.user.service.CheckLoginUtil; import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.uss.umt.service.EgovUserManageService; import kcc.let.uss.umt.service.EgovUserManageService;
import kcc.let.uss.umt.service.UserManageVO; import kcc.let.uss.umt.service.UserManageVO;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngService; import kcc.ve.adv.tngr.stngInfo.service.VEAStngService;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngVO; import kcc.ve.adv.tngr.stngInfo.service.VEAStngVO;
import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ScholInfoMIXService; import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ScholInfoMIXService;
import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ScholInfoService; import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ScholInfoService;
import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ScholInfoVO; import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ScholInfoVO;
import kcc.ve.cmm.VeSendMail; import kcc.ve.cmm.VeSendMail;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService; import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctSndHstryService; import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctSndHstryService;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO; import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCntntVO; import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCntntVO;
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsOnlnCntntService; import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsOnlnCntntService;
@Controller @Controller
@RequestMapping("/kccadr/oprtn/comm") @RequestMapping("/kccadr/oprtn/comm")
public class CommonManageWebController { public class CommonManageWebController {
@Resource(name = "scholInfoService") @Resource(name = "scholInfoService")
private ScholInfoService scholInfoService; private ScholInfoService scholInfoService;
@Resource(name = "scholInfoMIXService") @Resource(name = "scholInfoMIXService")
private ScholInfoMIXService scholInfoMIXService; private ScholInfoMIXService scholInfoMIXService;
@Resource(name = "vEEduAplctService") @Resource(name = "vEEduAplctService")
private VEEduAplctService vEEduAplctService; private VEEduAplctService vEEduAplctService;
@Resource(name = "vEPrcsOnlnCntntService") @Resource(name = "vEPrcsOnlnCntntService")
private VEPrcsOnlnCntntService vEPrcsOnlnCntntService; private VEPrcsOnlnCntntService vEPrcsOnlnCntntService;
//로그인 체크 util //로그인 체크 util
@Resource(name = "checkLoginUtil") @Resource(name = "checkLoginUtil")
private CheckLoginUtil checkLoginUtil; private CheckLoginUtil checkLoginUtil;
//snd_hstry id gen //snd_hstry id gen
@Resource(name = "sndGnrService") @Resource(name = "sndGnrService")
private EgovIdGnrService sndGnrService; private EgovIdGnrService sndGnrService;
// 교육신청발송이력 // 교육신청발송이력
@Resource(name = "vEEduAplctSndHstryService") @Resource(name = "vEEduAplctSndHstryService")
private VEEduAplctSndHstryService vEEduAplctSndHstryService; private VEEduAplctSndHstryService vEEduAplctSndHstryService;
//회원조회 //회원조회
@Resource(name = "userManageService") @Resource(name = "userManageService")
private EgovUserManageService userManageService; private EgovUserManageService userManageService;
//강의 회차 정보 //강의 회차 정보
@Resource(name = "vEAStngService") @Resource(name = "vEAStngService")
private VEAStngService vEAStngService; private VEAStngService vEAStngService;
/** @Resource(name = "NotifyManageService")
* 학교정보 검색 팝업 리스트 private NotifyManageService notifyManageService;
*/
@RequestMapping("popup/scholPopList.do") /**
public String exprnClsrmAplctList(@ModelAttribute("scholInfoVO") ScholInfoVO scholInfoVO , ModelMap model , HttpServletRequest request ) throws Exception { * 학교정보 검색 팝업 리스트
PaginationInfo paginationInfo = new PaginationInfo(); */
paginationInfo.setCurrentPageNo(scholInfoVO.getPageIndex()); @RequestMapping("popup/scholPopList.do")
paginationInfo.setRecordCountPerPage(scholInfoVO.getPageUnit()); public String exprnClsrmAplctList(@ModelAttribute("scholInfoVO") ScholInfoVO scholInfoVO , ModelMap model , HttpServletRequest request ) throws Exception {
paginationInfo.setPageSize(5); PaginationInfo paginationInfo = new PaginationInfo();
paginationInfo.setCurrentPageNo(scholInfoVO.getPageIndex());
// paging step2 paginationInfo.setRecordCountPerPage(scholInfoVO.getPageUnit());
scholInfoVO.setFirstIndex(paginationInfo.getFirstRecordIndex()); paginationInfo.setPageSize(5);
scholInfoVO.setLastIndex(paginationInfo.getLastRecordIndex());
scholInfoVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); // paging step2
scholInfoVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
if("".equals(scholInfoVO.getSearchSortCnd())){ //최초조회시 최신것 조회List scholInfoVO.setLastIndex(paginationInfo.getLastRecordIndex());
scholInfoVO.setSearchSortCnd("schol_nm"); scholInfoVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
scholInfoVO.setSearchSortOrd("desc");
} if("".equals(scholInfoVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
scholInfoVO.setSearchSortCnd("schol_nm");
scholInfoVO.setSearchSortOrd("desc");
//검색 조건 }
String selectCondition = new String();
if (!"".equals(scholInfoVO.getSearchKeyword())) {
selectCondition += " AND A.SCHOL_NM LIKE '%"+scholInfoVO.getSearchKeyword()+"%' "; //검색 조건
} String selectCondition = new String();
if (!"".equals(scholInfoVO.getSearchKeyword())) {
//2.2 학교종류 selectCondition += " AND A.SCHOL_NM LIKE '%"+scholInfoVO.getSearchKeyword()+"%' ";
/*if(StringUtil.isNotEmpty(scholInfoVO.getSearchCondition())){ }
selectCondition += "AND DECODE(schol_grade_nm, '초등학교','10', '중학교','20', '고등학교','30',IF (INSTR(schol_grade_nm,'각종학교')>0,'40','50')) IN ('"+scholInfoVO.getSearchCondition()+"')";
}*/ //2.2 학교종류
if (!"".equals(scholInfoVO.getSearchCondition())) { /*if(StringUtil.isNotEmpty(scholInfoVO.getSearchCondition())){
if(scholInfoVO.getSearchCondition().equals("10")) { selectCondition += "AND DECODE(schol_grade_nm, '초등학교','10', '중학교','20', '고등학교','30',IF (INSTR(schol_grade_nm,'각종학교')>0,'40','50')) IN ('"+scholInfoVO.getSearchCondition()+"')";
selectCondition += " AND A.SCHOL_GRADE_NM LIKE '%초등%' "; }*/
}else if(scholInfoVO.getSearchCondition().equals("20")) { if (!"".equals(scholInfoVO.getSearchCondition())) {
selectCondition += " AND A.SCHOL_GRADE_NM LIKE '%중학%' "; if(scholInfoVO.getSearchCondition().equals("10")) {
}else if(scholInfoVO.getSearchCondition().equals("30")) { selectCondition += " AND A.SCHOL_GRADE_NM LIKE '%초등%' ";
selectCondition += " AND A.SCHOL_GRADE_NM LIKE '%고등%' "; }else if(scholInfoVO.getSearchCondition().equals("20")) {
}else if(scholInfoVO.getSearchCondition().equals("40")) { selectCondition += " AND A.SCHOL_GRADE_NM LIKE '%중학%' ";
selectCondition += " AND A.SCHOL_GRADE_NM LIKE '%특수%' "; }else if(scholInfoVO.getSearchCondition().equals("30")) {
}else if(scholInfoVO.getSearchCondition().equals("50")) { selectCondition += " AND A.SCHOL_GRADE_NM LIKE '%고등%' ";
selectCondition += " AND A.SCHOL_GRADE_NM LIKE '%각종%' "; }else if(scholInfoVO.getSearchCondition().equals("40")) {
} selectCondition += " AND A.SCHOL_GRADE_NM LIKE '%특수%' ";
} }else if(scholInfoVO.getSearchCondition().equals("50")) {
scholInfoVO.setSelectPagingListQuery(selectCondition); selectCondition += " AND A.SCHOL_GRADE_NM LIKE '%각종%' ";
}
}
List<ScholInfoVO> scholInfoVOList = scholInfoMIXService.selectPagingList(scholInfoVO); scholInfoVO.setSelectPagingListQuery(selectCondition);
//3.paging step3
int totCnt = 0;
if(scholInfoVOList.size() > 0) totCnt = scholInfoVOList.get(0).getTotCnt(); List<ScholInfoVO> scholInfoVOList = scholInfoMIXService.selectPagingList(scholInfoVO);
paginationInfo.setTotalRecordCount(totCnt); //3.paging step3
int totCnt = 0;
model.addAttribute("paginationInfo", paginationInfo); if(scholInfoVOList.size() > 0) totCnt = scholInfoVOList.get(0).getTotCnt();
//학교정보 리스트, 페이징 정보 전달 paginationInfo.setTotalRecordCount(totCnt);
model.addAttribute("scholList", scholInfoVOList);
return "oprtn/cmm/scholPopListBower"; model.addAttribute("paginationInfo", paginationInfo);
} //학교정보 리스트, 페이징 정보 전달
model.addAttribute("scholList", scholInfoVOList);
/** return "oprtn/cmm/scholPopListBower";
* 학교정보 검색 팝업 리스트 }
*/
@RequestMapping("popup/rejectPopup.do") /**
public String rejectPopup(@ModelAttribute("veEduAplctVO") VEEduAplctVO veEduAplctVO , ModelMap model , HttpServletRequest request ) throws Exception { * 학교정보 검색 팝업 리스트
return "oprtn/cmm/rejectPopup"; */
} @RequestMapping("popup/rejectPopup.do")
public String rejectPopup(@ModelAttribute("veEduAplctVO") VEEduAplctVO veEduAplctVO , ModelMap model , HttpServletRequest request ) throws Exception {
@RequestMapping(value="/eduAplctStatusAjax.do") return "oprtn/cmm/rejectPopup";
public ModelAndView eduAplctStatusAjax(HttpServletRequest request }
, ModelMap model
, VEEduAplctVO vEEduAplctVO) throws Exception { @RequestMapping(value="/eduAplctStatusAjax.do")
ModelAndView modelAndView = new ModelAndView(); public ModelAndView eduAplctStatusAjax(HttpServletRequest request
modelAndView.setViewName("jsonView"); , ModelMap model
, VEEduAplctVO vEEduAplctVO) throws Exception {
//권한에 따른 로그인 정보 가져오기 ModelAndView modelAndView = new ModelAndView();
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); modelAndView.setViewName("jsonView");
vEEduAplctVO.setLastUpdusrId(loginVO.getUniqId());
int rs = vEEduAplctService.statusUpdate(vEEduAplctVO); //권한에 따른 로그인 정보 가져오기
LoginVO loginVO = checkLoginUtil.getAuthLoginVO();
//교육콘텐츠 교육승인 상태로 변경 메일발송 vEEduAplctVO.setLastUpdusrId(loginVO.getUniqId());
if("40".equals(vEEduAplctVO.getLctrDivCd()) && "20".equals(vEEduAplctVO.getAprvlCd())) { int rs = vEEduAplctService.statusUpdate(vEEduAplctVO);
VeSendMail sendMail = new VeSendMail();
vEEduAplctVO.setSndCd("20"); //교육콘텐츠 교육승인 상태로 변경 메일발송
//메일발송 if("40".equals(vEEduAplctVO.getLctrDivCd()) && "20".equals(vEEduAplctVO.getAprvlCd())) {
String mailResult = sendMail.VeSendMail("W", vEEduAplctVO.getEmail(), vEEduAplctVO); VeSendMail sendMail = new VeSendMail();
vEEduAplctVO.setSndCd("20");
if("success".equals(mailResult)) { //메일발송
//메일 발송 로그 String mailResult = sendMail.VeSendMail("W", vEEduAplctVO.getEmail(), vEEduAplctVO);
String snd_ord = sndGnrService.getNextStringId();
vEEduAplctVO.setSndHstryOrd(snd_ord); if("success".equals(mailResult)) {
vEEduAplctVO.setSndId(loginVO.getUniqId()); //메일 발송 로그
vEEduAplctSndHstryService.insert(vEEduAplctVO); String snd_ord = sndGnrService.getNextStringId();
} vEEduAplctVO.setSndHstryOrd(snd_ord);
} vEEduAplctVO.setSndId(loginVO.getUniqId());
modelAndView.addObject("rsCnt", rs); vEEduAplctSndHstryService.insert(vEEduAplctVO);
modelAndView.addObject("result", "success"); }
return modelAndView; }
}
// 알림 insert
//교육신청 리스트에서 일괄 상태변경 처리 if(
@RequestMapping(value="/eduAplctStatusListAjax.do") "10".equals(vEEduAplctVO.getLctrDivCd())
public ModelAndView eduAplctStatusListAjax(HttpServletRequest request , ModelMap model , VEEduAplctVO veEduAplctVO) throws Exception { || "20".equals(vEEduAplctVO.getLctrDivCd())
|| "30".equals(vEEduAplctVO.getLctrDivCd())
ModelAndView modelAndView = new ModelAndView(); )
modelAndView.setViewName("jsonView"); {
notifyManageService.insertNotifyAprvlCdForUser(loginVO, vEEduAplctVO.getEduAplctOrd(), vEEduAplctVO.getLctrDivCd(), vEEduAplctVO.getAprvlCd());
int rs = 0; }
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
modelAndView.addObject("rsCnt", rs);
try { modelAndView.addObject("result", "success");
String[] splitChk = veEduAplctVO.getChk().split(","); return modelAndView;
}
for(int i=0; i<splitChk.length; i++) {
if(!"".equals(splitChk[i])) { //교육신청 리스트에서 일괄 상태변경 처리
@RequestMapping(value="/eduAplctStatusListAjax.do")
System.out.println(veEduAplctVO.getAprvlCd()); public ModelAndView eduAplctStatusListAjax(HttpServletRequest request , ModelMap model , VEEduAplctVO veEduAplctVO) throws Exception {
if ("230N".equals(veEduAplctVO.getAprvlCd())) { ModelAndView modelAndView = new ModelAndView();
//is wait 제거 하는데 사용한다. modelAndView.setViewName("jsonView");
VEEduAplctVO p_veEduAplctVO = new VEEduAplctVO();
p_veEduAplctVO.setEduAplctOrd(splitChk[i]); int rs = 0;
p_veEduAplctVO.setLastUpdusrId(loginVO.getUniqId()); LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
p_veEduAplctVO.setIsWait("N");
vEEduAplctService.updateIsWait(p_veEduAplctVO); try {
rs++; String[] splitChk = veEduAplctVO.getChk().split(",");
}else if ("230Y".equals(veEduAplctVO.getAprvlCd())) {
//is wait 제거 하는데 사용한다. for(int i=0; i<splitChk.length; i++) {
VEEduAplctVO p_veEduAplctVO = new VEEduAplctVO(); if(!"".equals(splitChk[i])) {
p_veEduAplctVO.setEduAplctOrd(splitChk[i]);
p_veEduAplctVO.setLastUpdusrId(loginVO.getUniqId()); System.out.println(veEduAplctVO.getAprvlCd());
p_veEduAplctVO.setIsWait("Y");
vEEduAplctService.updateIsWait(p_veEduAplctVO); if ("230N".equals(veEduAplctVO.getAprvlCd())) {
rs++; //is wait 제거 하는데 사용한다.
}else { VEEduAplctVO p_veEduAplctVO = new VEEduAplctVO();
veEduAplctVO.setEduAplctOrd(splitChk[i]); p_veEduAplctVO.setEduAplctOrd(splitChk[i]);
veEduAplctVO.setLastUpdusrId(loginVO.getUniqId()); p_veEduAplctVO.setLastUpdusrId(loginVO.getUniqId());
vEEduAplctService.statusUpdate(veEduAplctVO); p_veEduAplctVO.setIsWait("N");
rs++; vEEduAplctService.updateIsWait(p_veEduAplctVO);
} rs++;
} }else if ("230Y".equals(veEduAplctVO.getAprvlCd())) {
} //is wait 제거 하는데 사용한다.
} catch (Exception ex) { VEEduAplctVO p_veEduAplctVO = new VEEduAplctVO();
ex.printStackTrace(); p_veEduAplctVO.setEduAplctOrd(splitChk[i]);
modelAndView.addObject("result", "fail"); p_veEduAplctVO.setLastUpdusrId(loginVO.getUniqId());
} p_veEduAplctVO.setIsWait("Y");
vEEduAplctService.updateIsWait(p_veEduAplctVO);
modelAndView.addObject("rsCnt", rs); rs++;
modelAndView.addObject("result", "success"); }else {
return modelAndView; veEduAplctVO.setEduAplctOrd(splitChk[i]);
} veEduAplctVO.setLastUpdusrId(loginVO.getUniqId());
vEEduAplctService.statusUpdate(veEduAplctVO);
rs++;
@RequestMapping("/popup/selectPrcsDetailList.do") }
public String selectPrcsDetailList(@ModelAttribute("vEEduAplctVO") VEPrcsCntntVO vePrcsCntntVO, ModelMap model, HttpServletRequest request) throws Exception{ }
//로그인 정보 가져오기 }
model.addAttribute("list", vEPrcsOnlnCntntService.selectList(vePrcsCntntVO)); } catch (Exception ex) {
return "/web/ve/comm/selectPrcsDetailList"; ex.printStackTrace();
} modelAndView.addObject("result", "fail");
}
/**
* 회원 검색 팝업 리스트 modelAndView.addObject("rsCnt", rs);
*/ modelAndView.addObject("result", "success");
@RequestMapping("popup/userPopList.do") return modelAndView;
public String userPopList(@ModelAttribute("searchVO") UserManageVO userManageVO , ModelMap model , HttpServletRequest request ) throws Exception { }
PaginationInfo paginationInfo = new PaginationInfo();
paginationInfo.setCurrentPageNo(userManageVO.getPageIndex());
paginationInfo.setRecordCountPerPage(userManageVO.getPageUnit()); @RequestMapping("/popup/selectPrcsDetailList.do")
paginationInfo.setPageSize(10); public String selectPrcsDetailList(@ModelAttribute("vEEduAplctVO") VEPrcsCntntVO vePrcsCntntVO, ModelMap model, HttpServletRequest request) throws Exception{
//로그인 정보 가져오기
// paging step2 model.addAttribute("list", vEPrcsOnlnCntntService.selectList(vePrcsCntntVO));
userManageVO.setFirstIndex(paginationInfo.getFirstRecordIndex()); return "/web/ve/comm/selectPrcsDetailList";
userManageVO.setLastIndex(paginationInfo.getLastRecordIndex()); }
userManageVO.setRecordCountPerPage(10);
/**
if("".equals(userManageVO.getSearchSortCnd())){ //최초조회시 최신것 조회List * 회원 검색 팝업 리스트
userManageVO.setSearchSortCnd("mber_id"); */
userManageVO.setSearchSortOrd("asc"); @RequestMapping("popup/userPopList.do")
} public String userPopList(@ModelAttribute("searchVO") UserManageVO userManageVO , ModelMap model , HttpServletRequest request ) throws Exception {
PaginationInfo paginationInfo = new PaginationInfo();
List<UserManageVO> userList = userManageService.selectOffeduUserList(userManageVO); paginationInfo.setCurrentPageNo(userManageVO.getPageIndex());
//3.paging step3 paginationInfo.setRecordCountPerPage(userManageVO.getPageUnit());
int totCnt = 0; paginationInfo.setPageSize(10);
if(userList.size() > 0) totCnt = userList.get(0).getTotCnt();
paginationInfo.setTotalRecordCount(totCnt); // paging step2
userManageVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
model.addAttribute("paginationInfo", paginationInfo); userManageVO.setLastIndex(paginationInfo.getLastRecordIndex());
//학교정보 리스트, 페이징 정보 전달 userManageVO.setRecordCountPerPage(10);
model.addAttribute("userList", userList);
return "oprtn/cmm/userPopListBower"; if("".equals(userManageVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
} userManageVO.setSearchSortCnd("mber_id");
userManageVO.setSearchSortOrd("asc");
/** }
* 회차 검색 팝업 리스트
*/ List<UserManageVO> userList = userManageService.selectOffeduUserList(userManageVO);
@RequestMapping("popup/rndsPopList.do") //3.paging step3
public String rndsPopList( int totCnt = 0;
@ModelAttribute("searchVO") VEAStngVO vEAStngVO if(userList.size() > 0) totCnt = userList.get(0).getTotCnt();
, ModelMap model paginationInfo.setTotalRecordCount(totCnt);
, HttpServletRequest request
) throws Exception { model.addAttribute("paginationInfo", paginationInfo);
//학교정보 리스트, 페이징 정보 전달
model.addAttribute("userList", userList);
//VEAStngVO vEAStngVO = new VEAStngVO(); return "oprtn/cmm/userPopListBower";
List<VEAStngVO> rndsList = vEAStngService.selectList_VEALRS(vEAStngVO); }
//회차 정보리스트 /**
model.addAttribute("rndsList", rndsList); * 회차 검색 팝업 리스트
return "oprtn/cmm/rndsPopList"; */
} @RequestMapping("popup/rndsPopList.do")
} public String rndsPopList(
@ModelAttribute("searchVO") VEAStngVO vEAStngVO
, ModelMap model
, HttpServletRequest request
) throws Exception {
//VEAStngVO vEAStngVO = new VEAStngVO();
List<VEAStngVO> rndsList = vEAStngService.selectList_VEALRS(vEAStngVO);
//회차 정보리스트
model.addAttribute("rndsList", rndsList);
return "oprtn/cmm/rndsPopList";
}
}

View File

@ -23,6 +23,7 @@ import javax.servlet.http.HttpSession;
import org.apache.commons.compress.archivers.zip.ZipArchiveEntry; import org.apache.commons.compress.archivers.zip.ZipArchiveEntry;
import org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream; import org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.apache.poi.xssf.streaming.SXSSFWorkbook;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
@ -235,7 +236,9 @@ public class OprtnAplctMngController {
@RequestMapping("oprtnAplctMngDetail.do") @RequestMapping("oprtnAplctMngDetail.do")
public String oprtnAplctMngDetail( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model , HttpSession session, HttpServletRequest request ) throws Exception { public String oprtnAplctMngDetail( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model , HttpSession session, HttpServletRequest request ) throws Exception {
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEEduAplctVO.getCmmNotifyOrd());
if(StringUtils.isNotEmpty(vEEduAplctVO.getCmmNotifyOrd()))
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEEduAplctVO.getCmmNotifyOrd());
LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;

View File

@ -28,6 +28,7 @@ import kcc.com.cmm.service.impl.CmmUseDAO;
import kcc.com.cmm.util.StringUtil; import kcc.com.cmm.util.StringUtil;
import kcc.com.utl.user.service.CheckLoginUtil; import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO; import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.uss.olp.qri.service.EgovQustnrRespondInfoService; import kcc.let.uss.olp.qri.service.EgovQustnrRespondInfoService;
import kcc.let.uss.olp.qri.service.QustnrRespondInfoVO; import kcc.let.uss.olp.qri.service.QustnrRespondInfoVO;
import kcc.let.utl.fcc.service.EgovCryptoUtil; import kcc.let.utl.fcc.service.EgovCryptoUtil;
@ -142,6 +143,15 @@ public class FndthPrcsAplctPrdMngController {
@Resource(name = "egovQustnrRespondInfoService") @Resource(name = "egovQustnrRespondInfoService")
private EgovQustnrRespondInfoService egovQustnrRespondInfoService; private EgovQustnrRespondInfoService egovQustnrRespondInfoService;
//알림 서비스
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
/* /*
// 교육신청 서비스단 // 교육신청 서비스단
@ -906,6 +916,8 @@ public class FndthPrcsAplctPrdMngController {
//선택한 강사 데이터 등록 처리 //선택한 강사 데이터 등록 처리
vEAPrcsAplctPrdInstrAsgnmVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id vEAPrcsAplctPrdInstrAsgnmVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id
vEAPrcsAplctPrdInstrAsgnmService.instrInsert(vEAPrcsAplctPrdInstrAsgnmVO); vEAPrcsAplctPrdInstrAsgnmService.instrInsert(vEAPrcsAplctPrdInstrAsgnmVO);
notifyManageService.insertNotifyForInstr5060(loginVO, vEAPrcsAplctPrdInstrAsgnmVO.getPrcsAplctPrdOrd(), vEAPrcsAplctPrdInstrAsgnmVO.getAsgnmAprvlCd(), vEAPrcsAplctPrdInstrAsgnmVO.getUserId());
} catch (Exception ex) { } catch (Exception ex) {
ex.printStackTrace(); ex.printStackTrace();
} }
@ -927,7 +939,6 @@ public class FndthPrcsAplctPrdMngController {
, HttpServletRequest request , HttpServletRequest request
) throws Exception { ) throws Exception {
System.out.println(vEPrcsDetailVO.getPrcsAplctPrdOrd() +"!!!");
ModelAndView modelAndView = new ModelAndView(); ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView"); modelAndView.setViewName("jsonView");
@ -946,6 +957,15 @@ public class FndthPrcsAplctPrdMngController {
// 교육 신청 테이블에 신청자 상태값 update // 교육 신청 테이블에 신청자 상태값 update
vEAPrcsAplctPrdInstrAsgnmService.udpateAprvlCdEduAplct(vEPrcsDetailVO); vEAPrcsAplctPrdInstrAsgnmService.udpateAprvlCdEduAplct(vEPrcsDetailVO);
notifyManageService.insertNotifyAprvlCd5060ForUser(
loginVO
, vEPrcsDetailVO.getPrcsAplctPrdOrd()
, vEPrcsDetailVO.getLctrDivCd()
, vEPrcsDetailVO.getEduAplctOrdList()
, vEPrcsDetailVO.getAprvlCd()
);
// 승인 - 승인일 경우 vea_aplct_detail_info TB에 넣어줘야함 // 승인 - 승인일 경우 vea_aplct_detail_info TB에 넣어줘야함
if("20".equals(vEPrcsDetailVO.getAprvlCd())) { if("20".equals(vEPrcsDetailVO.getAprvlCd())) {
this.aprvlCd20(vEPrcsDetailVO,loginVO.getUniqId()); this.aprvlCd20(vEPrcsDetailVO,loginVO.getUniqId());

View File

@ -414,8 +414,8 @@ public class EduAplctMngTngrController {
LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEEduAplctVO.getCmmNotifyOrd()); if(StringUtils.isNotEmpty(vEEduAplctVO.getCmmNotifyOrd()))
System.out.println("vEEduAplctVO.getCmmNotifyOrd() : "+ vEEduAplctVO.getCmmNotifyOrd()); notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEEduAplctVO.getCmmNotifyOrd());
//기본데이터 불러오기 //기본데이터 불러오기

View File

@ -28,6 +28,7 @@ import kcc.com.cmm.service.EgovFileMngUtil;
import kcc.com.cmm.spring.data.util.ExcelUtil; import kcc.com.cmm.spring.data.util.ExcelUtil;
import kcc.com.utl.user.service.CheckLoginUtil; import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.kccadr.cmm.CmmUtil; import kcc.kccadr.cmm.CmmUtil;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil; import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.let.utl.fcc.service.VEPagingUtil; import kcc.let.utl.fcc.service.VEPagingUtil;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngMixService; import kcc.ve.adv.tngr.stngInfo.service.VEAStngMixService;
@ -155,7 +156,11 @@ public class EduCnfrmMngTngrController {
//강의설정 관리(MIX) //강의설정 관리(MIX)
@Resource(name = "vEAStngMixService") @Resource(name = "vEAStngMixService")
private VEAStngMixService vEAStngMixService; private VEAStngMixService vEAStngMixService;
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
/** /**
* 교육확정관리 목록 화면 * 교육확정관리 목록 화면
*/ */
@ -568,6 +573,14 @@ public class EduCnfrmMngTngrController {
vEEduChasiInstrAsgnmService.insertDeadLineDt(vo); vEEduChasiInstrAsgnmService.insertDeadLineDt(vo);
notifyManageService.insertNotifyAsgnmCnfrmForInstr(
loginVO
, vo.getEduAplctOrd()
, vo.getEduChasiOrd()
, vo.getAsgnmAprvlCd()
);
} }
} }

View File

@ -94,6 +94,7 @@ import kcc.let.sym.prm.service.ProgrmManageVO;
import kcc.let.sym.site.service.EgovSiteManagerService; import kcc.let.sym.site.service.EgovSiteManagerService;
import kcc.let.sym.site.service.SiteManagerVO; import kcc.let.sym.site.service.SiteManagerVO;
import kcc.let.uat.uia.service.SsoLoginVO; import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO; import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrService; import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrService;
@ -180,6 +181,10 @@ public class MainController {
@Resource(name="EgovFileMngUtil") @Resource(name="EgovFileMngUtil")
private EgovFileMngUtil fileUtil; private EgovFileMngUtil fileUtil;
//알림 서비스
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
//강사 정보 //강사 정보
@Resource(name="vEInstrService") @Resource(name="vEInstrService")
@ -611,6 +616,13 @@ public class MainController {
model.addAttribute("modifyUrl", modifyUrl); model.addAttribute("modifyUrl", modifyUrl);
model.addAttribute("environment", environment); //로그인, 회원가입 URL 환경에 따른 구분 ex) local, dev, svr model.addAttribute("environment", environment); //로그인, 회원가입 URL 환경에 따른 구분 ex) local, dev, svr
if(loginVO != null)
{
int cnt = notifyManageService.selectNotifyCnt(loginVO.getUniqId());
System.out.println("cnt : "+ cnt);
model.addAttribute("notifyCnt", cnt); //로그인, 회원가입 URL 환경에 따른 구분 ex) local, dev, svr
}
return "web/com/webCommonHeader"; return "web/com/webCommonHeader";
} }

View File

@ -56,11 +56,14 @@
<include refid="VEANotifyDAO.table_name"/> a <include refid="VEANotifyDAO.table_name"/> a
WHERE WHERE
a.TO_USER_ID = #toUserId# a.TO_USER_ID = #toUserId#
ORDER BY
a.NOTIFY_CHK
, a.FRST_REGIST_PNTTM desc
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY; OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select> </select>
<insert id="VEANotifyDAO.insertNotifyEduForAdmin" parameterClass="notifyManageVO"> <insert id="VEANotifyDAO.insertNotifyInfo" parameterClass="notifyManageVO">
/* VEANotifyDAO.insertNotifyEduForAdmin */ /* VEANotifyDAO.insertNotifyInfo */
INSERT INTO <include refid="VEANotifyDAO.table_name"/> ( INSERT INTO <include refid="VEANotifyDAO.table_name"/> (
<include refid="VEANotifyDAO.column_name"/> <include refid="VEANotifyDAO.column_name"/>
@ -108,4 +111,49 @@
</update> </update>
<select id="VEANotifyDAO.findByUserIdFromVE_EDU_APLCT" parameterClass="String" resultClass="String">
/* VEANotifyDAO.findByUserIdFromVE_EDU_APLCT */
SELECT
a.user_id as toUserId
FROM
VE_EDU_APLCT a
WHERE a.EDU_APLCT_ORD = #eduAplctOrd#
</select>
<select id="VEANotifyDAO.findByLctrDivCdFromVePrcsAplctPrd" parameterClass="String" resultClass="String">
/* VEANotifyDAO.findByLctrDivCdFromVePrcsAplctPrd */
SELECT
a.LCTR_DIV_CD as lctrDivCd
FROM
VE_PRCS_APLCT_PRD a
WHERE a.PRCS_APLCT_PRD_ORD = #prcsAplctPrdOrd#
</select>
<select id="VEANotifyDAO.selectNotifyInstr" parameterClass="notifyManageVO" resultClass="String">
/* VEANotifyDAO.selectNotifyInstr */
SELECT
USER_ID as toUserId
FROM
ve_edu_chasi_instr_asgnm
WHERE
edu_aplct_ord = #eduAplctOrd#
AND edu_chasi_ord = #eduChasiOrd#
</select>
<select id="VEANotifyDAO.selectNotifyCnt" parameterClass="String" resultClass="int">
/* VEANotifyDAO.selectNotifyCnt */
SELECT count(*)
from VEA_CMM_NOTIFY
WHERE TO_USER_ID = #uniqId#
AND NOTIFY_CHK = 'N'
</select>
</sqlMap> </sqlMap>

View File

@ -41,8 +41,6 @@ function fn_goDetail(cmmNotifyOrd){
form.cmmNotifyOrd.value=cmmNotifyOrd; form.cmmNotifyOrd.value=cmmNotifyOrd;
form.action = "<c:url value='/cmm/main/mainDetail.do'/>"; form.action = "<c:url value='/cmm/main/mainDetail.do'/>";
form.submit(); form.submit();
} }
</script> </script>
</head> </head>
@ -102,7 +100,7 @@ function fn_goDetail(cmmNotifyOrd){
<div class="list tbType01"> <div class="list tbType01">
<table> <table>
<colgroup> <colgroup>
<col style="width: 2%"> <col style="width: 6%">
<col style="width: 15%"> <col style="width: 15%">
<col style="width: 10%"> <col style="width: 10%">
</colgroup> </colgroup>
@ -115,20 +113,20 @@ function fn_goDetail(cmmNotifyOrd){
</thead> </thead>
<tbody> <tbody>
<c:forEach var="list" items="${list}" varStatus="status"> <c:forEach var="list" items="${list}" varStatus="status">
<tr onclick="fn_goDetail('${list.cmmNotifyOrd}')" style="cursor: pointer;" > <tr onclick="fn_goDetail('${list.cmmNotifyOrd}')" style="cursor: pointer;" >
<td> <td>
<c:if test="${list.notifyChk ne 'Y'}"> <c:if test="${list.notifyChk ne 'Y'}">
<span class="new_icon">NEW</span> <span class="new_icon">NEW</span>
</c:if> </c:if>
<ve:code codeId="VE0011" code="${list.lctrDivCd}"/> <ve:code codeId="VE0011" code="${list.lctrDivCd}"/>
</td> </td>
<td> <td>
<c:out value="${list.notifyCn}"/> <c:out value="${list.notifyCn}"/>
</td> </td>
<td> <td>
<c:out value="${list.frstRegistPnttm}"/> <c:out value="${list.frstRegistPnttm}"/>
</td> </td>
</tr> </tr>
</c:forEach> </c:forEach>
<c:if test="${empty list}"> <c:if test="${empty list}">
<tr><td colspan="3"><spring:message code="common.nodata.msg" /></td></tr> <tr><td colspan="3"><spring:message code="common.nodata.msg" /></td></tr>

View File

@ -134,6 +134,7 @@
data: { data: {
"eduAplctOrd" : $("#eduAplctOrd").val() , "eduAplctOrd" : $("#eduAplctOrd").val() ,
"aprvlCd" : statusVal, "aprvlCd" : statusVal,
"lctrDivCd" : $("#lctrDivCd").val()
}, },
dataType:'json', dataType:'json',
success:function(returnData){ success:function(returnData){

View File

@ -37,6 +37,7 @@
"eduAplctOrd" : $("#eduAplctOrd").val() , "eduAplctOrd" : $("#eduAplctOrd").val() ,
"aprvlCd" : aprvlCd, "aprvlCd" : aprvlCd,
"aprvlCn" : $("#aprvlCn").val(), "aprvlCn" : $("#aprvlCn").val(),
"lctrDivCd" : lctrDivCd
}, },
dataType:'json', dataType:'json',
success:function(returnData){ success:function(returnData){

View File

@ -137,7 +137,8 @@
var dataToSend = { var dataToSend = {
"eduAplctOrdList": selectedEduAplctOrd, "eduAplctOrdList": selectedEduAplctOrd,
"aprvlCd": p_aprvlCd, "aprvlCd": p_aprvlCd,
"prcsAplctPrdOrd": p_prcsAplctPrdOrd "prcsAplctPrdOrd": p_prcsAplctPrdOrd,
"lctrDivCd" : $("#lctrDivCd").val()
}; };
commAjax(dataToSend); commAjax(dataToSend);
} }
@ -161,7 +162,8 @@
var dataToSend = { var dataToSend = {
"eduAplctOrdList": selectedEduAplctOrd, "eduAplctOrdList": selectedEduAplctOrd,
"aprvlCd": p_aprvlCd, "aprvlCd": p_aprvlCd,
"prcsAplctPrdOrd": p_prcsAplctPrdOrd "prcsAplctPrdOrd": p_prcsAplctPrdOrd,
"lctrDivCd" : $("#lctrDivCd").val()
}; };
commAjax(dataToSend); commAjax(dataToSend);
@ -281,6 +283,7 @@
</form> </form>
<form:form id="detailForm" name="detailForm" commandName="vEPrcsDetailVO" method="post"> <form:form id="detailForm" name="detailForm" commandName="vEPrcsDetailVO" method="post">
<input type="hidden" name="prcsAplctPrdOrd" id="prcsAplctPrdOrd" value="<c:out value='${vEPrcsDetailVO.prcsAplctPrdOrd}' />"/> <input type="hidden" name="prcsAplctPrdOrd" id="prcsAplctPrdOrd" value="<c:out value='${vEPrcsDetailVO.prcsAplctPrdOrd}' />"/>
<input type="hidden" name="lctrDivCd" id="lctrDivCd" value="60"/>
<!-- cont --> <!-- cont -->
<div class="cont_wrap"> <div class="cont_wrap">
<div class="box"> <div class="box">

View File

@ -40,6 +40,7 @@
data: { data: {
"eduAplctOrd" : $("#eduAplctOrd").val() , "eduAplctOrd" : $("#eduAplctOrd").val() ,
"aprvlCd" : statusVal, "aprvlCd" : statusVal,
"lctrDivCd" : $("#lctrDivCd").val()
}, },
dataType:'json', dataType:'json',
success:function(returnData){ success:function(returnData){

View File

@ -61,6 +61,7 @@
data: { data: {
"eduAplctOrd" : $("#eduAplctOrd").val() , "eduAplctOrd" : $("#eduAplctOrd").val() ,
"aprvlCd" : VeConstants.APRVL_CD_20, "aprvlCd" : VeConstants.APRVL_CD_20,
"lctrDivCd" : $("#lctrDivCd").val()
}, },
dataType:'json', dataType:'json',
success:function(returnData){ success:function(returnData){
@ -108,7 +109,8 @@
url:"${pageContext.request.contextPath}/kccadr/oprtn/comm/eduAplctStatusAjax.do", url:"${pageContext.request.contextPath}/kccadr/oprtn/comm/eduAplctStatusAjax.do",
data: { data: {
"eduAplctOrd" : $("#eduAplctOrd").val() , "eduAplctOrd" : $("#eduAplctOrd").val() ,
"useYn" : 'N' "useYn" : 'N' ,
"lctrDivCd" : $("#lctrDivCd").val()
}, },
dataType:'json', dataType:'json',
success:function(returnData){ success:function(returnData){
@ -138,6 +140,7 @@
data: { data: {
"eduAplctOrd" : $("#eduAplctOrd").val() , "eduAplctOrd" : $("#eduAplctOrd").val() ,
"aprvlCd" : statusVal, "aprvlCd" : statusVal,
"lctrDivCd" : $("#lctrDivCd").val()
}, },
dataType:'json', dataType:'json',
success:function(returnData){ success:function(returnData){

View File

@ -158,7 +158,8 @@
var dataToSend = { var dataToSend = {
"eduAplctOrdList": selectedEduAplctOrd, "eduAplctOrdList": selectedEduAplctOrd,
"aprvlCd": p_aprvlCd, "aprvlCd": p_aprvlCd,
"prcsAplctPrdOrd": p_prcsAplctPrdOrd "prcsAplctPrdOrd": p_prcsAplctPrdOrd,
"lctrDivCd" : $("#lctrDivCd").val()
}; };
var url = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/updateEduAplctAprvlCdAjax.do'/>"; var url = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/updateEduAplctAprvlCdAjax.do'/>";
@ -225,6 +226,7 @@
<form id="modyfiForm" name="modyfiForm"> <form id="modyfiForm" name="modyfiForm">
<input type="hidden" id="modyDdlnCd" name="ddlnCd" /> <input type="hidden" id="modyDdlnCd" name="ddlnCd" />
<input type="hidden" name="prcsAplctPrdOrd" id="prcsAplctPrdOrd" value="<c:out value='${vEPrcsDetailVO.prcsAplctPrdOrd}' />"/> <input type="hidden" name="prcsAplctPrdOrd" id="prcsAplctPrdOrd" value="<c:out value='${vEPrcsDetailVO.prcsAplctPrdOrd}' />"/>
<input type="hidden" name="lctrDivCd" id="lctrDivCd" value="50"/>
</form> </form>
<form id="instrForm" name="instrForm" method="post"> <form id="instrForm" name="instrForm" method="post">
<input type="hidden" name="prcsAplctPrdOrd" id="prcsAplctPrdOrd" value="<c:out value='${vEPrcsDetailVO.prcsAplctPrdOrd}' />"/> <input type="hidden" name="prcsAplctPrdOrd" id="prcsAplctPrdOrd" value="<c:out value='${vEPrcsDetailVO.prcsAplctPrdOrd}' />"/>
@ -307,7 +309,7 @@
<tr> <tr>
<th scope="row">상세교육내용</th> <th scope="row">상세교육내용</th>
<td> <td>
<c:out value="${info.prcsCn }" /> <c:out value="${fn:replace(info.prcsCn , crlf , '<br/>')}" escapeXml="false" />
</td> </td>
</tr> </tr>
<tr> <tr>

View File

@ -269,7 +269,7 @@
<tr> <tr>
<th scope="row">상세교육내용</th> <th scope="row">상세교육내용</th>
<td> <td>
<textarea name="prcsCn" id="prcsCn" class="memo" disabled="disabled" class="inputLight" style="height: 200px;"><c:out value="${info.prcsCn }" /></textarea> <c:out value="${fn:replace(info.prcsCn , crlf , '<br/>')}" escapeXml="false" />
</td> </td>
</tr> </tr>
<tr> <tr>

View File

@ -1,155 +1,160 @@
<!DOCTYPE html> <!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8" <%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%> pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%> <%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<% <%
/** /**
* @Class Name : fndthEduPrcsMngDetail.jsp * @Class Name : fndthEduPrcsMngDetail.jsp
* @Description : 기반강화연수 상세화면 * @Description : 기반강화연수 상세화면
* @Modification Information * @Modification Information
* @ * @
* @ 수정일 수정자 수정내용 * @ 수정일 수정자 수정내용
* @ ------- -------- --------------------------- * @ ------- -------- ---------------------------
* @ 2021.12.16 조용준 최초 생성 * @ 2021.12.16 조용준 최초 생성
* @author 조용주 * @author 조용주
* @since 2021.12.16 * @since 2021.12.16
* @version 1.0 * @version 1.0
* @see * @see
* *
*/ */
%> %>
<html lang="ko"> <html lang="ko">
<head> <head>
<title>교육과정관리</title> <title>교육과정관리</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript"> <script type="text/javascript">
function fncGoList(){ function fncGoList(){
var listForm = document.listForm ; var listForm = document.listForm ;
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>"; listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>";
listForm.submit(); listForm.submit();
} }
function fncMdfy(){ function fncMdfy(){
var detailForm = document.detailForm ; var detailForm = document.detailForm ;
detailForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngMdfy.do'/>"; detailForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngMdfy.do'/>";
detailForm.submit(); detailForm.submit();
} }
</script> </script>
</head> </head>
<body> <body>
<form:form id="listForm" name="listForm" commandName="vEPrcsDetailVO" method="post"> <form:form id="listForm" name="listForm" commandName="vEPrcsDetailVO" method="post">
</form:form> </form:form>
<form:form id="detailForm" name="detailForm" commandName="vEPrcsDetailVO" method="post"> <form:form id="detailForm" name="detailForm" commandName="vEPrcsDetailVO" method="post">
<input type="hidden" name="prcsOrd" value="<c:out value='${vEPrcsDetailVO.prcsOrd}' default='1' />"/> <input type="hidden" name="prcsOrd" value="<c:out value='${vEPrcsDetailVO.prcsOrd}' default='1' />"/>
<!-- cont --> <!-- cont -->
<div class="cont_wrap"> <div class="cont_wrap">
<div class="box"> <div class="box">
<!-- cont_tit --> <!-- cont_tit -->
<div class="cont_tit"> <div class="cont_tit">
<h2>교육과정상세</h2> <h2>교육과정상세</h2>
<ul class="cont_nav"> <ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li> <li class="home"><a href="/"><i></i></a></li>
<li> <li>
<p>실무자역량강화(기반강화연수관리)</p> <p>실무자역량강화(기반강화연수관리)</p>
</li> </li>
<li><span class="cur_nav">과정관리상세</span></li> <li><span class="cur_nav">과정관리상세</span></li>
</ul> </ul>
</div> </div>
<!-- //cont_tit --> <!-- //cont_tit -->
<div class="cont"> <div class="cont">
<!-- list_상세 --> <!-- list_상세 -->
<div class="tb_tit01"> <div class="tb_tit01">
<p>교육과정관리</p> <p>교육과정관리</p>
</div> </div>
<div class="tb_type02"> <div class="tb_type02">
<table> <table>
<colgroup> <colgroup>
<col style="width: 210px;"> <col style="width: 210px;">
<col style="width: auto;"> <col style="width: auto;">
<col style="width: 210px;"> <col style="width: 210px;">
<col style="width: auto;"> <col style="width: auto;">
</colgroup> </colgroup>
<tbody> <tbody>
<tr> <tr>
<th scope="row">교육부문</th> <th scope="row">교육부문</th>
<td colspan="3" style="position: relative;"> <td colspan="3" style="position: relative;">
<ve:code codeId="VEA001" code="${info.prcsDiv}"/> <ve:code codeId="VEA001" code="${info.prcsDiv}"/>
<div class="put_photo"> <div class="put_photo">
<div class="put_photo_in"> <div class="put_photo_in">
<div class="put_photo"> <div class="put_photo">
<div class="put_photo_in"> <div class="put_photo_in">
<div class="put_photo_box"> <div class="put_photo_box">
<c:if test="${empty info.imageAtchFileId}"> <c:if test="${empty info.imageAtchFileId}">
<img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/img_add.png" alt="이미지를 넣어주세요"> <img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/img_add.png" alt="이미지를 넣어주세요">
</c:if> </c:if>
<c:if test="${not empty info.imageAtchFileId}"> <c:if test="${not empty info.imageAtchFileId}">
<img id="instrPhoto" class="id_pic" alt="사진" src='<c:url value='/uss/ion/pwm/getImage.do'/>?atchFileId=<c:out value="${info.imageAtchFileId}"/>' /> <img id="instrPhoto" class="id_pic" alt="사진" src='<c:url value='/uss/ion/pwm/getImage.do'/>?atchFileId=<c:out value="${info.imageAtchFileId}"/>' />
</c:if> </c:if>
<input type="hidden" name="imageAtchFileId" id="imageAtchFileId" value="<c:out value='${info.imageAtchFileId}'/>"/> <input type="hidden" name="imageAtchFileId" id="imageAtchFileId" value="<c:out value='${info.imageAtchFileId}'/>"/>
</div> </div>
<!-- <button type="button" class="btnType01" onclick="fncPhotoPopup(); return false;">사진등록</button> --> <!-- <button type="button" class="btnType01" onclick="fncPhotoPopup(); return false;">사진등록</button> -->
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</td> </td>
</tr> </tr>
<tr> <tr>
<th scope="row">과정명</th> <th scope="row">과정명</th>
<td> <td>
<c:out value='${info.prcsNm}' /> <c:out value='${info.prcsNm}' />
</td> </td>
</tr> </tr>
<tr> <tr>
<th scope="row">과정설명</th> <th scope="row">과정설명</th>
<td> <td>
<c:out value='${info.prcsCn}' />
</td> <!-- <div id="bbs_cn"> -->
</tr> <c:out value="${fn:replace(info.prcsCn , crlf , '<br/>')}" escapeXml="false" />
<tr> <!-- </div> -->
<th scope="row">사용여부</th>
<td> <%-- <c:out value='${info.prcsCn}' /> --%>
<c:if test="${info.useYn eq 'Y'}"> </td>
사용 </tr>
</c:if> <tr>
<c:if test="${info.useYn ne 'Y'}"> <th scope="row">사용여부</th>
미사용 <td>
</c:if> <c:if test="${info.useYn eq 'Y'}">
</td> 사용
</tr> </c:if>
</tbody> <c:if test="${info.useYn ne 'Y'}">
</table> 미사용
</div> </c:if>
<!-- //list_상세 --> </td>
</tr>
<!-- btn_wrap --> </tbody>
<div class="btn_wrap btn_layout01"> </table>
<div class="btn_left"> </div>
</div> <!-- //list_상세 -->
<div class="btn_center">
</div> <!-- btn_wrap -->
<div class="btn_right"> <div class="btn_wrap btn_layout01">
<button type="button" class="btn_type02" onclick="fncMdfy(); return false;">수정</button> <div class="btn_left">
<button type="button" class="btn_type03" onclick="fncGoList(); return false;">목록</button> </div>
</div> <div class="btn_center">
</div> </div>
</div> <div class="btn_right">
</div> <button type="button" class="btn_type02" onclick="fncMdfy(); return false;">수정</button>
</div> <button type="button" class="btn_type03" onclick="fncGoList(); return false;">목록</button>
</form:form> </div>
<!-- //cont --> </div>
</body> </div>
</html> </div>
</div>
</form:form>
<!-- //cont -->
</body>
</html>

View File

@ -1,286 +1,290 @@
<!DOCTYPE html> <!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> <%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %> <%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%> <%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<un:useConstants var="KccadrStatus" className="kcc.kccadr.cmm.KccadrConstants" /> <un:useConstants var="KccadrStatus" className="kcc.kccadr.cmm.KccadrConstants" />
<% <%
/** /**
* @Class Name : fndthEduPrcsMngList.jsp * @Class Name : fndthEduPrcsMngList.jsp
* @Description : 기반강화연수 과정관리 목록 * @Description : 기반강화연수 과정관리 목록
* @Modification Information * @Modification Information
* @ * @
* @ 수정일 수정자 수정내용 * @ 수정일 수정자 수정내용
* @ ------- -------- --------------------------- * @ ------- -------- ---------------------------
* @ 2021.12.14 조용준 최초 생성 * @ 2021.12.14 조용준 최초 생성
* @author 조용준 * @author 조용준
* @since 2021.12.14 * @since 2021.12.14
* @version 1.0 * @version 1.0
* @see * @see
* *
*/ */
%> %>
<html lang="ko"> <html lang="ko">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style> <style>
input:read-only{ input:read-only{
background-color: #ededed; background-color: #ededed;
} }
</style> </style>
<script type="text/javascript"> <script type="text/javascript">
function fncGoList(){ function fncGoList(){
linkPage(1); linkPage(1);
} }
function linkPage(pageNo){ function linkPage(pageNo){
var listForm = document.listForm ; var listForm = document.listForm ;
listForm.pageIndex.value = pageNo ; listForm.pageIndex.value = pageNo ;
listForm.searchKeyword.value = $('#searchKeyword').val(); listForm.searchKeyword.value = $('#searchKeyword').val();
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>"; listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>";
listForm.submit(); listForm.submit();
} }
function fncGoDetail(prcsOrd){ function fncGoDetail(prcsOrd){
var listForm = document.listForm ; var listForm = document.listForm ;
listForm.prcsOrd.value = prcsOrd ; listForm.prcsOrd.value = prcsOrd ;
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngDetail.do'/>"; listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngDetail.do'/>";
listForm.submit(); listForm.submit();
} }
function fncCreate() { function fncCreate() {
var listForm = document.listForm ; var listForm = document.listForm ;
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngReg.do'/>"; listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngReg.do'/>";
listForm.submit(); listForm.submit();
} }
function fncDelete(prcsOrd){ function fncDelete(prcsOrd){
document.listForm.prcsOrd.value = prcsOrd ; document.listForm.prcsOrd.value = prcsOrd ;
var pageIndex = document.listForm.pageIndex.value; var pageIndex = document.listForm.pageIndex.value;
if($(".listCount").length == '1'){ if($(".listCount").length == '1'){
pageIndex = pageIndex -1; pageIndex = pageIndex -1;
} }
var data = new FormData(document.getElementById("listForm")); var data = new FormData(document.getElementById("listForm"));
if(confirm("삭제하시겠습니까?")){ if(confirm("삭제하시겠습니까?")){
var url = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsMngDeleteAjax.do'/>"; var url = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsMngDeleteAjax.do'/>";
console.log(data); console.log(data);
$.ajax({ $.ajax({
type:"POST", type:"POST",
url: url, url: url,
data: data, data: data,
dataType:'json', dataType:'json',
async: false, async: false,
processData: false, processData: false,
contentType: false, contentType: false,
cache: false, cache: false,
success:function(returnData){ success:function(returnData){
if(returnData.result == "success"){ if(returnData.result == "success"){
alert("삭제되었습니다."); alert("삭제되었습니다.");
document.listForm.prcsOrd.value = ""; //리스트 이동시 prcsOrd 초기화 document.listForm.prcsOrd.value = ""; //리스트 이동시 prcsOrd 초기화
linkPage(pageIndex); linkPage(pageIndex);
} }
}, },
error:function(request , status, error){ error:function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
} }
}); });
} }
event.stopImmediatePropagation(); event.stopImmediatePropagation();
} }
function fncSaveSort(prcsOrd, count){ function fncSaveSort(prcsOrd, count){
var sortNo = $('#prcsSortNo'+count).val(); var sortNo = $('#prcsSortNo'+count).val();
if(sortNo == ''){ if(sortNo == ''){
alert("표시순서를 입력해 주세요."); alert("표시순서를 입력해 주세요.");
return false; return false;
} }
$('#prcsOrd').val(prcsOrd); $('#prcsOrd').val(prcsOrd);
$('#prcsSortNo').val(sortNo); $('#prcsSortNo').val(sortNo);
var data = new FormData(document.getElementById("listForm")); var data = new FormData(document.getElementById("listForm"));
var url = "<c:url value='/kccadr/oprtn/otsdCprtnPrcs/eduPrcsSortUpdateAjax.do'/>"; var url = "<c:url value='/kccadr/oprtn/otsdCprtnPrcs/eduPrcsSortUpdateAjax.do'/>";
$.ajax({ $.ajax({
type:"POST", type:"POST",
url: url, url: url,
data: data, data: data,
dataType:'json', dataType:'json',
async: false, async: false,
processData: false, processData: false,
contentType: false, contentType: false,
cache: false, cache: false,
success:function(returnData){ success:function(returnData){
if(returnData.result == "success"){ if(returnData.result == "success"){
alert("저장되었습니다."); alert("저장되었습니다.");
document.listForm.prcsOrd.value = ""; //리스트 이동시 prcsOrd 초기화 document.listForm.prcsOrd.value = ""; //리스트 이동시 prcsOrd 초기화
fncGoList(); fncGoList();
} }
}, },
error:function(request , status, error){ error:function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
} }
}); });
} }
</script> </script>
<title>교육과정관리</title> <title>교육과정관리</title>
</head> </head>
<body> <body>
<form:form id="listForm" name="listForm" method="post" commandName="vEPrcsDetailVO" onsubmit="return false;"> <form:form id="listForm" name="listForm" method="post" commandName="vEPrcsDetailVO" onsubmit="return false;">
<input type="hidden" name="pageIndex" value="<c:out value='${vEPrcsDetailVO.pageIndex}' default='1' />"/> <input type="hidden" name="pageIndex" value="<c:out value='${vEPrcsDetailVO.pageIndex}' default='1' />"/>
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEPrcsDetailVO.searchSortCnd}" />" /> <input type="hidden" name="searchSortCnd" value="<c:out value="${vEPrcsDetailVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEPrcsDetailVO.searchSortOrd}" />" /> <input type="hidden" name="searchSortOrd" value="<c:out value="${vEPrcsDetailVO.searchSortOrd}" />" />
<input type="hidden" id="prcsOrd" name="prcsOrd" value="" /> <input type="hidden" id="prcsOrd" name="prcsOrd" value="" />
<input type="hidden" id="prcsSortNo" name="prcsSortNo" value="" /> <input type="hidden" id="prcsSortNo" name="prcsSortNo" value="" />
<div class="cont_wrap"> <div class="cont_wrap">
<div class="box"> <div class="box">
<!-- cont_tit --> <!-- cont_tit -->
<div class="cont_tit"> <div class="cont_tit">
<h2>과정관리목록</h2> <h2>과정관리목록</h2>
<ul class="cont_nav"> <ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li> <li class="home"><a href="/"><i></i></a></li>
<li> <li>
<p>실무자역량강화(기반강화연수관리)</p> <p>실무자역량강화(기반강화연수관리)</p>
</li> </li>
<li><span class="cur_nav">과정관리목록</span></li> <li><span class="cur_nav">과정관리목록</span></li>
</ul> </ul>
</div> </div>
<!-- //cont_tit --> <!-- //cont_tit -->
<div class="cont"> <div class="cont">
<div class="tb_tit01"> <div class="tb_tit01">
<p>교육 과정 관리</p> <p>교육 과정 관리</p>
</div> </div>
<!-- list_top --> <!-- list_top -->
<div class="list_top search-only"> <div class="list_top search-only">
<div class="list_top_1"> <div class="list_top_1">
<div class="util_right"> <div class="util_right">
<ve:select codeId="VEA001" name="searchStatus" id="searchStatus" css="class='sel_type1'" <ve:select codeId="VEA001" name="searchStatus" id="searchStatus" css="class='sel_type1'"
selectedValue="${vEPrcsDetailVO.searchStatus }" defaultValue="" selectedValue="${vEPrcsDetailVO.searchStatus }" defaultValue=""
defaultText="전체" defaultText="전체"
/> />
<div class="calendar_wrap"> <div class="calendar_wrap">
<input type="text" class="calendar" title="시작일 선택" id="searchSmbtStartDt" name="searchSmbtStartDt" value="${vEPrcsDetailVO.searchSmbtStartDt}"> <input type="text" class="calendar" title="시작일 선택" id="searchSmbtStartDt" name="searchSmbtStartDt" value="${vEPrcsDetailVO.searchSmbtStartDt}">
</div> </div>
~ ~
<div class="calendar_wrap"> <div class="calendar_wrap">
<input type="text" class="calendar" title="종료일 선택" id="searchSmbtEndDt" name="searchSmbtEndDt" value="${vEPrcsDetailVO.searchSmbtEndDt}"> <input type="text" class="calendar" title="종료일 선택" id="searchSmbtEndDt" name="searchSmbtEndDt" value="${vEPrcsDetailVO.searchSmbtEndDt}">
</div> </div>
<input type="text" id="searchKeyword" name="searchKeyword" placeholder="과정명를 입력하세요." title="검색어 입력" class="search_input" value="<c:out value='${vEEduAplctVO.searchFullName}'/>"> <input type="text" id="searchKeyword" name="searchKeyword" placeholder="과정명를 입력하세요." title="검색어 입력" class="search_input" value="<c:out value='${vEEduAplctVO.searchFullName}'/>">
<button type="button" class="btn_type08" onclick="fncGoList(); return false;">검색</button> <button type="button" class="btn_type08" onclick="fncGoList(); return false;">검색</button>
<button class="btn_type03" onclick="fncReset(this); return false;">초기화</button> <button class="btn_type03" onclick="fncReset(this); return false;">초기화</button>
</div> </div>
</div> </div>
</div> </div>
<div class="list_util"> <div class="list_util">
<p class="list_util_p"><span><c:out value="${paginationInfo.totalRecordCount}" /></span>건의 접수가 검색되었습니다.</p> <p class="list_util_p"><span><c:out value="${paginationInfo.totalRecordCount}" /></span>건의 접수가 검색되었습니다.</p>
<div> <div>
<select class="sel_type1" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px" class="sel_type1"> <select class="sel_type1" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px" class="sel_type1">
<option value='10' <c:if test="${vEPrcsDetailVO.pageUnit == '10' or vEPrcsDetailVO.pageUnit == ''}">selected</c:if>>10줄</option> <option value='10' <c:if test="${vEPrcsDetailVO.pageUnit == '10' or vEPrcsDetailVO.pageUnit == ''}">selected</c:if>>10줄</option>
<option value='20' <c:if test="${vEPrcsDetailVO.pageUnit == '20'}">selected</c:if>>20줄</option> <option value='20' <c:if test="${vEPrcsDetailVO.pageUnit == '20'}">selected</c:if>>20줄</option>
<option value='30' <c:if test="${vEPrcsDetailVO.pageUnit == '30'}">selected</c:if>>30줄</option> <option value='30' <c:if test="${vEPrcsDetailVO.pageUnit == '30'}">selected</c:if>>30줄</option>
<option value='100' <c:if test="${vEPrcsDetailVO.pageUnit == '100'}">selected</c:if>>100줄</option> <option value='100' <c:if test="${vEPrcsDetailVO.pageUnit == '100'}">selected</c:if>>100줄</option>
</select> </select>
<%--<button type="button" class="btn_down_excel">엑셀 다운로드</button>--%> <%--<button type="button" class="btn_down_excel">엑셀 다운로드</button>--%>
</div> </div>
</div> </div>
<!-- //list_top --> <!-- //list_top -->
<!-- list --> <!-- list -->
<div class="tb_type01"> <div class="tb_type01">
<table> <table>
<colgroup> <colgroup>
<col style="width: 10%"> <col style="width: 10%">
<col style="width: 20%"> <col style="width: 20%">
<col style="width: auto"> <col style="width: auto">
<col style="width: 10%"> <col style="width: 10%">
<col style="width: 10%"> <col style="width: 10%">
</colgroup> </colgroup>
<thead> <thead>
<tr> <tr>
<th>교육부문</th> <th>교육부문</th>
<th>과정명</th> <th>과정명</th>
<th>설명</th> <th>설명</th>
<th>등록일시</th> <th>등록일시</th>
<th>사용여부 </th> <th>사용여부 </th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<c:forEach var="list" items="${list}" varStatus="status"> <c:forEach var="list" items="${list}" varStatus="status">
<tr class="listCount"> <tr class="listCount">
<td> <td>
<kc:code codeId="VEA001" code="${list.prcsDiv}"/> <kc:code codeId="VEA001" code="${list.prcsDiv}"/>
</td> </td>
<td onclick="fncGoDetail('<c:out value="${list.prcsOrd}"/>');" style="cursor:pointer;"> <td onclick="fncGoDetail('<c:out value="${list.prcsOrd}"/>');" style="cursor:pointer;">
<c:out value='${list.prcsNm}'/> <c:out value='${list.prcsNm}'/>
</td> </td>
<td onclick="fncGoDetail('<c:out value="${list.prcsOrd}"/>');" style="cursor:pointer;">
<c:out value='${list.prcsCn}'/> <td onclick="fncGoDetail('<c:out value="${list.prcsOrd}"/>');" style="cursor:pointer;text-align: left;">
</td> <!-- <div id="bbs_cn"> -->
<td> <c:out value="${fn:replace(list.prcsCn , crlf , '<br/>')}" escapeXml="false" />
<c:out value='${list.frstRegistPnttm}'/> <!-- </div> -->
</td> <%-- <c:out value='${list.prcsCn}'/> --%>
<td> </td>
<c:if test="${list.useYn eq 'Y'}"> <td>
사용 <c:out value='${list.frstRegistPnttm}'/>
</c:if> </td>
<c:if test="${list.useYn ne 'Y'}"> <td>
미사용 <c:if test="${list.useYn eq 'Y'}">
</c:if> 사용
</td> </c:if>
<c:if test="${list.useYn ne 'Y'}">
</tr> 미사용
</c:forEach> </c:if>
<c:if test="${empty list}"> </td>
<tr><td colspan="5"><spring:message code="common.nodata.msg" /></td></tr>
</c:if> </tr>
</tbody> </c:forEach>
</table> <c:if test="${empty list}">
</div> <tr><td colspan="5"><spring:message code="common.nodata.msg" /></td></tr>
<!-- //list --> </c:if>
</tbody>
<!-- page --> </table>
<div class="page"> </div>
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" /> <!-- //list -->
</div>
<div class="btn_wrap btn_layout01"> <!-- page -->
<div class="btn_left"> <div class="page">
</div> <ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
<div class="btn_center"> </div>
</div> <div class="btn_wrap btn_layout01">
<div class="btn_right"> <div class="btn_left">
<button type="button" class="btn_type01" onclick="fncCreate(); return false;">등록</button> </div>
</div> <div class="btn_center">
</div> </div>
<!-- //page --> <div class="btn_right">
</div> <button type="button" class="btn_type01" onclick="fncCreate(); return false;">등록</button>
</div> </div>
</div> </div>
<!-- //cont --> <!-- //page -->
<!-- //cont --> </div>
</div>
</form:form> </div>
<!-- //cont -->
</body> <!-- //cont -->
</html>
</form:form>
</body>
</html>

View File

@ -8,6 +8,7 @@
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%> <%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%@ taglib prefix="ckeditor" uri="http://ckeditor.com"%>
<% <%
/** /**
* @Class Name : fndthEduPrcsMngMdfy.jsp * @Class Name : fndthEduPrcsMngMdfy.jsp
@ -98,6 +99,7 @@
} }
function fncSave(){ function fncSave(){
CKEDITOR.instances.prcsCn.updateElement();
var data = new FormData(document.getElementById("createForm")); var data = new FormData(document.getElementById("createForm"));
if(confirm("수정하시겠습니까?")){ if(confirm("수정하시겠습니까?")){
@ -215,7 +217,16 @@
<tr> <tr>
<th scope="row">상세교육과정</th> <th scope="row">상세교육과정</th>
<td> <td>
<textarea placeholder="과정설명을 입력해주세요." name="prcsCn" id="prcsCn" class="memo" onfocus="this.placeholder=''" onblur="this.placeholder='과정설명을 입력해주세요.'" class="inputLight" style="height: 200px;"><c:out value="${info.prcsCn }" /></textarea> <%-- <textarea placeholder="과정설명을 입력해주세요." name="prcsCn" id="prcsCn" class="memo" onfocus="this.placeholder=''" onblur="this.placeholder='과정설명을 입력해주세요.'" class="inputLight" style="height: 200px;"><c:out value="${info.prcsCn }" /></textarea> --%>
<textarea id="prcsCn" name="prcsCn" title="<spring:message code="cop.nttCn" />" cols="500" rows="20">
<%-- <c:out value="${board.nttCn}" escapeXml="false" /> --%>
<c:out value="${info.prcsCn}" escapeXml="false" />
</textarea>
<ckeditor:replace replace="prcsCn" basePath="${pageContext.request.contextPath}/html/egovframework/com/cmm/utl/ckeditor/" />
<form:errors path="prcsCn" />
</td> </td>
</tr> </tr>

View File

@ -1,250 +1,199 @@
<!DOCTYPE html> <!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8" <%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%> pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%> <%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> <%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<% <%@ taglib prefix="ckeditor" uri="http://ckeditor.com"%>
/** <%
* @Class Name : fndthEduPrcsMngReg.jsp /**
* @Description : 기반강화연수 과정 등록 * @Class Name : fndthEduPrcsMngReg.jsp
* @Modification Information * @Description : 기반강화연수 과정 등록
* @ * @Modification Information
* @ 수정일 수정자 수정내용 * @
* @ ------- -------- --------------------------- * @ 수정일 수정자 수정내용
* @ 2021.12.16 조용준 최초 생성 * @ ------- -------- ---------------------------
* @author 조용주 * @ 2021.12.16 조용준 최초 생성
* @since 2021.12.16 * @author 조용주
* @version 1.0 * @since 2021.12.16
* @see * @version 1.0
* * @see
*/ *
%> */
<html lang="ko"> %>
<head> <html lang="ko">
<title>교육과정관리</title> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>교육과정관리</title>
<script type="text/javascript"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
//세부과정 추가 버튼 클릭 시 세부과정 추가 <script type="text/javascript">
function addPro() { //세부과정 추가 버튼 클릭 시 세부과정 추가
var addQuest = $(".addPro_wrap");
var questLen = addQuest.children("div").length;
questLen = Number(questLen+1);
var trHtml=""; function fncSave(){
CKEDITOR.instances.prcsCn.updateElement();
trHtml += '<div class="tbody_one">';
trHtml += '<span><span class="span_num3">'+ questLen +'</span>.</span>'; var data = new FormData(document.getElementById("vEPrcsDetailVO"));
trHtml += '<div>'; if(confirm("저장하시겠습니까?")){
trHtml += '<input type="text" name="detailPrcsNm" id="detailPrcsNm"> '; var url = "${pageContext.request.contextPath}/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngRegAjax.do";
trHtml += '<button type="button" class="table_del3" onclick="delPro(this)"><img src="${pageContext.request.contextPath}/visitEdu/adm/publish/image/content/btn_del.png"></button>'; console.log(data);
trHtml += '</div>'; $.ajax({
trHtml += '</div>'; type:"POST",
url: url,
addQuest.append(trHtml); data: data,
} dataType:'json',
async: false,
//삭제 버튼 클릭 시 현재 div 삭제 후 지문 숫자 재선언 processData: false,
function delPro(item) { contentType: false,
var bodyThis = $(item).closest('.tbody_one'); cache: false,
var tb = $(item).closest('.addPro_wrap').find('.tbody_one'); success:function(returnData){
var len = $(item).closest('.addPro_wrap').children('.tbody_one').length; if(returnData.result == "success"){
var idx = bodyThis.index(); alert("저장되었습니다.");
fncGoList();
if(len == 1){ }
alert("세부과정은 최소1개가 존재해야합니다."); },
return false; error:function(request , status, error){
}else{ alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
bodyThis.remove(); }
});
for(var i=0;i<len;i++){ }
if(idx>i){ }
tb.eq(i).find('.span_num3').text(i+1);
}else{ function fncGoList(){
tb.eq(i).find('.span_num3').text(i); var listForm = document.listForm ;
} listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>";
} listForm.submit();
} }
}
function fncPhotoPopup() {
var pop = document.createForm;
function fncAddUser(){ commonPopWindowopenForm("${pageContext.request.contextPath}/kccadr/oprtn/fndthEnhanceTrn/popup/fndthEduPhotoRegPopup.do", "750", "660", "fncPhotoPopup", $('#createForm'));
var obj = $(".memList:first").clone(true); }
obj.children('input').val('')
/* </script>
var len = $(".memList").length;
$.each(obj.find("input"), function(idx, objInput){ </head>
objInput.name = objInput.name.replace(/\[.*\]/,'['+(len+1)+']'); <body>
console.log(objInput.name); <form:form id="listForm" name="listForm" commandName="vEPrcsDetailVO" method="post">
if(objInput.name.indexOf("memGrade") < 0){ </form:form>
objInput.value = '';
} <%-- <form:form id="createForm" name="createForm" commandName="adjustDeptManageVO" method="post"> --%>
});
obj.find("button").attr("id", obj.find("button").attr("id").replace(/[0-9]/gi, len+2)); <form:form commandName="vEPrcsDetailVO" name="createForm" method="post" enctype="multipart/form-data">
obj.find("tr:last > td").text(""); <!-- cont -->
*/ <div class="cont_wrap">
$(".memList:last").after(obj); <div class="box">
}
<!-- cont_tit -->
function fncDelUser(obj){ <div class="cont_tit">
if($(".memList").length <= 1){ <h2>교육과정등록</h2>
alert("담당자은 최소1개가 존재해야합니다."); <ul class="cont_nav">
}else{ <li class="home"><a href="/"><i></i></a></li>
$(obj).closest("td").remove(); <li>
} <p>실무자역량강화(기반강화연수관리)</p>
} </li>
<li><span class="cur_nav">기반강화연수관리</span></li>
function fncSave(){ </ul>
</div>
var data = new FormData(document.getElementById("createForm")); <!-- //cont_tit -->
if(confirm("저장하시겠습니까?")){
var url = "${pageContext.request.contextPath}/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngRegAjax.do"; <div class="cont">
console.log(data); <!-- list_상세 -->
$.ajax({ <div class="tb_tit01">
type:"POST", <p>교육과정</p>
url: url, </div>
data: data, <div class="tb_type02">
dataType:'json', <table>
async: false, <colgroup>
processData: false, <col style="width: 210px;">
contentType: false, <col style="width: auto;">
cache: false, <col style="width: 210px;">
success:function(returnData){ <col style="width: auto;">
if(returnData.result == "success"){ </colgroup>
alert("저장되었습니다.");
fncGoList(); <tbody>
} <tr>
}, <th scope="row">교육부문</th>
error:function(request , status, error){ <td colspan="3" style="position: relative;">
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); <ve:select codeId="VEA001" name="prcsDiv" id="prcsDiv" css="class='sel_type1'"
} selectedValue="" defaultValue=''
}); defaultText="선택"
} />
} <!-- <input type="text" name="instrNm"/> -->
<div class="put_photo">
function fncGoList(){ <div class="put_photo_in">
var listForm = document.listForm ; <div class="put_photo">
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>"; <div class="put_photo_in">
listForm.submit(); <div class="put_photo_box">
} <img id="emptyImg" src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/img_add.png" alt="이미지를 넣어주세요">
<input type="hidden" name="imageAtchFileId" id="imageAtchFileId" value=""/>
function fncPhotoPopup() { </div>
var pop = document.createForm; <div>
commonPopWindowopenForm("${pageContext.request.contextPath}/kccadr/oprtn/fndthEnhanceTrn/popup/fndthEduPhotoRegPopup.do", "750", "660", "fncPhotoPopup", $('#createForm')); <button type="button" class="btn_type01" onclick="fncPhotoPopup(); return false;">사진등록</button>
} </div>
</div>
</script> <!-- <button type="button" class="btnType01" onclick="fncPhotoPopup(); return false;">사진등록</button> -->
</div>
</head> </div>
<body> </div>
<form:form id="listForm" name="listForm" commandName="vEPrcsDetailVO" method="post"> <%-- <ve:select codeId="VE0015" name="prcsDiv" id="prcsDiv" css="class='sel_type1'" selectedValue="<c:out value='${info.prcsDiv}'/>" defaultValue='10'/> --%>
</form:form> </td>
<form:form id="createForm" name="createForm" commandName="adjustDeptManageVO" method="post"> </tr>
<!-- cont --> <tr>
<div class="cont_wrap"> <th scope="row">과정명</th>
<div class="box"> <td>
<input type="text" name="prcsNm"/>
<!-- cont_tit --> </td>
<div class="cont_tit"> </tr>
<h2>교육과정등록</h2> <tr>
<ul class="cont_nav"> <th scope="row">상세교육과정</th>
<li class="home"><a href="/"><i></i></a></li> <td>
<li> <!-- <textarea placeholder="과정설명을 입력해주세요." name="prcsCn" id="prcsCn" class="memo" onfocus="this.placeholder=''" onblur="this.placeholder='과정설명을 입력해주세요.'" class="inputLight" style="height: 200px;"></textarea> -->
<p>실무자역량강화(기반강화연수관리)</p> <%--
</li> <form:textarea path="nttCn" class="textarea" cols="500" rows="20" />
<li><span class="cur_nav">기반강화연수관리</span></li> <ckeditor:replace replace="nttCn" basePath="${pageContext.request.contextPath}/html/egovframework/com/cmm/utl/ckeditor/" />
</ul> <form:errors path="nttCn" />
</div> --%>
<!-- //cont_tit --> <form:textarea path="prcsCn" class="textarea" cols="500" rows="20" />
<ckeditor:replace replace="prcsCn" basePath="${pageContext.request.contextPath}/html/egovframework/com/cmm/utl/ckeditor/" />
<div class="cont"> <form:errors path="prcsCn" />
<!-- list_상세 --> </td>
<div class="tb_tit01"> </tr>
<p>교육과정</p>
</div> <tr>
<div class="tb_type02"> <th scope="row">상태</th>
<table> <td>
<colgroup> <select name="useYn" class="sel_type1">
<col style="width: 210px;"> <option value="Y">사용</option>
<col style="width: auto;"> <option value="N">미사용</option>
<col style="width: 210px;"> </select>
<col style="width: auto;"> </td>
</colgroup> </tr>
</tbody>
<tbody> </table>
<tr> </div>
<th scope="row">교육부문</th> <!-- //list_상세 -->
<td colspan="3" style="position: relative;">
<ve:select codeId="VEA001" name="prcsDiv" id="prcsDiv" css="class='sel_type1'" <!-- btn_wrap -->
selectedValue="" defaultValue='' <div class="btn_wrap btn_layout01">
defaultText="선택" <div class="btn_left">
/> </div>
<!-- <input type="text" name="instrNm"/> --> <div class="btn_center">
<div class="put_photo"> </div>
<div class="put_photo_in"> <div class="btn_right">
<div class="put_photo"> <button type="button" class="btn_type02" onclick="fncSave(); return false;">저장</button>
<div class="put_photo_in"> <button type="button" class="btn_type03" onclick="fncGoList(); return false;">목록</button>
<div class="put_photo_box"> </div>
<img id="emptyImg" src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/img_add.png" alt="이미지를 넣어주세요"> </div>
<input type="hidden" name="imageAtchFileId" id="imageAtchFileId" value=""/> </div>
</div> </div>
<div> </div>
<button type="button" class="btn_type01" onclick="fncPhotoPopup(); return false;">사진등록</button> </form:form>
</div> <!-- //cont -->
</div> </body>
<!-- <button type="button" class="btnType01" onclick="fncPhotoPopup(); return false;">사진등록</button> --> </html>
</div>
</div>
</div>
<%-- <ve:select codeId="VE0015" name="prcsDiv" id="prcsDiv" css="class='sel_type1'" selectedValue="<c:out value='${info.prcsDiv}'/>" defaultValue='10'/> --%>
</td>
</tr>
<tr>
<th scope="row">과정명</th>
<td>
<input type="text" name="prcsNm"/>
</td>
</tr>
<tr>
<th scope="row">상세교육과정</th>
<td>
<textarea placeholder="과정설명을 입력해주세요." name="prcsCn" id="prcsCn" class="memo" onfocus="this.placeholder=''" onblur="this.placeholder='과정설명을 입력해주세요.'" class="inputLight" style="height: 200px;"></textarea>
</td>
</tr>
<tr>
<th scope="row">상태</th>
<td>
<select name="useYn" class="sel_type1">
<option value="Y">사용</option>
<option value="N">미사용</option>
</select>
</td>
</tr>
</tbody>
</table>
</div>
<!-- //list_상세 -->
<!-- btn_wrap -->
<div class="btn_wrap btn_layout01">
<div class="btn_left">
</div>
<div class="btn_center">
</div>
<div class="btn_right">
<button type="button" class="btn_type02" onclick="fncSave(); return false;">저장</button>
<button type="button" class="btn_type03" onclick="fncGoList(); return false;">목록</button>
</div>
</div>
</div>
</div>
</div>
</form:form>
<!-- //cont -->
</body>
</html>

View File

@ -106,6 +106,7 @@
data: { data: {
"eduAplctOrd" : $("#eduAplctOrd").val() , "eduAplctOrd" : $("#eduAplctOrd").val() ,
"aprvlCd" : statusVal, "aprvlCd" : statusVal,
"lctrDivCd" : $("#lctrDivCd").val()
}, },
dataType:'json', dataType:'json',
success:function(returnData){ success:function(returnData){

View File

@ -62,6 +62,7 @@
data: { data: {
"eduAplctOrd" : $("#eduAplctOrd").val() , "eduAplctOrd" : $("#eduAplctOrd").val() ,
"aprvlCd" : VeConstants.APRVL_CD_20, "aprvlCd" : VeConstants.APRVL_CD_20,
"lctrDivCd" : $("#lctrDivCd").val()
}, },
dataType:'json', dataType:'json',
success:function(returnData){ success:function(returnData){
@ -109,7 +110,8 @@
url:"${pageContext.request.contextPath}/kccadr/oprtn/comm/eduAplctStatusAjax.do", url:"${pageContext.request.contextPath}/kccadr/oprtn/comm/eduAplctStatusAjax.do",
data: { data: {
"eduAplctOrd" : $("#eduAplctOrd").val() , "eduAplctOrd" : $("#eduAplctOrd").val() ,
"useYn" : 'N' "useYn" : 'N',
"lctrDivCd" : $("#lctrDivCd").val()
}, },
dataType:'json', dataType:'json',
success:function(returnData){ success:function(returnData){
@ -139,6 +141,7 @@
data: { data: {
"eduAplctOrd" : $("#eduAplctOrd").val() , "eduAplctOrd" : $("#eduAplctOrd").val() ,
"aprvlCd" : statusVal, "aprvlCd" : statusVal,
"lctrDivCd" : $("#lctrDivCd").val()
}, },
dataType:'json', dataType:'json',
success:function(returnData){ success:function(returnData){

View File

@ -206,7 +206,7 @@ function usrJoin(){
</button> --%> </button> --%>
<div class="area_right"> <div class="area_right">
<p class="login_info"><span class="t_none">알림</span><a href="#" class="header_alarm"><span class="a_count">28</span></a></p> <!-- <p class="login_info"><span class="t_none">알림</span><a href="#" class="header_alarm"><span class="a_count">28</span></a></p> -->
<!-- local --> <!-- local -->
<c:if test="${environment eq 'local' }"> <c:if test="${environment eq 'local' }">
<p class="login_info header_login_wrap"><a href="${pageContext.request.contextPath}/web/user/login/ssoLogin.do" class="header_login"><i></i>로그인</a></p> <p class="login_info header_login_wrap"><a href="${pageContext.request.contextPath}/web/user/login/ssoLogin.do" class="header_login"><i></i>로그인</a></p>
@ -269,7 +269,7 @@ function usrJoin(){
</button> --%> </button> --%>
<div class="area_right"> <div class="area_right">
<p class="login_info"><span class="t_none">알림</span><a href="#" class="header_alarm"><span class="a_count">28</span></a></p> <p class="login_info"><span class="t_none">알림</span><a href="<c:url value="/web/my/myNotifyMngList.do" />" class="header_alarm"><c:if test="${notifyCnt > 0}"><span class="a_count">${notifyCnt }</span></c:if></a></p>
<p class="login_after"><c:out value="${LoginVO.id}"/><span>님</span></p> <p class="login_after"><c:out value="${LoginVO.id}"/><span>님</span></p>
<p class="login_after"><a href="<c:url value="/web/my/myPageDashBoard.do" />" title="새창열림">마이페이지</a></p> <p class="login_after"><a href="<c:url value="/web/my/myPageDashBoard.do" />" title="새창열림">마이페이지</a></p>
<!-- e배움터 로그인 연동으로 인하여 개발, 운영 구분 --> <!-- e배움터 로그인 연동으로 인하여 개발, 운영 구분 -->
@ -302,17 +302,17 @@ function usrJoin(){
<c:choose> <c:choose>
<c:when test="${empty LoginVO or empty ssoLoginVO}"> <c:when test="${empty LoginVO or empty ssoLoginVO}">
<c:if test="${environment eq 'local' }"> <c:if test="${environment eq 'local' }">
<p class="btn_mobile btn_alarm"><span class="t_none">알림</span><a href="#"><span class="m_a_count">28</span></a></p> <p class="btn_mobile btn_alarm"><span class="t_none">알림</span><a href="<c:url value="/web/my/myNotifyMngList.do" />"><c:if test="${notifyCnt > 0}"><span class="m_a_count">${notifyCnt }</span></c:if></a></p>
<button type="button" class="btn_mobile btn_login" onclick="location.href='${pageContext.request.contextPath}/web/user/login/ssoLogin.do'" title="로그인"></button> <button type="button" class="btn_mobile btn_login" onclick="location.href='${pageContext.request.contextPath}/web/user/login/ssoLogin.do'" title="로그인"></button>
<button type="button" class="btn_mobile btn_join" onclick="javascript:usrJoin();" title="회원가입"></button> <button type="button" class="btn_mobile btn_join" onclick="javascript:usrJoin();" title="회원가입"></button>
</c:if> </c:if>
<c:if test="${environment eq 'dev' }"> <c:if test="${environment eq 'dev' }">
<p class="btn_mobile btn_alarm"><span class="t_none">알림</span><a href="#"><span class="m_a_count">28</span></a></p> <p class="btn_mobile btn_alarm"><span class="t_none">알림</span><a href="<c:url value="/web/my/myNotifyMngList.do" />"><c:if test="${notifyCnt > 0}"><span class="m_a_count">${notifyCnt }</span></c:if></a></p>
<button type="button" class="btn_mobile btn_login" onclick="location.href='http://223.255.205.7/user/member/loginForm.do?eduOff=Y'" title="로그인"></button> <button type="button" class="btn_mobile btn_login" onclick="location.href='http://223.255.205.7/user/member/loginForm.do?eduOff=Y'" title="로그인"></button>
<button type="button" class="btn_mobile btn_join" onclick="location.href='http://223.255.205.7/user/usrservice/selectUserSeView.do?eduOff=Y'" title="회원가입"></button> <button type="button" class="btn_mobile btn_join" onclick="location.href='http://223.255.205.7/user/usrservice/selectUserSeView.do?eduOff=Y'" title="회원가입"></button>
</c:if> </c:if>
<c:if test="${environment eq 'real' }"> <c:if test="${environment eq 'real' }">
<p class="btn_mobile btn_alarm"><span class="t_none">알림</span><a href="#"><span class="m_a_count">28</span></a></p> <p class="btn_mobile btn_alarm"><span class="t_none">알림</span><a href="<c:url value="/web/my/myNotifyMngList.do" />"><c:if test="${notifyCnt > 0}"><span class="m_a_count">${notifyCnt }</span></c:if></a></p>
<button type="button" class="btn_mobile btn_login" onclick="location.href='https://edu-copyright.or.kr/user/member/loginForm.do?eduOff=Y'" title="로그인"></button> <button type="button" class="btn_mobile btn_login" onclick="location.href='https://edu-copyright.or.kr/user/member/loginForm.do?eduOff=Y'" title="로그인"></button>
<button type="button" class="btn_mobile btn_join" onclick="location.href='https://edu-copyright.or.kr/user/usrservice/selectUserSeView.do?eduOff=Y'" title="회원가입"></button> <button type="button" class="btn_mobile btn_join" onclick="location.href='https://edu-copyright.or.kr/user/usrservice/selectUserSeView.do?eduOff=Y'" title="회원가입"></button>
</c:if> </c:if>
@ -320,7 +320,7 @@ function usrJoin(){
<c:when test="${!empty LoginVO and !empty ssoLoginVO}"> <c:when test="${!empty LoginVO and !empty ssoLoginVO}">
<button type="button" class="btn_mobile btn_logout" onclick="location.href='${pageContext.request.contextPath}/web/uat/uia/actionLogout.do'" title="로그아웃"></button> <button type="button" class="btn_mobile btn_logout" onclick="location.href='${pageContext.request.contextPath}/web/uat/uia/actionLogout.do'" title="로그아웃"></button>
<button class="btn_mobile btn_mypage" title="마이페이지"></button> <button class="btn_mobile btn_mypage" title="마이페이지"></button>
<p class="btn_mobile btn_alarm"><span class="t_none">알림</span><a href="#"><span class="m_a_count">28</span></a></p> <p class="btn_mobile btn_alarm"><span class="t_none">알림</span><a href="<c:url value="/web/my/myNotifyMngList.do" />"><c:if test="${notifyCnt > 0}"><span class="m_a_count">${notifyCnt }</span></c:if></a></p>
<button type="button" class="btn_mobile btn_usredit" onclick="javascript:usrModify();" title="개인정보 수정"></button> <button type="button" class="btn_mobile btn_usredit" onclick="javascript:usrModify();" title="개인정보 수정"></button>
</c:when> </c:when>
</c:choose> </c:choose>

View File

@ -0,0 +1,133 @@
<%@ page contentType="text/html; charset=utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %>
<un:useConstants var="VeConstants" className="kcc.ve.cmm.VeConstants" />
<% pageContext.setAttribute("replaceChar", "\n"); %>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<style>
input:disabled {
background-color: #f9f9f9 !important;
}
input:read-only {
background-color: #f9f9f9 !important;
}
</style>
<script type="text/javaScript" language="javascript">
$(document).ready(function(){
});
function linkPage(pageNo){
var listForm = document.listForm ;
listForm.pageIndex.value = pageNo ;
listForm.action = "<c:url value='/web/my/myNotifyMngList.do'/>";
listForm.submit();
}
function fn_goDetail(url, lctrDivCd){
var form = '';
if(lctrDivCd == '50' || lctrDivCd == '60')
{
form = document.goForm5060 ;
}
else if($('#lctrDivCd').val() == "") // 강사
{
form = document.goInstrForm ;
}
else
{
form = document.goForm ;
}
form.action = url;
console.log(url);
form.submit();
}
</script>
<form name="listForm" method="POST">
<input type="hidden" name="pageIndex" value="1"/>
</form>
<form id="goInstrForm" name="goInstrForm" method="post" method="POST">
<input type="hidden" name="cmmNotifyOrd" id="cmmNotifyOrd" value="${info.cmmNotifyOrd}">
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${info.eduAplctOrd}">
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="${info.eduChasiOrd}">
</form>
<form id="goForm" name="goForm" method="post" method="POST">
<input type="hidden" name="cmmNotifyOrd" id="cmmNotifyOrd" value="${info.cmmNotifyOrd}">
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${info.eduAplctOrd}">
</form>
<form id="goForm5060" name="goForm5060" method="post" method="POST">
<input type="hidden" name="cmmNotifyOrd" id="cmmNotifyOrd" value="${info.cmmNotifyOrd}">
<input type="hidden" name="prcsAplctPrdOrd" id="prcsAplctPrdOrd" value="${info.eduAplctOrd}">
</form>
<input type="hidden" id="lctrDivCd" name="lctrDivCd" value="${info.lctrDivCd }" />
<div class="cont_wrap" id="sub">
<div class="cont_tit">
<h2>내 알림 상세</h2>
<div class="sns_go">
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button>
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/twitter_icon.png" alt="트위터 바로가기"></button>
</div>
</div>
<div class="tb_type01 tb_write">
<table>
<colgroup>
<col style="width: 210px;">
<col style="width: auto;">
<col style="width: 210px;">
<col style="width: auto;">
</colgroup>
<tbody>
<c:if test="${not empty info.lctrDivCd}">
<tr>
<th scope="row">분류</th>
<td>
<ve:code codeId="VE0011" code="${info.lctrDivCd}"/>
</td>
</tr>
</c:if>
<tr>
<th scope="row">알림 메세지</th>
<td>
${info.notifyCn }
</td>
</tr>
<tr>
<th scope="row">바로가기</th>
<td>
<div class="btn_wrap btn_layout01">
<button type="button" class="btnType04" onclick="fn_goDetail('<c:url value="${info.notifyPath }" />', '<c:url value="${info.lctrDivCd }" />'); return false;">바로가기</button>
</div>
</td>
</tr>
</tbody>
</table>
<!-- //list_상세 -->
<!-- 비공개 메보 정보 -->
</div>
<div class="btn_wrap btn_layout01">
<div class="btn_left">
</div>
<div class="btn_center">
</div>
<div class="btn_right">
<button type="button" id="regBtn" class="btnType04" onclick="linkPage(1)">목록</button>
</div>
</div>
</div>

View File

@ -0,0 +1,141 @@
<%@ page contentType="text/html; charset=utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<un:useConstants var="VeConstants" className="kcc.ve.cmm.VeConstants" />
<title>교육신청 목록 > 성인 찾아가는 저작권 교육 > 한국저작권위원회 저작권 교육 시스템</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<script type="text/javaScript" language="javascript">
$(document).ready(function(){
$('#searchStatus').change(function(){
fncGoList();
});
});
function fncGoList(){
linkPage(1);
}
function linkPage(pageNo){
var listForm = document.listForm ;
listForm.pageIndex.value = pageNo ;
listForm.action = "<c:url value='/web/my/myNotifyMngList.do'/>";
listForm.submit();
}
function fn_goDetail(cmmNotifyOrd){
console.log('cmmNotifyOrd : ', cmmNotifyOrd);
var form = document.detailForm ;
form.cmmNotifyOrd.value=cmmNotifyOrd;
form.action = "<c:url value='/web/my/myNotifyMngDetail.do'/>";
form.submit();
}
</script>
<!-- content -->
<div class="cont_wrap" id="sub">
<form id="detailForm" name="detailForm" method="POST">
<input type="hidden" id="cmmNotifyOrd" name="cmmNotifyOrd" value=""/>
</form>
<form:form id="listForm" name="listForm" commandName="notifyManageVO">
<input type="hidden" name="pageIndex" value="<c:out value='${notifyManageVO.pageIndex}' default='1' />"/>
<div class="cont_tit">
<h2>내 알림</h2>
<div class="sns_go">
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button>
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/twitter_icon.png" alt="트위터 바로가기"></button>
</div>
</div>
<div class="list_top">
<div class="list_top_left">
<label for="searchStatus2" class="label">신청상태 선택</label>
<select class="selType1" id="searchStatus" name="searchStatus">
<option value="">답변여부</option>
<option ${notifyManageVO.searchStatus eq 'Y' ? 'selected' : ''} value="Y">완료</option>
<option ${notifyManageVO.searchStatus eq 'N' ? 'selected' : ''} value="N">미완료</option>
</select>
</div>
</div>
<!-- list -->
<div class="tb_list01">
<table>
<caption>내 알림 목록</caption>
<colgroup>
<col style="width:10%;">
<col style="width:13%;">
<col style="width:13%;">
</colgroup>
<thead>
<tr>
<th>분야</th>
<th>메세지</th>
<th>등록일</th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${list}">
<tr onclick="fn_goDetail('${list.cmmNotifyOrd}')" style="cursor: pointer;" >
<td>
<c:if test="${list.notifyChk ne 'Y'}">
<span class="mypage_new">NEW</span>
</c:if>
<c:choose>
<c:when test="${empty list.lctrDivCd}">
-
</c:when>
<c:otherwise>
<ve:code codeId="VE0011" code="${list.lctrDivCd}"/>
</c:otherwise>
</c:choose>
</td>
<td>
<c:out value="${list.notifyCn}"/>
</td>
<td>
<c:out value="${list.frstRegistPnttm}"/>
</td>
</tr>
</c:forEach>
<c:if test="${empty list}">
<tr><td colspan="3"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>
</div>
<div class="btn_wrap btn_layout01">
<div class="btn_left">
</div>
<div class="btn_center">
</div>
<div class="btn_right">
<button type="button" class="btnType01" onclick="location.href='<c:url value="/web/my/myPageDashBoard.do" />'">마이페이지</button>
</div>
</div>
<!-- page -->
<div class="page">
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
</div>
</form:form>
</div>

View File

@ -99,11 +99,12 @@
<button type="button" title="새창열림" onclick="window.open('http://www.facebook.com/koreacopyright')"><img <button type="button" title="새창열림" onclick="window.open('http://www.facebook.com/koreacopyright')"><img
src="/offedu/visitEdu/usr/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button> src="/offedu/visitEdu/usr/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button>
</div> </div>
<td style="padding: 0 20px;"> <td style="padding: 0 20px;">
<div class="btn_wrap"> <div class="btn_wrap">
<button type="button" class="btnType05" onclick="location.href='${pageContext.request.contextPath}/web/my/myQnaMngList.do'">교육문의 바로가기</button> <button type="button" class="btnType05" onclick="location.href='${pageContext.request.contextPath}/web/my/myNotifyMngList.do'">알림 바로가기</button>
</div> <button type="button" class="btnType05" onclick="location.href='${pageContext.request.contextPath}/web/my/myQnaMngList.do'">교육문의 바로가기</button>
</td> </div>
</td>
</div> </div>
<ul class="mypage"> <ul class="mypage">
@ -199,7 +200,7 @@
<c:forEach var="list" items="${tngrList}" varStatus="status" begin="0" end="2"> <c:forEach var="list" items="${tngrList}" varStatus="status" begin="0" end="2">
<tr onclick="goTngrDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');"> <tr onclick="goTngrDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');">
<!-- <tr > --> <!-- <tr > -->
<td><span class="mypage_new">NEW</span>${list.eduHopeDt}</td> <td>${list.eduHopeDt}</td>
<td><kc:code codeId="VE0007" code="${list.eduSlctCd}"/></td> <td><kc:code codeId="VE0007" code="${list.eduSlctCd}"/></td>
<td> <td>
<c:choose> <c:choose>

View File

@ -242,7 +242,8 @@
<tr> <tr>
<th scope="row">상세교육내용</th> <th scope="row">상세교육내용</th>
<td colspan="3"> <td colspan="3">
<div style="white-space:pre;"><c:out value='${info.prcsCn}'/></div> <c:out value="${fn:replace(info.prcsCn , crlf , '<br/>')}" escapeXml="false" />
<%-- <div style="white-space:pre;"><c:out value='${info.prcsCn}'/></div> --%>
</td> </td>
</tr> </tr>
<tr> <tr>

View File

@ -793,7 +793,7 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
/*마이페이지_new아이콘 추가*/ /*마이페이지_new아이콘 추가*/
/*마이페이지_new아이콘 추가*/ /*마이페이지_new아이콘 추가*/
.mypage_wrap .mypage_table .tb_list02 .mypage_new{background-color: #e95504; font-size: 12px; color: #fff; border-radius: 5px; padding: 0 5px 2px 5px; margin: 0 4px 0 -33PX;} .tb_list01 .mypage_new{background-color: #e95504; font-size: 12px; color: #fff; border-radius: 5px; padding: 0 5px 2px 5px; margin: 0 4px 0 -33PX;}
/*마이페이지_m 추가*/ /*마이페이지_m 추가*/
.mypage_m .mypage_m_list ul{border-top: none;} .mypage_m .mypage_m_list ul{border-top: none;}