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.BoardVO;
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.ve.aplct.fndtnEnhanceTrn.service.FndtnEnhanceTrnService;
import kcc.ve.cmm.VeConstants;
@ -79,7 +81,9 @@ public class MyPageController {
//온라인콘텐츠과정 관리
@Resource(name = "fndtnEnhanceTrnService")
private FndtnEnhanceTrnService fndtnEnhanceTrnService;
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
private static final Logger LOGGER = LoggerFactory.getLogger(MyPageController.class);
@ -307,7 +311,77 @@ public class MyPageController {
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"})
public String myQnaMngDetail(
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
@ -394,4 +468,40 @@ public class MyPageController {
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 egovframework.rte.fdl.cmmn.exception.FdlException;
import kcc.com.cmm.LoginVO;
/**
*
@ -34,13 +35,31 @@ public interface NotifyManageService {
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);
NotifyManageVO findById(NotifyManageVO notifyManageVO);
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);
}
public void insertNotifyEduForAdmin(NotifyManageVO notifyManageVO) {
insert("VEANotifyDAO.insertNotifyEduForAdmin", notifyManageVO);
public void insertNotifyInfo(NotifyManageVO notifyManageVO) {
insert("VEANotifyDAO.insertNotifyInfo", notifyManageVO);
}
public List<NotifyManageVO> selectPagingList(NotifyManageVO notifyManageVO) {
@ -66,5 +66,21 @@ public class NotifyManageDAO extends EgovAbstractDAO {
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 org.apache.ibatis.javassist.compiler.ast.Symbol;
import org.springframework.stereotype.Service;
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
import egovframework.rte.fdl.cmmn.exception.FdlException;
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.NotifyManageVO;
@ -39,6 +43,10 @@ public class NotifyManageServiceImpl extends EgovAbstractServiceImpl implements
//교육과정순번
@Resource(name="veaCmmNotifyMngOrdGnrService")
private EgovIdGnrService veaCmmNotifyOrdGnrService;
@Resource(name = "EgovCmmUseService")
private EgovCmmUseService egovCmmUseService;
@Override
public List<NotifyManageVO> selectMngPagingList(NotifyManageVO notifyManageVO) {
@ -75,7 +83,7 @@ public class NotifyManageServiceImpl extends EgovAbstractServiceImpl implements
* @청소년 찾교 사용자 등록 -> 관리자 알림
*/
@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 가져오기
@ -91,23 +99,22 @@ public class NotifyManageServiceImpl extends EgovAbstractServiceImpl implements
NotifyManageVO notifyManageVO = new NotifyManageVO();
notifyManageVO.setCmmNotifyOrd(veaCmmNotifyOrdGnrService.getNextStringId());
notifyManageVO.setLctrDivCd(lctrDivCd);
notifyManageVO.setNotifyCn("["+userId+"]["+eduChasiOrdList.size()+"개 차시] 교육신청을 하였습니다.");
notifyManageVO.setNotifyCn("["+loginVO.getId()+"]["+eduChasiOrdList.size()+"개 차시] 교육신청을 하였습니다.");
String notifyPath = "";
if("10".equals(lctrDivCd))
if("10".equals(lctrDivCd)) // 청소년
notifyPath = "/kccadr/oprtn/tngrVisitEdu/eduAplctMngDetail.do";
if("20".equals(lctrDivCd))
if("20".equals(lctrDivCd)) // 찾교
notifyPath = "/kccadr/oprtn/adultVisitEdu/eduAplctMngDetail.do";
if("30".equals(lctrDivCd))
notifyPath = "/kccadr/oprtn/cpyrgExprnClsrm/oprtnAplctMngDetail.do";
notifyManageVO.setNotifyPath(notifyPath);
notifyManageVO.setNotifyChk("N");
notifyManageVO.setEduAplctOrd(eduAplctOrd);
notifyManageVO.setEduChasiOrd(eduChasiOrdList.toString());
notifyManageVO.setFrstRegisterId(userId);
notifyManageVO.setFrstRegisterId(loginVO.getUniqId());
for(NotifyManageVO vo : notifyManageListVO) {
notifyManageVO.setToUserId(vo.getMngUserId());
notifyManageDAO.insertNotifyEduForAdmin(notifyManageVO);
notifyManageDAO.insertNotifyInfo(notifyManageVO);
}
// }
@ -117,7 +124,7 @@ public class NotifyManageServiceImpl extends EgovAbstractServiceImpl implements
* @체험교실 사용자 등록 -> 관리자 알림
*/
@Override
public void insertNotifyClsrmForAdmin(String userId, String eduAplctOrd, String lctrDivCd) throws FdlException {
public void insertNotifyClsrmForAdmin(LoginVO loginVO, String eduAplctOrd, String lctrDivCd) throws FdlException {
// 담당자 ID 가져오기
@ -132,20 +139,236 @@ public class NotifyManageServiceImpl extends EgovAbstractServiceImpl implements
NotifyManageVO notifyManageVO = new NotifyManageVO();
notifyManageVO.setCmmNotifyOrd(veaCmmNotifyOrdGnrService.getNextStringId());
notifyManageVO.setLctrDivCd(lctrDivCd);
notifyManageVO.setNotifyCn("["+userId+"] 교육신청을 하였습니다.");
notifyManageVO.setNotifyCn("["+loginVO.getId()+"] 교육신청을 하였습니다.");
String notifyPath = "";
notifyPath = "/kccadr/oprtn/cpyrgExprnClsrm/oprtnAplctMngDetail.do";
notifyManageVO.setNotifyPath(notifyPath);
notifyManageVO.setNotifyChk("N");
notifyManageVO.setEduAplctOrd(eduAplctOrd);
notifyManageVO.setFrstRegisterId(userId);
notifyManageVO.setFrstRegisterId(loginVO.getUniqId());
for(NotifyManageVO vo : notifyManageListVO) {
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
public List<NotifyManageVO> selectPagingList(NotifyManageVO notifyManageVO) {
@ -157,4 +380,8 @@ public class NotifyManageServiceImpl extends EgovAbstractServiceImpl implements
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
notifyManageService.insertNotifyEduForAdmin(loginVO.getMembId(), eduAplctOrd, eduChasiOrdList, vEEduAplctVO.getLctrDivCd());
notifyManageService.insertNotifyEduForAdmin(loginVO, eduAplctOrd, eduChasiOrdList, vEEduAplctVO.getLctrDivCd());
return true;

View File

@ -6,6 +6,7 @@ import java.util.Map;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
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.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.aplct.adultVisitEdu.eduAplct.service.EduAplctAdultService;
import kcc.ve.cmm.VeConstants;
@ -105,10 +107,10 @@ public class EduAplctAdultController {
//교육과정신청
@Resource(name = "vEPrcsMIXService")
private VEPrcsMIXService vEPrcsMIXService;
// 알림 서비스
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
//교육과정순번
@Resource(name="prcsGnrService")
@ -258,6 +260,13 @@ public class EduAplctAdultController {
*/
@RequestMapping("eduAplctDetail.do")
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);

View File

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

View File

@ -9,6 +9,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
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.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ExprnClsrmAplctService;
import kcc.ve.cmm.VeConstants;
@ -135,6 +137,9 @@ public class ExprnClsrmAplctController {
@Resource(name = "vEPrcsAplctPrdService")
private VEPrcsAplctPrdService vEPrcsAplctPrdService;
// 알림 service
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
/**
* 체험교실신청 목록 화면
*/
@ -350,6 +355,11 @@ public class ExprnClsrmAplctController {
@RequestMapping("exprnClsrmAplctDetail.do")
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);

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

View File

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

View File

@ -7,6 +7,7 @@ import java.util.stream.Collectors;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
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.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngMixService;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngService;
@ -145,6 +147,8 @@ public class EduAplctTngrController {
@Resource(name = "vEInstrMixService")
private VEInstrMixService vEInstrMixService;
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
/*
* START
@ -681,7 +685,13 @@ public class EduAplctTngrController {
*/
@RequestMapping("eduAplctDetail.do")
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(); //권한에 따른 로그인 정보 가져오기
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.HttpSession;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute;
@ -16,6 +17,7 @@ import kcc.com.cmm.EgovMessageSource;
import kcc.com.cmm.LoginVO;
import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.cmm.VeConstants;
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAsgnmMIXService;
@ -64,6 +66,9 @@ public class VEFndtnAsgnmController {
@Resource(name = "vEPrcsMIXService")
private VEPrcsMIXService vEPrcsMIXService;
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
// 기반강화 강의목록(확정)
@RequestMapping("/web/ve/instr/fndtnVisitEdu/asgnmInfo/instrAsgnmList.do")
public String instrAsgnmList(
@ -135,6 +140,12 @@ public class VEFndtnAsgnmController {
, ModelMap model
, HttpServletRequest request
) 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.HttpSession;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute;
@ -16,6 +17,7 @@ import kcc.com.cmm.EgovMessageSource;
import kcc.com.cmm.LoginVO;
import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.uss.notify.service.NotifyManageService;
import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.cmm.VeConstants;
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAsgnmMIXService;
@ -64,6 +66,10 @@ public class VESspnIdtmtAsgnmController {
@Resource(name = "vEPrcsMIXService")
private VEPrcsMIXService vEPrcsMIXService;
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
// 기반강화 강의목록(확정)
@RequestMapping("/web/ve/instr/sspnIdtmt/asgnmInfo/instrAsgnmList.do")
public String instrAsgnmList(
@ -138,6 +144,12 @@ public class VESspnIdtmtAsgnmController {
//로그인 처리====================================
//로그인 정보 가져오기
// 확인 체크
if(StringUtils.isNotEmpty(vEPrcsDetailVO.getCmmNotifyOrd()))
{
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEPrcsDetailVO.getCmmNotifyOrd());
}
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기

View File

@ -159,6 +159,8 @@ public class VEInstrAsgnmVO extends ComDefaultVO implements Serializable {
private String avgScore; //평균점수
private String cmmNotifyOrd; //평균점수
public String getMemoCn() {
@ -791,5 +793,11 @@ public class VEInstrAsgnmVO extends ComDefaultVO implements Serializable {
public void setAvgScore(String 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.utl.user.service.CheckLoginUtil;
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.EgovCryptoUtil4VO;
import kcc.let.utl.fcc.service.VisitEduTransUtil;
@ -91,7 +92,11 @@ public class VEAsgnmController {
@Resource(name = "vEEduAplctService")
private VEEduAplctService vEEduAplctService;
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
//청소년강사 강의 요청 목록
@RequestMapping("/web/ve/instr/tngrVisitEdu/asgnmInfo/instrAsgnmRqstList.do")
public String instrAsgnmRqstList(
@ -324,6 +329,14 @@ public class VEAsgnmController {
try{
System.out.println("adultVisitEdu-endInfo-instrEduEndDetail");
// 확인 체크
if(StringUtils.isNotEmpty(vEInstrAsgnmVO.getCmmNotifyOrd()))
{
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEInstrAsgnmVO.getCmmNotifyOrd());
}
//로그인 처리====================================
//로그인 정보 가져오기
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
@ -445,6 +458,13 @@ public class VEAsgnmController {
, HttpServletRequest request
) throws Exception {
// 확인 체크
if(StringUtils.isNotEmpty(vEInstrAsgnmVO.getCmmNotifyOrd()))
{
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEInstrAsgnmVO.getCmmNotifyOrd());
}
try{
System.out.println("tngrVisitEdu-asgnmInfo-instrAsgnmDetail");

View File

@ -199,6 +199,7 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
private String qestnrId30;
private String eduPrcsOrd;
private String cmmNotifyOrd; //
@ -968,6 +969,12 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
public void setTrafficFee(String 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 {
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEEduAplctVO.getCmmNotifyOrd());
if(StringUtils.isNotEmpty(vEEduAplctVO.getCmmNotifyOrd()))
{
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEEduAplctVO.getCmmNotifyOrd());
}
LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;

View File

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

View File

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

View File

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

View File

@ -414,8 +414,8 @@ public class EduAplctMngTngrController {
LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
notifyManageService.updateNotifyChkWhereCmmNotifyOrd(vEEduAplctVO.getCmmNotifyOrd());
System.out.println("vEEduAplctVO.getCmmNotifyOrd() : "+ vEEduAplctVO.getCmmNotifyOrd());
if(StringUtils.isNotEmpty(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.utl.user.service.CheckLoginUtil;
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.VEPagingUtil;
import kcc.ve.adv.tngr.stngInfo.service.VEAStngMixService;
@ -155,7 +156,11 @@ public class EduCnfrmMngTngrController {
//강의설정 관리(MIX)
@Resource(name = "vEAStngMixService")
private VEAStngMixService vEAStngMixService;
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
/**
* 교육확정관리 목록 화면
*/
@ -568,6 +573,14 @@ public class EduCnfrmMngTngrController {
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.SiteManagerVO;
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.VEInstrService;
@ -180,6 +181,10 @@ public class MainController {
@Resource(name="EgovFileMngUtil")
private EgovFileMngUtil fileUtil;
//알림 서비스
@Resource(name = "NotifyManageService")
private NotifyManageService notifyManageService;
//강사 정보
@Resource(name="vEInstrService")
@ -611,6 +616,13 @@ public class MainController {
model.addAttribute("modifyUrl", modifyUrl);
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";
}

View File

@ -56,11 +56,14 @@
<include refid="VEANotifyDAO.table_name"/> a
WHERE
a.TO_USER_ID = #toUserId#
ORDER BY
a.NOTIFY_CHK
, a.FRST_REGIST_PNTTM desc
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select>
<insert id="VEANotifyDAO.insertNotifyEduForAdmin" parameterClass="notifyManageVO">
/* VEANotifyDAO.insertNotifyEduForAdmin */
<insert id="VEANotifyDAO.insertNotifyInfo" parameterClass="notifyManageVO">
/* VEANotifyDAO.insertNotifyInfo */
INSERT INTO <include refid="VEANotifyDAO.table_name"/> (
<include refid="VEANotifyDAO.column_name"/>
@ -108,4 +111,49 @@
</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>

View File

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

View File

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

View File

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

View File

@ -137,7 +137,8 @@
var dataToSend = {
"eduAplctOrdList": selectedEduAplctOrd,
"aprvlCd": p_aprvlCd,
"prcsAplctPrdOrd": p_prcsAplctPrdOrd
"prcsAplctPrdOrd": p_prcsAplctPrdOrd,
"lctrDivCd" : $("#lctrDivCd").val()
};
commAjax(dataToSend);
}
@ -161,7 +162,8 @@
var dataToSend = {
"eduAplctOrdList": selectedEduAplctOrd,
"aprvlCd": p_aprvlCd,
"prcsAplctPrdOrd": p_prcsAplctPrdOrd
"prcsAplctPrdOrd": p_prcsAplctPrdOrd,
"lctrDivCd" : $("#lctrDivCd").val()
};
commAjax(dataToSend);
@ -281,6 +283,7 @@
</form>
<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="lctrDivCd" id="lctrDivCd" value="60"/>
<!-- cont -->
<div class="cont_wrap">
<div class="box">

View File

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

View File

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

View File

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

View File

@ -269,7 +269,7 @@
<tr>
<th scope="row">상세교육내용</th>
<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>
</tr>
<tr>

View File

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

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

View File

@ -8,6 +8,7 @@
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%@ taglib prefix="ckeditor" uri="http://ckeditor.com"%>
<%
/**
* @Class Name : fndthEduPrcsMngMdfy.jsp
@ -98,6 +99,7 @@
}
function fncSave(){
CKEDITOR.instances.prcsCn.updateElement();
var data = new FormData(document.getElementById("createForm"));
if(confirm("수정하시겠습니까?")){
@ -215,7 +217,16 @@
<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;"><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>
</tr>

View File

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

View File

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

View File

@ -206,7 +206,7 @@ function usrJoin(){
</button> --%>
<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 -->
<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>
@ -269,7 +269,7 @@ function usrJoin(){
</button> --%>
<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"><a href="<c:url value="/web/my/myPageDashBoard.do" />" title="새창열림">마이페이지</a></p>
<!-- e배움터 로그인 연동으로 인하여 개발, 운영 구분 -->
@ -302,17 +302,17 @@ function usrJoin(){
<c:choose>
<c:when test="${empty LoginVO or empty ssoLoginVO}">
<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_join" onclick="javascript:usrJoin();" title="회원가입"></button>
</c:if>
<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_join" onclick="location.href='http://223.255.205.7/user/usrservice/selectUserSeView.do?eduOff=Y'" title="회원가입"></button>
</c:if>
<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_join" onclick="location.href='https://edu-copyright.or.kr/user/usrservice/selectUserSeView.do?eduOff=Y'" title="회원가입"></button>
</c:if>
@ -320,7 +320,7 @@ function usrJoin(){
<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 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>
</c:when>
</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
src="/offedu/visitEdu/usr/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button>
</div>
<td style="padding: 0 20px;">
<div class="btn_wrap">
<button type="button" class="btnType05" onclick="location.href='${pageContext.request.contextPath}/web/my/myQnaMngList.do'">교육문의 바로가기</button>
</div>
</td>
<td style="padding: 0 20px;">
<div class="btn_wrap">
<button type="button" class="btnType05" onclick="location.href='${pageContext.request.contextPath}/web/my/myNotifyMngList.do'">알림 바로가기</button>
<button type="button" class="btnType05" onclick="location.href='${pageContext.request.contextPath}/web/my/myQnaMngList.do'">교육문의 바로가기</button>
</div>
</td>
</div>
<ul class="mypage">
@ -199,7 +200,7 @@
<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 > -->
<td><span class="mypage_new">NEW</span>${list.eduHopeDt}</td>
<td>${list.eduHopeDt}</td>
<td><kc:code codeId="VE0007" code="${list.eduSlctCd}"/></td>
<td>
<c:choose>

View File

@ -242,7 +242,8 @@
<tr>
<th scope="row">상세교육내용</th>
<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>
</tr>
<tr>

View File

@ -793,7 +793,7 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
/*마이페이지_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 추가*/
.mypage_m .mypage_m_list ul{border-top: none;}