Merge branch 'advc' of http://yongjoon.cho@vcs.iten.co.kr:9999/hylee/offedu into advc
This commit is contained in:
commit
076a48613f
67
src/main/java/kcc/com/cmm/util/KoreanRegionEnum.java
Normal file
67
src/main/java/kcc/com/cmm/util/KoreanRegionEnum.java
Normal file
@ -0,0 +1,67 @@
|
||||
package kcc.com.cmm.util;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author : 이호영
|
||||
* @fileName : KoreanRegionEnum.java
|
||||
* @date : 2024.01.02
|
||||
* @description : VEA017 지역 이랑 코드 맞춰야함
|
||||
* ===========================================================
|
||||
* DATE AUTHOR NOTE
|
||||
* ----------------------------------------------------------- *
|
||||
* 2024.01.02 이호영 최초 생성
|
||||
*
|
||||
*
|
||||
*
|
||||
*/
|
||||
public enum KoreanRegionEnum {
|
||||
GANGWON("10", "강원도", "강원"),
|
||||
GYEONGGI("20", "경기도", "경기"),
|
||||
GYEONGSANGNAM("30", "경상남도", "경남"),
|
||||
GYEONGSANGBUK("40", "경상북도", "경북"),
|
||||
GWANGJU("50", "광주광역시", "광주"),
|
||||
DAEGU("60", "대구광역시", "대구"),
|
||||
DAEJEON("70", "대전광역시", "대전"),
|
||||
BUSAN("80", "부산광역시", "부산"),
|
||||
SEOUL("90", "서울특별시", "서울"),
|
||||
SEJONG("100", "세종특별자치시", "세종"),
|
||||
ULSAN("110", "울산광역시", "울산"),
|
||||
INCHEON("120", "인천광역시", "인천"),
|
||||
JEOLLANAM("130", "전라남도", "전남"),
|
||||
JEOLLABUK("140", "전라북도", "전북"),
|
||||
JEJU("150", "제주특별자치도", "제주"),
|
||||
CHUNGCHEONGNAM("160", "충청남도", "충남"),
|
||||
CHUNGCHEONGBUK("170", "충청북도", "충북");
|
||||
|
||||
private final String order;
|
||||
private final String fullName;
|
||||
private final String shortName;
|
||||
|
||||
KoreanRegionEnum(String order, String fullName, String shortName) {
|
||||
this.order = order;
|
||||
this.fullName = fullName;
|
||||
this.shortName = shortName;
|
||||
}
|
||||
|
||||
public static KoreanRegionEnum fromOrder(String order) {
|
||||
for (KoreanRegionEnum region : values()) {
|
||||
if (region.getOrder().equals(order)) {
|
||||
return region;
|
||||
}
|
||||
}
|
||||
throw new IllegalArgumentException("No enum constant with order: " + order);
|
||||
}
|
||||
|
||||
public String getOrder() {
|
||||
return order;
|
||||
}
|
||||
public String getFullName() {
|
||||
return fullName;
|
||||
}
|
||||
public String getShortName() {
|
||||
return shortName;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@ -16,13 +16,16 @@ import org.springframework.web.multipart.MultipartHttpServletRequest;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
|
||||
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||
import kcc.com.cmm.ComDefaultVO;
|
||||
import kcc.com.cmm.EgovMessageSource;
|
||||
import kcc.com.cmm.LoginVO;
|
||||
import kcc.com.cmm.service.EgovFileMngService;
|
||||
import kcc.com.cmm.service.EgovFileMngUtil;
|
||||
import kcc.com.cmm.service.FileVO;
|
||||
import kcc.com.cmm.util.IpUtil;
|
||||
import kcc.com.cmm.util.StringUtil;
|
||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||
import kcc.let.uat.uia.service.SsoLoginVO;
|
||||
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
||||
@ -36,6 +39,7 @@ import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeAcmdtVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeService;
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailService;
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsAplctPrdService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
||||
import kcc.ve.oprtn.asgnmnoti.service.VEAsgnmNotiService;
|
||||
@ -93,12 +97,20 @@ public class VEAdultAsgnmController {
|
||||
//NOTI 서비스
|
||||
@Resource(name="vEAsgnmNotiService")
|
||||
private VEAsgnmNotiService vEAsgnmNotiService;
|
||||
|
||||
|
||||
//과정차시 관리
|
||||
@Resource(name = "vEPrcsAplctPrdService")
|
||||
private VEPrcsAplctPrdService vEPrcsAplctPrdService;
|
||||
|
||||
//강의교환
|
||||
@Resource(name="veaLctrExchnOrdGnrService")
|
||||
private EgovIdGnrService veaLctrExchnOrdGnrService;
|
||||
|
||||
|
||||
//성인강사 강의 요청 목록
|
||||
@RequestMapping("/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmRqstList.do")
|
||||
public String instrAsgnmRqstList(
|
||||
@ModelAttribute("vEInstrAsgnmVO") VEInstrAsgnmVO vEInstrAsgnmVO
|
||||
|
||||
, ModelMap model
|
||||
, RedirectAttributes redirectAttributes
|
||||
, HttpSession session
|
||||
@ -140,8 +152,7 @@ public class VEAdultAsgnmController {
|
||||
}
|
||||
|
||||
List<VEInstrAsgnmVO> vEInstrAsgnmVOList = vEAsgnmMIXService.selectAsgnmRqstPagingList(vEInstrAsgnmVO);
|
||||
|
||||
|
||||
|
||||
//6.pageing step3
|
||||
paginationInfo = this.setPagingStep3(vEInstrAsgnmVOList, paginationInfo);
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
@ -154,10 +165,152 @@ public class VEAdultAsgnmController {
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("vEInstrAsgnmVOList", vEInstrAsgnmVOList);
|
||||
|
||||
|
||||
|
||||
|
||||
return "/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmRqstList";
|
||||
}
|
||||
|
||||
@RequestMapping("/web/ve/instr/adultVisitEdu/asgnmInfo/popup/instrAsgnmListPopup.do")
|
||||
public String instrAsgnmListPopup(
|
||||
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||
, ModelMap model
|
||||
, RedirectAttributes redirectAttributes
|
||||
, HttpSession session
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
System.out.println("vEPrcsDetailVO.getPrcsAplctPrdOrd() :"+ vEPrcsDetailVO.getEduAplctOrd());
|
||||
System.out.println("vEPrcsDetailVO.getPrcsAplctPrdOrd() :"+ vEPrcsDetailVO.getEduChasiOrd());
|
||||
|
||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
||||
|
||||
//로그인 처리====================================
|
||||
|
||||
|
||||
//1.pageing step1
|
||||
PaginationInfo paginationInfo = this.setPagingStep1(vEPrcsDetailVO);
|
||||
|
||||
|
||||
//2. pageing step2
|
||||
vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo);
|
||||
|
||||
//3. SelectPagingListQuery set 할 조건 설정
|
||||
String selectCondition = new String();
|
||||
//3.1 제출 완료 후 사용중인 데이터 조회
|
||||
selectCondition += "AND a.sbmt_yn='Y' AND a.use_yn = 'Y'";
|
||||
//3.2 강사 테이블 성인강사여부 Y인것만 조회
|
||||
selectCondition += "AND (b.adult_instr_yn ='Y' OR a.qlfct_end_yn = 'Y') ";
|
||||
//3.3 이름 검색 시
|
||||
if(StringUtil.isNotEmpty(vEPrcsDetailVO.getSearchKeyword())){
|
||||
//selectCondition += "AND a.instr_nm LIKE CONCAT ('%', '" +vEInstrDetailVO.getSearchKeyword() + "', '%')";
|
||||
//이름 암호화 - comDefaultVO 검색단어 공통 암호화
|
||||
ComDefaultVO comDefaultVO = new ComDefaultVO();
|
||||
comDefaultVO.setSearchKeyword(vEPrcsDetailVO.getSearchKeyword());
|
||||
comDefaultVO = egovCryptoUtil.encryptComDefaultVO(comDefaultVO);
|
||||
vEPrcsDetailVO.setSearchKeyword(comDefaultVO.getSearchKeyword());
|
||||
selectCondition += "AND a.instr_nm LIKE '%'|| '" +vEPrcsDetailVO.getSearchKeyword() + "'|| '%'";
|
||||
comDefaultVO = egovCryptoUtil.decryptComDefaultVO(comDefaultVO);
|
||||
vEPrcsDetailVO.setSearchKeyword(comDefaultVO.getSearchKeyword());
|
||||
}
|
||||
//3.4 요청일 시작일 검색 시
|
||||
// if(StringUtil.isNotEmpty(vEPrcsDetailVO.getSearchStartDt())){
|
||||
// selectCondition += "AND TO_CHAR(a.sbmt_pnttm, 'YYYYMMDD') >= REPLACE('"+vEPrcsDetailVO.getSearchStartDt()+"', '.', '')";
|
||||
// }
|
||||
//3.5 요청일 종료일 검색 시
|
||||
// if(StringUtil.isNotEmpty(vEPrcsDetailVO.getSearchEndDt())){
|
||||
// selectCondition += "AND TO_CHAR(a.sbmt_pnttm, 'YYYYMMDD') <= REPLACE('"+vEPrcsDetailVO.getSearchEndDt()+"', '.', '')";
|
||||
// }
|
||||
vEPrcsDetailVO.setInstrDiv("20");
|
||||
vEPrcsDetailVO.setSelectPagingListQuery(selectCondition);
|
||||
|
||||
vEPrcsDetailVO.setLoginId(loginVO.getUniqId());;
|
||||
|
||||
List<VEInstrDetailVO> vEInstrDetailVOList = vEPrcsAplctPrdService.selectinstrAsgnmPopupPagingList(vEPrcsDetailVO);
|
||||
|
||||
try {
|
||||
|
||||
vEInstrDetailVOList = egovCryptoUtil.decryptVEInstrDetailVOList(vEInstrDetailVOList);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
// TODO: handle exception
|
||||
}
|
||||
|
||||
//4.pageing step3
|
||||
paginationInfo = this.setInstrPagingStep3(vEInstrDetailVOList, paginationInfo);
|
||||
System.out.println(" ==== vEPrcsDetailVO.getPrcsAplctPrdOrd() :"+ vEPrcsDetailVO.getPrcsAplctPrdOrd());
|
||||
model.addAttribute("vEPrcsDetailVO", vEPrcsDetailVO);
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("list", vEInstrDetailVOList);
|
||||
|
||||
|
||||
return "/web/ve/instr/adultVisitEdu/asgnmInfo/popup/instrAsgnmListPopup";
|
||||
|
||||
// return "/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmRqstList";
|
||||
}
|
||||
|
||||
@RequestMapping("/web/ve/instr/adultVisitEdu/asgnmInfo/popup/instrAsgnmListExchnPopup.do")
|
||||
public String instrAsgnmListExchnPopup(
|
||||
@ModelAttribute("vEInstrAsgnmVO") VEInstrAsgnmVO vEInstrAsgnmVO
|
||||
, 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); //로그인 정보가 없으면 로그인 페이지로 이동한다.
|
||||
}
|
||||
model.addAttribute("ssoLoginVO", ssoLoginVO);
|
||||
model.addAttribute("loginVO", loginVO);
|
||||
//로그인 처리====================================
|
||||
|
||||
|
||||
//3.pageing step1
|
||||
PaginationInfo paginationInfo = this.setPagingStep1(vEInstrAsgnmVO);
|
||||
|
||||
|
||||
//4. pageing step2
|
||||
vEInstrAsgnmVO = this.setPagingStep2(vEInstrAsgnmVO, paginationInfo);
|
||||
|
||||
vEInstrAsgnmVO.setUserId(loginVO.getUniqId());
|
||||
vEInstrAsgnmVO.setInstrDiv("20");
|
||||
vEInstrAsgnmVO.setHstryCd("10");
|
||||
|
||||
try {
|
||||
System.out.println("session.getAttribute(menuNo).toString()");
|
||||
System.out.println(session.getAttribute("menuNo").toString());
|
||||
vEInstrAsgnmVO.setMenuNo(session.getAttribute("menuNo").toString());
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
vEInstrAsgnmVO.setMenuNo("9991100");
|
||||
}
|
||||
vEInstrAsgnmVO.setSearchAsgnmAprvlCd("20");
|
||||
List<VEInstrAsgnmVO> vEInstrAsgnmVOList = vEAsgnmMIXService.selectAsgnmRqstPagingList(vEInstrAsgnmVO);
|
||||
|
||||
//6.pageing step3
|
||||
paginationInfo = this.setPagingStep3(vEInstrAsgnmVOList, paginationInfo);
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
|
||||
//fee 계산하기
|
||||
//feeSum4Dp
|
||||
// vEInstrAsgnmVOList = VisitEduTransUtil.transData4feeSum(vEInstrAsgnmVOList);
|
||||
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("vEInstrAsgnmVOList", vEInstrAsgnmVOList);
|
||||
|
||||
|
||||
return "/web/ve/instr/adultVisitEdu/asgnmInfo/popup/instrAsgnmListExchnPopup";
|
||||
}
|
||||
|
||||
|
||||
//성인강사 강의 추가신청 목록
|
||||
@RequestMapping("/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmAddRqstList.do")
|
||||
@ -524,6 +677,8 @@ public class VEAdultAsgnmController {
|
||||
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 숙박신청 등록 처리
|
||||
*/
|
||||
@ -683,4 +838,55 @@ public class VEAdultAsgnmController {
|
||||
|
||||
return p_paginationInfo;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
||||
private PaginationInfo setPagingStep1(
|
||||
VEPrcsDetailVO p_vEPrcsDetailVO
|
||||
)throws Exception{
|
||||
// pageing step1
|
||||
PaginationInfo paginationInfo = new PaginationInfo();
|
||||
paginationInfo.setCurrentPageNo(p_vEPrcsDetailVO.getPageIndex());
|
||||
// paginationInfo.setRecordCountPerPage(p_vEPrcsDetailVO.getPageUnit());
|
||||
paginationInfo.setRecordCountPerPage(5);
|
||||
paginationInfo.setPageSize(p_vEPrcsDetailVO.getPageSize());
|
||||
|
||||
return paginationInfo;
|
||||
}
|
||||
|
||||
|
||||
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
||||
private VEPrcsDetailVO setPagingStep2(
|
||||
VEPrcsDetailVO p_vEPrcsDetailVO
|
||||
, PaginationInfo p_paginationInfo
|
||||
)throws Exception{
|
||||
// pageing step2
|
||||
p_vEPrcsDetailVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
||||
p_vEPrcsDetailVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
||||
p_vEPrcsDetailVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
||||
|
||||
if("".equals(p_vEPrcsDetailVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
||||
p_vEPrcsDetailVO.setSearchSortCnd("prcs_ord");
|
||||
p_vEPrcsDetailVO.setSearchSortOrd("desc");
|
||||
}
|
||||
|
||||
return p_vEPrcsDetailVO;
|
||||
}
|
||||
|
||||
|
||||
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
||||
private PaginationInfo setInstrPagingStep3(
|
||||
List<VEInstrDetailVO> p_vEInstrDetailVOList
|
||||
, PaginationInfo p_paginationInfo
|
||||
)throws Exception{
|
||||
// pageing step3
|
||||
int totCnt = 0;
|
||||
if(p_vEInstrDetailVOList.size() > 0) totCnt = p_vEInstrDetailVOList.get(0).getTotCnt();
|
||||
p_paginationInfo.setTotalRecordCount(totCnt);
|
||||
|
||||
return p_paginationInfo;
|
||||
}
|
||||
}
|
||||
|
||||
@ -123,4 +123,10 @@ public interface VEAsgnmMIXService {
|
||||
|
||||
List<VEPrcsDetailVO> selectFndtnVisitAsgnmPagingList(VEPrcsDetailVO vEPrcsDetailVO);
|
||||
|
||||
VEInstrAsgnmVO findByEduAplctOrdAndEduChasiOrdFromVeaLctrExchnInfo(VEInstrAsgnmVO vEInstrAsgnmVO);
|
||||
|
||||
void insertFromVeaLctrExchnInfo(VEInstrAsgnmVO vEInstrAsgnmVO);
|
||||
|
||||
List<VEInstrAsgnmVO> findAllFromVeaLctrExchnInfo(VEInstrAsgnmVO vEInstrVO);
|
||||
|
||||
}
|
||||
|
||||
@ -161,6 +161,15 @@ public class VEInstrAsgnmVO extends ComDefaultVO implements Serializable {
|
||||
|
||||
private String cmmNotifyOrd; //평균점수
|
||||
|
||||
private String selectRsdneQuery; // 지역쿼리
|
||||
|
||||
|
||||
private String exchnOrd;
|
||||
private String exchnCd;
|
||||
private String toUserId;
|
||||
private String toEduAplctOrd;
|
||||
private String toEduChasiOrd;
|
||||
|
||||
|
||||
|
||||
public String getMemoCn() {
|
||||
@ -799,5 +808,41 @@ public class VEInstrAsgnmVO extends ComDefaultVO implements Serializable {
|
||||
public void setCmmNotifyOrd(String cmmNotifyOrd) {
|
||||
this.cmmNotifyOrd = cmmNotifyOrd;
|
||||
}
|
||||
public String getSelectRsdneQuery() {
|
||||
return selectRsdneQuery;
|
||||
}
|
||||
public void setSelectRsdneQuery(String selectRsdneQuery) {
|
||||
this.selectRsdneQuery = selectRsdneQuery;
|
||||
}
|
||||
public String getExchnOrd() {
|
||||
return exchnOrd;
|
||||
}
|
||||
public void setExchnOrd(String exchnOrd) {
|
||||
this.exchnOrd = exchnOrd;
|
||||
}
|
||||
public String getExchnCd() {
|
||||
return exchnCd;
|
||||
}
|
||||
public void setExchnCd(String exchnCd) {
|
||||
this.exchnCd = exchnCd;
|
||||
}
|
||||
public String getToUserId() {
|
||||
return toUserId;
|
||||
}
|
||||
public void setToUserId(String toUserId) {
|
||||
this.toUserId = toUserId;
|
||||
}
|
||||
public String getToEduAplctOrd() {
|
||||
return toEduAplctOrd;
|
||||
}
|
||||
public void setToEduAplctOrd(String toEduAplctOrd) {
|
||||
this.toEduAplctOrd = toEduAplctOrd;
|
||||
}
|
||||
public String getToEduChasiOrd() {
|
||||
return toEduChasiOrd;
|
||||
}
|
||||
public void setToEduChasiOrd(String toEduChasiOrd) {
|
||||
this.toEduChasiOrd = toEduChasiOrd;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -219,5 +219,17 @@ public class VEAsgnmMIXDAO extends EgovAbstractDAO {
|
||||
public List<VEPrcsDetailVO> selectFndtnVisitAsgnmPagingList(VEPrcsDetailVO paramVO) {
|
||||
return (List<VEPrcsDetailVO>) list("VEAsgnmMIXDAO.selectFndtnVisitAsgnmPagingList", paramVO);
|
||||
}
|
||||
|
||||
public VEInstrAsgnmVO findByEduAplctOrdAndEduChasiOrdFromVeaLctrExchnInfo(VEInstrAsgnmVO paramVO) {
|
||||
return (VEInstrAsgnmVO) select("VEAsgnmMIXDAO.findByEduAplctOrdAndEduChasiOrdFromVeaLctrExchnInfo", paramVO);
|
||||
}
|
||||
|
||||
public void insertFromVeaLctrExchnInfo(VEInstrAsgnmVO vEInstrAsgnmVO) {
|
||||
insert("VEAsgnmMIXDAO.insertFromVeaLctrExchnInfo", vEInstrAsgnmVO);
|
||||
}
|
||||
|
||||
public List<VEInstrAsgnmVO> findAllFromVeaLctrExchnInfo(VEInstrAsgnmVO vEInstrVO) {
|
||||
return (List<VEInstrAsgnmVO>) list("VEAsgnmMIXDAO.findAllFromVeaLctrExchnInfo", vEInstrVO);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -200,5 +200,20 @@ public class VEAsgnmMIXServiceImpl implements VEAsgnmMIXService {
|
||||
public List<VEPrcsDetailVO> selectFndtnVisitAsgnmPagingList(VEPrcsDetailVO paramVO) {
|
||||
return vEAsgnmMIXDAO.selectFndtnVisitAsgnmPagingList(paramVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public VEInstrAsgnmVO findByEduAplctOrdAndEduChasiOrdFromVeaLctrExchnInfo(VEInstrAsgnmVO vEInstrAsgnmVO) {
|
||||
return vEAsgnmMIXDAO.findByEduAplctOrdAndEduChasiOrdFromVeaLctrExchnInfo(vEInstrAsgnmVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void insertFromVeaLctrExchnInfo(VEInstrAsgnmVO vEInstrAsgnmVO) {
|
||||
vEAsgnmMIXDAO.insertFromVeaLctrExchnInfo(vEInstrAsgnmVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<VEInstrAsgnmVO> findAllFromVeaLctrExchnInfo(VEInstrAsgnmVO vEInstrVO) {
|
||||
return vEAsgnmMIXDAO.findAllFromVeaLctrExchnInfo(vEInstrVO);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package kcc.ve.instr.tngrVisitEdu.asgnmInfo.web;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
@ -15,10 +16,13 @@ import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
|
||||
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||
import kcc.com.cmm.ComDefaultVO;
|
||||
import kcc.com.cmm.EgovMessageSource;
|
||||
import kcc.com.cmm.LoginVO;
|
||||
import kcc.com.cmm.util.IpUtil;
|
||||
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;
|
||||
@ -37,6 +41,7 @@ import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailService;
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrMixService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
||||
import kcc.ve.oprtn.asgnmnoti.service.VEAsgnmNotiService;
|
||||
@ -95,7 +100,14 @@ public class VEAsgnmController {
|
||||
|
||||
@Resource(name = "NotifyManageService")
|
||||
private NotifyManageService notifyManageService;
|
||||
|
||||
//강사MIX 정보
|
||||
@Resource(name="vEInstrMixService")
|
||||
private VEInstrMixService vEInstrMixService;
|
||||
|
||||
//강의교환
|
||||
@Resource(name="veaLctrExchnOrdGnrService")
|
||||
private EgovIdGnrService veaLctrExchnOrdGnrService;
|
||||
|
||||
//청소년강사 강의 요청 목록
|
||||
@RequestMapping("/web/ve/instr/tngrVisitEdu/asgnmInfo/instrAsgnmRqstList.do")
|
||||
@ -150,15 +162,245 @@ public class VEAsgnmController {
|
||||
paginationInfo = this.setPagingStep3(vEInstrAsgnmVOList, paginationInfo);
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
// 교환상태 확인
|
||||
vEInstrAsgnmVOList.stream().forEach(t-> {
|
||||
|
||||
if("20".equals(t.getAsgnmAprvlCd())) {
|
||||
VEInstrAsgnmVO veaLctrExchnInfo = vEAsgnmMIXService.findByEduAplctOrdAndEduChasiOrdFromVeaLctrExchnInfo(t);
|
||||
if(veaLctrExchnInfo != null) {
|
||||
t.setExchnOrd(veaLctrExchnInfo.getExchnOrd());
|
||||
t.setExchnCd(veaLctrExchnInfo.getExchnCd());
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("vEInstrAsgnmVOList", vEInstrAsgnmVOList);
|
||||
|
||||
|
||||
|
||||
// 교환강의신청목록 영역
|
||||
// 교환강의신청목록 영역
|
||||
// 교환강의신청목록 영역
|
||||
|
||||
VEInstrAsgnmVO vEInstrVO = new VEInstrAsgnmVO();
|
||||
vEInstrVO.setToUserId(loginVO.getUniqId());
|
||||
|
||||
//3.pageing step1
|
||||
// PaginationInfo paginationTwoInfo = this.setPagingStep1(vEInstrAsgnmVO);
|
||||
|
||||
|
||||
//4. pageing step2
|
||||
// vEInstrAsgnmVO = this.setPagingStep2(vEInstrAsgnmVO, paginationTwoInfo);
|
||||
|
||||
List<VEInstrAsgnmVO> veaLctrExchnInfo = vEAsgnmMIXService.findAllFromVeaLctrExchnInfo(vEInstrVO);
|
||||
veaLctrExchnInfo.stream().forEach(t-> {
|
||||
t.setInstrNm(egovCryptoUtil.decrypt(t.getInstrNm()));
|
||||
});
|
||||
|
||||
model.addAttribute("veaLctrExchnInfo", veaLctrExchnInfo);
|
||||
|
||||
//6.pageing step3
|
||||
// paginationTwoInfo = this.setPagingStep3(vEInstrAsgnmVOList, paginationTwoInfo);
|
||||
// model.addAttribute("paginationTwoInfo", paginationTwoInfo);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
return "/web/ve/instr/tngrVisitEdu/asgnmInfo/instrAsgnmRqstList";
|
||||
}
|
||||
|
||||
//청소년강사 강의 추가신청 목록
|
||||
|
||||
|
||||
@RequestMapping("/web/ve/instr/tngrVisitEdu/asgnmInfo/popup/instrAsgnmListExchnPopup.do")
|
||||
public String instrAsgnmListExchnPopup(
|
||||
@ModelAttribute("vEInstrAsgnmVO") VEInstrAsgnmVO vEInstrAsgnmVO
|
||||
, 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); //로그인 정보가 없으면 로그인 페이지로 이동한다.
|
||||
}
|
||||
model.addAttribute("ssoLoginVO", ssoLoginVO);
|
||||
model.addAttribute("loginVO", loginVO);
|
||||
//로그인 처리====================================
|
||||
|
||||
|
||||
//3.pageing step1
|
||||
PaginationInfo paginationInfo = this.setPagingStep1(vEInstrAsgnmVO);
|
||||
|
||||
|
||||
//4. pageing step2
|
||||
vEInstrAsgnmVO = this.setPagingStep2(vEInstrAsgnmVO, paginationInfo);
|
||||
|
||||
vEInstrAsgnmVO.setUserId(loginVO.getUniqId());
|
||||
vEInstrAsgnmVO.setInstrDiv("10");
|
||||
vEInstrAsgnmVO.setHstryCd("10");
|
||||
|
||||
try {
|
||||
System.out.println("session.getAttribute(menuNo).toString()");
|
||||
System.out.println(session.getAttribute("menuNo").toString());
|
||||
vEInstrAsgnmVO.setMenuNo(session.getAttribute("menuNo").toString());
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
vEInstrAsgnmVO.setMenuNo("999231100");
|
||||
|
||||
}
|
||||
|
||||
vEInstrAsgnmVO.setSearchAsgnmAprvlCd("20");
|
||||
|
||||
List<VEInstrAsgnmVO> vEInstrAsgnmVOList = vEAsgnmMIXService.selectAsgnmRqstPagingList(vEInstrAsgnmVO);
|
||||
|
||||
|
||||
|
||||
//6.pageing step3
|
||||
paginationInfo = this.setPagingStep3(vEInstrAsgnmVOList, paginationInfo);
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
|
||||
//fee 계산하기
|
||||
//feeSum4Dp
|
||||
// vEInstrAsgnmVOList = VisitEduTransUtil.transData4feeSum(vEInstrAsgnmVOList);
|
||||
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("vEInstrAsgnmVOList", vEInstrAsgnmVOList);
|
||||
|
||||
|
||||
return "/web/ve/instr/tngrVisitEdu/asgnmInfo/popup/instrAsgnmListExchnPopup";
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@RequestMapping("/web/ve/instr/tngrVisitEdu/asgnmInfo/popup/instrAsgnmListPopup.do")
|
||||
public String instrAsgnmListPopup(
|
||||
@ModelAttribute("vEInstrDetailVO") VEInstrDetailVO vEInstrDetailVO
|
||||
|
||||
, ModelMap model
|
||||
, RedirectAttributes redirectAttributes
|
||||
, HttpSession session
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
//1.pageing step1
|
||||
PaginationInfo paginationInfo = this.setPagingInstrStep1(vEInstrDetailVO);
|
||||
|
||||
|
||||
//2. pageing step2
|
||||
vEInstrDetailVO = this.setPagingInstrStep2(vEInstrDetailVO, paginationInfo);
|
||||
|
||||
//3. SelectPagingListQuery set 할 조건 설정
|
||||
String selectCondition = new String();
|
||||
//3.1 제출 완료 후 사용중인 데이터 조회
|
||||
selectCondition += "AND a0.sbmt_yn='Y' AND a0.use_yn = 'Y'";
|
||||
//3.2 강사 테이블 성인강사여부 Y인것만 조회
|
||||
//selectCondition += "AND (b0.tngr_instr_yn ='Y' OR a0.qlfct_end_yn = 'Y') ";
|
||||
|
||||
|
||||
List<VEInstrDetailVO> vEInstrDetailVOList = new ArrayList<VEInstrDetailVO>();
|
||||
|
||||
//3.3 이름 검색 시
|
||||
if(StringUtil.isNotEmpty(vEInstrDetailVO.getSearchKeyword())){
|
||||
//이름 암호화 - comDefaultVO 검색단어 공통 암호화
|
||||
ComDefaultVO comDefaultVO = new ComDefaultVO();
|
||||
comDefaultVO.setSearchKeyword(vEInstrDetailVO.getSearchKeyword());
|
||||
comDefaultVO = egovCryptoUtil.encryptComDefaultVO(comDefaultVO);
|
||||
vEInstrDetailVO.setSearchKeyword(comDefaultVO.getSearchKeyword());
|
||||
//selectCondition += "AND a.instr_nm LIKE CONCAT ('%', '" +vEInstrDetailVO.getSearchKeyword() + "', '%')";
|
||||
selectCondition += "AND a0.instr_nm LIKE '%'||'" +vEInstrDetailVO.getSearchKeyword() + "'||'%'";
|
||||
comDefaultVO = egovCryptoUtil.decryptComDefaultVO(comDefaultVO);
|
||||
vEInstrDetailVO.setSearchKeyword(comDefaultVO.getSearchKeyword());
|
||||
|
||||
//정보변경 요청사항 있는 강사부터 조회
|
||||
vEInstrDetailVO.setOrderByQuery(" rqstCnt DESC ");
|
||||
|
||||
vEInstrDetailVO.setInstrDiv("10");
|
||||
vEInstrDetailVO.setSelectPagingListQuery(selectCondition);
|
||||
|
||||
vEInstrDetailVOList = vEInstrMixService.selectPagingDetailList(vEInstrDetailVO);
|
||||
|
||||
vEInstrDetailVOList = egovCryptoUtil.decryptVEInstrDetailVOList(vEInstrDetailVOList);
|
||||
}
|
||||
//3.4 요청일 시작일 검색 시
|
||||
/*if(StringUtil.isNotEmpty(vEInstrDetailVO.getSearchStartDt())){
|
||||
selectCondition += "AND TO_CHAR(a.sbmt_pnttm, 'YYYYMMDD') >= REPLACE('"+vEInstrDetailVO.getSearchStartDt()+"', '.', '')";
|
||||
}
|
||||
//3.5 요청일 종료일 검색 시
|
||||
if(StringUtil.isNotEmpty(vEInstrDetailVO.getSearchEndDt())){
|
||||
selectCondition += "AND TO_CHAR(a.sbmt_pnttm, 'YYYYMMDD') <= REPLACE('"+vEInstrDetailVO.getSearchEndDt()+"', '.', '')";
|
||||
}*/
|
||||
|
||||
|
||||
//4.pageing step3
|
||||
paginationInfo = this.setPagingInstrStep3(vEInstrDetailVOList, paginationInfo);
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("list", vEInstrDetailVOList);
|
||||
|
||||
return "/web/ve/instr/tngrVisitEdu/asgnmInfo/popup/instrAsgnmListPopup";
|
||||
|
||||
// return "/web/ve/instr/tngrVisitEdu/asgnmInfo/instrAsgnmAddRqstList";
|
||||
}
|
||||
|
||||
/**
|
||||
* 교환 신청 Insert
|
||||
* 교환 신청 Insert
|
||||
* 교환 신청 Insert
|
||||
* 교환 신청 Insert
|
||||
*/
|
||||
@RequestMapping("/web/ve/instr/tngrVisitEdu/asgnmInfo/insertVeaLctrExchnAjax.do")
|
||||
public ModelAndView insertVeaLctrExchnAjax(
|
||||
@ModelAttribute("vEInstrAsgnmVO") VEInstrAsgnmVO vEInstrAsgnmVO
|
||||
, ModelMap model
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
Boolean isSuccess = true;
|
||||
String msg = "";
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||
if (!"".equals(s_oprtnLoginCheckNInfo)) {
|
||||
modelAndView.addObject("result", "loginFail");
|
||||
return modelAndView;
|
||||
}
|
||||
//로그인 처리====================================
|
||||
|
||||
try {
|
||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
vEInstrAsgnmVO.setFrstRegisterId(loginVO.getUniqId());
|
||||
vEInstrAsgnmVO.setUserId(loginVO.getUniqId());
|
||||
vEInstrAsgnmVO.setExchnOrd(veaLctrExchnOrdGnrService.getNextStringId()); // 고유ID
|
||||
vEAsgnmMIXService.insertFromVeaLctrExchnInfo(vEInstrAsgnmVO);
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
isSuccess = false;
|
||||
msg = ex.getMessage();
|
||||
}
|
||||
|
||||
modelAndView.addObject("isSuccess", isSuccess);
|
||||
modelAndView.addObject("msg", msg);
|
||||
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping("/web/ve/instr/tngrVisitEdu/asgnmInfo/instrAsgnmAddRqstList.do")
|
||||
public String instrAsgnmAddRqstList(
|
||||
@ModelAttribute("vEInstrAsgnmVO") VEInstrAsgnmVO vEInstrAsgnmVO
|
||||
@ -850,4 +1092,55 @@ public class VEAsgnmController {
|
||||
|
||||
return p_paginationInfo;
|
||||
}
|
||||
|
||||
|
||||
/// 강사 페이징을 위한 paging
|
||||
|
||||
|
||||
|
||||
//청소년강사 강의 추가신청 목록
|
||||
private PaginationInfo setPagingInstrStep3(
|
||||
List<VEInstrDetailVO> p_vEInstrDetailVOList
|
||||
, PaginationInfo p_paginationInfo
|
||||
)throws Exception{
|
||||
// pageing step3
|
||||
int totCnt = 0;
|
||||
if(p_vEInstrDetailVOList.size() > 0) totCnt = p_vEInstrDetailVOList.get(0).getTotCnt();
|
||||
p_paginationInfo.setTotalRecordCount(totCnt);
|
||||
|
||||
return p_paginationInfo;
|
||||
}
|
||||
|
||||
private VEInstrDetailVO setPagingInstrStep2(
|
||||
VEInstrDetailVO p_vEInstrDetailVO
|
||||
, PaginationInfo p_paginationInfo
|
||||
)throws Exception{
|
||||
// pageing step2
|
||||
p_vEInstrDetailVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
||||
p_vEInstrDetailVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
||||
p_vEInstrDetailVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
||||
|
||||
if("".equals(p_vEInstrDetailVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
||||
p_vEInstrDetailVO.setSearchSortCnd("sbmt_pnttm");
|
||||
p_vEInstrDetailVO.setSearchSortOrd("desc");
|
||||
}
|
||||
|
||||
return p_vEInstrDetailVO;
|
||||
}
|
||||
|
||||
private PaginationInfo setPagingInstrStep1(
|
||||
VEInstrDetailVO p_vEInstrDetailVO
|
||||
)throws Exception{
|
||||
// pageing step1
|
||||
PaginationInfo paginationInfo = new PaginationInfo();
|
||||
paginationInfo.setCurrentPageNo(p_vEInstrDetailVO.getPageIndex());
|
||||
paginationInfo.setRecordCountPerPage(p_vEInstrDetailVO.getPageUnit());
|
||||
paginationInfo.setPageSize(p_vEInstrDetailVO.getPageSize());
|
||||
|
||||
return paginationInfo;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -315,6 +315,8 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
|
||||
////////////////paging///////////////
|
||||
|
||||
private String selectPagingListQuery;
|
||||
private String selectRsdneQuery;
|
||||
private String searchRsdne;
|
||||
private String orderByQuery;
|
||||
|
||||
//운영신청 목록 셀렉트박스 검색구분자
|
||||
@ -374,6 +376,18 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
|
||||
public void setSelectPagingListQuery(String selectPagingListQuery) {
|
||||
this.selectPagingListQuery = selectPagingListQuery;
|
||||
}
|
||||
public String getSelectRsdneQuery() {
|
||||
return selectRsdneQuery;
|
||||
}
|
||||
public void setSelectRsdneQuery(String selectRsdneQuery) {
|
||||
this.selectRsdneQuery = selectRsdneQuery;
|
||||
}
|
||||
public String getSearchRsdne() {
|
||||
return searchRsdne;
|
||||
}
|
||||
public void setSearchRsdne(String searchRsdne) {
|
||||
this.searchRsdne = searchRsdne;
|
||||
}
|
||||
public String getOrderByQuery() {
|
||||
return orderByQuery;
|
||||
}
|
||||
|
||||
@ -27,6 +27,8 @@ public class VEInstrDetailVO extends ComDefaultVO implements Serializable {
|
||||
private String lastUpdtPnttm; // 수정일시
|
||||
private String lastUpdusrId; // 수정자
|
||||
|
||||
private String searchRsdne; // 수정자
|
||||
|
||||
private String checkTopSum;
|
||||
private String weekCnt;
|
||||
private List<String> userIdList = new ArrayList<String>();
|
||||
@ -299,6 +301,12 @@ public class VEInstrDetailVO extends ComDefaultVO implements Serializable {
|
||||
public void setLastUpdusrId(String lastUpdusrId) {
|
||||
this.lastUpdusrId = lastUpdusrId;
|
||||
}
|
||||
public String getSearchRsdne() {
|
||||
return searchRsdne;
|
||||
}
|
||||
public void setSearchRsdne(String searchRsdne) {
|
||||
this.searchRsdne = searchRsdne;
|
||||
}
|
||||
public String getInstrDiv() {
|
||||
return instrDiv;
|
||||
}
|
||||
|
||||
@ -68,4 +68,6 @@ public interface VEPrcsAplctPrdService {
|
||||
|
||||
List<VEPrcsDetailVO> selectOneDayBeforeTrainingStartDate(VEPrcsDetailVO vEPrcsDetailVO);
|
||||
|
||||
List<VEPrcsDetailVO> selectCfnPagingList4Fndth(VEPrcsDetailVO vEPrcsDetailVO) throws Exception;
|
||||
|
||||
}
|
||||
|
||||
@ -208,6 +208,8 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
||||
private String qestnrId20Cnt;
|
||||
private String qestnrId30Cnt;
|
||||
|
||||
private String loginId;
|
||||
|
||||
|
||||
public String getEduPrcsOrd() {
|
||||
return eduPrcsOrd;
|
||||
@ -1013,6 +1015,12 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
||||
public void setQestnrId30Cnt(String qestnrId30Cnt) {
|
||||
this.qestnrId30Cnt = qestnrId30Cnt;
|
||||
}
|
||||
public String getLoginId() {
|
||||
return loginId;
|
||||
}
|
||||
public void setLoginId(String loginId) {
|
||||
this.loginId = loginId;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -79,6 +79,11 @@ public class VEPrcsAplctPrdDAO extends EgovAbstractDAO {
|
||||
return tlist;
|
||||
}
|
||||
|
||||
public List<VEPrcsDetailVO> selectCfnPagingList4Fndth(VEPrcsDetailVO paramVO) throws Exception {
|
||||
List<VEPrcsDetailVO> tlist = (List<VEPrcsDetailVO>) list("VEPrcsAplctPrdDAO.selectCfnPagingList4Fndth", paramVO);
|
||||
return tlist;
|
||||
}
|
||||
|
||||
public VEPrcsDetailVO selectDetailNewOne(VEPrcsDetailVO paramVO) throws Exception {
|
||||
return (VEPrcsDetailVO) select("VEPrcsAplctPrdDAO.selectDetailNewOne", paramVO);
|
||||
}
|
||||
|
||||
@ -71,6 +71,11 @@ public class VEPrcsAplctPrdServiceImpl implements VEPrcsAplctPrdService {
|
||||
return vEPrcsAplctPrdDAO.selectPagingList4Fndth(paramVO);
|
||||
}
|
||||
|
||||
|
||||
public List<VEPrcsDetailVO> selectCfnPagingList4Fndth(VEPrcsDetailVO paramVO) throws Exception{
|
||||
return vEPrcsAplctPrdDAO.selectCfnPagingList4Fndth(paramVO);
|
||||
}
|
||||
|
||||
//R
|
||||
public VEPrcsDetailVO selectDetailNewOne(VEPrcsDetailVO paramVO) throws Exception {
|
||||
return vEPrcsAplctPrdDAO.selectDetailNewOne(paramVO);
|
||||
|
||||
@ -17,6 +17,8 @@ import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import com.epapyrus.common.util.StringUtils;
|
||||
|
||||
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||
import kcc.com.cmm.ComDefaultCodeVO;
|
||||
import kcc.com.cmm.LoginVO;
|
||||
@ -24,6 +26,7 @@ import kcc.com.cmm.service.EgovCmmUseService;
|
||||
import kcc.com.cmm.service.EgovFileMngService;
|
||||
import kcc.com.cmm.service.EgovFileMngUtil;
|
||||
import kcc.com.cmm.spring.data.util.ExcelUtil;
|
||||
import kcc.com.cmm.util.KoreanRegionEnum;
|
||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||
import kcc.kccadr.cmm.CmmUtil;
|
||||
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
||||
@ -170,12 +173,21 @@ public class EduCnfrmMngAdultController {
|
||||
vEEduAplctVO.setLctrDivCd("20"); //성인강의
|
||||
vEEduAplctVO.setAprvlCd("60"); //확정코드
|
||||
|
||||
// 지역검색
|
||||
/* if(StringUtils.isNotEmpty(vEEduAplctVO.getSearchRsdne()))
|
||||
{
|
||||
// KoreanRegionEnum Class 참고
|
||||
// VEA017 코드 번호만 넘기면 경상남도, 경남과 같은 값을 return함
|
||||
// return "AND rsdne like '%' || '"+fullName+"' || '%' OR rsdne like '%' || '"+shortName+"' || '%' ";
|
||||
vEEduAplctVO.setSelectRsdneQuery(this.getRsdneQueryStr(vEEduAplctVO.getSearchRsdne()));
|
||||
}*/
|
||||
|
||||
if(!"".equals(vEEduAplctVO.getSearchInstrNm())) {
|
||||
vEEduAplctVO.setSearchInstrNm(egovCryptoUtil.encrypt(vEEduAplctVO.getSearchInstrNm()));
|
||||
}
|
||||
|
||||
System.out.println("vEEduAplctVO.getAprvlCd()");
|
||||
System.out.println(vEEduAplctVO.getAprvlCd());
|
||||
System.out.println("vEEduAplctVO.getSearchRsdne()");
|
||||
System.out.println(vEEduAplctVO.getSearchRsdne());
|
||||
|
||||
List<VEEduAplctVO> vEEduAplctVOList = vEEduMIXService.selectTngrRsltPagingList(vEEduAplctVO);
|
||||
VEEduAplctVO vo = new VEEduAplctVO();
|
||||
@ -193,11 +205,21 @@ public class EduCnfrmMngAdultController {
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("list", vEEduAplctVOList);
|
||||
|
||||
|
||||
|
||||
return "oprtn/adultVisitEdu/eduCnfrmMngList";
|
||||
}
|
||||
|
||||
private String getRsdneQueryStr(String searchRsdne) {
|
||||
KoreanRegionEnum region = KoreanRegionEnum.fromOrder(searchRsdne);
|
||||
|
||||
String fullName = region.getFullName();
|
||||
String shortName = region.getShortName();
|
||||
|
||||
// return String.format("AND rsdne like '%' || '%s'|| '%' OR rsdne like '%' || '%s'|| '%' ", fullName, shortName);
|
||||
return "AND (rsdne like '"+fullName+"' || '%' OR rsdne like '"+shortName+"' || '%' )";
|
||||
}
|
||||
|
||||
/**
|
||||
* 교육배치관리 상세 화면
|
||||
*/
|
||||
@ -310,11 +332,17 @@ public class EduCnfrmMngAdultController {
|
||||
|
||||
//String s_userCheckNInfo = checkLoginUtil.userCheckNInfo(model, request);
|
||||
//if (!"".equals(s_userCheckNInfo)) return s_userCheckNInfo;
|
||||
|
||||
System.out.println("vEEduAplctVO.getSearchRsdne() : "+vEEduAplctVO.getSearchRsdne());
|
||||
|
||||
|
||||
String searchRsdne = vEEduAplctVO.getSearchRsdne();
|
||||
//로그인 처리====================================
|
||||
//0.step0
|
||||
//해당 처시 정보 가져오기 (온라인 오프라인 여부 및 신청내용 확인)
|
||||
vEEduAplctVO = vEEduAplctService.selectDetailChasi(vEEduAplctVO);
|
||||
|
||||
|
||||
System.out.println(vEEduAplctVO.getEduSlctCd()); //10-온라인, 20-오프라인
|
||||
System.out.println(vEEduAplctVO.getAplctCn()); //신청내용
|
||||
System.out.println(vEInstrAsgnmVO.getInstrNm()); //검색강사
|
||||
@ -324,6 +352,9 @@ public class EduCnfrmMngAdultController {
|
||||
|
||||
String[] a_rr = null;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
System.out.println("vEEduAplctVO.getAplctCn()"); //신청내용
|
||||
@ -355,7 +386,15 @@ public class EduCnfrmMngAdultController {
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 지역검색
|
||||
if(StringUtils.isNotEmpty(searchRsdne))
|
||||
{
|
||||
// KoreanRegionEnum Class 참고
|
||||
// VEA017 코드 번호만 넘기면 경상남도, 경남과 같은 값을 return함
|
||||
// return "AND rsdne like '%' || '"+fullName+"' || '%' OR rsdne like '%' || '"+shortName+"' || '%' ";
|
||||
vEInstrAsgnmVO.setSelectRsdneQuery(this.getRsdneQueryStr(searchRsdne));
|
||||
}
|
||||
vEInstrAsgnmVO.setYr(vEEduAplctVO.getEduHopeDt().substring(0,4));
|
||||
vEInstrAsgnmVO.setSearchQuery(s_searchQuery);
|
||||
List<VEInstrAsgnmVO> selectVEInstrAsgnmVOList = vEAsgnmMIX2023Service.selectInstrAsgnmList_202311_adult(vEInstrAsgnmVO);
|
||||
|
||||
@ -1676,7 +1676,7 @@ public class CndtnPrcsInfoMngController {
|
||||
//vEPrcsDetailVO.setPrcsDiv("10");// 과정구분 VE0015 10-산업종사자, 20-대학생, 30-공무원, 40-일반인, 50-청소년, 60-학부모
|
||||
|
||||
}
|
||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsAplctPrdService.selectPagingList4Fndth(vEPrcsDetailVO);
|
||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsAplctPrdService.selectCfnPagingList4Fndth(vEPrcsDetailVO);
|
||||
|
||||
//3.pageing step3
|
||||
paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo);
|
||||
|
||||
@ -310,7 +310,7 @@ public class FndthPrcsAplctPrdMngController {
|
||||
//vEPrcsDetailVO.setPrcsDiv("10");// 과정구분 VE0015 10-산업종사자, 20-대학생, 30-공무원, 40-일반인, 50-청소년, 60-학부모
|
||||
|
||||
}
|
||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsAplctPrdService.selectPagingList4Fndth(vEPrcsDetailVO);
|
||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsAplctPrdService.selectCfnPagingList4Fndth(vEPrcsDetailVO);
|
||||
|
||||
//3.pageing step3
|
||||
paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo);
|
||||
|
||||
@ -3061,7 +3061,6 @@
|
||||
</bean>
|
||||
|
||||
<!-- 결과보고 테이블 -->
|
||||
|
||||
<bean name="veaRsltRprtOrdGnrService" class="egovframework.rte.fdl.idgnr.impl.EgovTableIdGnrServiceImpl" destroy-method="destroy">
|
||||
<property name="dataSource" ref="dataSource" />
|
||||
<property name="strategy" ref="veaRsltRprtOrdStrategy" /><!-- strategy 값 수정 -->
|
||||
@ -3075,5 +3074,20 @@
|
||||
<property name="cipers" value="12" /><!-- 일련번호(순번) 전체 길이(prefix길이 미포함) -->
|
||||
<property name="fillChar" value="0" />
|
||||
</bean>
|
||||
|
||||
<!-- 결과보고 테이블 -->
|
||||
<bean name="veaLctrExchnOrdGnrService" class="egovframework.rte.fdl.idgnr.impl.EgovTableIdGnrServiceImpl" destroy-method="destroy">
|
||||
<property name="dataSource" ref="dataSource" />
|
||||
<property name="strategy" ref="veaLctrExchnOrdStrategy" /><!-- strategy 값 수정 -->
|
||||
<property name="blockSize" value="10"/>
|
||||
<property name="table" value="IDS"/>
|
||||
<property name="tableName" value="VEA_RSLT_RPRT"/><!-- tableName 값 수정 -->
|
||||
</bean>
|
||||
<!-- 과정신청기간 ID Generation Strategy Config -->
|
||||
<bean name="veaLctrExchnOrdStrategy" class="egovframework.rte.fdl.idgnr.impl.strategy.EgovIdGnrStrategyImpl"><!-- bean name 값에 strategy 값 입력 -->
|
||||
<property name="prefix" value="veaExchn_" /><!-- prefix 값 수정 -->
|
||||
<property name="cipers" value="11" /><!-- 일련번호(순번) 전체 길이(prefix길이 미포함) -->
|
||||
<property name="fillChar" value="0" />
|
||||
</bean>
|
||||
|
||||
</beans>
|
||||
|
||||
@ -938,6 +938,9 @@
|
||||
)
|
||||
|
||||
WHERE 1 =1
|
||||
<isNotEmpty property="selectRsdneQuery">
|
||||
$selectRsdneQuery$
|
||||
</isNotEmpty>
|
||||
AND b.user_id =a.user_id
|
||||
AND b.use_yn ='Y'
|
||||
AND b.INSTR_DIV ='20'
|
||||
|
||||
@ -4969,7 +4969,84 @@
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 배정 최대값 제한 산술식을 위한 해당 교육 차시에 속한 달의 강사 교육접수차시 가져오기 R -->
|
||||
<!-- 교육,차시 pk값과 userId로 교환신청강의가 있는지 확인 -->
|
||||
<select id="VEAsgnmMIXDAO.findByEduAplctOrdAndEduChasiOrdFromVeaLctrExchnInfo" parameterClass="VEInstrAsgnmVO" resultClass="VEInstrAsgnmVO">
|
||||
|
||||
SELECT
|
||||
EXCHN_ORD as exchnOrd,
|
||||
EDU_APLCT_ORD as eduAplctOrd,
|
||||
EDU_CHASI_ORD as eduChasiOrd,
|
||||
USER_ID as userId,
|
||||
EXCHN_CD as exchnCd,
|
||||
TO_USER_ID as toUserId,
|
||||
TO_EDU_APLCT_ORD as toEduAplctOrd,
|
||||
TO_EDU_CHASI_ORD as toEduChasiOrd,
|
||||
FRST_REGIST_PNTTM as frstRegistPnttm,
|
||||
FRST_REGISTER_ID as frstRegisterId,
|
||||
LAST_UPDT_PNTTM as lastUpdtPnttm,
|
||||
LAST_UPDUSR_ID as lastUpdusrId
|
||||
FROM
|
||||
VEA_LCTR_EXCHN
|
||||
WHERE
|
||||
EDU_APLCT_ORD = #eduAplctOrd#
|
||||
AND EDU_CHASI_ORD = #eduChasiOrd#
|
||||
AND USER_ID = #userId#
|
||||
</select>
|
||||
|
||||
<!-- 교육,차시 pk값과 userId로 교환신청강의가 있는지 확인 -->
|
||||
<select id="VEAsgnmMIXDAO.findAllFromVeaLctrExchnInfo" parameterClass="VEInstrAsgnmVO" resultClass="VEInstrAsgnmVO">
|
||||
|
||||
/* VEAsgnmMIXDAO.findAllFromVeaLctrExchnInfo */
|
||||
|
||||
SELECT
|
||||
a.USER_ID
|
||||
, d.INSTR_NM AS instrNm
|
||||
, a.EDU_APLCT_ORD as eduAplctOrd
|
||||
, a.EDU_CHASI_ORD as eduChasiOrd
|
||||
, c.edu_hope_dt
|
||||
, TO_CHAR(TO_DATE(c.STRT_TM, 'HH24MI'), 'HH24:MI') AS strtTm
|
||||
, TO_CHAR(TO_DATE(c.END_TM, 'HH24MI'), 'HH24:MI') AS endTm
|
||||
, b.EDU_SLCT_AREA_CD AS eduSlctAreaCd
|
||||
, b.schol_instt_nm AS scholInsttNm
|
||||
, c.TRGT AS trgt
|
||||
FROM
|
||||
VEA_LCTR_EXCHN a
|
||||
LEFT JOIN VE_EDU_APLCT b
|
||||
ON a.EDU_APLCT_ORD = b.EDU_APLCT_ORD
|
||||
LEFT JOIN VE_EDU_CHASI c
|
||||
ON a.EDU_CHASI_ORD = c.EDU_CHASI_ORD
|
||||
LEFT JOIN VE_INSTR_DETAIL d ON
|
||||
a.USER_ID = d.user_id
|
||||
AND d.USE_YN = 'Y'
|
||||
WHERE
|
||||
a.TO_USER_ID = #toUserId#
|
||||
</select>
|
||||
|
||||
<!-- 교환신청강의 insert -->
|
||||
<insert id="VEAsgnmMIXDAO.insertFromVeaLctrExchnInfo" parameterClass="VEInstrAsgnmVO">
|
||||
|
||||
INSERT INTO VEA_LCTR_EXCHN (
|
||||
EXCHN_ORD
|
||||
, EDU_APLCT_ORD
|
||||
, EDU_CHASI_ORD
|
||||
, USER_ID
|
||||
, EXCHN_CD
|
||||
, TO_USER_ID
|
||||
, FRST_REGIST_PNTTM
|
||||
, FRST_REGISTER_ID
|
||||
)VALUES(
|
||||
#exchnOrd#,
|
||||
#eduAplctOrd#,
|
||||
#eduChasiOrd#,
|
||||
#userId#,
|
||||
'10',
|
||||
#toUserId#,
|
||||
SYSDATE,
|
||||
#userId#
|
||||
)
|
||||
|
||||
</insert>
|
||||
|
||||
<select id="VEAsgnmMIXDAO.selectTtlMntChasiSumDetail" parameterClass="VEInstrAsgnmVO" resultClass="VEInstrAsgnmVO">
|
||||
/* VEAsgnmMIXDAO.selectTtlMntChasiSumDetail */
|
||||
SELECT aa0.sumMntChasi ,
|
||||
|
||||
@ -2609,6 +2609,7 @@
|
||||
AND b.edu_chasi_ord = i.edu_chasi_ord
|
||||
GROUP BY i.edu_aplct_ord , i.edu_chasi_ord
|
||||
),0) AS rowNo
|
||||
, e.rsdne as rsdne
|
||||
|
||||
FROM ve_edu_aplct a
|
||||
, ve_edu_chasi b
|
||||
@ -2686,7 +2687,7 @@
|
||||
<isNotEmpty property="selectPagingListQuery">
|
||||
$selectPagingListQuery$
|
||||
</isNotEmpty>
|
||||
|
||||
|
||||
<isNotEmpty property="searchAsgnmAprvlCd">
|
||||
<isEqual property="searchAsgnmAprvlCd" compareValue="90">
|
||||
AND d.asgnm_aprvl_cd is null
|
||||
@ -2736,6 +2737,11 @@
|
||||
<isNotEmpty property="checkListQuery">
|
||||
$checkListQuery$
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="selectRsdneQuery">
|
||||
$selectRsdneQuery$
|
||||
</isNotEmpty>
|
||||
|
||||
|
||||
<isEqual property="searchSubmitYn" compareValue="Y">
|
||||
AND AA.CNT <![CDATA[ >= ]]> 1
|
||||
|
||||
@ -403,6 +403,78 @@
|
||||
|
||||
|
||||
|
||||
ORDER BY 1
|
||||
|
||||
<isEmpty property="orderByQuery">
|
||||
, a.prcs_aplct_prd_ord desc
|
||||
</isEmpty>
|
||||
<isNotEmpty property="orderByQuery">
|
||||
, $orderByQuery$
|
||||
</isNotEmpty>
|
||||
|
||||
|
||||
/*
|
||||
LIMIT recordCountPerPage OFFSET firstIndex
|
||||
*/
|
||||
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
|
||||
|
||||
</select>
|
||||
|
||||
<!-- 기반강화, 기소유예 확정 L page -->
|
||||
<select id="VEPrcsAplctPrdDAO.selectCfnPagingList4Fndth" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
|
||||
/* VEPrcsAplctPrdDAO.selectCfnPagingList4Fndth */
|
||||
SELECT
|
||||
COUNT(1) OVER() AS totCnt ,
|
||||
<include refid="VEPrcsAplctPrdDAO.select_column_name"/>
|
||||
, (SELECT user_nm FROM comvnusermaster WHERE esntl_id = a.frst_register_id) as frstRegisterNm
|
||||
, (SELECT orignl_file_nm FROM lettnfiledetail WHERE atch_file_id = a.atch_file_id LIMIT 1) as atchFileNm
|
||||
, b.prcs_nm as prcsNm
|
||||
, b.prcs_div as prcsDiv
|
||||
|
||||
, (SELECT COUNT(*)
|
||||
FROM ve_edu_aplct x
|
||||
WHERE x.prcs_ord = a.prcs_aplct_prd_ord
|
||||
AND x.sbmt_yn='Y'
|
||||
AND x.aprvl_cd != 40 /*취소된 신청자 제거*/
|
||||
AND x.aprvl_cd != 30 /*취소된 신청자 제거*/
|
||||
) AS nosCnt1
|
||||
/*
|
||||
신청자 정보
|
||||
*/
|
||||
|
||||
FROM
|
||||
<include refid="VEPrcsAplctPrdDAO.table_name"/> a
|
||||
, ve_prcs b
|
||||
|
||||
WHERE
|
||||
1=1
|
||||
AND a.prcs_ord=b.prcs_ord
|
||||
|
||||
|
||||
<isNotEmpty property="selectPagingListQuery">
|
||||
$selectPagingListQuery$
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="lctrDivCd">
|
||||
AND a.lctr_div_cd=#lctrDivCd#
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="prcsAplctPrdOrd">
|
||||
AND a.prcs_aplct_prd_ord=#prcsAplctPrdOrd#
|
||||
</isNotEmpty>
|
||||
/*교육확정목록을 조회하기 위한 조건문*/
|
||||
<isNotEmpty property="ddlnCd">
|
||||
AND a.ddln_cd = #ddlnCd#
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="searchKeyword">
|
||||
AND b.prcs_nm LIKE '%'|| #searchKeyword# ||'%'
|
||||
</isNotEmpty>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
ORDER BY 1
|
||||
|
||||
<isEmpty property="orderByQuery">
|
||||
@ -607,6 +679,13 @@
|
||||
<isNotEmpty property="userId">
|
||||
AND a.user_id=#userId#
|
||||
</isNotEmpty>
|
||||
/*
|
||||
교환 강사 목록을 위한 조건
|
||||
내 id 제외
|
||||
*/
|
||||
<isNotEmpty property="loginId">
|
||||
AND a.user_id!=#loginId#
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="instrDiv">
|
||||
AND a.instr_div=#instrDiv#
|
||||
|
||||
@ -560,8 +560,6 @@
|
||||
</div>
|
||||
<div class="util_right">
|
||||
<input type="text" id="searchInsttNm" name="searchInsttNm" class="search_input" placeholder="검색어를 입력하세요" value="${vEEduAplctVO.searchInsttNm}" onkeyDown="press(event);">
|
||||
<button class="btn_type08" onclick="fncGoList(); return false;">검색</button>
|
||||
<button class="btn_type03" onclick="fncReset(this); return false;">초기화</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="list_top_1">
|
||||
@ -585,8 +583,24 @@
|
||||
<div class="calendar_wrap">
|
||||
<input type="text" class="calendar" title="종료일 선택" id="searchEndDt" name="searchEndDt" value="<c:out value='${vEEduAplctVO.searchEndDt}'/>">
|
||||
</div>
|
||||
<button class="btn_type08" onclick="fncGoList(); return false;">검색</button>
|
||||
<button class="btn_type03" onclick="fncReset(this); return false;">초기화</button>
|
||||
</div>
|
||||
</div>
|
||||
<%--
|
||||
<div class="list_top_2">
|
||||
<div class="util_left">
|
||||
<p>지역검색</p>
|
||||
</div>
|
||||
<div class="util_right">
|
||||
<ve:select codeId="VEA017" name="searchRsdne" id="searchRsdne" css="class='sel_type1'"
|
||||
selectedValue="${vEEduAplctVO.searchRsdne}" defaultValue=''
|
||||
defaultText='전체'
|
||||
/>
|
||||
<button class="btn_type08" onclick="fncGoList(); return false;">검색</button>
|
||||
<button class="btn_type03" onclick="fncReset(this); return false;">초기화</button>
|
||||
</div>
|
||||
</div> --%>
|
||||
</div>
|
||||
<!-- //list_top -->
|
||||
|
||||
|
||||
@ -132,6 +132,10 @@
|
||||
<div class="util_left">
|
||||
<p>강사검색</p>
|
||||
</div>
|
||||
<ve:select codeId="VEA017" name="searchRsdne" id="searchRsdne" css="class='sel_type1'"
|
||||
selectedValue="${vEEduAplctVO.searchRsdne}" defaultValue=''
|
||||
defaultText='지역전체'
|
||||
/>
|
||||
<%-- <ve:select codeId="VE0008" name="searchEduSlctAreaCd" id="searchEduSlctAreaCd" css="class='sel_type1'" --%>
|
||||
<%-- selectedText="${vEEduAplctVO.rsdne}" defaultValue='' --%>
|
||||
<%-- defaultText='전체' --%>
|
||||
|
||||
@ -252,7 +252,7 @@
|
||||
<th>교육구분코드</th>
|
||||
<th>과정명</th>
|
||||
<th>교육기간</th>
|
||||
<th>신청자/정원</th>
|
||||
<th>승인자/정원</th>
|
||||
<th>상태</th>
|
||||
<th>강사배정</th>
|
||||
<!-- <th>공개여부</th> -->
|
||||
|
||||
@ -40,6 +40,39 @@
|
||||
$(this).val('');
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function fn_eduRegPopup(eduAplctOrd, eduChasiOrd){
|
||||
var data ={
|
||||
"eduAplctOrd": eduAplctOrd,
|
||||
"eduChasiOrd": eduChasiOrd
|
||||
}
|
||||
|
||||
commonPopLayeropen(
|
||||
"${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/asgnmInfo/popup/instrAsgnmListPopup.do"
|
||||
, 800
|
||||
, 800
|
||||
, data
|
||||
, "N"
|
||||
, "instrAsgnmListPopup"
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
function fn_eduExchnPopup(exchnOrd){
|
||||
var data ={
|
||||
"exchnOrd": exchnOrd
|
||||
}
|
||||
|
||||
commonPopLayeropen(
|
||||
"${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/asgnmInfo/popup/instrAsgnmListExchnPopup.do"
|
||||
, 800
|
||||
, 800
|
||||
, data
|
||||
, "N"
|
||||
, "instrAsgnmListPopup"
|
||||
);
|
||||
}
|
||||
</script>
|
||||
|
||||
<!-- cont -->
|
||||
@ -95,7 +128,6 @@
|
||||
<col style="width: 10%;">
|
||||
<col style="width: 15%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
@ -114,13 +146,13 @@
|
||||
<fmt:parseDate value="${list.eduHopeDt}" var="eduHopeDt" pattern="yyyy.MM.dd"/> <!-- 요일 구하기 -->
|
||||
<c:choose>
|
||||
<c:when test="${list.notiCnt == 0}">
|
||||
<tr class="new_cont" onclick="fncGoDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');" style="cursor:pointer;">
|
||||
<tr class="new_cont">
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<tr onclick="fncGoDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');" style="cursor:pointer;">
|
||||
<tr>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
<td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');" style="cursor:pointer;">
|
||||
<p>
|
||||
<c:if test="${vEInstrAsgnmVO.searchSortOrd eq 'desc' }">
|
||||
<c:out value="${ ( paginationInfo.totalRecordCount - ((vEInstrAsgnmVO.pageIndex -1)*vEInstrAsgnmVO.pageUnit) ) - status.index }"/>
|
||||
@ -130,9 +162,9 @@
|
||||
</c:if>
|
||||
</p>
|
||||
</td>
|
||||
<td><p>${list.eduHopeDt}</p></td>
|
||||
<td><p><fmt:formatDate value="${eduHopeDt}" pattern="E"/></p></td>
|
||||
<td><p>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');" style="cursor:pointer;"><p>${list.eduHopeDt}</p></td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');" style="cursor:pointer;"><p><fmt:formatDate value="${eduHopeDt}" pattern="E"/></p></td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');" style="cursor:pointer;"><p>
|
||||
<fmt:parseDate value="${list.strtTm}" var="strtTm" pattern="kkmm"/><fmt:formatDate value="${strtTm}" pattern="kk:mm"/>
|
||||
~<fmt:parseDate value="${list.endTm}" var="endTm" pattern="kkmm"/><fmt:formatDate value="${endTm}" pattern="kk:mm"/>
|
||||
(<c:out value='${list.lrnTm}'/>분)
|
||||
@ -175,6 +207,8 @@
|
||||
</c:when>
|
||||
</c:choose>
|
||||
<td><span class="app_status1">${statCd}</span></td>
|
||||
|
||||
|
||||
</tr>
|
||||
</c:forEach>
|
||||
<c:if test="${empty vEInstrAsgnmVOList}">
|
||||
@ -183,6 +217,7 @@
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="tb_list01_m">
|
||||
<c:forEach var="list" items="${vEInstrAsgnmVOList}" varStatus="status">
|
||||
@ -244,7 +279,7 @@
|
||||
|
||||
</span>
|
||||
</li>
|
||||
<li>
|
||||
<li>
|
||||
<span>신청상태</span>
|
||||
<c:set var="statCd" value="" />
|
||||
|
||||
@ -278,3 +313,58 @@
|
||||
</div>
|
||||
</form:form>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- 교육대상자 확인 -->
|
||||
<%-- <div class="tooltip-wrap">
|
||||
<div class="popup_wrap popType01" tabindex="0" data-tooltip-con="target_confirm_popup" data-focus="target_confirm_popup" data-focus-prev="target_confirm_popup_close">
|
||||
<div class="popup_tit">
|
||||
<p>교환 대상 강사 아이디</p>
|
||||
<button class="btn_popup_close tooltip-close" data-focus="target_confirm_popup_close" title="팝업 닫기"><i></i></button>
|
||||
</div>
|
||||
<div class="popup_cont">
|
||||
<div class="cont_body">
|
||||
<div class="pop_tb_type01" style="overflow:visible;">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width:38%;">
|
||||
<col style="width:auto;">
|
||||
</colgroup>
|
||||
<tr>
|
||||
<th>성명</th>
|
||||
<td>
|
||||
<input type="text" id="trgtNm">
|
||||
</td>
|
||||
</tr>
|
||||
<!-- <tr> -->
|
||||
<!-- <th>주민번호앞자리</th> -->
|
||||
<!-- <td> -->
|
||||
<!-- <div class="calendar_wrap"> -->
|
||||
<!-- <duet-date-picker identifier="date" id="dBirth" class="startDate" id="" min="1940-01-01"></duet-date-picker> -->
|
||||
<!-- </div> -->
|
||||
<script src="${pageContext.request.contextPath}/visitEdu/usr/publish/script/duetdatepicker2.js"></script>
|
||||
<!-- </td> -->
|
||||
<!-- </tr> -->
|
||||
</table>
|
||||
|
||||
</div>
|
||||
<div class="pop_btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<button type="button" class="btnType05" onclick="fn_confirm()">제출</button>
|
||||
<button type="button" class="btnType02 tooltip-close" id="target_confirm_popup-close" data-focus="target_confirm_popup-close" data-focus-next="target_confirm_popup">취소</button>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div> --%>
|
||||
<!--// 신청 클릭 > 기소유예 대상자 확인 팝업 -->
|
||||
|
||||
|
||||
@ -65,6 +65,42 @@
|
||||
, "scholPop"
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
function fn_eduRegPopup(eduAplctOrd, eduChasiOrd){
|
||||
var data ={
|
||||
"eduAplctOrd": eduAplctOrd,
|
||||
"eduChasiOrd": eduChasiOrd
|
||||
}
|
||||
|
||||
commonPopLayeropen(
|
||||
"${pageContext.request.contextPath}/web/ve/instr/tngrVisitEdu/asgnmInfo/popup/instrAsgnmListPopup.do"
|
||||
, 800
|
||||
, 800
|
||||
, data
|
||||
, "N"
|
||||
, "instrAsgnmListPopup"
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
function fn_eduExchnPopup(exchnOrd){
|
||||
var data ={
|
||||
"exchnOrd": exchnOrd
|
||||
}
|
||||
|
||||
commonPopLayeropen(
|
||||
"${pageContext.request.contextPath}/web/ve/instr/tngrVisitEdu/asgnmInfo/popup/instrAsgnmListExchnPopup.do"
|
||||
, 800
|
||||
, 800
|
||||
, data
|
||||
, "N"
|
||||
, "instrAsgnmListPopup"
|
||||
);
|
||||
}
|
||||
</script>
|
||||
|
||||
<!-- cont -->
|
||||
@ -121,6 +157,7 @@
|
||||
<col style="width: 15%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
@ -132,6 +169,7 @@
|
||||
<th scope="col">기관(학교)명</th>
|
||||
<th scope="col">교육대상</th>
|
||||
<th scope="col">신청상태</th>
|
||||
<th scope="col">교환상태</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@ -219,6 +257,39 @@
|
||||
</c:when>
|
||||
</c:choose>
|
||||
</td>
|
||||
<td>
|
||||
|
||||
<c:set var="exchnCd" value="" />
|
||||
<!--
|
||||
신청상태가 대기면
|
||||
${list.asgnmAprvlCd eq '20'}
|
||||
-->
|
||||
<c:choose>
|
||||
<c:when test="${list.asgnmAprvlCd eq '20'}">
|
||||
<c:if test="${empty list.exchnOrd }">
|
||||
<c:set var="exchnCd" value="신청" />
|
||||
</c:if>
|
||||
<c:if test="${not empty list.exchnOrd
|
||||
and list.exchnCd eq '10'}">
|
||||
<c:set var="exchnCd" value="진행중" />
|
||||
</c:if>
|
||||
<c:if test="${not empty list.exchnOrd
|
||||
and list.exchnCd eq '20'}">
|
||||
<c:set var="exchnCd" value="완료" />
|
||||
</c:if>
|
||||
<c:if test="${not empty list.exchnOrd
|
||||
and list.exchnCd eq '30'}">
|
||||
<c:set var="exchnCd" value="거절" />
|
||||
</c:if>
|
||||
<button type="button" class="btnType04" onclick="fn_eduRegPopup('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');" ><c:out value='${exchnCd}'/></button>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
-
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
<%-- <button class="btnType06 btn_list" data-tooltip="target_confirm_popup" ><c:out value='${exchnCd}'/></button> --%>
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
<c:if test="${empty vEInstrAsgnmVOList}">
|
||||
@ -318,3 +389,82 @@
|
||||
</div>
|
||||
</form:form>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="cont_wrap" id="sub" style="margin-top: 60px;">
|
||||
<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_list01">
|
||||
<table>
|
||||
<colgroup>
|
||||
<%-- <col style="width: 8%;"> --%>
|
||||
<col style="width: 15%;">
|
||||
<col style="width: 10%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<!-- <th scope="col">번호</th> -->
|
||||
<th scope="col">요청자</th>
|
||||
<th scope="col">요청시간</th>
|
||||
<th scope="col">요청상태</th>
|
||||
<th scope="col"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${veaLctrExchnInfo}" varStatus="status">
|
||||
<%-- <fmt:parseDate value="${list.eduHopeDt}" var="eduHopeDt" pattern="yyyy.MM.dd"/> <!-- 요일 구하기 --> --%>
|
||||
<tr>
|
||||
<%-- <td onclick="fncGoDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');" style="cursor:pointer;"> --%>
|
||||
<!-- <p> -->
|
||||
<%-- <c:if test="${vEInstrAsgnmVO.searchSortOrd eq 'desc' }"> --%>
|
||||
<%-- <c:out value="${ ( paginationInfo.totalRecordCount - ((vEInstrAsgnmVO.pageIndex -1)*vEInstrAsgnmVO.pageUnit) ) - status.index }"/> --%>
|
||||
<%-- </c:if> --%>
|
||||
<%-- <c:if test="${vEInstrAsgnmVO.searchSortOrd eq 'asc' }"> --%>
|
||||
<%-- <c:out value="${(vEInstrAsgnmVO.pageIndex - 1) * vEInstrAsgnmVO.pageUnit + status.count}"/> --%>
|
||||
<%-- </c:if> --%>
|
||||
<!-- </p> -->
|
||||
<!-- </td> -->
|
||||
<td><p><c:out value='${list.instrNm}'/></p></td>
|
||||
<td><p><c:out value='${list.frstRegistPnttm}'/></p></td>
|
||||
<td><p><c:out value='${list.exchnCd}'/></p></td>
|
||||
<td>
|
||||
|
||||
<c:choose>
|
||||
<c:when test="${not empty list.exchnOrd
|
||||
and list.exchnCd eq '10'}">
|
||||
<c:set var="exchnCd" value="확인" />
|
||||
</c:when>
|
||||
<c:when test="${not empty list.exchnOrd
|
||||
and list.exchnCd eq '20'}">
|
||||
<c:set var="exchnCd" value="완료" />
|
||||
</c:when>
|
||||
<c:when test="${not empty list.exchnOrd
|
||||
and list.exchnCd eq '30'}">
|
||||
<c:set var="exchnCd" value="거절" />
|
||||
</c:when>
|
||||
</c:choose>
|
||||
|
||||
<button type="button" class="btnType04" onclick="fn_eduExchnPopup('<c:out value="${list.exchnOrd}"/>');" ><c:out value='${exchnCd}'/></button>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
</c:forEach>
|
||||
<c:if test="${empty veaLctrExchnInfo}">
|
||||
<tr><td colspan="4"><spring:message code="common.nodata.msg" /></td></tr>
|
||||
</c:if>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- <div class="page"> -->
|
||||
<%-- <ui:pagination paginationInfo = "${paginationTowInfo}" type="image" jsFunction="linkPage" /> --%>
|
||||
<!-- </div> -->
|
||||
</div>
|
||||
|
||||
|
||||
@ -0,0 +1,231 @@
|
||||
<%@ 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="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||
<%@ 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="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %>
|
||||
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<un:useConstants var="VeConstants" className="kcc.ve.cmm.VeConstants" />
|
||||
|
||||
<script type="text/javascript">
|
||||
function fncGoScholList(){
|
||||
linkPage(1);
|
||||
}
|
||||
|
||||
function linkPage(pageNo){
|
||||
var data = {
|
||||
pageIndex : pageNo,
|
||||
searchKeyword : $("#searchKeyword").val(),
|
||||
pageUnit : 5,
|
||||
// formId : $("#formId").val(),
|
||||
}
|
||||
fncScholList(data);
|
||||
}
|
||||
|
||||
function fncScholList(paramObj) {
|
||||
if(paramObj == undefined || paramObj == ''){
|
||||
paramObj = {
|
||||
pageIndex : 1,
|
||||
searchKeyword : "",
|
||||
pageUnit : 5,
|
||||
// formId : $("#formId").val(),
|
||||
};
|
||||
}
|
||||
|
||||
commonPopLayeropen(
|
||||
"${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/asgnmInfo/popup/instrAsgnmListExchnPopup.do"
|
||||
, 800
|
||||
, 800
|
||||
, paramObj
|
||||
, "N"
|
||||
, "instrAsgnmListPopup"
|
||||
);
|
||||
}
|
||||
|
||||
function fcnCallData(toUserId) {
|
||||
|
||||
document.reqForm.toUserId.value = toUserId;
|
||||
var data = new FormData(document.getElementById("reqForm"));
|
||||
|
||||
if(confirm("강의교환을 신청하시겠습니까?")){
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url:"<c:url value='/web/ve/instr/adultVisitEdu/asgnmInfo/insertVeaLctrExchnAjax.do'/>",
|
||||
data: data,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success: function (returnData, status) {
|
||||
if(status == 'success'){
|
||||
alert("완료되었습니다..");
|
||||
location.reload();
|
||||
} else if(status== 'fail'){
|
||||
alert("처리에 실패하였습니다.");
|
||||
}
|
||||
},
|
||||
error: function (e) { alert("처리에 실패하였습니다."); console.log("ERROR : ", e); }
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
<form id="reqForm" name="reqForm">
|
||||
|
||||
<input type="hidden" name="toUserId" value="" />
|
||||
<input type="hidden" name="eduAplctOrd" value="<c:out value="${vEPrcsDetailVO.eduAplctOrd}" />" />
|
||||
<input type="hidden" name="eduChasiOrd" value="<c:out value="${vEPrcsDetailVO.eduChasiOrd}" />" />
|
||||
</form>
|
||||
|
||||
<form:form id="listForm" name="listForm" commandName="vEEduAplctVO">
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEPrcsDetailVO.pageIndex}' default='1' />"/>
|
||||
|
||||
|
||||
|
||||
</form:form>
|
||||
<div class="popup_wrap popType01" tabindex="0" data-tooltip-con="sub01_pop01" data-focus="sub01_pop01" data-focus-prev="sub01_pop01_close">
|
||||
<div class="popup_tit">
|
||||
<p>내 강의 목록</p>
|
||||
<button class="btn_popup_close tooltip-close" data-focus="list_popup_close" title="팝업 닫기"><i></i></button>
|
||||
</div>
|
||||
<div class="popup_cont">
|
||||
<div class="cont_body">
|
||||
<div class="list_top">
|
||||
<div class="pop_list_top_left">
|
||||
<!-- <label for="searchCondition" class="label">학교급 선택</label> -->
|
||||
<%-- <kc:select codeId="VE0009" id="searchCondition" name="searchCondition" styleClass="selType1" defaultText="선택" defaultValue="" selectedValue="${scholInfoVO.searchCondition}"/> --%>
|
||||
</div>
|
||||
<div class="btn_wrap">
|
||||
<label for="searchKeyword" class="label">검색어 입력</label>
|
||||
<input type="text" name="searchKeyword" id="searchKeyword" value="<c:out value='${vEPrcsDetailVO.searchKeyword}' />" placeholder="검색어 입력" size="20"
|
||||
onKeypress="javascript:if(event.keyCode==13) {fncGoScholList(); return false;}"/>
|
||||
<button type="button" class="btnType07" onclick="fncGoScholList(); return false;">검색</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="pop_tb_type02">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: 8%;">
|
||||
<col style="width: 15%;">
|
||||
<col style="width: 8%;">
|
||||
<col style="width: auto">
|
||||
<col style="width: 10%;">
|
||||
<col style="width: 15%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">번호</th>
|
||||
<th scope="col">교육일자</th>
|
||||
<th scope="col">요일</th>
|
||||
<th scope="col">차시</th>
|
||||
<th scope="col">지역</th>
|
||||
<th scope="col">기관(학교)명</th>
|
||||
<th scope="col">교육대상</th>
|
||||
<th scope="col">신청상태</th>
|
||||
<th scope="col">교환상태</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${vEInstrAsgnmVOList}" varStatus="status">
|
||||
<fmt:parseDate value="${list.eduHopeDt}" var="eduHopeDt" pattern="yyyy.MM.dd"/> <!-- 요일 구하기 -->
|
||||
<c:choose>
|
||||
<c:when test="${list.notiCnt == 0}">
|
||||
<tr class="new_cont">
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<tr>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
<td>
|
||||
<c:if test="${vEInstrAsgnmVO.searchSortOrd eq 'desc' }">
|
||||
<c:out value="${ ( paginationInfo.totalRecordCount - ((vEInstrAsgnmVO.pageIndex -1)*vEInstrAsgnmVO.pageUnit) ) - status.index }"/>
|
||||
</c:if>
|
||||
<c:if test="${vEInstrAsgnmVO.searchSortOrd eq 'asc' }">
|
||||
<c:out value="${(vEInstrAsgnmVO.pageIndex - 1) * vEInstrAsgnmVO.pageUnit + status.count}"/>
|
||||
</c:if>
|
||||
</td>
|
||||
<td>
|
||||
${list.eduHopeDt}
|
||||
</td>
|
||||
<td>
|
||||
<fmt:formatDate value="${eduHopeDt}" pattern="E"/>
|
||||
</td>
|
||||
<td>
|
||||
<fmt:parseDate value="${list.strtTm}" var="strtTm" pattern="kkmm"/><fmt:formatDate value="${strtTm}" pattern="kk:mm"/>
|
||||
~<fmt:parseDate value="${list.endTm}" var="endTm" pattern="kkmm"/><fmt:formatDate value="${endTm}" pattern="kk:mm"/>
|
||||
(<c:out value='${list.lrnTm}'/>분)
|
||||
</td>
|
||||
<td>
|
||||
<c:if test="${list.eduSlctCd eq '10'}">
|
||||
(온)
|
||||
</c:if>
|
||||
<ve:code codeId="VE0008" code="${list.eduSlctAreaCd}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value='${list.scholInsttNm}'/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value='${list.trgt}'/>
|
||||
</td>
|
||||
<c:set var="statCd" value="" />
|
||||
|
||||
<c:choose>
|
||||
<c:when test="${list.asgnmAprvlCd eq '20'}">
|
||||
<!-- 배정 수락 요청 상태 -->
|
||||
<c:set var="statCd" value="대기" />
|
||||
</c:when>
|
||||
<c:when test="${(list.asgnmAprvlCd eq '40' and list.userId eq loginVO.id) or
|
||||
(list.hstryUserId eq loginVO.id and (list.hstryCd eq '10' or list.hstryCd eq '40'))}">
|
||||
<!-- 배정 거절 or 내역 거절 or 내열에 변경요청 -->
|
||||
<c:set var="statCd" value="거절" />
|
||||
|
||||
</c:when>
|
||||
<c:when test="${list.asgnmAprvlCd eq '30' and list.userId eq loginVO.id}">
|
||||
<c:set var="statCd" value="수락" />
|
||||
</c:when>
|
||||
</c:choose>
|
||||
<td><span class="app_status1">${statCd}</span>
|
||||
<c:choose>
|
||||
<c:when test="${list.asgnmAprvlCd eq '20'}">
|
||||
<!-- 배정 수락 요청 상태 -->
|
||||
<!--
|
||||
<button type="button" class="btnType01" onclick="fncChangeLctr(
|
||||
'<c:out value='${list.userId}'/>'
|
||||
, '<c:out value='${list.eduAplctOrd}'/>'
|
||||
, '<c:out value='${list.eduChasiOrd}'/>'
|
||||
); return false;">강의교환</button>
|
||||
-->
|
||||
</c:when>
|
||||
</c:choose>
|
||||
</td>
|
||||
<td>
|
||||
<button type="button" class="btnType01" onclick="fn_eduRegPopup('${list.userId}');">교환</button>
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
<c:if test="${empty vEInstrAsgnmVOList}">
|
||||
<tr><td colspan="8"><spring:message code="common.nodata.msg" /></td></tr>
|
||||
</c:if>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="page">
|
||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -0,0 +1,154 @@
|
||||
<%@ 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="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||
<%@ 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="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %>
|
||||
<un:useConstants var="VeConstants" className="kcc.ve.cmm.VeConstants" />
|
||||
|
||||
<script type="text/javascript">
|
||||
function fncGoScholList(){
|
||||
linkPage(1);
|
||||
}
|
||||
|
||||
function linkPage(pageNo){
|
||||
var data = {
|
||||
pageIndex : pageNo,
|
||||
searchKeyword : $("#searchKeyword").val(),
|
||||
pageUnit : 5,
|
||||
eduAplctOrd : $('#eduAplctOrd').val(),
|
||||
eduChasiOrd : $('#eduChasiOrd').val(),
|
||||
}
|
||||
fncScholList(data);
|
||||
}
|
||||
|
||||
function fncScholList(paramObj) {
|
||||
if(paramObj == undefined || paramObj == ''){
|
||||
paramObj = {
|
||||
pageIndex : 1,
|
||||
searchKeyword : "",
|
||||
pageUnit : 5,
|
||||
eduAplctOrd : $('#eduAplctOrd').val(),
|
||||
eduChasiOrd : $('#eduChasiOrd').val(),
|
||||
// formId : $("#formId").val(),
|
||||
};
|
||||
}
|
||||
|
||||
commonPopLayeropen(
|
||||
"${pageContext.request.contextPath}/web/ve/instr/tngrVisitEdu/asgnmInfo/popup/instrAsgnmListPopup.do"
|
||||
, 800
|
||||
, 800
|
||||
, paramObj
|
||||
, "N"
|
||||
, "instrAsgnmListPopup"
|
||||
);
|
||||
}
|
||||
|
||||
function fcnCallData(toUserId) {
|
||||
|
||||
document.reqForm.toUserId.value = toUserId;
|
||||
var data = new FormData(document.getElementById("reqForm"));
|
||||
|
||||
console.log(';data : ', data);
|
||||
if(confirm("강의교환을 신청하시겠습니까?")){
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url:"<c:url value='/web/ve/instr/tngrVisitEdu/asgnmInfo/insertVeaLctrExchnAjax.do'/>",
|
||||
data: data,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success: function (returnData, status) {
|
||||
if(status == 'success'){
|
||||
alert("완료되었습니다..");
|
||||
location.reload();
|
||||
} else if(status== 'fail'){
|
||||
alert("처리에 실패하였습니다.");
|
||||
}
|
||||
},
|
||||
error: function (e) { alert("처리에 실패하였습니다."); console.log("ERROR : ", e); }
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
<form id="reqForm" name="reqForm">
|
||||
|
||||
<input type="hidden" name="toUserId" value="" />
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="<c:out value="${vEInstrDetailVO.eduAplctOrd}" />" />
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="<c:out value="${vEInstrDetailVO.eduChasiOrd}" />" />
|
||||
</form>
|
||||
|
||||
<form:form id="listForm" name="listForm" commandName="vEEduAplctVO">
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEInstrDetailVO.pageIndex}' default='1' />"/>
|
||||
|
||||
|
||||
|
||||
</form:form>
|
||||
<div class="popup_wrap popType01" tabindex="0" data-tooltip-con="sub01_pop01" data-focus="sub01_pop01" data-focus-prev="sub01_pop01_close">
|
||||
<div class="popup_tit">
|
||||
<p>교환 강사 목록</p>
|
||||
<button class="btn_popup_close tooltip-close" data-focus="list_popup_close" title="팝업 닫기"><i></i></button>
|
||||
</div>
|
||||
<div class="popup_cont">
|
||||
<div class="cont_body">
|
||||
<div class="list_top">
|
||||
<div class="pop_list_top_left">
|
||||
<!-- <label for="searchCondition" class="label">학교급 선택</label> -->
|
||||
<%-- <kc:select codeId="VE0009" id="searchCondition" name="searchCondition" styleClass="selType1" defaultText="선택" defaultValue="" selectedValue="${scholInfoVO.searchCondition}"/> --%>
|
||||
</div>
|
||||
<div class="btn_wrap">
|
||||
<label for="searchKeyword" class="label">검색어 입력</label>
|
||||
<input type="text" name="searchKeyword" id="searchKeyword" value="<c:out value='${vEInstrDetailVO.searchKeyword}' />" placeholder="검색어 입력" size="20"
|
||||
onKeypress="javascript:if(event.keyCode==13) {fncGoScholList(); return false;}"/>
|
||||
<button type="button" class="btnType07" onclick="fncGoScholList(); return false;">검색</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="pop_tb_type02">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: 11%;">
|
||||
<col style="width: 15%;">
|
||||
<col style="width: 9%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">이름</th>
|
||||
<th scope="col">거주<br>지역</th>
|
||||
<th scope="col">선택</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${list}" varStatus="status">
|
||||
<tr>
|
||||
<td><c:out value='${list.instrNm}'/></td>
|
||||
<td><c:out value='${list.rsdne}'/></td>
|
||||
<td><button type="button" class="btnType01" onclick="fcnCallData('${list.userId}');">선택</button></td>
|
||||
|
||||
|
||||
</tr>
|
||||
</c:forEach>
|
||||
<c:if test="${empty list}">
|
||||
<tr><td colspan="3">강사를 검색해 주세요</td></tr>
|
||||
</c:if>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="page">
|
||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Loading…
Reference in New Issue
Block a user