2023-11-24 12:24 강사별 관리 메뉴 작업
This commit is contained in:
parent
71b9b66758
commit
ed70bf4b43
@ -182,6 +182,28 @@ public class ComDefaultVO implements Serializable {
|
||||
private String searchStartRegistPnttm;
|
||||
private String searchEndRegistPnttm;
|
||||
|
||||
/* 검색조건 공통 관리용 */
|
||||
private String srchCndt1 = "";
|
||||
private String srchKwd1_1 = "";
|
||||
private String srchKwd1_2 = "";
|
||||
|
||||
private String srchCndt2 = "";
|
||||
private String srchKwd2_1 = "";
|
||||
private String srchKwd2_2 = "";
|
||||
|
||||
private String srchCndt3 = "";
|
||||
private String srchKwd3_1 = "";
|
||||
private String srchKwd3_2 = "";
|
||||
|
||||
private String srchCndt4 = "";
|
||||
private String srchKwd4_1 = "";
|
||||
private String srchKwd4_2 = "";
|
||||
|
||||
private String srchCndt5 = "";
|
||||
private String srchKwd5_1 = "";
|
||||
private String srchKwd5_2 = "";
|
||||
|
||||
|
||||
public int getBeSort() {
|
||||
return beSort;
|
||||
}
|
||||
@ -894,4 +916,124 @@ public class ComDefaultVO implements Serializable {
|
||||
this.searchEndRegistPnttm = searchEndRegistPnttm;
|
||||
}
|
||||
|
||||
public String getSrchCndt1() {
|
||||
return srchCndt1;
|
||||
}
|
||||
|
||||
public void setSrchCndt1(String srchCndt1) {
|
||||
this.srchCndt1 = srchCndt1;
|
||||
}
|
||||
|
||||
public String getSrchKwd1_1() {
|
||||
return srchKwd1_1;
|
||||
}
|
||||
|
||||
public void setSrchKwd1_1(String srchKwd1_1) {
|
||||
this.srchKwd1_1 = srchKwd1_1;
|
||||
}
|
||||
|
||||
public String getSrchKwd1_2() {
|
||||
return srchKwd1_2;
|
||||
}
|
||||
|
||||
public void setSrchKwd1_2(String srchKwd1_2) {
|
||||
this.srchKwd1_2 = srchKwd1_2;
|
||||
}
|
||||
|
||||
public String getSrchCndt2() {
|
||||
return srchCndt2;
|
||||
}
|
||||
|
||||
public void setSrchCndt2(String srchCndt2) {
|
||||
this.srchCndt2 = srchCndt2;
|
||||
}
|
||||
|
||||
public String getSrchKwd2_1() {
|
||||
return srchKwd2_1;
|
||||
}
|
||||
|
||||
public void setSrchKwd2_1(String srchKwd2_1) {
|
||||
this.srchKwd2_1 = srchKwd2_1;
|
||||
}
|
||||
|
||||
public String getSrchKwd2_2() {
|
||||
return srchKwd2_2;
|
||||
}
|
||||
|
||||
public void setSrchKwd2_2(String srchKwd2_2) {
|
||||
this.srchKwd2_2 = srchKwd2_2;
|
||||
}
|
||||
|
||||
public String getSrchCndt3() {
|
||||
return srchCndt3;
|
||||
}
|
||||
|
||||
public void setSrchCndt3(String srchCndt3) {
|
||||
this.srchCndt3 = srchCndt3;
|
||||
}
|
||||
|
||||
public String getSrchKwd3_1() {
|
||||
return srchKwd3_1;
|
||||
}
|
||||
|
||||
public void setSrchKwd3_1(String srchKwd3_1) {
|
||||
this.srchKwd3_1 = srchKwd3_1;
|
||||
}
|
||||
|
||||
public String getSrchKwd3_2() {
|
||||
return srchKwd3_2;
|
||||
}
|
||||
|
||||
public void setSrchKwd3_2(String srchKwd3_2) {
|
||||
this.srchKwd3_2 = srchKwd3_2;
|
||||
}
|
||||
|
||||
public String getSrchCndt4() {
|
||||
return srchCndt4;
|
||||
}
|
||||
|
||||
public void setSrchCndt4(String srchCndt4) {
|
||||
this.srchCndt4 = srchCndt4;
|
||||
}
|
||||
|
||||
public String getSrchKwd4_1() {
|
||||
return srchKwd4_1;
|
||||
}
|
||||
|
||||
public void setSrchKwd4_1(String srchKwd4_1) {
|
||||
this.srchKwd4_1 = srchKwd4_1;
|
||||
}
|
||||
|
||||
public String getSrchKwd4_2() {
|
||||
return srchKwd4_2;
|
||||
}
|
||||
|
||||
public void setSrchKwd4_2(String srchKwd4_2) {
|
||||
this.srchKwd4_2 = srchKwd4_2;
|
||||
}
|
||||
|
||||
public String getSrchCndt5() {
|
||||
return srchCndt5;
|
||||
}
|
||||
|
||||
public void setSrchCndt5(String srchCndt5) {
|
||||
this.srchCndt5 = srchCndt5;
|
||||
}
|
||||
|
||||
public String getSrchKwd5_1() {
|
||||
return srchKwd5_1;
|
||||
}
|
||||
|
||||
public void setSrchKwd5_1(String srchKwd5_1) {
|
||||
this.srchKwd5_1 = srchKwd5_1;
|
||||
}
|
||||
|
||||
public String getSrchKwd5_2() {
|
||||
return srchKwd5_2;
|
||||
}
|
||||
|
||||
public void setSrchKwd5_2(String srchKwd5_2) {
|
||||
this.srchKwd5_2 = srchKwd5_2;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -28,6 +28,7 @@ import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.lctrInfo.service.VELctrDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.lctrInfo.service.VELctrSttsVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEAPrcsAplctPrdInstrAsgnmVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||
import kcc.ve.oprtn.qestnr.service.VEAQestnrVO;
|
||||
|
||||
/**
|
||||
@ -592,4 +593,18 @@ public class EgovCryptoUtil {
|
||||
// TODO Auto-generated method stub
|
||||
return vEPrcsDetailVOList;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public List<VEPrcsDetailVO> decryptvEPrcsDetailList(List<VEPrcsDetailVO> vEPrcsDetailVOList) {
|
||||
|
||||
for(VEPrcsDetailVO vo : vEPrcsDetailVOList) {
|
||||
vo.setInstrNm(this.decrypt(vo.getInstrNm()));
|
||||
}
|
||||
|
||||
// TODO Auto-generated method stub
|
||||
return vEPrcsDetailVOList;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@ -152,6 +152,9 @@ public class VEInstrAsgnmVO extends ComDefaultVO implements Serializable {
|
||||
|
||||
private String attendAtchFileId;//강사참석확인서 파일ID
|
||||
|
||||
private String aplctCn; //신청내용
|
||||
private String rqstCn; //요청내용
|
||||
|
||||
|
||||
public String getMemoCn() {
|
||||
return memoCn;
|
||||
@ -759,5 +762,17 @@ public class VEInstrAsgnmVO extends ComDefaultVO implements Serializable {
|
||||
public void setAttendAtchFileId(String attendAtchFileId) {
|
||||
this.attendAtchFileId = attendAtchFileId;
|
||||
}
|
||||
public String getAplctCn() {
|
||||
return aplctCn;
|
||||
}
|
||||
public void setAplctCn(String aplctCn) {
|
||||
this.aplctCn = aplctCn;
|
||||
}
|
||||
public String getRqstCn() {
|
||||
return rqstCn;
|
||||
}
|
||||
public void setRqstCn(String rqstCn) {
|
||||
this.rqstCn = rqstCn;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -154,6 +154,8 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
||||
|
||||
private String mberNm;
|
||||
|
||||
private String instrNm; //강사명
|
||||
|
||||
|
||||
|
||||
|
||||
@ -749,6 +751,12 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
||||
public void setMberNm(String mberNm) {
|
||||
this.mberNm = mberNm;
|
||||
}
|
||||
public String getInstrNm() {
|
||||
return instrNm;
|
||||
}
|
||||
public void setInstrNm(String instrNm) {
|
||||
this.instrNm = instrNm;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -22,4 +22,6 @@ public interface VEPrcsMIXService {
|
||||
// 온라인 컨텐츠 이용신청서 상세리스트
|
||||
List<VEPrcsDetailVO> selectPrcsDetailList(VEPrcsDetailVO paramVO) throws Exception;
|
||||
|
||||
//기반강화, 기소유예 - 강사별 관리
|
||||
List<VEPrcsDetailVO> selectPagingList4FndthInstr(VEPrcsDetailVO paramVO) throws Exception;
|
||||
}
|
||||
|
||||
@ -54,4 +54,8 @@ public class VEPrcsMIXDAO extends EgovAbstractDAO {
|
||||
return tlist;
|
||||
}
|
||||
|
||||
public List<VEPrcsDetailVO> selectPagingList4FndthInstr(VEPrcsDetailVO paramVO) throws Exception {
|
||||
List<VEPrcsDetailVO> tlist = (List<VEPrcsDetailVO>) list("VEPrcsDAO.selectPagingList4FndthInstr", paramVO);
|
||||
return tlist;
|
||||
}
|
||||
}
|
||||
|
||||
@ -45,4 +45,8 @@ public class VEPrcsMIXServiceImpl implements VEPrcsMIXService {
|
||||
public List<VEPrcsDetailVO> selectPrcsDetailList(VEPrcsDetailVO paramVO) throws Exception {
|
||||
return vEPrcsMIXDAO.selectPrcsDetailList(paramVO);
|
||||
}
|
||||
|
||||
public List<VEPrcsDetailVO> selectPagingList4FndthInstr(VEPrcsDetailVO paramVO) throws Exception{
|
||||
return vEPrcsMIXDAO.selectPagingList4FndthInstr(paramVO);
|
||||
}
|
||||
}
|
||||
|
||||
@ -971,6 +971,7 @@ public class AreaLctrMngAdultController {
|
||||
|
||||
//로그인 처리====================================
|
||||
|
||||
try {
|
||||
VEInstrFeeAcmdtVO vEInstrFeeAcmdtVO = new VEInstrFeeAcmdtVO();
|
||||
|
||||
vEInstrFeeAcmdtVO.setEduAplctOrd(vEInstrAsgnmVO.getEduAplctOrd());
|
||||
@ -995,6 +996,10 @@ public class AreaLctrMngAdultController {
|
||||
vEInstrFeeAcmdtVO.setTotalSum(totalSum);
|
||||
|
||||
model.addAttribute("info",vEInstrFeeAcmdtVO);
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
return "oprtn/adultVisitEdu/popup/instrCostPopup";
|
||||
}
|
||||
|
||||
|
||||
@ -0,0 +1,317 @@
|
||||
package kcc.ve.oprtn.cndtnSspnIdtmt.web;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpSession;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
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 egovframework.rte.fdl.idgnr.EgovIdGnrService;
|
||||
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||
import kcc.com.cmm.service.EgovFileMngService;
|
||||
import kcc.com.cmm.service.EgovFileMngUtil;
|
||||
import kcc.com.cmm.service.impl.CmmUseDAO;
|
||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiService;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEAPrcsAplctPrdInstrAsgnmService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEAPrcsAplctPrdInstrAsgnmVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsAplctPrdService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCmpltDetailService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsMIXService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsOnlnCntntService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
||||
|
||||
/**
|
||||
* 기반강화연수(관리자) 강사관리
|
||||
* 기반강화연수에 관한 controller 클래스를 정의한다.
|
||||
* @author 조용준
|
||||
* @since 2023.07.12
|
||||
* @version 1.0
|
||||
* @see
|
||||
*
|
||||
* <pre>
|
||||
* << 개정이력(Modification Information) >>
|
||||
*
|
||||
* 수정일 수정자 수정내용
|
||||
* ------- -------- ---------------------------
|
||||
* 2021.12.16 조용준 최초 생성
|
||||
*
|
||||
* </pre>
|
||||
*/
|
||||
|
||||
@Controller
|
||||
//@RequestMapping("/kccadr/oprtn/fndthEnhanceTrn")
|
||||
public class CndtnInstrMngController {
|
||||
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(CndtnInstrMngController.class);
|
||||
|
||||
//로그인 체크 util
|
||||
@Resource(name = "checkLoginUtil")
|
||||
private CheckLoginUtil checkLoginUtil;
|
||||
|
||||
//과정 관리
|
||||
@Resource(name = "vEPrcsService")
|
||||
private VEPrcsService vEPrcsService;
|
||||
|
||||
//과정 관리
|
||||
@Resource(name = "vEEduMIXService")
|
||||
private VEEduMIXService vEEduMIXService;
|
||||
|
||||
//온라인콘텐츠과정 관리
|
||||
@Resource(name = "vEPrcsOnlnCntntService")
|
||||
private VEPrcsOnlnCntntService vEPrcsOnlnCntntService;
|
||||
|
||||
//과정차시 관리
|
||||
@Resource(name = "vEPrcsAplctPrdService")
|
||||
private VEPrcsAplctPrdService vEPrcsAplctPrdService;
|
||||
|
||||
//과정차시 관리
|
||||
@Resource(name = "vEPrcsMIXService")
|
||||
private VEPrcsMIXService vEPrcsMIXService;
|
||||
|
||||
//과정차시 관리
|
||||
@Resource(name = "vEAPrcsAplctPrdInstrAsgnmService")
|
||||
private VEAPrcsAplctPrdInstrAsgnmService vEAPrcsAplctPrdInstrAsgnmService;
|
||||
|
||||
//교육과정순번
|
||||
@Resource(name="prcsGnrService")
|
||||
private EgovIdGnrService prcsGnrService;
|
||||
|
||||
//과정신청기간순번
|
||||
@Resource(name="prcsAplctPrdGnrService")
|
||||
private EgovIdGnrService prcsAplctPrdGnrService;
|
||||
|
||||
//과정온라인콘텐츠순번
|
||||
@Resource(name="prcsOnlnGnrService")
|
||||
private EgovIdGnrService prcsOnlnGnrService;
|
||||
|
||||
//교육신청
|
||||
@Resource(name = "vEEduAplctService")
|
||||
private VEEduAplctService vEEduAplctService;
|
||||
|
||||
//차시
|
||||
@Resource(name = "vEEduChasiService")
|
||||
private VEEduChasiService vVEEduChasiService;
|
||||
|
||||
//첨부파일 경로, realPath 설정
|
||||
@Resource(name="EgovFileMngUtil")
|
||||
private EgovFileMngUtil fileUtil;
|
||||
|
||||
//암복호화 유틸
|
||||
@Resource(name = "egovCryptoUtil")
|
||||
EgovCryptoUtil egovCryptoUtil;
|
||||
|
||||
//교육과정신청
|
||||
@Resource(name = "vEPrcsCmpltDetailService")
|
||||
private VEPrcsCmpltDetailService vEPrcsCmpltDetailService;
|
||||
|
||||
@Resource(name = "EgovFileMngService")
|
||||
private EgovFileMngService fileService;
|
||||
|
||||
//과정
|
||||
@Resource(name="cmmUseDAO")
|
||||
private CmmUseDAO cmmUseDAO;
|
||||
|
||||
//과정신청기간순번
|
||||
@Resource(name="vePrcsAplctPrdEtcGnrService")
|
||||
private EgovIdGnrService vePrcsAplctPrdEtcGnrService;
|
||||
/*
|
||||
|
||||
// 교육신청 서비스단
|
||||
@Resource(name = "AdjReqMgrService")
|
||||
private AdjReqMgrService adjReqMgrService;
|
||||
|
||||
// eGov 공통코드
|
||||
@Resource(name = "EgovCmmUseService")
|
||||
private EgovCmmUseService cmmUseService;
|
||||
|
||||
@Resource(name = "EgovFileMngService")
|
||||
private EgovFileMngService fileService;
|
||||
|
||||
// global 프로퍼티
|
||||
@Resource(name="globalSettings")
|
||||
protected Properties propertiesService;
|
||||
|
||||
//첨부파일 경로, realPath 설정
|
||||
@Resource(name="EgovFileMngUtil")
|
||||
private EgovFileMngUtil fileUtil;
|
||||
|
||||
// 첨부파일 정보
|
||||
@Resource(name="EgovFileMngService")
|
||||
private EgovFileMngService fileMngService;
|
||||
|
||||
//암복호화 유틸
|
||||
@Resource(name = "egovCryptoUtil")
|
||||
EgovCryptoUtil egovCryptoUtil;
|
||||
|
||||
|
||||
@Resource(name="KccadrMgrUdtService")
|
||||
private KccadrMgrUdtService kccadrMgrUdtService;
|
||||
|
||||
// 교육신청 서비스단
|
||||
@Resource(name = "checkAdrProcessUtil")
|
||||
private CheckAdrProcessUtil checkAdrProcessUtil;
|
||||
*/
|
||||
/**
|
||||
* 기소유예 교육확정관리목록
|
||||
*/
|
||||
@RequestMapping("/kccadr/oprtn/cndtnSspnIdtmt/cndtnInstrMngList.do")
|
||||
public String cndtnInstrMngList( @ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||
, HttpSession session, ModelMap model ) throws Exception {
|
||||
|
||||
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
|
||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||
if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
|
||||
|
||||
//로그인 처리====================================
|
||||
|
||||
//1.pageing step1
|
||||
PaginationInfo paginationInfo = this.setPagingStep1(vEPrcsDetailVO);
|
||||
|
||||
//임시로 페이징 처리를 안하기 위해서 RecordCountPerPage 수를 10000 으로 셋팅함
|
||||
//paginationInfo.setRecordCountPerPage(10000);
|
||||
|
||||
//2. pageing step2
|
||||
vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo);
|
||||
|
||||
//기반강화 조회
|
||||
vEPrcsDetailVO.setLctrDivCd("60"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
|
||||
|
||||
//교육확정 목록 조회
|
||||
vEPrcsDetailVO.setDdlnCd("20");
|
||||
|
||||
//정렬
|
||||
System.out.println(vEPrcsDetailVO.getSearchSortCnd());
|
||||
System.out.println(vEPrcsDetailVO.getSearchSortOrd());
|
||||
if(!"".equals(vEPrcsDetailVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
||||
vEPrcsDetailVO.setOrderByQuery(vEPrcsDetailVO.getSearchSortCnd() + " " +vEPrcsDetailVO.getSearchSortOrd());
|
||||
}
|
||||
|
||||
|
||||
//강사명 검색시 암호화
|
||||
if (!"".equals(vEPrcsDetailVO.getSrchKwd3_1())) {
|
||||
vEPrcsDetailVO.setSrchKwd3_1(egovCryptoUtil.encrypt(vEPrcsDetailVO.getSrchKwd3_1()));
|
||||
}
|
||||
|
||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsMIXService.selectPagingList4FndthInstr(vEPrcsDetailVO);
|
||||
|
||||
//강사명 검색시 복호화
|
||||
if (!"".equals(vEPrcsDetailVO.getSrchKwd3_1())) {
|
||||
vEPrcsDetailVO.setSrchKwd3_1(egovCryptoUtil.decrypt(vEPrcsDetailVO.getSrchKwd3_1()));
|
||||
}
|
||||
|
||||
|
||||
//3.pageing step3
|
||||
paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo);
|
||||
|
||||
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
// 지정된 강사가 있는지 확인
|
||||
vEPrcsDetailVOList.stream().forEach(t->{
|
||||
|
||||
List<VEAPrcsAplctPrdInstrAsgnmVO> vEAPrcsAplctPrdInstrAsgnmList = vEAPrcsAplctPrdInstrAsgnmService.findByPrcsAplctPrdOrd(t.getPrcsAplctPrdOrd());
|
||||
if(vEAPrcsAplctPrdInstrAsgnmList.size() > 0) {
|
||||
t.setInstrCnt(Integer.toString(vEAPrcsAplctPrdInstrAsgnmList.size()));
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
vEPrcsDetailVOList = egovCryptoUtil.decryptvEPrcsDetailList(vEPrcsDetailVOList);
|
||||
model.addAttribute("list", vEPrcsDetailVOList);
|
||||
|
||||
|
||||
|
||||
|
||||
return "oprtn/cndtnSspnIdtmt/cndtnInstrMngList";
|
||||
}
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
//
|
||||
// private function
|
||||
//
|
||||
//
|
||||
|
||||
//페이징을 위한 처리 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.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 setPagingStep3(
|
||||
List<VEPrcsDetailVO> p_vEPrcsDetailVOList
|
||||
|
||||
, PaginationInfo p_paginationInfo
|
||||
)throws Exception{
|
||||
// pageing step3
|
||||
int totCnt = 0;
|
||||
if(p_vEPrcsDetailVOList.size() > 0) totCnt = p_vEPrcsDetailVOList.get(0).getTotCnt();
|
||||
p_paginationInfo.setTotalRecordCount(totCnt);
|
||||
|
||||
return p_paginationInfo;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//페이징을 위한 처리 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;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,317 @@
|
||||
package kcc.ve.oprtn.fndtnEnhanceTrn.prcsAplctPrdMng.web;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpSession;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
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 egovframework.rte.fdl.idgnr.EgovIdGnrService;
|
||||
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||
import kcc.com.cmm.service.EgovFileMngService;
|
||||
import kcc.com.cmm.service.EgovFileMngUtil;
|
||||
import kcc.com.cmm.service.impl.CmmUseDAO;
|
||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiService;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEAPrcsAplctPrdInstrAsgnmService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEAPrcsAplctPrdInstrAsgnmVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsAplctPrdService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCmpltDetailService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsMIXService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsOnlnCntntService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
||||
|
||||
/**
|
||||
* 기반강화연수(관리자) 강사관리
|
||||
* 기반강화연수에 관한 controller 클래스를 정의한다.
|
||||
* @author 조용준
|
||||
* @since 2023.07.12
|
||||
* @version 1.0
|
||||
* @see
|
||||
*
|
||||
* <pre>
|
||||
* << 개정이력(Modification Information) >>
|
||||
*
|
||||
* 수정일 수정자 수정내용
|
||||
* ------- -------- ---------------------------
|
||||
* 2021.12.16 조용준 최초 생성
|
||||
*
|
||||
* </pre>
|
||||
*/
|
||||
|
||||
@Controller
|
||||
//@RequestMapping("/kccadr/oprtn/fndthEnhanceTrn")
|
||||
public class FndthInstrMngController {
|
||||
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(FndthInstrMngController.class);
|
||||
|
||||
//로그인 체크 util
|
||||
@Resource(name = "checkLoginUtil")
|
||||
private CheckLoginUtil checkLoginUtil;
|
||||
|
||||
//과정 관리
|
||||
@Resource(name = "vEPrcsService")
|
||||
private VEPrcsService vEPrcsService;
|
||||
|
||||
//과정 관리
|
||||
@Resource(name = "vEEduMIXService")
|
||||
private VEEduMIXService vEEduMIXService;
|
||||
|
||||
//온라인콘텐츠과정 관리
|
||||
@Resource(name = "vEPrcsOnlnCntntService")
|
||||
private VEPrcsOnlnCntntService vEPrcsOnlnCntntService;
|
||||
|
||||
//과정차시 관리
|
||||
@Resource(name = "vEPrcsAplctPrdService")
|
||||
private VEPrcsAplctPrdService vEPrcsAplctPrdService;
|
||||
|
||||
//과정차시 관리
|
||||
@Resource(name = "vEPrcsMIXService")
|
||||
private VEPrcsMIXService vEPrcsMIXService;
|
||||
|
||||
//과정차시 관리
|
||||
@Resource(name = "vEAPrcsAplctPrdInstrAsgnmService")
|
||||
private VEAPrcsAplctPrdInstrAsgnmService vEAPrcsAplctPrdInstrAsgnmService;
|
||||
|
||||
//교육과정순번
|
||||
@Resource(name="prcsGnrService")
|
||||
private EgovIdGnrService prcsGnrService;
|
||||
|
||||
//과정신청기간순번
|
||||
@Resource(name="prcsAplctPrdGnrService")
|
||||
private EgovIdGnrService prcsAplctPrdGnrService;
|
||||
|
||||
//과정온라인콘텐츠순번
|
||||
@Resource(name="prcsOnlnGnrService")
|
||||
private EgovIdGnrService prcsOnlnGnrService;
|
||||
|
||||
//교육신청
|
||||
@Resource(name = "vEEduAplctService")
|
||||
private VEEduAplctService vEEduAplctService;
|
||||
|
||||
//차시
|
||||
@Resource(name = "vEEduChasiService")
|
||||
private VEEduChasiService vVEEduChasiService;
|
||||
|
||||
//첨부파일 경로, realPath 설정
|
||||
@Resource(name="EgovFileMngUtil")
|
||||
private EgovFileMngUtil fileUtil;
|
||||
|
||||
//암복호화 유틸
|
||||
@Resource(name = "egovCryptoUtil")
|
||||
EgovCryptoUtil egovCryptoUtil;
|
||||
|
||||
//교육과정신청
|
||||
@Resource(name = "vEPrcsCmpltDetailService")
|
||||
private VEPrcsCmpltDetailService vEPrcsCmpltDetailService;
|
||||
|
||||
@Resource(name = "EgovFileMngService")
|
||||
private EgovFileMngService fileService;
|
||||
|
||||
//과정
|
||||
@Resource(name="cmmUseDAO")
|
||||
private CmmUseDAO cmmUseDAO;
|
||||
|
||||
//과정신청기간순번
|
||||
@Resource(name="vePrcsAplctPrdEtcGnrService")
|
||||
private EgovIdGnrService vePrcsAplctPrdEtcGnrService;
|
||||
/*
|
||||
|
||||
// 교육신청 서비스단
|
||||
@Resource(name = "AdjReqMgrService")
|
||||
private AdjReqMgrService adjReqMgrService;
|
||||
|
||||
// eGov 공통코드
|
||||
@Resource(name = "EgovCmmUseService")
|
||||
private EgovCmmUseService cmmUseService;
|
||||
|
||||
@Resource(name = "EgovFileMngService")
|
||||
private EgovFileMngService fileService;
|
||||
|
||||
// global 프로퍼티
|
||||
@Resource(name="globalSettings")
|
||||
protected Properties propertiesService;
|
||||
|
||||
//첨부파일 경로, realPath 설정
|
||||
@Resource(name="EgovFileMngUtil")
|
||||
private EgovFileMngUtil fileUtil;
|
||||
|
||||
// 첨부파일 정보
|
||||
@Resource(name="EgovFileMngService")
|
||||
private EgovFileMngService fileMngService;
|
||||
|
||||
//암복호화 유틸
|
||||
@Resource(name = "egovCryptoUtil")
|
||||
EgovCryptoUtil egovCryptoUtil;
|
||||
|
||||
|
||||
@Resource(name="KccadrMgrUdtService")
|
||||
private KccadrMgrUdtService kccadrMgrUdtService;
|
||||
|
||||
// 교육신청 서비스단
|
||||
@Resource(name = "checkAdrProcessUtil")
|
||||
private CheckAdrProcessUtil checkAdrProcessUtil;
|
||||
*/
|
||||
/**
|
||||
* 기반강화연수 교육확정관리목록
|
||||
*/
|
||||
@RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthInstrMngList.do")
|
||||
public String fndthInstrMngList( @ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||
, HttpSession session, ModelMap model ) throws Exception {
|
||||
|
||||
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
|
||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||
if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo;
|
||||
|
||||
//로그인 처리====================================
|
||||
|
||||
//1.pageing step1
|
||||
PaginationInfo paginationInfo = this.setPagingStep1(vEPrcsDetailVO);
|
||||
|
||||
//임시로 페이징 처리를 안하기 위해서 RecordCountPerPage 수를 10000 으로 셋팅함
|
||||
//paginationInfo.setRecordCountPerPage(10000);
|
||||
|
||||
//2. pageing step2
|
||||
vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo);
|
||||
|
||||
//기반강화 조회
|
||||
vEPrcsDetailVO.setLctrDivCd("50"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
|
||||
|
||||
//교육확정 목록 조회
|
||||
vEPrcsDetailVO.setDdlnCd("20");
|
||||
|
||||
//정렬
|
||||
System.out.println(vEPrcsDetailVO.getSearchSortCnd());
|
||||
System.out.println(vEPrcsDetailVO.getSearchSortOrd());
|
||||
if(!"".equals(vEPrcsDetailVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
||||
vEPrcsDetailVO.setOrderByQuery(vEPrcsDetailVO.getSearchSortCnd() + " " +vEPrcsDetailVO.getSearchSortOrd());
|
||||
}
|
||||
|
||||
|
||||
//강사명 검색시 암호화
|
||||
if (!"".equals(vEPrcsDetailVO.getSrchKwd3_1())) {
|
||||
vEPrcsDetailVO.setSrchKwd3_1(egovCryptoUtil.encrypt(vEPrcsDetailVO.getSrchKwd3_1()));
|
||||
}
|
||||
|
||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsMIXService.selectPagingList4FndthInstr(vEPrcsDetailVO);
|
||||
|
||||
//강사명 검색시 복호화
|
||||
if (!"".equals(vEPrcsDetailVO.getSrchKwd3_1())) {
|
||||
vEPrcsDetailVO.setSrchKwd3_1(egovCryptoUtil.decrypt(vEPrcsDetailVO.getSrchKwd3_1()));
|
||||
}
|
||||
|
||||
|
||||
//3.pageing step3
|
||||
paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo);
|
||||
|
||||
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
// 지정된 강사가 있는지 확인
|
||||
vEPrcsDetailVOList.stream().forEach(t->{
|
||||
|
||||
List<VEAPrcsAplctPrdInstrAsgnmVO> vEAPrcsAplctPrdInstrAsgnmList = vEAPrcsAplctPrdInstrAsgnmService.findByPrcsAplctPrdOrd(t.getPrcsAplctPrdOrd());
|
||||
if(vEAPrcsAplctPrdInstrAsgnmList.size() > 0) {
|
||||
t.setInstrCnt(Integer.toString(vEAPrcsAplctPrdInstrAsgnmList.size()));
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
vEPrcsDetailVOList = egovCryptoUtil.decryptvEPrcsDetailList(vEPrcsDetailVOList);
|
||||
model.addAttribute("list", vEPrcsDetailVOList);
|
||||
|
||||
|
||||
|
||||
|
||||
return "oprtn/fndthEnhanceTrn/fndthInstrMngList";
|
||||
}
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
//
|
||||
// private function
|
||||
//
|
||||
//
|
||||
|
||||
//페이징을 위한 처리 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.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 setPagingStep3(
|
||||
List<VEPrcsDetailVO> p_vEPrcsDetailVOList
|
||||
|
||||
, PaginationInfo p_paginationInfo
|
||||
)throws Exception{
|
||||
// pageing step3
|
||||
int totCnt = 0;
|
||||
if(p_vEPrcsDetailVOList.size() > 0) totCnt = p_vEPrcsDetailVOList.get(0).getTotCnt();
|
||||
p_paginationInfo.setTotalRecordCount(totCnt);
|
||||
|
||||
return p_paginationInfo;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//페이징을 위한 처리 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;
|
||||
}
|
||||
|
||||
}
|
||||
@ -1283,7 +1283,7 @@ public class AreaLctrMngTngrController {
|
||||
//if (!"".equals(s_userCheckNInfo)) return s_userCheckNInfo;
|
||||
|
||||
//로그인 처리====================================
|
||||
|
||||
try{
|
||||
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
|
||||
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_10);// 청소년교육 코드
|
||||
vEEduChasiVO.setEduAplctOrd(vEInstrAsgnmVO.getEduAplctOrd());
|
||||
@ -1298,6 +1298,10 @@ public class AreaLctrMngTngrController {
|
||||
model.addAttribute("memoCn",vEEduChasiVOInfo.getMemoCn());
|
||||
model.addAttribute("info",vEInstrFeeAcmdtVO);
|
||||
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
return "oprtn/tngrVisitEdu/popup/instrCostPopup";
|
||||
}
|
||||
|
||||
|
||||
@ -779,6 +779,8 @@
|
||||
, (SELECT COUNT(1) FROM ve_edu_chasi_instr_asgnm_hstry WHERE edu_aplct_ord = #eduAplctOrd# AND edu_chasi_ord = #eduChasiOrd#) AS hstryCnt
|
||||
, b.attend_atch_file_id AS attendAtchFileId
|
||||
, b.pht_atch_file_id AS phtAtchFileId
|
||||
, b.aplct_cn AS aplctCn
|
||||
, b.rqst_cn AS rqstCn
|
||||
FROM ve_edu_chasi a
|
||||
JOIN ve_edu_aplct b
|
||||
ON a.edu_aplct_ord = b.edu_aplct_ord
|
||||
|
||||
@ -426,4 +426,101 @@
|
||||
|
||||
</update>
|
||||
|
||||
<!-- 기반강화, 기소유예 강사 L page -->
|
||||
<select id="VEPrcsDAO.selectPagingList4FndthInstr" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
|
||||
/* VEPrcsDAO.selectPagingList4FndthInstr */
|
||||
|
||||
SELECT COUNT(1) OVER() AS totCnt ,
|
||||
a.prcs_aplct_prd_ord AS prcsAplctPrdOrd,
|
||||
a.lctr_div_cd AS lctrDivCd,
|
||||
a.strt_pnttm AS strtPnttm,
|
||||
a.end_pnttm AS endPnttm,
|
||||
a.use_yn AS useYn,
|
||||
a.anncm_cn AS anncmCn,
|
||||
a.popup_cn AS popupCn,
|
||||
a.atch_file_id AS atchFileId,
|
||||
a.title AS title ,
|
||||
a.dead_line_dt AS deadLineDt ,
|
||||
a.prcs_ord AS prcsOrd ,
|
||||
a.edu_part_cd AS eduPartCd ,
|
||||
a.nos AS nos ,
|
||||
a.ddln_cd AS ddlnCd ,
|
||||
a.edu_strt_pnttm AS eduStrtPnttm ,
|
||||
a.edu_ddln_pnttm AS eduDdlnPnttm ,
|
||||
a.dprtm_nm AS dprtmNm ,
|
||||
|
||||
b.prcs_nm AS prcsNm ,
|
||||
b.prcs_div AS prcsDiv
|
||||
|
||||
, c.user_id AS userId
|
||||
, c.instr_nm AS instrNm
|
||||
|
||||
FROM ve_prcs_aplct_prd a
|
||||
|
||||
, ve_prcs b
|
||||
|
||||
,
|
||||
(
|
||||
SELECT a0.prcs_aplct_prd_ord
|
||||
, a0.user_id
|
||||
, b.instr_nm
|
||||
FROM vea_prcs_aplct_prd_instr_asgnm a0
|
||||
, ve_instr_detail b
|
||||
WHERE 1=1
|
||||
AND a0.asgnm_aprvl_cd='30'
|
||||
AND a0.user_id=b.user_id
|
||||
AND b.use_yn='Y'
|
||||
) c
|
||||
|
||||
|
||||
WHERE 1 =1
|
||||
AND a.prcs_ord =b.prcs_ord
|
||||
|
||||
AND a.lctr_div_cd=#lctrDivCd#
|
||||
/*교육확정목록을 조회하기 위한 조건문*/
|
||||
AND a.ddln_cd = #ddlnCd#
|
||||
|
||||
AND a.use_yn='Y'
|
||||
|
||||
AND a.prcs_aplct_prd_ord = c.prcs_aplct_prd_ord
|
||||
|
||||
|
||||
<!-- 대면/비대면 여부 -->
|
||||
<isNotEmpty property="srchCndt1">
|
||||
AND b.prcs_div = #srchCndt1#
|
||||
</isNotEmpty>
|
||||
|
||||
|
||||
<!-- 교육시작기간 -->
|
||||
<isNotEmpty property="srchKwd2_1">
|
||||
AND a.edu_strt_pnttm >= #srchKwd2_1#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty property="srchKwd2_2">
|
||||
AND #srchKwd2_2# >= a.edu_strt_pnttm
|
||||
</isNotEmpty>
|
||||
|
||||
|
||||
<!-- 대면/비대면 여부 -->
|
||||
<isNotEmpty property="srchKwd3_1">
|
||||
AND c.instr_nm = #srchKwd3_1#
|
||||
</isNotEmpty>
|
||||
|
||||
|
||||
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>
|
||||
|
||||
</sqlMap>
|
||||
|
||||
@ -45,6 +45,7 @@
|
||||
<pattern>*/oprtn/comm/popup/**</pattern> <!-- 반려 팝업 -->
|
||||
<pattern>*/ve/oprtn/instr/adultVisitEdu/popup/instrRsdnePopup.do</pattern> <!-- 거주지 선택 팝업 -->
|
||||
<pattern>*/ve/oprtn/instr/adultVisitEdu/instrInfo/instrMdfyRqstPopup.do</pattern> <!-- 성인강사변경승인팝업 -->
|
||||
<pattern>*/kccadr/oprtn/cpyrgExprnClsrm/popup/slctnTeacherPopup.do</pattern> <!-- 관리자 저작권체험교실 교육과정안내 미리보기 팝업 -->
|
||||
</decorator>
|
||||
|
||||
<!-- 찾교 추가 관리자 -->
|
||||
@ -157,7 +158,7 @@
|
||||
|
||||
<pattern>*/kccadr/oprtn/cpyrgExprnClsrm/cautionGuidePreView.do</pattern> <!-- 관리자 저작권체험교실 교육과정안내 미리보기 팝업 -->
|
||||
|
||||
<pattern>*/kccadr/oprtn/cpyrgExprnClsrm/popup/slctnTeacherPopup.do</pattern> <!-- 관리자 저작권체험교실 교육과정안내 미리보기 팝업 -->
|
||||
|
||||
<pattern>*/cop/bbs/EgovBBSIdListSearch.do</pattern> <!-- 관리자 저작권체험교실 교육과정안내 미리보기 팝업 -->
|
||||
|
||||
<!-- <pattern>*/tngrVisitEdu/popup/*Popup.do</pattern>
|
||||
|
||||
@ -105,7 +105,7 @@
|
||||
</form:form>
|
||||
|
||||
<form:form id="createForm" name="createForm" commandName="vEEduAplctVO" method="post">
|
||||
<input type="hidden" name="eduAplctOrd" value="<c:out value="${vEEduAplctVO.eduAplctOrd}" />" />
|
||||
<%-- <input type="hidden" name="eduAplctOrd" value="<c:out value="${vEEduAplctVO.eduAplctOrd}" />" /> --%>
|
||||
<input type="hidden" name="eduChasiOrd" value="<c:out value="${vEEduAplctVO.eduChasiOrd}" />" />
|
||||
<input type="hidden" name="instrDiv" value="<c:out value="${vEEduAplctVO.instrDiv}" />" />
|
||||
<!-- cont -->
|
||||
|
||||
@ -247,10 +247,13 @@
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<c:if test="${info != null }">
|
||||
<c:if test="${info.sbmtYn ne 'Y'}">
|
||||
<button type="button" class="btn_type04" onclick="fnSaveFee('Y')">확정</button>
|
||||
<button type="button" class="btn_type04" onclick="fnSaveFee('N')">저장</button>
|
||||
</c:if>
|
||||
</c:if>
|
||||
|
||||
<button type="button" class="btn_type02" onclick="fncPopClose()">닫기</button>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
|
||||
@ -0,0 +1,349 @@
|
||||
<!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 : cndtnInstrMngList.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">
|
||||
|
||||
|
||||
$(document).ready(function(){
|
||||
|
||||
// 상태값 확인
|
||||
$(".ddlnCdStts").each(function() {
|
||||
var $currentCell = $(this);
|
||||
|
||||
// 텍스트가 비어있는지 확인
|
||||
if ($currentCell.text().trim() === "") {
|
||||
var $currentRow = $currentCell.closest('tr');
|
||||
|
||||
var strtPnttm = new Date($currentRow.find("td:eq(3)").text().split("~")[0].trim());
|
||||
var endPnttm = new Date($currentRow.find("td:eq(3)").text().split("~")[1].trim());
|
||||
var currentDate = new Date();
|
||||
|
||||
var ddlnCdText = '';
|
||||
if (currentDate < strtPnttm) {
|
||||
ddlnCdText = "접수전";
|
||||
} else if (currentDate >= strtPnttm && currentDate <= endPnttm) {
|
||||
ddlnCdText = "접수중";
|
||||
} else if (currentDate > endPnttm) {
|
||||
ddlnCdText = "접수종료";
|
||||
}
|
||||
|
||||
$currentCell.text(ddlnCdText);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
|
||||
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/cndtnSspnIdtmt/cndtnInstrMngList.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
|
||||
function fncGoDetail(prcsAplctPrdOrd){
|
||||
var listForm = document.listForm ;
|
||||
listForm.prcsAplctPrdOrd.value = prcsAplctPrdOrd ;
|
||||
listForm.action = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsAplctPrdMngDetail.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/fndthEnhanceTrn/fndthEduPrcsMngDeleteAjax.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);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
function fncReset(thisObj) {
|
||||
var targetObj = $(thisObj).closest('.list_top').find('select,input');
|
||||
$.each(targetObj, function() {
|
||||
if ($(this).prop('tagName') == 'SELECT') {
|
||||
if ($(this).attr('name').indexOf('Month') != -1) {
|
||||
$(this).val(new Date().getMonth() + 1);
|
||||
} else if ($(this).attr('name').indexOf('Year') != -1) {
|
||||
$(this).val(new Date().getFullYear());
|
||||
} else {
|
||||
$(this).prop("selectedIndex", 0);
|
||||
}
|
||||
} else {
|
||||
if ($(this).attr('type') == 'checkbox') {
|
||||
$(this).prop('checked', false);
|
||||
} else {
|
||||
$(this).val('');
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
</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="prcsAplctPrdOrd" name="prcsAplctPrdOrd" 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="srchCndt1" id="srchCndt1" css="class='sel_type1'"
|
||||
selectedValue="${vEPrcsDetailVO.srchCndt1 }" defaultValue=""
|
||||
defaultText="전체"
|
||||
/>
|
||||
<div class="calendar_wrap">
|
||||
<%-- <input type="text" class="calendar" title="시작일 선택" id="searchSmbtStartDt" name="searchSmbtStartDt" value="${vEPrcsDetailVO.srchKwd2_1}"> --%>
|
||||
<input type="text" class="calendar" title="시작일 선택" id="srchKwd2_1" name="srchKwd2_1" value="${vEPrcsDetailVO.srchKwd2_1}">
|
||||
</div>
|
||||
~
|
||||
<div class="calendar_wrap">
|
||||
<input type="text" class="calendar" title="종료일 선택" id="srchKwd2_2" name="srchKwd2_2" value="${vEPrcsDetailVO.srchKwd2_2}">
|
||||
</div>
|
||||
<input type="text" id="srchKwd3_1" name="srchKwd3_1" placeholder="강사명를 입력하세요." title="검색어 입력" class="search_input" value="<c:out value='${vEPrcsDetailVO.srchKwd3_1}'/>">
|
||||
<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: 5%">
|
||||
<col style="width: 10%">
|
||||
<col style="width: 10%">
|
||||
<col style="width: auto">
|
||||
<col style="width: 180px;">
|
||||
<%-- <col style="width: 180px;"> --%>
|
||||
<col style="width: 10%">
|
||||
<col style="width: 10%">
|
||||
<%-- <col style="width: 10%"> --%>
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>NO</th>
|
||||
<th>교육구분코드</th>
|
||||
<th>강사명</th>
|
||||
<th>과정명<button class="sort sortBtn" id="sort_prcsNm">▲</button></th>
|
||||
<th>교육일자<button class="sort sortBtn" id="sort_eduStrtPnttm">▲</button></th>
|
||||
<!-- <th>신청자/정원</th> -->
|
||||
<th>상태</th>
|
||||
<th>강사배정</th>
|
||||
<!-- <th>공개여부</th> -->
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${list}" varStatus="status">
|
||||
<tr class="listCount">
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');" style="cursor:pointer;">
|
||||
<c:out value="${status.count}"/>
|
||||
</td>
|
||||
<td>
|
||||
<kc:code codeId="VEA001" code="${list.prcsDiv}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.instrNm}"/>
|
||||
</td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');" style="cursor:pointer;">
|
||||
<c:out value="${list.prcsNm}"/>(<c:out value="${list.prcsAplctPrdOrd}"/>)
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.eduStrtPnttm}"/>
|
||||
</td>
|
||||
<!--
|
||||
<td>
|
||||
<c:out value="${list.nosCnt1}"/>/<c:out value="${list.nos}"/>
|
||||
</td>
|
||||
-->
|
||||
<td class="ddlnCdStts">
|
||||
<kc:code codeId="VEA004" code="${list.ddlnCd}"/>
|
||||
</td>
|
||||
<td>
|
||||
<%-- <c:out value="${list.strtPnttm}"/>~<c:out value="${list.endPnttm}"/> --%>
|
||||
<c:choose>
|
||||
<c:when test="${list.instrCnt eq 0 or list.instrCnt eq null}">
|
||||
<button type="button" class="btn_type04" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');">강사배정</button>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
배정완료
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</td>
|
||||
<!-- <td> -->
|
||||
<%-- <c:out value="${list.useYn}"/> --%>
|
||||
<!-- </td> -->
|
||||
</tr>
|
||||
</c:forEach>
|
||||
<c:if test="${empty list}">
|
||||
<tr><td colspan="7"><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>
|
||||
<!-- //page -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- //cont -->
|
||||
<!-- //cont -->
|
||||
|
||||
</form:form>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,349 @@
|
||||
<!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 : fndthInstrMngList.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">
|
||||
|
||||
|
||||
$(document).ready(function(){
|
||||
|
||||
// 상태값 확인
|
||||
$(".ddlnCdStts").each(function() {
|
||||
var $currentCell = $(this);
|
||||
|
||||
// 텍스트가 비어있는지 확인
|
||||
if ($currentCell.text().trim() === "") {
|
||||
var $currentRow = $currentCell.closest('tr');
|
||||
|
||||
var strtPnttm = new Date($currentRow.find("td:eq(3)").text().split("~")[0].trim());
|
||||
var endPnttm = new Date($currentRow.find("td:eq(3)").text().split("~")[1].trim());
|
||||
var currentDate = new Date();
|
||||
|
||||
var ddlnCdText = '';
|
||||
if (currentDate < strtPnttm) {
|
||||
ddlnCdText = "접수전";
|
||||
} else if (currentDate >= strtPnttm && currentDate <= endPnttm) {
|
||||
ddlnCdText = "접수중";
|
||||
} else if (currentDate > endPnttm) {
|
||||
ddlnCdText = "접수종료";
|
||||
}
|
||||
|
||||
$currentCell.text(ddlnCdText);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
|
||||
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/fndthInstrMngList.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
|
||||
function fncGoDetail(prcsAplctPrdOrd){
|
||||
var listForm = document.listForm ;
|
||||
listForm.prcsAplctPrdOrd.value = prcsAplctPrdOrd ;
|
||||
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctCfnMngDetail.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/fndthEnhanceTrn/fndthEduPrcsMngDeleteAjax.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);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
function fncReset(thisObj) {
|
||||
var targetObj = $(thisObj).closest('.list_top').find('select,input');
|
||||
$.each(targetObj, function() {
|
||||
if ($(this).prop('tagName') == 'SELECT') {
|
||||
if ($(this).attr('name').indexOf('Month') != -1) {
|
||||
$(this).val(new Date().getMonth() + 1);
|
||||
} else if ($(this).attr('name').indexOf('Year') != -1) {
|
||||
$(this).val(new Date().getFullYear());
|
||||
} else {
|
||||
$(this).prop("selectedIndex", 0);
|
||||
}
|
||||
} else {
|
||||
if ($(this).attr('type') == 'checkbox') {
|
||||
$(this).prop('checked', false);
|
||||
} else {
|
||||
$(this).val('');
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
</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="prcsAplctPrdOrd" name="prcsAplctPrdOrd" 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="srchCndt1" id="srchCndt1" css="class='sel_type1'"
|
||||
selectedValue="${vEPrcsDetailVO.srchCndt1 }" defaultValue=""
|
||||
defaultText="전체"
|
||||
/>
|
||||
<div class="calendar_wrap">
|
||||
<%-- <input type="text" class="calendar" title="시작일 선택" id="searchSmbtStartDt" name="searchSmbtStartDt" value="${vEPrcsDetailVO.srchKwd2_1}"> --%>
|
||||
<input type="text" class="calendar" title="시작일 선택" id="srchKwd2_1" name="srchKwd2_1" value="${vEPrcsDetailVO.srchKwd2_1}">
|
||||
</div>
|
||||
~
|
||||
<div class="calendar_wrap">
|
||||
<input type="text" class="calendar" title="종료일 선택" id="srchKwd2_2" name="srchKwd2_2" value="${vEPrcsDetailVO.srchKwd2_2}">
|
||||
</div>
|
||||
<input type="text" id="srchKwd3_1" name="srchKwd3_1" placeholder="강사명를 입력하세요." title="검색어 입력" class="search_input" value="<c:out value='${vEPrcsDetailVO.srchKwd3_1}'/>">
|
||||
<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: 5%">
|
||||
<col style="width: 10%">
|
||||
<col style="width: 10%">
|
||||
<col style="width: auto">
|
||||
<col style="width: 180px;">
|
||||
<%-- <col style="width: 180px;"> --%>
|
||||
<col style="width: 10%">
|
||||
<col style="width: 10%">
|
||||
<%-- <col style="width: 10%"> --%>
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>NO</th>
|
||||
<th>교육구분코드</th>
|
||||
<th>강사명</th>
|
||||
<th>과정명<button class="sort sortBtn" id="sort_prcsNm">▲</button></th>
|
||||
<th>교육기간<button class="sort sortBtn" id="sort_eduStrtPnttm">▲</button></th>
|
||||
<!-- <th>신청자/정원</th> -->
|
||||
<th>상태</th>
|
||||
<th>강사배정</th>
|
||||
<!-- <th>공개여부</th> -->
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${list}" varStatus="status">
|
||||
<tr class="listCount">
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');" style="cursor:pointer;">
|
||||
<c:out value="${status.count}"/>
|
||||
</td>
|
||||
<td>
|
||||
<kc:code codeId="VEA001" code="${list.prcsDiv}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.instrNm}"/>
|
||||
</td>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');" style="cursor:pointer;">
|
||||
<c:out value="${list.prcsNm}"/>(<c:out value="${list.prcsAplctPrdOrd}"/>)
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.eduStrtPnttm}"/>~<c:out value="${list.eduDdlnPnttm}"/>
|
||||
</td>
|
||||
<!--
|
||||
<td>
|
||||
<c:out value="${list.nosCnt1}"/>/<c:out value="${list.nos}"/>
|
||||
</td>
|
||||
-->
|
||||
<td class="ddlnCdStts">
|
||||
<kc:code codeId="VEA004" code="${list.ddlnCd}"/>
|
||||
</td>
|
||||
<td>
|
||||
<%-- <c:out value="${list.strtPnttm}"/>~<c:out value="${list.endPnttm}"/> --%>
|
||||
<c:choose>
|
||||
<c:when test="${list.instrCnt eq 0 or list.instrCnt eq null}">
|
||||
<button type="button" class="btn_type04" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');">강사배정</button>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
배정완료
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</td>
|
||||
<!-- <td> -->
|
||||
<%-- <c:out value="${list.useYn}"/> --%>
|
||||
<!-- </td> -->
|
||||
</tr>
|
||||
</c:forEach>
|
||||
<c:if test="${empty list}">
|
||||
<tr><td colspan="7"><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>
|
||||
<!-- //page -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- //cont -->
|
||||
<!-- //cont -->
|
||||
|
||||
</form:form>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@ -205,12 +205,32 @@
|
||||
</th>
|
||||
<td colspan="3">${info.addr}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>신청내용</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
<!-- , 들어간 값을 구분해서 표시한다. -->
|
||||
<c:set var="aplctCns" value="${fn:split(info.aplctCn,',')}" />
|
||||
|
||||
<c:forEach var="aplctCn" items="${aplctCns}" varStatus="g">
|
||||
<ve:code codeId="VEA006" code="${aplctCn}"/>
|
||||
</c:forEach>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>강의주제</p>
|
||||
</th>
|
||||
<td colspan="3">${info.hopeSbjct}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p style="font-size:15px;">교육 주제 관련 상세 요청사항<br/>및 사전 질의</p>
|
||||
</th>
|
||||
<td colspan="3"><p><c:out value='${fn:replace(info.rqstCn, replaceChar, "<br/>")}' escapeXml="false" /></p></td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>교육대상</p>
|
||||
|
||||
@ -232,12 +232,32 @@ $( document ).ready(function() {
|
||||
</th>
|
||||
<td colspan="3"><c:out value="${info.addr}" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>신청내용</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
<!-- , 들어간 값을 구분해서 표시한다. -->
|
||||
<c:set var="aplctCns" value="${fn:split(info.aplctCn,',')}" />
|
||||
|
||||
<c:forEach var="aplctCn" items="${aplctCns}" varStatus="g">
|
||||
<ve:code codeId="VEA006" code="${aplctCn}"/>
|
||||
</c:forEach>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>강의주제</p>
|
||||
</th>
|
||||
<td colspan="3">${info.hopeSbjct}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p style="font-size:15px;">교육 주제 관련 상세 요청사항<br/>및 사전 질의</p>
|
||||
</th>
|
||||
<td colspan="3"><p><c:out value='${fn:replace(info.rqstCn, replaceChar, "<br/>")}' escapeXml="false" /></p></td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>교육대상</p>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user