Merge branch 'advc' of http://yongjoon.cho@vcs.iten.co.kr:9999/hylee/offedu into advc
This commit is contained in:
commit
d9e9cb90ef
@ -37,6 +37,7 @@ public class AdrInnorixFileVO extends ComDefaultVO implements Serializable {
|
||||
// 파일 등록 후 리턴 메세지 jsp에서 넘겨줌
|
||||
public String successMsg = "";
|
||||
public String eduAplctOrd = "";
|
||||
public String prcsAplctPrdOrd = ""; //기반강화 강의계획서용
|
||||
|
||||
// 컨트롤 엘리먼트 ID - 멀티 업로드 시 jsp에서 사용하는 el 값
|
||||
public String controlId = "";
|
||||
@ -131,6 +132,14 @@ public class AdrInnorixFileVO extends ComDefaultVO implements Serializable {
|
||||
this.trgtPrsnlReal = trgtPrsnlReal;
|
||||
}
|
||||
|
||||
public String getPrcsAplctPrdOrd() {
|
||||
return prcsAplctPrdOrd;
|
||||
}
|
||||
|
||||
public void setPrcsAplctPrdOrd(String prcsAplctPrdOrd) {
|
||||
this.prcsAplctPrdOrd = prcsAplctPrdOrd;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -31,4 +31,7 @@ public interface InnorixFileService {
|
||||
|
||||
RestResponse updateRprtInnorixFile(AdrInnorixFileVO adrInnorixFileVO);
|
||||
|
||||
//기반강화 강의계획서 저장
|
||||
RestResponse insertInnorixLctrPlanFile(AdrInnorixFileVO adrInnorixFileVO);
|
||||
|
||||
}
|
||||
|
||||
@ -30,6 +30,8 @@ import kcc.let.utl.fcc.service.EgovStringUtil;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEAPrcsAplctPrdInstrAsgnmService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEAPrcsAplctPrdInstrAsgnmVO;
|
||||
|
||||
/**
|
||||
* @Class Name : EgovCmmUseServiceImpl.java
|
||||
@ -72,6 +74,10 @@ public class InnorixFileServiceImpl extends EgovAbstractServiceImpl implements I
|
||||
//교육과정신청
|
||||
@Resource(name = "vEEduMIXService")
|
||||
private VEEduMIXService vEEduMIXService;
|
||||
|
||||
//과정차시 관리
|
||||
@Resource(name = "vEAPrcsAplctPrdInstrAsgnmService")
|
||||
private VEAPrcsAplctPrdInstrAsgnmService vEAPrcsAplctPrdInstrAsgnmService;
|
||||
/**
|
||||
* @methodName : fileDataUpload
|
||||
* @author : 이호영
|
||||
@ -366,4 +372,33 @@ public class InnorixFileServiceImpl extends EgovAbstractServiceImpl implements I
|
||||
|
||||
return new RestResponse(HttpStatus.OK, adrInnorixFileVO.getSuccessMsg(), LocalDateTime.now());
|
||||
}
|
||||
|
||||
@Override
|
||||
public RestResponse insertInnorixLctrPlanFile(AdrInnorixFileVO adrInnorixFileVO) {
|
||||
|
||||
List<FileVO> result = null;
|
||||
try {
|
||||
// 파일 저장 후 저장할 file 정보를 받아옴
|
||||
result = this.insertFileData(adrInnorixFileVO);
|
||||
|
||||
// 파일 정보 insert
|
||||
String atchFileId = fileManageDAO.insertFileInfs(result);
|
||||
|
||||
|
||||
VEAPrcsAplctPrdInstrAsgnmVO vEAPrcsAplctPrdInstrAsgnmVO = new VEAPrcsAplctPrdInstrAsgnmVO();
|
||||
vEAPrcsAplctPrdInstrAsgnmVO.setLctrPlanAtchFileId(atchFileId);
|
||||
|
||||
vEAPrcsAplctPrdInstrAsgnmVO.setLastUpdusrId(adrInnorixFileVO.getUniqId());
|
||||
vEAPrcsAplctPrdInstrAsgnmVO.setPrcsAplctPrdOrd(adrInnorixFileVO.getPrcsAplctPrdOrd());
|
||||
|
||||
//저장
|
||||
vEAPrcsAplctPrdInstrAsgnmService.updatLctrPlanAtchFileId(vEAPrcsAplctPrdInstrAsgnmVO);
|
||||
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return new RestResponse(HttpStatus.BAD_REQUEST, "등록에 실패하였습니다.", LocalDateTime.now());
|
||||
}
|
||||
|
||||
return new RestResponse(HttpStatus.OK, adrInnorixFileVO.getSuccessMsg(), LocalDateTime.now());
|
||||
}
|
||||
}
|
||||
|
||||
@ -136,4 +136,27 @@ public class InnorixFileController {
|
||||
return ResponseEntity.ok(innorixService.updateRprtInnorixFile(adrInnorixFileVO));
|
||||
}
|
||||
|
||||
/**
|
||||
* @methodName : insertInnorixFile
|
||||
* @author : 이호영
|
||||
* @date : 2023.07.20
|
||||
* @description : 파일 insert 전용
|
||||
* @param adrInnorixFileVO
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
@RequestMapping(value = {"/web/common/insertInnorixLctrPlanFileAjax.do"}, method = RequestMethod.POST)
|
||||
public ResponseEntity<RestResponse> insertInnorixLctrPlanFile(@RequestBody AdrInnorixFileVO adrInnorixFileVO) throws Exception {
|
||||
|
||||
//로그인 권한정보 불러오기
|
||||
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
|
||||
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId());
|
||||
|
||||
if(userId.equals("")) {
|
||||
return ResponseEntity.ok(new RestResponse(HttpStatus.UNAUTHORIZED, "로그인이 필요합니다.", LocalDateTime.now()));
|
||||
}
|
||||
adrInnorixFileVO.setUniqId(userId);
|
||||
|
||||
return ResponseEntity.ok(innorixService.insertInnorixLctrPlanFile(adrInnorixFileVO));
|
||||
}
|
||||
}
|
||||
@ -396,6 +396,17 @@ public class FndtnEnhanceTrnController {
|
||||
//1.pageing step1
|
||||
//과정 조회
|
||||
VEPrcsDetailVO vEPrcsDetailVODetail = vEPrcsAplctPrdService.selectDetailNewOne4Fndth(vEPrcsDetailVO);
|
||||
VEEduAplctVO vEEduAplctReqVO = new VEEduAplctVO();
|
||||
vEEduAplctReqVO.setUserId(loginVO.getUniqId());
|
||||
vEEduAplctReqVO.setLctrDivCd(vEPrcsDetailVODetail.getLctrDivCd());
|
||||
vEEduAplctReqVO.setPrcsAplctPrdOrd(vEPrcsDetailVODetail.getPrcsAplctPrdOrd());
|
||||
vEEduAplctReqVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_50);
|
||||
VEEduAplctVO vEEduAplctVO = fndtnEnhanceTrnService.findByAprvlCd(vEEduAplctReqVO);
|
||||
// VO를 먼저 null 체크 후 진행해야 에러안남
|
||||
// vEEduAplctVO != null &&
|
||||
if(vEEduAplctVO != null && StringUtils.isNotEmpty(vEEduAplctVO.getAprvlCd())) {
|
||||
vEPrcsDetailVODetail.setAprvlCd(vEEduAplctVO.getAprvlCd());
|
||||
}
|
||||
|
||||
model.addAttribute("info", vEPrcsDetailVODetail);
|
||||
|
||||
@ -457,6 +468,45 @@ public class FndtnEnhanceTrnController {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 교육 list select
|
||||
*/
|
||||
@RequestMapping("/web/ve/aplct/fndtnEnhanceTrn/eduSelectAjax.do")
|
||||
public ModelAndView eduSelectAjax(
|
||||
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||
, ModelMap model
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
|
||||
String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||
if (!"".equals(s_oprtnLoginCheckNInfo)) {
|
||||
modelAndView.addObject("result", "loginFail");
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
//로그인 처리====================================
|
||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
||||
|
||||
// 페이징 없이 select를 하기 위한
|
||||
vEPrcsDetailVO.setRecordCountPerPage(10000);
|
||||
vEPrcsDetailVO.setFirstIndex(0);
|
||||
|
||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsAplctPrdService.selectPagingList4Fndth(vEPrcsDetailVO);
|
||||
|
||||
modelAndView.addObject("data", vEPrcsDetailVOList);
|
||||
modelAndView.addObject("result", "success");
|
||||
|
||||
return modelAndView;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
private String dateChk(VEPrcsDetailVO vEPrcsDetailVO , LocalDate currentDate) {
|
||||
|
||||
@ -392,6 +392,18 @@ public class SspnIdtmtController {
|
||||
//1.pageing step1
|
||||
//과정 조회
|
||||
VEPrcsDetailVO vEPrcsDetailVODetail = vEPrcsAplctPrdService.selectDetailNewOne4Fndth(vEPrcsDetailVO);
|
||||
VEEduAplctVO vEEduAplctReqVO = new VEEduAplctVO();
|
||||
vEEduAplctReqVO.setUserId(loginVO.getUniqId());
|
||||
vEEduAplctReqVO.setLctrDivCd(vEPrcsDetailVODetail.getLctrDivCd());
|
||||
vEEduAplctReqVO.setPrcsAplctPrdOrd(vEPrcsDetailVODetail.getPrcsAplctPrdOrd());
|
||||
vEEduAplctReqVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_60);
|
||||
VEEduAplctVO vEEduAplctVO = sspnIdtmtService.findByAprvlCd(vEEduAplctReqVO);
|
||||
// VO를 먼저 null 체크 후 진행해야 에러안남
|
||||
// vEEduAplctVO != null &&
|
||||
if(vEEduAplctVO != null && StringUtils.isNotEmpty(vEEduAplctVO.getAprvlCd())) {
|
||||
vEPrcsDetailVODetail.setAprvlCd(vEEduAplctVO.getAprvlCd());
|
||||
}
|
||||
|
||||
|
||||
model.addAttribute("info", vEPrcsDetailVODetail);
|
||||
|
||||
|
||||
@ -0,0 +1,634 @@
|
||||
package kcc.ve.instr.fndtnVisitEdu.asgnmInfo.web;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpSession;
|
||||
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.ModelMap;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||
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.utl.user.service.CheckLoginUtil;
|
||||
import kcc.let.uat.uia.service.SsoLoginVO;
|
||||
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
||||
import kcc.let.utl.fcc.service.EgovCryptoUtil4VO;
|
||||
import kcc.ve.cmm.VeConstants;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAcmdtAplctService;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAsgnmMIXService;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrAsgnmVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeAcmdtVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeService;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
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.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.VEPrcsDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
||||
import kcc.ve.oprtn.asgnmnoti.service.VEAsgnmNotiService;
|
||||
import kcc.ve.oprtn.asgnmnoti.service.VEAsgnmNotiVO;
|
||||
|
||||
|
||||
@Controller
|
||||
public class VEFndtnAsgnmController {
|
||||
|
||||
// eGov 공통 메세지
|
||||
@Resource(name = "egovMessageSource")
|
||||
EgovMessageSource egovMessageSource;
|
||||
|
||||
//로그인 체크 util
|
||||
@Resource(name = "checkLoginUtil")
|
||||
private CheckLoginUtil checkLoginUtil;
|
||||
|
||||
//암복호화 유틸
|
||||
@Resource(name = "egovCryptoUtil")
|
||||
EgovCryptoUtil egovCryptoUtil;
|
||||
|
||||
//과정 관리
|
||||
@Resource(name = "vEEduMIXService")
|
||||
private VEEduMIXService vEEduMIXService;
|
||||
|
||||
//과정차시 관리
|
||||
@Resource(name = "vEAPrcsAplctPrdInstrAsgnmService")
|
||||
private VEAPrcsAplctPrdInstrAsgnmService vEAPrcsAplctPrdInstrAsgnmService;
|
||||
|
||||
//배정 MIX 정보
|
||||
@Resource(name="vEAsgnmMIXService")
|
||||
private VEAsgnmMIXService vEAsgnmMIXService;
|
||||
|
||||
//과정차시 관리
|
||||
@Resource(name = "vEPrcsAplctPrdService")
|
||||
private VEPrcsAplctPrdService vEPrcsAplctPrdService;
|
||||
|
||||
|
||||
|
||||
// 기반강화 강의목록(확정)
|
||||
@RequestMapping("/web/ve/instr/fndtnVisitEdu/asgnmInfo/instrAsgnmList.do")
|
||||
public String instrAsgnmList(
|
||||
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||
|
||||
, ModelMap model
|
||||
, 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(vEPrcsDetailVO);
|
||||
|
||||
|
||||
//4. pageing step2
|
||||
vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo);
|
||||
|
||||
vEPrcsDetailVO.setUserId(loginVO.getUniqId());
|
||||
vEPrcsDetailVO.setInstrDiv("20");
|
||||
vEPrcsDetailVO.setAprvlCd("20");
|
||||
vEPrcsDetailVO.setLctrDivCd("50"); //기반강화50. 기소유예 60
|
||||
vEPrcsDetailVO.setSearchDiv("ING"); // 강의내역 END 종료내역
|
||||
|
||||
try {
|
||||
// System.out.println("session.getAttribute(menuNo).toString()");
|
||||
// System.out.println(session.getAttribute("menuNo").toString());
|
||||
// vEPrcsDetailVO.setMenuNo(session.getAttribute("menuNo").toString());
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
//
|
||||
|
||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEAsgnmMIXService.selectFndtnVisitAsgnmPagingList(vEPrcsDetailVO);
|
||||
|
||||
|
||||
//6.pageing step3
|
||||
paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo);
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("vEPrcsDetailVOList", vEPrcsDetailVOList);
|
||||
|
||||
|
||||
return "/web/ve/instr/fndtnVisitEdu/asgnmInfo/instrAsgnmList";
|
||||
}
|
||||
|
||||
// 기반강화 강의목록(확정) > 상세
|
||||
@RequestMapping("/web/ve/instr/fndtnVisitEdu/asgnmInfo/instrAsgnmDetail.do")
|
||||
public String instrAsgnmDetail(
|
||||
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||
|
||||
, ModelMap model
|
||||
, 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);
|
||||
//로그인 처리====================================
|
||||
|
||||
|
||||
//과정 조회
|
||||
VEPrcsDetailVO vEPrcsDetailVODetail = vEPrcsAplctPrdService.selectDetailNewOne4Fndth(vEPrcsDetailVO);
|
||||
|
||||
//과정 신청자 정보 가져오기
|
||||
{
|
||||
//해당 과정을 제출한 사용자 정보를 가져온다.
|
||||
VEEduAplctVO paramVO = new VEEduAplctVO();
|
||||
paramVO.setPrcsOrd(vEPrcsDetailVO.getPrcsAplctPrdOrd());
|
||||
paramVO.setSbmtYn("Y");
|
||||
|
||||
// 검색 - 날짜
|
||||
paramVO.setSearchSmbtStartDt(vEPrcsDetailVO.getSearchSmbtStartDt());
|
||||
paramVO.setSearchSmbtEndDt(vEPrcsDetailVO.getSearchSmbtEndDt());
|
||||
// 검색 - 검색어
|
||||
paramVO.setSearchStatus(vEPrcsDetailVO.getSearchStatus());
|
||||
|
||||
List<VEEduAplctVO> vEPrcsDetailVOList = vEEduMIXService.selectList(paramVO);
|
||||
vEPrcsDetailVOList = egovCryptoUtil.decryptVeEduAplctList(vEPrcsDetailVOList);
|
||||
System.out.println("====");
|
||||
|
||||
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("listPrcsAplct", vEPrcsDetailVOList);
|
||||
|
||||
// 신청자 수 반려 승인 요청 신청자 모두 포함
|
||||
vEPrcsDetailVODetail.setNosCnt1(Integer.toString(vEPrcsDetailVOList.size()));
|
||||
}
|
||||
// 과정 조회 set
|
||||
model.addAttribute("info", vEPrcsDetailVODetail);
|
||||
|
||||
// 강사 배치 정보
|
||||
{
|
||||
|
||||
List<VEAPrcsAplctPrdInstrAsgnmVO> vEAPrcsAplctPrdInstrAsgnmList = vEAPrcsAplctPrdInstrAsgnmService.findByPrcsAplctPrdOrd(vEPrcsDetailVO.getPrcsAplctPrdOrd());
|
||||
List<VEAPrcsAplctPrdInstrAsgnmVO> instrAsgnmList = egovCryptoUtil.decryptVEAPrcsAplctPrdInstrAsgnmVOList(vEAPrcsAplctPrdInstrAsgnmList);
|
||||
|
||||
model.addAttribute("instrAsgnmList", instrAsgnmList);
|
||||
}
|
||||
|
||||
|
||||
return "/web/ve/instr/fndtnVisitEdu/asgnmInfo/instrAsgnmDetail";
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//성인강사 강의 요청 상세
|
||||
/*@RequestMapping("/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmRqstDetail.do")
|
||||
public String instrAsgnmRqstDetail(
|
||||
@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);
|
||||
//로그인 처리====================================
|
||||
|
||||
VEInstrAsgnmVO vEInstrAsgnmVOInfo = vEAsgnmMIXService.selectAsgnmRqstDetail(vEInstrAsgnmVO);
|
||||
vEInstrAsgnmVOInfo = egovCryptoUtil.decryptVEInstrAsgnmVO(vEInstrAsgnmVOInfo);
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("info", vEInstrAsgnmVOInfo);
|
||||
|
||||
//사용자 교육신청 과정 리스트
|
||||
VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO();
|
||||
vEPrcsDetailVO.setUseYn("Y");
|
||||
vEPrcsDetailVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_20);
|
||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsService.selectTngrPrcsList(vEPrcsDetailVO);
|
||||
model.addAttribute("eduList", vEPrcsDetailVOList);
|
||||
|
||||
//강사료
|
||||
VEInstrFeeAcmdtVO instrFee = new VEInstrFeeAcmdtVO();
|
||||
instrFee.setEduAplctOrd(vEInstrAsgnmVO.getEduAplctOrd());
|
||||
instrFee.setEduChasiOrd(vEInstrAsgnmVO.getEduChasiOrd());
|
||||
|
||||
instrFee = vEInstrFeeService.selectDetail(instrFee);
|
||||
|
||||
//강사료 제외 합계
|
||||
int instrFeeSum = Integer.parseInt(instrFee.getSpecialWorkAllow())
|
||||
+ Integer.parseInt(instrFee.getDistanceAllow())
|
||||
+ Integer.parseInt(instrFee.getTrafficFee())
|
||||
+ Integer.parseInt(instrFee.getAcmdtFee());
|
||||
instrFee.setInstrFeeSum(instrFeeSum);
|
||||
model.addAttribute("instrFee", instrFee);
|
||||
|
||||
//20220222 우영두 추가
|
||||
//강의내역 NOTI 입력
|
||||
VEAsgnmNotiVO vEAsgnmNotiVO = new VEAsgnmNotiVO();
|
||||
|
||||
vEAsgnmNotiVO.setTblUniqOrd(vEInstrAsgnmVO.getEduChasiOrd());
|
||||
vEAsgnmNotiVO.setFrstRegisterId(loginVO.getUniqId());
|
||||
|
||||
try {
|
||||
System.out.println("session.getAttribute(menuNo).toString()");
|
||||
System.out.println(session.getAttribute("menuNo").toString());
|
||||
vEAsgnmNotiVO.setMenuNo(session.getAttribute("menuNo").toString());
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
vEAsgnmNotiVO.setUrlPath(IpUtil.getRequestURI(request));
|
||||
|
||||
vEAsgnmNotiService.insertAsgnmNotiInfo(vEAsgnmNotiVO);
|
||||
|
||||
return "/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmRqstDetail";
|
||||
}
|
||||
|
||||
//성인강사 강의 추가요청 상세
|
||||
@RequestMapping("/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmAddRqstDetail.do")
|
||||
public String instrAsgnmAddRqstDetail(
|
||||
@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);
|
||||
//로그인 처리====================================
|
||||
vEInstrAsgnmVO.setUserId(loginVO.getUniqId());
|
||||
|
||||
VEInstrAsgnmVO vEInstrAsgnmVOInfo = vEAsgnmMIXService.selectAsgnmAddRqstDetail(vEInstrAsgnmVO);
|
||||
vEInstrAsgnmVOInfo = egovCryptoUtil.decryptVEInstrAsgnmVO(vEInstrAsgnmVOInfo);
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("info", vEInstrAsgnmVOInfo);
|
||||
|
||||
//사용자 교육신청 과정 리스트
|
||||
VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO();
|
||||
vEPrcsDetailVO.setUseYn("Y");
|
||||
vEPrcsDetailVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_20);
|
||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsService.selectTngrPrcsList(vEPrcsDetailVO);
|
||||
model.addAttribute("eduList", vEPrcsDetailVOList);
|
||||
|
||||
return "/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmAddRqstDetail";
|
||||
}
|
||||
|
||||
//성인강사 강의확정내역 상세
|
||||
@RequestMapping("/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmDetail.do")
|
||||
public String instrAsgnmDetail(
|
||||
@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);
|
||||
//로그인 처리====================================
|
||||
vEInstrAsgnmVO.setUserId(loginVO.getUniqId());
|
||||
|
||||
//배정 교육 정보
|
||||
VEInstrAsgnmVO vEInstrAsgnmVOInfo = vEAsgnmMIXService.selectAsgnmDetail(vEInstrAsgnmVO);
|
||||
vEInstrAsgnmVOInfo = egovCryptoUtil.decryptVEInstrAsgnmVO(vEInstrAsgnmVOInfo);
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("info", vEInstrAsgnmVOInfo);
|
||||
|
||||
// 강사 상세정보
|
||||
VEInstrDetailVO vEInstrDetailVOInfo = new VEInstrDetailVO();
|
||||
vEInstrDetailVOInfo.setInstrDiv("20");
|
||||
vEInstrDetailVOInfo.setUserId(loginVO.getUniqId());
|
||||
vEInstrDetailVOInfo.setUseYn("Y");
|
||||
vEInstrDetailVOInfo = vEInstrDetailService.selectDetail(vEInstrDetailVOInfo);
|
||||
vEInstrDetailVOInfo = egovCryptoUtil.decryptVEInstrDetailVO(vEInstrDetailVOInfo);
|
||||
model.addAttribute("instrInfo", vEInstrDetailVOInfo);
|
||||
|
||||
//강사료 상세정보
|
||||
VEInstrFeeAcmdtVO vEInstrFeeAcmdtVO = new VEInstrFeeAcmdtVO();
|
||||
vEInstrFeeAcmdtVO.setEduAplctOrd(vEInstrAsgnmVO.getEduAplctOrd());
|
||||
vEInstrFeeAcmdtVO.setEduChasiOrd(vEInstrAsgnmVO.getEduChasiOrd());
|
||||
vEInstrFeeAcmdtVO = vEInstrFeeService.selectDetail(vEInstrFeeAcmdtVO);
|
||||
//강사료 제외 합계
|
||||
int instrFeeSum = Integer.parseInt(vEInstrFeeAcmdtVO.getInstrFee())
|
||||
+ Integer.parseInt(vEInstrFeeAcmdtVO.getBsnsTripFee())
|
||||
+ Integer.parseInt(vEInstrFeeAcmdtVO.getSpareFee());
|
||||
|
||||
vEInstrFeeAcmdtVO.setInstrFeeSum(instrFeeSum);
|
||||
model.addAttribute("instrFee", vEInstrFeeAcmdtVO);
|
||||
|
||||
//강의계획서 정보 가져오기
|
||||
int fileCnt = 0;
|
||||
List<FileVO> result = null;
|
||||
if (vEInstrAsgnmVOInfo != null) {
|
||||
FileVO fileVO = new FileVO();
|
||||
fileVO.setAtchFileId(vEInstrAsgnmVOInfo.getLctrPlanAtchFileId());
|
||||
result = fileMngService.selectFileInfs(fileVO);
|
||||
fileCnt = result.size();
|
||||
}
|
||||
else {
|
||||
fileCnt = 0;
|
||||
}
|
||||
model.addAttribute("fileList", result);
|
||||
model.addAttribute("fileListCnt", fileCnt);
|
||||
|
||||
//20220222 우영두 추가
|
||||
//강의내역 NOTI 입력
|
||||
VEAsgnmNotiVO vEAsgnmNotiVO = new VEAsgnmNotiVO();
|
||||
|
||||
vEAsgnmNotiVO.setTblUniqOrd(vEInstrAsgnmVO.getEduChasiOrd());
|
||||
vEAsgnmNotiVO.setFrstRegisterId(loginVO.getUniqId());
|
||||
|
||||
try {
|
||||
System.out.println("session.getAttribute(menuNo).toString()");
|
||||
System.out.println(session.getAttribute("menuNo").toString());
|
||||
vEAsgnmNotiVO.setMenuNo(session.getAttribute("menuNo").toString());
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
vEAsgnmNotiVO.setMenuNo("9991200");
|
||||
}
|
||||
|
||||
vEAsgnmNotiVO.setMenuNo(session.getAttribute("menuNo").toString());
|
||||
|
||||
vEAsgnmNotiVO.setUrlPath(IpUtil.getRequestURI(request));
|
||||
|
||||
vEAsgnmNotiService.insertAsgnmNotiInfo(vEAsgnmNotiVO);
|
||||
|
||||
return "/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmDetail";
|
||||
}
|
||||
|
||||
*//**
|
||||
* 강의계획서 제출 Ajax
|
||||
*//*
|
||||
@RequestMapping("/web/ve/instr/adultVisitEdu/asgnmInfo/lctrPlanRegAjax.do")
|
||||
public ModelAndView filePopupAjax(
|
||||
@ModelAttribute("vEInstrAsgnmVO") VEInstrAsgnmVO vEInstrAsgnmVO
|
||||
, ModelMap model
|
||||
, HttpServletRequest request
|
||||
, final MultipartHttpServletRequest multiRequest
|
||||
) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
//SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
||||
|
||||
//로그인 처리====================================
|
||||
|
||||
|
||||
String atchFileId = "";
|
||||
final Map<String, MultipartFile> files = multiRequest.getFileMap();
|
||||
|
||||
if (!files.isEmpty()) {
|
||||
//XXX_로 첨부파일 네이밍
|
||||
List<FileVO> result = egovFileMngUtil.parseFileInf(files, "FILE_", 0, "", "", "");
|
||||
atchFileId = fileMngService.insertFileInfs(result);
|
||||
}
|
||||
|
||||
try {
|
||||
//결과 저장
|
||||
vEInstrAsgnmVO.setLctrPlanAtchFileId(atchFileId);
|
||||
|
||||
vEAsgnmMIXService.updateLctrPlan(vEInstrAsgnmVO);
|
||||
|
||||
}catch(Exception ex) {
|
||||
System.out.println("Exception vEAsgnmMIXService.updateLctrPlan");
|
||||
}
|
||||
|
||||
modelAndView.addObject("result", "success");
|
||||
|
||||
return modelAndView;
|
||||
}
|
||||
*//**
|
||||
* 숙박신청 등록 처리
|
||||
*//*
|
||||
@RequestMapping("/web/ve/instr/adultVisitEdu/asgnmInfo/acmdtRegPopAjax.do")
|
||||
public ModelAndView acmdtRegPopAjax(
|
||||
@ModelAttribute("vEInstrFeeAcmdtVO") VEInstrFeeAcmdtVO vEInstrFeeAcmdtVO
|
||||
, 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(); //권한에 따른 로그인 정보 가져오기
|
||||
vEInstrFeeAcmdtVO.setFrstRegisterId(loginVO.getUniqId());
|
||||
vEAcmdtAplctService.insert(vEInstrFeeAcmdtVO);
|
||||
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
isSuccess = false;
|
||||
msg = ex.getMessage();
|
||||
}
|
||||
|
||||
modelAndView.addObject("isSuccess", isSuccess);
|
||||
modelAndView.addObject("msg", msg);
|
||||
|
||||
return modelAndView;
|
||||
}
|
||||
//성인강사 강의 요청 수락,거절 처리
|
||||
@RequestMapping("/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmRqstMdfyAjax.do")
|
||||
public ModelAndView instrAsgnmRqstMdfyAjax(
|
||||
@ModelAttribute("vEInstrAsgnmVO") VEInstrAsgnmVO vEInstrAsgnmVO
|
||||
|
||||
, ModelMap model
|
||||
, RedirectAttributes redirectAttributes
|
||||
, HttpSession session
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
|
||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
||||
|
||||
//로그인 처리====================================
|
||||
|
||||
//강사배정테이블 확정 코드 수정
|
||||
vEInstrAsgnmVO.setUserId(loginVO.getUniqId());
|
||||
vEAsgnmMIXService.updateAsgnmCode(vEInstrAsgnmVO);
|
||||
//차시 테이블 확정 Y 업데이트 처리
|
||||
if("30".equals(vEInstrAsgnmVO.getAsgnmAprvlCd())) {
|
||||
vEInstrAsgnmVO.setInstrCnfrmCd("Y");
|
||||
vEInstrAsgnmVO.setInstrCnfrmId(loginVO.getUniqId());
|
||||
vEAsgnmMIXService.updateChasiCode(vEInstrAsgnmVO);
|
||||
}else if("40".equals(vEInstrAsgnmVO.getAsgnmAprvlCd())) { //요청 거절 시 강사배정내역 테이블에 insert. 요청 목록에서 거절한 항목 조회를 위해(VE0025)
|
||||
vEInstrAsgnmVO.setHstryCd("10"); //거절
|
||||
vEAsgnmMIXService.insertAsgnmHstry(vEInstrAsgnmVO);
|
||||
}else if("60".equals(vEInstrAsgnmVO.getAsgnmAprvlCd())) { //요청 거절 시 강사배정내역 테이블에 insert. 요청 목록에서 거절한 항목 조회를 위해(VE0025)
|
||||
vEInstrAsgnmVO.setHstryCd("40"); //변경요청
|
||||
vEAsgnmMIXService.insertAsgnmHstry(vEInstrAsgnmVO);
|
||||
}
|
||||
modelAndView.addObject("result", "success");
|
||||
|
||||
return modelAndView;
|
||||
}
|
||||
|
||||
//성인강사 강의 추가요청 등록
|
||||
@RequestMapping("/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmAddRqstAjax.do")
|
||||
public ModelAndView instrAsgnmAddRqstAjax(
|
||||
@ModelAttribute("vEInstrAsgnmVO") VEInstrAsgnmVO vEInstrAsgnmVO
|
||||
|
||||
, ModelMap model
|
||||
, RedirectAttributes redirectAttributes
|
||||
, HttpSession session
|
||||
, HttpServletRequest request
|
||||
) throws Exception {
|
||||
|
||||
ModelAndView modelAndView = new ModelAndView();
|
||||
modelAndView.setViewName("jsonView");
|
||||
|
||||
//로그인 처리====================================
|
||||
//로그인 정보 가져오기
|
||||
|
||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
||||
|
||||
//로그인 처리====================================
|
||||
|
||||
//강사배정내역테이블 등록
|
||||
vEInstrAsgnmVO.setUserId(loginVO.getUniqId());
|
||||
vEAsgnmMIXService.insertAsgnmHstry(vEInstrAsgnmVO);
|
||||
//차시 테이블 확정 Y 업데이트 처리
|
||||
modelAndView.addObject("result", "success");
|
||||
|
||||
return modelAndView;
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
//
|
||||
// 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;
|
||||
}
|
||||
}
|
||||
@ -3,6 +3,7 @@ package kcc.ve.instr.tngrVisitEdu.asgnmInfo.service;
|
||||
import java.util.List;
|
||||
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||
|
||||
public interface VEAsgnmMIXService {
|
||||
|
||||
@ -120,4 +121,6 @@ public interface VEAsgnmMIXService {
|
||||
//R
|
||||
VEInstrAsgnmVO selectTtlMntChasiSumDetail(VEInstrAsgnmVO paramVO) throws Exception;
|
||||
|
||||
List<VEPrcsDetailVO> selectFndtnVisitAsgnmPagingList(VEPrcsDetailVO vEPrcsDetailVO);
|
||||
|
||||
}
|
||||
|
||||
@ -148,6 +148,8 @@ public class VEInstrAsgnmVO extends ComDefaultVO implements Serializable {
|
||||
|
||||
private String eduPlace; //교육장소
|
||||
|
||||
private String prcsAplctPrdOrd; //과정신청기간순번
|
||||
|
||||
|
||||
public String getMemoCn() {
|
||||
return memoCn;
|
||||
@ -734,6 +736,12 @@ public class VEInstrAsgnmVO extends ComDefaultVO implements Serializable {
|
||||
public String getPnltyOrd() {
|
||||
return pnltyOrd;
|
||||
}
|
||||
public String getPrcsAplctPrdOrd() {
|
||||
return prcsAplctPrdOrd;
|
||||
}
|
||||
public void setPrcsAplctPrdOrd(String prcsAplctPrdOrd) {
|
||||
this.prcsAplctPrdOrd = prcsAplctPrdOrd;
|
||||
}
|
||||
public void setPnltyOrd(String pnltyOrd) {
|
||||
this.pnltyOrd = pnltyOrd;
|
||||
}
|
||||
|
||||
@ -7,6 +7,7 @@ import org.springframework.stereotype.Repository;
|
||||
import egovframework.rte.psl.dataaccess.EgovAbstractDAO;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrAsgnmVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||
|
||||
@Repository("vEAsgnmMIXDAO")
|
||||
public class VEAsgnmMIXDAO extends EgovAbstractDAO {
|
||||
@ -215,4 +216,8 @@ public class VEAsgnmMIXDAO extends EgovAbstractDAO {
|
||||
return (VEInstrAsgnmVO) select("VEAsgnmMIXDAO.selectTtlMntChasiSumDetail", paramVO);
|
||||
}
|
||||
|
||||
public List<VEPrcsDetailVO> selectFndtnVisitAsgnmPagingList(VEPrcsDetailVO paramVO) {
|
||||
return (List<VEPrcsDetailVO>) list("VEAsgnmMIXDAO.selectFndtnVisitAsgnmPagingList", paramVO);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -10,6 +10,7 @@ import org.springframework.stereotype.Service;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAsgnmMIXService;
|
||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrAsgnmVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||
|
||||
@Service("vEAsgnmMIXService")
|
||||
public class VEAsgnmMIXServiceImpl implements VEAsgnmMIXService {
|
||||
@ -195,4 +196,9 @@ public class VEAsgnmMIXServiceImpl implements VEAsgnmMIXService {
|
||||
return vEAsgnmMIXDAO.selectTtlMntChasiSumDetail(paramVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<VEPrcsDetailVO> selectFndtnVisitAsgnmPagingList(VEPrcsDetailVO paramVO) {
|
||||
return vEAsgnmMIXDAO.selectFndtnVisitAsgnmPagingList(paramVO);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -2,8 +2,6 @@ package kcc.ve.instr.tngrVisitEdu.prcsInfo.service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
||||
|
||||
public interface VEAPrcsAplctPrdInstrAsgnmService {
|
||||
|
||||
void instrInsert(VEAPrcsAplctPrdInstrAsgnmVO vEAPrcsAplctPrdInstrAsgnmVO);
|
||||
@ -19,4 +17,6 @@ public interface VEAPrcsAplctPrdInstrAsgnmService {
|
||||
void updateAprvlCdEduAplctDetail(VEPrcsDetailVO vEDetailVO);
|
||||
|
||||
void updateAplctStateCdListAjax(VEPrcsDetailVO vEPrcsDetailVO);
|
||||
|
||||
void updatLctrPlanAtchFileId(VEAPrcsAplctPrdInstrAsgnmVO vEAPrcsAplctPrdInstrAsgnmVO);
|
||||
}
|
||||
|
||||
@ -15,6 +15,7 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
||||
|
||||
//ve_prcs
|
||||
|
||||
private String searchDiv; //검색구분
|
||||
private String prcsOrd; //과정순번
|
||||
private String prcsDiv; //과정구분
|
||||
private String prcsKind; //과정종류
|
||||
@ -132,6 +133,13 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
||||
|
||||
|
||||
|
||||
|
||||
public String getSearchDiv() {
|
||||
return searchDiv;
|
||||
}
|
||||
public void setSearchDiv(String searchDiv) {
|
||||
this.searchDiv = searchDiv;
|
||||
}
|
||||
public String getPrcsOrd() {
|
||||
return prcsOrd;
|
||||
}
|
||||
|
||||
@ -43,4 +43,9 @@ public class VEAPrcsAplctPrdInstrAsgnmDAO extends EgovAbstractDAO {
|
||||
|
||||
}
|
||||
|
||||
public void updatLctrPlanAtchFileId(VEAPrcsAplctPrdInstrAsgnmVO vEAPrcsAplctPrdInstrAsgnmVO) {
|
||||
update("VEAPrcsAplctPrdInstrAsgnmDAO.updatLctrPlanAtchFileId", vEAPrcsAplctPrdInstrAsgnmVO);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -64,4 +64,10 @@ public class VEAPrcsAplctPrdInstrAsgnmServiceImpl implements VEAPrcsAplctPrdInst
|
||||
vEAPrcsAplctPrdInstrAsgnmDAO.updateAplctStateCdListAjax(vEPrcsDetailVO);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updatLctrPlanAtchFileId(VEAPrcsAplctPrdInstrAsgnmVO vEAPrcsAplctPrdInstrAsgnmVO) {
|
||||
vEAPrcsAplctPrdInstrAsgnmDAO.updatLctrPlanAtchFileId(vEAPrcsAplctPrdInstrAsgnmVO);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -4,6 +4,7 @@
|
||||
<sqlMap namespace="VEAsgnmMIX">
|
||||
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
|
||||
<typeAlias alias="VEInstrAsgnmVO" type="kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrAsgnmVO"/>
|
||||
<typeAlias alias="VEPrcsDetailVO" type="kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO"/>
|
||||
|
||||
|
||||
<!-- 공통 테이블 명 -->
|
||||
@ -4861,6 +4862,69 @@
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
<select id="VEAsgnmMIXDAO.selectFndtnVisitAsgnmPagingList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
|
||||
/* VEAsgnmMIXDAO.selectFndtnVisitAsgnmPagingList */
|
||||
SELECT
|
||||
(
|
||||
SELECT
|
||||
COUNT(*)
|
||||
FROM
|
||||
ve_edu_aplct x
|
||||
WHERE
|
||||
x.prcs_ord = a.prcs_aplct_prd_ord
|
||||
AND x.sbmt_yn = 'Y'
|
||||
) AS nosCnt1, /* 신청자 정보 */
|
||||
vpap.prcs_aplct_prd_ord AS prcsAplctPrdOrd,
|
||||
vpap.nos ,
|
||||
vp.prcs_div AS prcsDiv,
|
||||
vp.prcs_nm AS prcsNm,
|
||||
vpap.edu_strt_pnttm as eduStrtPnttm,
|
||||
vpap.edu_ddln_pnttm as eduDdlnPnttm,
|
||||
vpap.lctr_div_cd AS lctrDivCd,
|
||||
a.prcs_aplct_prd_ord AS prcsAplctPrdOrd ,
|
||||
a.user_id AS userId ,
|
||||
a.lctr_plan_atch_file_id AS lctrPlanAtchFileId ,
|
||||
a.doc_atch_file_id AS docAtchFileId ,
|
||||
a.asgnm_aprvl_cd AS asgnmAprvlCd ,
|
||||
a.asgnm_aprvl_pnttm AS asgnmAprvlPnttm ,
|
||||
a.asgnm_aprvl_id AS asgnmAprvlId ,
|
||||
a.rmrks AS rmrks ,
|
||||
a.frst_regist_pnttm AS frstRegistPnttm ,
|
||||
a.frst_register_id AS frstRegisterId ,
|
||||
a.last_updt_pnttm AS lastUpdtPnttm ,
|
||||
a.last_updusr_id AS lastUpdusrId ,
|
||||
vid.instr_nm AS instrNm ,
|
||||
vid.phone
|
||||
FROM
|
||||
vea_prcs_aplct_prd_instr_asgnm a
|
||||
LEFT JOIN ve_instr_detail vid ON
|
||||
a.user_id = vid.user_id
|
||||
LEFT JOIN ve_prcs_aplct_prd vpap ON
|
||||
vpap.prcs_aplct_prd_ord = a.prcs_aplct_prd_ord
|
||||
LEFT JOIN ve_prcs vp ON
|
||||
vp.prcs_ord = vpap.prcs_ord
|
||||
WHERE
|
||||
1 = 1
|
||||
AND vid.aprvl_cd = #aprvlCd# /* 강의 승인 20 */
|
||||
AND vid.instr_div = #instrDiv# /* 성인 20 */
|
||||
AND vid.use_yn = 'Y'
|
||||
AND vpap.lctr_div_cd = #lctrDivCd#
|
||||
/*진행 중 : 진행 예정*/
|
||||
<isEqual property="searchDiv" compareValue="ING">
|
||||
AND TO_CHAR(CURRENT_DATE, 'YYYYMMDD') <![CDATA[ <= ]]> REPLACE(vpap.edu_ddln_pnttm, '.' , '')
|
||||
</isEqual>
|
||||
/*종료*/
|
||||
<isEqual property="searchDiv" compareValue="END">
|
||||
AND TO_CHAR(CURRENT_DATE, 'YYYYMMDD') <![CDATA[ > ]]> REPLACE(vpap.edu_ddln_pnttm, '.' , '')
|
||||
</isEqual>
|
||||
|
||||
|
||||
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
<!-- //동일 일자에 강사 배정 여부 체크-->
|
||||
<select id="VEAsgnmMIXDAO.selectInstrAsgnmScholCheck" parameterClass="VEInstrAsgnmVO" resultClass="VEInstrAsgnmVO">
|
||||
/* VEAsgnmMIXDAO.selectInstrAsgnmScholCheck */
|
||||
|
||||
@ -158,7 +158,16 @@
|
||||
AND vid.use_yn ='Y'
|
||||
</select>
|
||||
|
||||
<!-- 강의계획서 update -->
|
||||
<update id="VEAPrcsAplctPrdInstrAsgnmDAO.updatLctrPlanAtchFileId" parameterClass="vEAPrcsAplctPrdInstrAsgnmVO">
|
||||
/* VEAPrcsAplctPrdInstrAsgnmDAO.updatLctrPlanAtchFileId */
|
||||
|
||||
UPDATE VEA_PRCS_APLCT_PRD_INSTR_ASGNM
|
||||
SET lctr_plan_atch_file_id = #lctrPlanAtchFileId#
|
||||
, last_updusr_id = #lastUpdusrId#
|
||||
, last_updt_pnttm = sysdate
|
||||
WHERE prcs_aplct_prd_ord = #prcsAplctPrdOrd#
|
||||
</update>
|
||||
|
||||
|
||||
|
||||
|
||||
@ -247,7 +247,7 @@
|
||||
</colgroup>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row">교육부분</th>
|
||||
<th scope="row">교육부문</th>
|
||||
<td>
|
||||
<ve:code codeId="VEA001" code="${info.prcsDiv}"/>
|
||||
</td>
|
||||
|
||||
@ -185,7 +185,7 @@ function instrChk(){
|
||||
<div class="swiper-slide">
|
||||
<div class="inner">
|
||||
<div class="text_area">
|
||||
<p class="sub_title">대국민 저작권 교육 서비스1</p>
|
||||
<p class="sub_title">대국민 저작권 교육 서비스</p>
|
||||
<p class="title">찾아가는 저작권 교육!</p>
|
||||
<p class="summary">편리하고 안전한 저작권 이용환경 조성을 통해 올바른 저작권 문화 구축에 앞장서겠습니다.</p>
|
||||
<a href="#none">교육신청 등록</a>
|
||||
@ -195,7 +195,7 @@ function instrChk(){
|
||||
<div class="swiper-slide">
|
||||
<div class="inner">
|
||||
<div class="text_area">
|
||||
<p class="sub_title">대국민 저작권 교육 서비스2</p>
|
||||
<p class="sub_title">대국민 저작권 교육 서비스</p>
|
||||
<p class="title">찾아가는 저작권 교육!</p>
|
||||
<p class="summary">편리하고 안전한 저작권 이용환경 조성을 통해 올바른 저작권 문화 구축에 앞장서겠습니다.</p>
|
||||
<a href="#none">교육신청 등록</a>
|
||||
@ -205,7 +205,7 @@ function instrChk(){
|
||||
<div class="swiper-slide">
|
||||
<div class="inner">
|
||||
<div class="text_area">
|
||||
<p class="sub_title">대국민 저작권 교육 서비스3</p>
|
||||
<p class="sub_title">대국민 저작권 교육 서비스</p>
|
||||
<p class="title">찾아가는 저작권 교육!</p>
|
||||
<p class="summary">편리하고 안전한 저작권 이용환경 조성을 통해 올바른 저작권 문화 구축에 앞장서겠습니다.</p>
|
||||
<a href="#none">교육신청 등록</a>
|
||||
@ -215,7 +215,7 @@ function instrChk(){
|
||||
<div class="swiper-slide">
|
||||
<div class="inner">
|
||||
<div class="text_area">
|
||||
<p class="sub_title">대국민 저작권 교육 서비스4</p>
|
||||
<p class="sub_title">대국민 저작권 교육 서비스</p>
|
||||
<p class="title">찾아가는 저작권 교육!</p>
|
||||
<p class="summary">편리하고 안전한 저작권 이용환경 조성을 통해 올바른 저작권 문화 구축에 앞장서겠습니다.</p>
|
||||
<a href="#none">교육신청 등록</a>
|
||||
@ -225,7 +225,7 @@ function instrChk(){
|
||||
<div class="swiper-slide">
|
||||
<div class="inner">
|
||||
<div class="text_area">
|
||||
<p class="sub_title">대국민 저작권 교육 서비스5</p>
|
||||
<p class="sub_title">대국민 저작권 교육 서비스</p>
|
||||
<p class="title">찾아가는 저작권 교육!</p>
|
||||
<p class="summary">편리하고 안전한 저작권 이용환경 조성을 통해 올바른 저작권 문화 구축에 앞장서겠습니다.</p>
|
||||
<a href="#none">교육신청 등록</a>
|
||||
@ -258,19 +258,19 @@ function instrChk(){
|
||||
<li class="banner_link_03">
|
||||
<a href="#none">
|
||||
<i></i>
|
||||
<p>체험교실</p>
|
||||
<p>저작권 체험교실</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="banner_link_04">
|
||||
<a href="#none">
|
||||
<i></i>
|
||||
<p>실무역량강화교육</p>
|
||||
<p>기반강화연수</p>
|
||||
</a>
|
||||
</li>
|
||||
<li class="banner_link_05">
|
||||
<a href="#none">
|
||||
<i></i>
|
||||
<p>기소유예교육</p>
|
||||
<p>기소유예</p>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@ -386,7 +386,7 @@
|
||||
<input type="hidden" name="limitcount" id="limitcount" value="1" /><!-- 최대 업로드 파일갯수 -->
|
||||
|
||||
<div class="cont_tit">
|
||||
<h2>운영신청서 작성</h2>
|
||||
<h2>교육신청수정</h2>
|
||||
<div class="sns_go">
|
||||
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/kcccesPb/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button>
|
||||
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/kcccesPb/publish/images/content/twitter_icon.png" alt="트위터 바로가기"></button>
|
||||
|
||||
@ -466,7 +466,7 @@
|
||||
<input type="hidden" id="sigunguCode" name="sigunguCode" value=""/>
|
||||
|
||||
<div class="cont_tit">
|
||||
<h2>교육신청 등록</h2>
|
||||
<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>
|
||||
|
||||
@ -242,7 +242,7 @@
|
||||
|
||||
<div class="cont_wrap" id="sub">
|
||||
<div class="cont_tit">
|
||||
<h2>운영내역 상세</h2>
|
||||
<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>
|
||||
|
||||
@ -46,7 +46,7 @@
|
||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEEduAplctVO.searchSortOrd}" />" />
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
|
||||
<div class="cont_tit">
|
||||
<h2>운영내역 목록</h2>
|
||||
<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>
|
||||
|
||||
@ -40,6 +40,11 @@
|
||||
<div class="tb_tit01_left">
|
||||
<p>운영신청 상세</p>
|
||||
</div>
|
||||
<div class="tb_tit01_right">
|
||||
<div class="btn_wrap">
|
||||
<button type="button" class="btnType05" onclick="nextTab('2');">다음 →</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tb_type01 tb_write">
|
||||
<table>
|
||||
@ -264,7 +269,6 @@
|
||||
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
<button type="button" class="btnType05" onclick="location.href='<c:url value="/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndList.do"/>'">운영 목록으로 이동</button>
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<c:if test="${info.aprvlCd eq VeConstants.STATUS_CD_EDT_REQ or info.sbmtYn ne 'Y'}">
|
||||
@ -276,7 +280,8 @@
|
||||
</c:if>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btnType05" onclick="nextTab('2');">서류제출로 이동</button>
|
||||
<button type="button" class="btnType05" onclick="location.href='<c:url value="/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndList.do"/>'">운영 목록으로 이동</button>
|
||||
<!-- <button type="button" class="btnType05" onclick="nextTab('2');">서류제출로 이동</button> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -63,7 +63,7 @@
|
||||
|
||||
<div class="cont_wrap" id="sub">
|
||||
<div class="cont_tit">
|
||||
<h2>체험교실 대시보드</h2>
|
||||
<h2>대시보드</h2>
|
||||
</div>
|
||||
<!-- 체험교실 프로세스 -->
|
||||
<ul class="ex_process">
|
||||
|
||||
@ -113,7 +113,7 @@
|
||||
|
||||
<div class="cont_wrap" id="sub">
|
||||
<div class="cont_tit">
|
||||
<h2>운영신청 상세</h2>
|
||||
<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>
|
||||
|
||||
@ -79,7 +79,7 @@
|
||||
<!-- content -->
|
||||
<div class="cont_wrap" id="sub">
|
||||
<div class="cont_tit">
|
||||
<h2>운영신청 등록안내</h2>
|
||||
<h2>운영신청등록 안내</h2>
|
||||
</div>
|
||||
<div class="tb_tit01">
|
||||
<div class="tb_tit01_left">
|
||||
|
||||
@ -85,7 +85,7 @@
|
||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEEduAplctVO.searchSortOrd}" />" />
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
|
||||
<div class="cont_tit">
|
||||
<h2>운영신청 목록</h2>
|
||||
<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>
|
||||
|
||||
@ -388,7 +388,7 @@
|
||||
<input type="hidden" name="limitcount" id="limitcount" value="1" /><!-- 최대 업로드 파일갯수 -->
|
||||
|
||||
<div class="cont_tit">
|
||||
<h2>운영신청서 작성</h2>
|
||||
<h2>운영신청수정</h2>
|
||||
<div class="sns_go">
|
||||
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/kcccesPb/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button>
|
||||
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/kcccesPb/publish/images/content/twitter_icon.png" alt="트위터 바로가기"></button>
|
||||
|
||||
@ -76,6 +76,12 @@
|
||||
<div class="tb_tit01_left">
|
||||
<p>거래선 및 서약서 정보</p>
|
||||
</div>
|
||||
<div class="tb_tit01_right">
|
||||
<div class="btn_wrap">
|
||||
<button type="button" class="btnType05" onclick="nextTab('1');">← 이전</button>
|
||||
<button type="button" class="btnType05" onclick="nextTab('3');">다음 →</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tb_type01 tb_write">
|
||||
<table>
|
||||
@ -119,12 +125,13 @@
|
||||
</div>
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
<button type="button" class="btnType05" onclick="location.href='<c:url value="/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndList.do"/>'">운영 목록으로 이동</button>
|
||||
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btnType05" onclick="nextTab('3');">운영계획으로 이동</button>
|
||||
<button type="button" class="btnType05" onclick="location.href='<c:url value="/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndList.do"/>'">운영 목록으로 이동</button>
|
||||
<!-- <button type="button" class="btnType05" onclick="nextTab('3');">운영계획으로 이동</button> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -53,6 +53,12 @@
|
||||
<div class="tb_tit01_left">
|
||||
<p>운영계획</p>
|
||||
</div>
|
||||
<div class="tb_tit01_right">
|
||||
<div class="btn_wrap">
|
||||
<button type="button" class="btnType05" onclick="nextTab('2');">← 이전</button>
|
||||
<button type="button" class="btnType05" onclick="nextTab('4');">다음 →</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tb_type01 tb_write">
|
||||
<table>
|
||||
@ -167,7 +173,7 @@
|
||||
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
<button type="button" class="btnType05" onclick="location.href='<c:url value="/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndList.do"/>'">운영 목록으로 이동</button>
|
||||
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<c:if test="${info.aprvlCd eq VeConstants.STATUS_CD_EDT_REQ or info.sbmtYn ne 'Y'}">
|
||||
@ -179,7 +185,8 @@
|
||||
</c:if>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btnType05" onclick="nextTab('4');">결과보고로 이동</button>
|
||||
<button type="button" class="btnType05" onclick="location.href='<c:url value="/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndList.do"/>'">운영 목록으로 이동</button>
|
||||
<!-- <button type="button" class="btnType05" onclick="nextTab('4');">결과보고로 이동</button> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -431,6 +431,12 @@
|
||||
<div class="tb_tit01_left">
|
||||
<p>결과보고</p>
|
||||
</div>
|
||||
<div class="tb_tit01_right">
|
||||
<div class="btn_wrap">
|
||||
<button type="button" class="btnType05" onclick="nextTab('3');">← 이전</button>
|
||||
<button type="button" class="btnType05" onclick="nextTab('5');">다음 →</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<c:if test="${info.exprnAprvlCd == '10'}">
|
||||
<div class="tb_type01 tb_write">
|
||||
@ -597,7 +603,7 @@
|
||||
</c:if>
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
<button type="button" class="btnType05" onclick="location.href='<c:url value="/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndList.do"/>'">운영 목록으로 이동</button>
|
||||
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<c:if test="${info.exprnAprvlCd != '10'}">
|
||||
@ -609,7 +615,8 @@
|
||||
<c:if test="${info.exprnAprvlCd != '10'}">
|
||||
<div id="fileControl5" style="display:none"></div>
|
||||
</c:if>
|
||||
<button type="button" class="btnType05" onclick="nextTab('5');">최종결과로 이동</button>
|
||||
<button type="button" class="btnType05" onclick="location.href='<c:url value="/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndList.do"/>'">운영 목록으로 이동</button>
|
||||
<!-- <button type="button" class="btnType05" onclick="nextTab('5');">최종결과로 이동</button> -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@ -245,6 +245,11 @@
|
||||
<div class="tb_tit01_left">
|
||||
<p>운영내역 상세</p>
|
||||
</div>
|
||||
<div class="tb_tit01_right">
|
||||
<div class="btn_wrap">
|
||||
<button type="button" class="btnType05" onclick="nextTab('4');">← 이전</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tb_type01 tb_write">
|
||||
<table>
|
||||
@ -700,7 +705,6 @@
|
||||
</c:if>
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
<button type="button" class="btnType05" onclick="location.href='<c:url value="/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndList.do"/>'">운영 목록으로 이동</button>
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<button type="button" class="btnType04" onclick="fncGoLctrAplctReg();">교육콘텐츠 신청</button>
|
||||
@ -709,6 +713,7 @@
|
||||
</c:if>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btnType05" onclick="location.href='<c:url value="/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndList.do"/>'">운영 목록으로 이동</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -34,6 +34,9 @@
|
||||
function ddlnCdSttsChk(){
|
||||
var $ddlnCdStts = $("#ddlnCdStts");
|
||||
|
||||
// 상태에따라 싱천버튼 활성화 비활성화
|
||||
var regStatus = true;
|
||||
|
||||
// 텍스트가 비어있는지 확인
|
||||
if ($ddlnCdStts.text().trim() === "") {
|
||||
var dateText = $ddlnCdStts.closest('table').find("td:eq(2)").text().trim();
|
||||
@ -46,10 +49,12 @@
|
||||
$ddlnCdStts.text("접수전");
|
||||
} else if (currentDate >= strtPnttm && currentDate <= endPnttm) {
|
||||
$ddlnCdStts.text("접수중");
|
||||
regStatus = false;
|
||||
} else if (currentDate > endPnttm) {
|
||||
$ddlnCdStts.text("접수종료");
|
||||
}
|
||||
}
|
||||
$('#regBtn').prop('disabled', regStatus); // 버튼 비활성화
|
||||
}
|
||||
|
||||
function fncGoList(){
|
||||
@ -223,5 +228,15 @@
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" id="regBtn" class="btnType04" onclick="fncEduReg('<c:out value="${list.prcsAplctPrdOrd}"/>');">신청</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
@ -17,6 +17,67 @@
|
||||
|
||||
$(document).ready(function(){
|
||||
|
||||
|
||||
$('.tab_button').click(function(){
|
||||
var type = $(this).data('info');
|
||||
// list 타입이면 return;
|
||||
if(type === 'list')
|
||||
return false;
|
||||
|
||||
var data = fncEduSelect();
|
||||
console.log('data : ', data);
|
||||
|
||||
// 월 하이라이트 체크
|
||||
fn_MonthHL();
|
||||
|
||||
// 현재 날짜를 가져옵니다.
|
||||
var today = new Date();
|
||||
var currentMonth = today.getMonth() + 1;
|
||||
|
||||
// 데이터 추가 전 촐기화
|
||||
$(".edu_program tbody").empty();
|
||||
// 반복시작
|
||||
$.each(data, function(index, item) {
|
||||
var prcsNm = item.prcsNm;
|
||||
var startDt = item.eduStrtPnttm;
|
||||
// 교육 일수 구하기
|
||||
var dayDiff = fn_dayDiff(item);
|
||||
var newRow = $("<tr></tr>");
|
||||
|
||||
// prcsNm 값을 추가합니다.
|
||||
newRow.append('<td class="edup_title">' + prcsNm + '</td>');
|
||||
|
||||
// dayDiff 값을 추가합니다.
|
||||
newRow.append('<td class="edup_days">' + dayDiff + '</td>');
|
||||
|
||||
// 교육일정 칼럼을 초기화합니다.
|
||||
for (var i = 1; i <= 12; i++) {
|
||||
// 다음 월 class
|
||||
var cellClass = "edup_pass"; // 기본값
|
||||
|
||||
// 전 월 class
|
||||
if (i < currentMonth) {
|
||||
cellClass = "edup_pre";
|
||||
// 현재 월
|
||||
} else if (i === currentMonth) {
|
||||
cellClass = "edup_this";
|
||||
}
|
||||
if (i === parseInt(startDt.split('.')[1])) {
|
||||
newRow.append('<td class="' + cellClass + '" onclick="fncGoDetail(\'' + item.prcsAplctPrdOrd + '\')" style="cursor:pointer;">' + parseInt(startDt.split('.')[2]) + '</td>');
|
||||
} else {
|
||||
newRow.append('<td class="' + cellClass + '"></td>');
|
||||
}
|
||||
}
|
||||
// 테이블에 새로운 행을 추가합니다.
|
||||
$(".edu_program tbody").append(newRow);
|
||||
|
||||
});
|
||||
//-- /반복끝
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
// 상태값 확인
|
||||
$(".ddlnCdStts").each(function() {
|
||||
var $thisCell = $(this);
|
||||
@ -38,9 +99,6 @@ $(document).ready(function(){
|
||||
|
||||
var ddlnCdText = '';
|
||||
|
||||
console.log('currentDate : ', currentDate);
|
||||
console.log('strtPnttm : ', strtPnttm);
|
||||
console.log('endPnttm : ', endPnttm);
|
||||
console.log('');
|
||||
if (currentDate < strtPnttm) {
|
||||
ddlnCdText = "접수전";
|
||||
@ -63,6 +121,69 @@ $(document).ready(function(){
|
||||
|
||||
});
|
||||
|
||||
|
||||
function fn_dayDiff(item){
|
||||
|
||||
var startDt = item.eduStrtPnttm;
|
||||
var endDt = item.eduDdlnPnttm;
|
||||
|
||||
// 날짜 문자열을 Date 객체로 변환합니다.
|
||||
var startDate = new Date(startDt.split('.').join('-'));
|
||||
var endDate = new Date(endDt.split('.').join('-'));
|
||||
|
||||
// 두 날짜 사이의 밀리초 차이를 구합니다.
|
||||
var differenceInMilliseconds = endDate - startDate;
|
||||
|
||||
// 밀리초를 일수로 변환합니다. (1일 = 24시간 = 24 * 60분 = 24 * 60 * 60초 = 24 * 60 * 60 * 1000 밀리초)
|
||||
var differenceInDays = differenceInMilliseconds / (24 * 60 * 60 * 1000);
|
||||
|
||||
// 시작 날짜와 종료 날짜를 모두 포함하여 계산
|
||||
differenceInDays += 1;
|
||||
|
||||
return differenceInDays;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
function fn_MonthHL(){
|
||||
var today = new Date();
|
||||
// 현재 달을 가져옵니다. (0부터 시작하므로 1을 더해줍니다.)
|
||||
var currentMonth = today.getMonth() + 1;
|
||||
|
||||
// 해당하는 달의 <th> 요소에 'edup_this' 클래스를 추가합니다.
|
||||
$("#monthTemp th:nth-child(" + currentMonth + ")").addClass("edup_this");
|
||||
}
|
||||
function fncEduSelect(){
|
||||
var returnVal = '';
|
||||
var data = new FormData(document.getElementById("selectForm"));
|
||||
var url = "${pageContext.request.contextPath}/web/ve/aplct/fndtnEnhanceTrn/eduSelectAjax.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"){
|
||||
console.log('returnData : ', returnData);
|
||||
returnVal = returnData.data;
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
|
||||
return returnVal;
|
||||
|
||||
|
||||
}
|
||||
|
||||
function fncEduReg(prcsAplctPrdOrd){
|
||||
var regForm = document.regForm;
|
||||
regForm.prcsAplctPrdOrd.value = prcsAplctPrdOrd;
|
||||
@ -100,15 +221,13 @@ $(document).ready(function(){
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
|
||||
function fncGoDetail(prcsAplctPrdOrd){
|
||||
var viewForm = document.viewForm ;
|
||||
viewForm.prcsAplctPrdOrd.value = prcsAplctPrdOrd ;
|
||||
viewForm.action = "<c:url value='/web/ve/aplct/sspnIdtmt/eduAplctDetail.do'/>";
|
||||
viewForm.action = "<c:url value='/web/ve/aplct/fndtnEnhanceTrn/eduAplctDetail.do'/>";
|
||||
viewForm.submit();
|
||||
}
|
||||
|
||||
|
||||
function fncGoList(){
|
||||
linkPage(1);
|
||||
}
|
||||
@ -140,6 +259,9 @@ $(document).ready(function(){
|
||||
<form name="regForm" id="regForm">
|
||||
<input type="hidden" name="prcsAplctPrdOrd">
|
||||
</form>
|
||||
<form name="selectForm" id="selectForm">
|
||||
<input type="hidden" name="lctrDivCd" value="50">
|
||||
</form>
|
||||
<form name="viewForm" id="viewForm">
|
||||
<input type="hidden" name="prcsAplctPrdOrd">
|
||||
</form>
|
||||
@ -151,7 +273,7 @@ $(document).ready(function(){
|
||||
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
|
||||
<div class="cont_tit">
|
||||
<h2>교육신청목록</h2>
|
||||
<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>
|
||||
@ -204,143 +326,14 @@ $(document).ready(function(){
|
||||
|
||||
<!-- tab -->
|
||||
<ul class="tab tab_02">
|
||||
<li class="tab_li on"><button type="button" class="tab_button">캘린더형</button></li>
|
||||
<li class="tab_li"><button type="button" class="tab_button">리스트형</button></li>
|
||||
<li class="tab_li on"><button type="button" class="tab_button" data-info="list">리스트형</button></li>
|
||||
<li class="tab_li"><button type="button" class="tab_button" data-info="cal">캘린더형</button></li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
<div class="tab_content on">
|
||||
<div class="list_top">
|
||||
<div class="list_top_left">
|
||||
<label for="" class="label">교육과정 선택</label>
|
||||
<select class="selType1">
|
||||
<option for="">전체</option>
|
||||
<option for="">지난교육일정</option>
|
||||
<option for="">당월교육일정</option>
|
||||
<option for="">교육예정일정</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="btn_wrap">
|
||||
<div class="calendar_wrap">
|
||||
<duet-date-picker identifier="date" name="searchStartDt" class="startDate hydrated" value=""></duet-date-picker>
|
||||
</div>
|
||||
~
|
||||
<div class="calendar_wrap">
|
||||
<duet-date-picker identifier="date" name="searchEndDt" class="endDate hydrated" value=""></duet-date-picker>
|
||||
</div>
|
||||
<script src="/offeduadvc/visitEdu/usr/publish/script/duetdatepicker.js"></script>
|
||||
<button type="button" class="btnType01">검색</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="edup_result">
|
||||
<div>총 <span>6</span>개의 검색결과가 있습니다.</div>
|
||||
<ul>
|
||||
<li class="pass">지난교육일정</li>
|
||||
<li class="this">당월교육일정</li>
|
||||
<li class="pre">교육예정일정</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="edu_program">
|
||||
<table>
|
||||
<caption>교육일정표</caption>
|
||||
<colgroup>
|
||||
<col style="width: ;">
|
||||
<col style="width: ;">
|
||||
<col style="width: ;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="first" rowspan="2">교육과정명<br/><span class="ep_text">(상세 내용을 보시려면 과정을 클릭하세요)</span></th>
|
||||
<th rowspan="2">일수</th>
|
||||
<th rowspan="2">시간</th>
|
||||
<th colspan="12">교육일정<sapn class="ep_text">(교육 시작일)</sapn></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>1</th>
|
||||
<th>2</th>
|
||||
<th>3</th>
|
||||
<th>4</th>
|
||||
<th>5</th>
|
||||
<th>6</th>
|
||||
<th>7</th>
|
||||
<th>8</th>
|
||||
<th class="edup_this">9</th>
|
||||
<th>10</th>
|
||||
<th>11</th>
|
||||
<th>12</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="edup_title"><a href="#">[경영기획] 경영기획기본</a></td>
|
||||
<td class="edup_days">2</td>
|
||||
<td class="edup_time">14</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">15,22</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">2</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">24</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">22</td>
|
||||
<td class="edup_this">8</td>
|
||||
<td class="edup_pre">14</td>
|
||||
<td class="edup_pre">27</td>
|
||||
<td class="edup_pre"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="edup_title"><a href="#">[경영기획] 경영기획기본</a></td>
|
||||
<td class="edup_days">2</td>
|
||||
<td class="edup_time">14</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">15,22</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">2</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">24</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">22</td>
|
||||
<td class="edup_this">8</td>
|
||||
<td class="edup_pre">14</td>
|
||||
<td class="edup_pre">27</td>
|
||||
<td class="edup_pre"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="edup_title"><a href="#">[경영기획] 경영기획기본</a></td>
|
||||
<td class="edup_days">2</td>
|
||||
<td class="edup_time">14</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">15,22</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">2</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">24</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">22</td>
|
||||
<td class="edup_this">8</td>
|
||||
<td class="edup_pre">14</td>
|
||||
<td class="edup_pre">27</td>
|
||||
<td class="edup_pre"></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tab_content">
|
||||
<div class="list_top">
|
||||
<div class="list_top_left">
|
||||
<label for="searchStatus2" class="label">신청상태 선택</label>
|
||||
@ -453,5 +446,87 @@ $(document).ready(function(){
|
||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="tab_content">
|
||||
<!--
|
||||
<div class="list_top">
|
||||
<div class="list_top_left">
|
||||
<label for="" class="label">교육과정 선택</label>
|
||||
<select class="selType1">
|
||||
<option for="">전체</option>
|
||||
<option for="">지난교육일정</option>
|
||||
<option for="">당월교육일정</option>
|
||||
<option for="">교육예정일정</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="btn_wrap">
|
||||
<div class="calendar_wrap">
|
||||
<duet-date-picker identifier="date" name="searchStartDt" class="startDate hydrated" value=""></duet-date-picker>
|
||||
</div>
|
||||
~
|
||||
<div class="calendar_wrap">
|
||||
<duet-date-picker identifier="date" name="searchEndDt" class="endDate hydrated" value=""></duet-date-picker>
|
||||
</div>
|
||||
<script src="/offeduadvc/visitEdu/usr/publish/script/duetdatepicker.js"></script>
|
||||
<button type="button" class="btnType01">검색</button>
|
||||
</div>
|
||||
</div>
|
||||
-->
|
||||
<div class="edup_result">
|
||||
<div>총 <span>6</span>개의 검색결과가 있습니다.</div>
|
||||
<ul>
|
||||
<li class="pass">지난교육일정</li>
|
||||
<li class="this">당월교육일정</li>
|
||||
<li class="pre">교육예정일정</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="edu_program">
|
||||
<table>
|
||||
<caption>교육일정표</caption>
|
||||
<colgroup>
|
||||
<col style="width: ;">
|
||||
<col style="width: ;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="first" rowspan="2">교육과정명<br/><span class="ep_text">(상세 내용을 보시려면 과정을 클릭하세요)</span></th>
|
||||
<th rowspan="2">일수</th>
|
||||
<th colspan="12">교육일정<sapn class="ep_text">(교육 시작일)</sapn></th>
|
||||
</tr>
|
||||
<tr id="monthTemp">
|
||||
<th>1</th>
|
||||
<th>2</th>
|
||||
<th>3</th>
|
||||
<th>4</th>
|
||||
<th>5</th>
|
||||
<th>6</th>
|
||||
<th>7</th>
|
||||
<th>8</th>
|
||||
<th>9</th>
|
||||
<th>10</th>
|
||||
<th>11</th>
|
||||
<th>12</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form:form>
|
||||
</div>
|
||||
@ -28,11 +28,18 @@
|
||||
// 상태값 확인
|
||||
ddlnCdSttsChk();
|
||||
|
||||
$("#regBtn").click(function(){
|
||||
var regForm = document.regForm;
|
||||
regForm.prcsAplctPrdOrd.value = $(this).data('info');
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
function ddlnCdSttsChk(){
|
||||
var $ddlnCdStts = $("#ddlnCdStts");
|
||||
var $ddlnCdStts = $(".ddlnCdStts");
|
||||
|
||||
// 상태에따라 싱천버튼 활성화 비활성화
|
||||
var regStatus = true;
|
||||
|
||||
// 텍스트가 비어있는지 확인
|
||||
if ($ddlnCdStts.text().trim() === "") {
|
||||
@ -46,23 +53,21 @@
|
||||
$ddlnCdStts.text("접수전");
|
||||
} else if (currentDate >= strtPnttm && currentDate <= endPnttm) {
|
||||
$ddlnCdStts.text("접수중");
|
||||
regStatus = false;
|
||||
} else if (currentDate > endPnttm) {
|
||||
$ddlnCdStts.text("접수종료");
|
||||
}
|
||||
}
|
||||
console.log('regStatus : ', regStatus);
|
||||
$('#regBtn').prop('disabled', regStatus); // 버튼 비활성화
|
||||
}
|
||||
|
||||
function fncGoList(){
|
||||
var listForm = document.listForm ;
|
||||
listForm.action = "<c:url value='/web/ve/aplct/adultVisitEdu/eduAplct/eduAplctList.do'/>";
|
||||
listForm.action = "<c:url value='/web/ve/aplct/sspnIdtmt/eduAplctList.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
function fncGoEdit(){
|
||||
var linkForm = document.linkForm ;
|
||||
linkForm.action = "<c:url value='/web/ve/aplct/adultVisitEdu/eduAplct/eduAplctMdfy.do'/>";
|
||||
linkForm.submit();
|
||||
}
|
||||
|
||||
function fncSendSubmit(){
|
||||
if(confirm("제출 하시겠습니까?")){
|
||||
@ -111,6 +116,42 @@
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// 대상자 이름, 생년월일, 대상자TB ID
|
||||
function fncEduReg(trgtNm, dBirth, sspnIdtmtTrgtOrd){
|
||||
var form = document.regForm;
|
||||
form.trgtNm.value = trgtNm;
|
||||
form.dBirth.value = dBirth;
|
||||
form.sspnIdtmtTrgtOrd.value = sspnIdtmtTrgtOrd;
|
||||
|
||||
var data = new FormData(document.getElementById("regForm"));
|
||||
if(confirm("신청하시겠습니까?")){
|
||||
var url = "${pageContext.request.contextPath}/web/ve/aplct/sspnIdtmt/eduRegAjax.do";
|
||||
console.log(data);
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url: url,
|
||||
data: data,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success:function(returnData){
|
||||
if(returnData.result == "success"){
|
||||
alert("저장되었습니다.");
|
||||
fncGoList();
|
||||
}else{
|
||||
alert("교육 신청에 실패하였습니다.\n담당자에게 문의해 주세요.");
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function fncGoDetail(){
|
||||
var linkForm = document.linkForm ;
|
||||
linkForm.action = "<c:url value='/web/ve/aplct/adultVisitEdu/eduAplct/eduAplctDetail.do'/>";
|
||||
@ -127,9 +168,74 @@
|
||||
, "chrgInfoUpdatePop"
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
function fn_confirm(){
|
||||
|
||||
var form = document.confirmForm;
|
||||
var dBirth = $('#dBirth').val().replace(/\./g, '');
|
||||
var trgtNm = $('#trgtNm').val();
|
||||
|
||||
|
||||
form.trgtNm.value = trgtNm;
|
||||
form.dBirth.value = dBirth;
|
||||
|
||||
var data = new FormData(document.getElementById("confirmForm"));
|
||||
|
||||
var url = "${pageContext.request.contextPath}/web/ve/aplct/sspnIdtmt/userConfirmAjax.do";
|
||||
$.ajax({
|
||||
type:"POST",
|
||||
url: url,
|
||||
data: data,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success:function(returnData){
|
||||
console.log('returnData : ', returnData);
|
||||
if(returnData.result == "success"){
|
||||
// 대상자 테이블 pk 값
|
||||
var sspnIdtmtTrgtOrd = returnData.id;
|
||||
if(sspnIdtmtTrgtOrd != ''){
|
||||
alert("확인되었습니다.");
|
||||
|
||||
// 교육 신청 ajax
|
||||
// 대상자 이름, 생년월일, 대상자TB ID
|
||||
fncEduReg(trgtNm, dBirth, sspnIdtmtTrgtOrd);
|
||||
} else {
|
||||
alert("대상자에 없습니다.");
|
||||
}
|
||||
}else{
|
||||
alert("대상자에 없습니다.");
|
||||
}
|
||||
fn_target_confirm_clean();
|
||||
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
$('#target_confirm_popup-close').click();
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<form name="regForm" id="regForm">
|
||||
<input type="hidden" name="prcsAplctPrdOrd">
|
||||
<input type="hidden" name="sspnIdtmtTrgtOrd"> <!-- 대상자 테이블 PK -->
|
||||
<input type="hidden" name="trgtNm">
|
||||
<input type="hidden" name="dBirth">
|
||||
</form>
|
||||
|
||||
<form name="confirmForm" id="confirmForm">
|
||||
<input type="hidden" name="trgtNm">
|
||||
<input type="hidden" name="dBirth">
|
||||
</form>
|
||||
<div class="cont_wrap" id="sub">
|
||||
<div class="cont_tit">
|
||||
<h2>교육신청 상세</h2>
|
||||
@ -216,12 +322,78 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">상태</th>
|
||||
<td id="ddlnCdStts">
|
||||
<ve:code codeId="VEA004" code="${info.ddlnCd}"/>
|
||||
<td class="ddlnCdStts">
|
||||
<c:choose>
|
||||
<c:when test="${not empty info.aprvlCd}">
|
||||
<kc:code codeId="VE0003" code="${info.aprvlCd}"/>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<kc:code codeId="VEA004" code="${info.ddlnCd}"/>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right" class="aplctBtn">
|
||||
<button type="button" class="btnType04" id="regBtn" data-info="<c:out value="${info.prcsAplctPrdOrd}"/>" data-tooltip="target_confirm_popup" >신청</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</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>
|
||||
<!--// 신청 클릭 > 기소유예 대상자 확인 팝업 -->
|
||||
|
||||
@ -17,52 +17,108 @@
|
||||
|
||||
$(document).ready(function(){
|
||||
|
||||
|
||||
$('.tab_button').click(function(){
|
||||
var type = $(this).data('info');
|
||||
// list 타입이면 return;
|
||||
if(type === 'list')
|
||||
return false;
|
||||
|
||||
var data = fncEduSelect();
|
||||
console.log('data : ', data);
|
||||
|
||||
// 월 하이라이트 체크
|
||||
fn_MonthHL();
|
||||
|
||||
// 현재 날짜를 가져옵니다.
|
||||
var today = new Date();
|
||||
var currentMonth = today.getMonth() + 1;
|
||||
|
||||
// 데이터 추가 전 촐기화
|
||||
$(".edu_program tbody").empty();
|
||||
// 반복시작
|
||||
$.each(data, function(index, item) {
|
||||
var prcsNm = item.prcsNm;
|
||||
var startDt = item.eduStrtPnttm;
|
||||
// 교육 일수 구하기
|
||||
var dayDiff = fn_dayDiff(item);
|
||||
var newRow = $("<tr></tr>");
|
||||
|
||||
// prcsNm 값을 추가합니다.
|
||||
newRow.append('<td class="edup_title">' + prcsNm + '</td>');
|
||||
|
||||
// dayDiff 값을 추가합니다.
|
||||
newRow.append('<td class="edup_days">' + dayDiff + '</td>');
|
||||
|
||||
// 교육일정 칼럼을 초기화합니다.
|
||||
for (var i = 1; i <= 12; i++) {
|
||||
// 다음 월 class
|
||||
var cellClass = "edup_pass"; // 기본값
|
||||
|
||||
// 전 월 class
|
||||
if (i < currentMonth) {
|
||||
cellClass = "edup_pre";
|
||||
// 현재 월
|
||||
} else if (i === currentMonth) {
|
||||
cellClass = "edup_this";
|
||||
}
|
||||
if (i === parseInt(startDt.split('.')[1])) {
|
||||
newRow.append('<td class="' + cellClass + '" onclick="fncGoDetail(\'' + item.prcsAplctPrdOrd + '\')" style="cursor:pointer;">' + parseInt(startDt.split('.')[2]) + '</td>');
|
||||
} else {
|
||||
newRow.append('<td class="' + cellClass + '"></td>');
|
||||
}
|
||||
}
|
||||
// 테이블에 새로운 행을 추가합니다.
|
||||
$(".edu_program tbody").append(newRow);
|
||||
|
||||
});
|
||||
//-- /반복끝
|
||||
});
|
||||
|
||||
|
||||
$(".aplctBtn button").click(function(){
|
||||
var regForm = document.regForm;
|
||||
regForm.prcsAplctPrdOrd.value = $(this).data('info');
|
||||
});
|
||||
// 상태값 확인
|
||||
$(".ddlnCdStts").each(function() {
|
||||
var $thisCell = $(this);
|
||||
var $applyButton = $thisCell.closest('tr').find(".aplctBtn button");
|
||||
$(".ddlnCdStts").each(function() {
|
||||
var $thisCell = $(this);
|
||||
var $applyButton = $thisCell.closest('tr').find(".aplctBtn button");
|
||||
// var $aprvlCd = $thisCell.closest('tr').find(".aplctBtn input");
|
||||
|
||||
// 텍스트가 비어있는지 확인
|
||||
if ($thisCell.text().trim() === "") {
|
||||
var $currentRow = $thisCell.closest('tr');
|
||||
// 텍스트가 비어있는지 확인
|
||||
if ($thisCell.text().trim() === "") {
|
||||
var $currentRow = $thisCell.closest('tr');
|
||||
|
||||
var strtPnttm = new Date($currentRow.find("td:eq(2)").text().split("~")[0].trim());
|
||||
var endPnttm = new Date($currentRow.find("td:eq(2)").text().split("~")[1].trim());
|
||||
var currentDate = new Date();
|
||||
var strtPnttm = new Date($currentRow.find("td:eq(2)").text().split("~")[0].trim());
|
||||
var endPnttm = new Date($currentRow.find("td:eq(2)").text().split("~")[1].trim());
|
||||
var currentDate = new Date();
|
||||
|
||||
// 시간, 분, 초 초기화
|
||||
strtPnttm.setHours(0, 0, 0, 0);
|
||||
endPnttm.setHours(0, 0, 0, 0);
|
||||
currentDate.setHours(0, 0, 0, 0);
|
||||
// 시간, 분, 초 초기화
|
||||
strtPnttm.setHours(0, 0, 0, 0);
|
||||
endPnttm.setHours(0, 0, 0, 0);
|
||||
currentDate.setHours(0, 0, 0, 0);
|
||||
|
||||
var ddlnCdText = '';
|
||||
var ddlnCdText = '';
|
||||
|
||||
console.log('currentDate : ', currentDate);
|
||||
console.log('strtPnttm : ', strtPnttm);
|
||||
console.log('endPnttm : ', endPnttm);
|
||||
console.log('');
|
||||
if (currentDate < strtPnttm) {
|
||||
ddlnCdText = "접수전";
|
||||
} else if (currentDate >= strtPnttm && currentDate <= endPnttm) {
|
||||
ddlnCdText = "접수중";
|
||||
} else if (currentDate > endPnttm) {
|
||||
ddlnCdText = "접수종료";
|
||||
}
|
||||
console.log('');
|
||||
if (currentDate < strtPnttm) {
|
||||
ddlnCdText = "접수전";
|
||||
} else if (currentDate >= strtPnttm && currentDate <= endPnttm) {
|
||||
ddlnCdText = "접수중";
|
||||
} else if (currentDate > endPnttm) {
|
||||
ddlnCdText = "접수종료";
|
||||
}
|
||||
|
||||
$thisCell.text(ddlnCdText);
|
||||
$thisCell.text(ddlnCdText);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// 텍스트가 "접수중"인지 확인
|
||||
if ($thisCell.text().trim() !== "접수중") {
|
||||
$applyButton.prop('disabled', true); // 버튼 비활성화
|
||||
}
|
||||
});
|
||||
// 텍스트가 "접수중"인지 확인
|
||||
if ($thisCell.text().trim() !== "접수중") {
|
||||
$applyButton.prop('disabled', true); // 버튼 비활성화
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
@ -102,6 +158,67 @@ $(document).ready(function(){
|
||||
}
|
||||
}
|
||||
|
||||
function fn_dayDiff(item){
|
||||
|
||||
var startDt = item.eduStrtPnttm;
|
||||
var endDt = item.eduDdlnPnttm;
|
||||
|
||||
// 날짜 문자열을 Date 객체로 변환합니다.
|
||||
var startDate = new Date(startDt.split('.').join('-'));
|
||||
var endDate = new Date(endDt.split('.').join('-'));
|
||||
|
||||
// 두 날짜 사이의 밀리초 차이를 구합니다.
|
||||
var differenceInMilliseconds = endDate - startDate;
|
||||
|
||||
// 밀리초를 일수로 변환합니다. (1일 = 24시간 = 24 * 60분 = 24 * 60 * 60초 = 24 * 60 * 60 * 1000 밀리초)
|
||||
var differenceInDays = differenceInMilliseconds / (24 * 60 * 60 * 1000);
|
||||
|
||||
// 시작 날짜와 종료 날짜를 모두 포함하여 계산
|
||||
differenceInDays += 1;
|
||||
|
||||
return differenceInDays;
|
||||
|
||||
}
|
||||
|
||||
function fn_MonthHL(){
|
||||
var today = new Date();
|
||||
// 현재 달을 가져옵니다. (0부터 시작하므로 1을 더해줍니다.)
|
||||
var currentMonth = today.getMonth() + 1;
|
||||
|
||||
// 해당하는 달의 <th> 요소에 'edup_this' 클래스를 추가합니다.
|
||||
$("#monthTemp th:nth-child(" + currentMonth + ")").addClass("edup_this");
|
||||
}
|
||||
|
||||
function fncEduSelect(){
|
||||
var returnVal = '';
|
||||
var data = new FormData(document.getElementById("selectForm"));
|
||||
var url = "${pageContext.request.contextPath}/web/ve/aplct/fndtnEnhanceTrn/eduSelectAjax.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"){
|
||||
console.log('returnData : ', returnData);
|
||||
returnVal = returnData.data;
|
||||
}
|
||||
},
|
||||
error:function(request , status, error){
|
||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||
}
|
||||
});
|
||||
|
||||
return returnVal;
|
||||
|
||||
|
||||
}
|
||||
|
||||
function linkPage(pageNo){
|
||||
var listForm = document.listForm ;
|
||||
listForm.pageIndex.value = pageNo ;
|
||||
@ -132,8 +249,6 @@ $(document).ready(function(){
|
||||
|
||||
function fn_confirm(){
|
||||
|
||||
console.log('??');
|
||||
|
||||
var form = document.confirmForm;
|
||||
var dBirth = $('#dBirth').val().replace(/\./g, '');
|
||||
var trgtNm = $('#trgtNm').val();
|
||||
@ -195,6 +310,9 @@ $(document).ready(function(){
|
||||
<!-- content -->
|
||||
<div class="cont_wrap" id="sub">
|
||||
|
||||
<form name="selectForm" id="selectForm">
|
||||
<input type="hidden" name="lctrDivCd" value="60">
|
||||
</form>
|
||||
<form name="confirmForm" id="confirmForm">
|
||||
<input type="hidden" name="trgtNm">
|
||||
<input type="hidden" name="dBirth">
|
||||
@ -216,7 +334,7 @@ $(document).ready(function(){
|
||||
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
|
||||
<div class="cont_tit">
|
||||
<h2>교육신청목록1</h2>
|
||||
<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>
|
||||
@ -224,144 +342,13 @@ $(document).ready(function(){
|
||||
</div>
|
||||
|
||||
<!-- tab -->
|
||||
<ul class="tab tab_02">
|
||||
<li class="tab_li on"><button type="button" class="tab_button">캘린더형</button></li>
|
||||
<li class="tab_li"><button type="button" class="tab_button">리스트형</button></li>
|
||||
</ul>
|
||||
<ul class="tab tab_02">
|
||||
<li class="tab_li on"><button type="button" class="tab_button" data-info="list">리스트형</button></li>
|
||||
<li class="tab_li"><button type="button" class="tab_button" data-info="cal">캘린더형</button></li>
|
||||
</ul>
|
||||
|
||||
<div class="tab_content on">
|
||||
<div class="list_top">
|
||||
<div class="list_top_left">
|
||||
<label for="" class="label">교육과정 선택</label>
|
||||
<select class="selType1">
|
||||
<option for="">전체</option>
|
||||
<option for="">지난교육일정</option>
|
||||
<option for="">당월교육일정</option>
|
||||
<option for="">교육예정일정</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="btn_wrap">
|
||||
<div class="calendar_wrap">
|
||||
<duet-date-picker identifier="date" name="searchStartDt" class="startDate hydrated" value=""></duet-date-picker>
|
||||
</div>
|
||||
~
|
||||
<div class="calendar_wrap">
|
||||
<duet-date-picker identifier="date" name="searchEndDt" class="endDate hydrated" value=""></duet-date-picker>
|
||||
</div>
|
||||
<button type="button" class="btnType01">검색</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="edup_result">
|
||||
<div>총 <span>6</span>개의 검색결과가 있습니다.</div>
|
||||
<ul>
|
||||
<li class="pass">지난교육일정</li>
|
||||
<li class="this">당월교육일정</li>
|
||||
<li class="pre">교육예정일정</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="edu_program">
|
||||
<table>
|
||||
<caption>교육일정표</caption>
|
||||
<colgroup>
|
||||
<col style="width: ;">
|
||||
<col style="width: ;">
|
||||
<col style="width: ;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="first" rowspan="2">교육과정명<br/><span class="ep_text">(상세 내용을 보시려면 과정을 클릭하세요)</span></th>
|
||||
<th rowspan="2">일수</th>
|
||||
<th rowspan="2">시간</th>
|
||||
<th colspan="12">교육일정<sapn class="ep_text">(교육 시작일)</sapn></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>1</th>
|
||||
<th>2</th>
|
||||
<th>3</th>
|
||||
<th>4</th>
|
||||
<th>5</th>
|
||||
<th>6</th>
|
||||
<th>7</th>
|
||||
<th>8</th>
|
||||
<th class="edup_this">9</th>
|
||||
<th>10</th>
|
||||
<th>11</th>
|
||||
<th>12</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="edup_title"><a href="#">[경영기획] 경영기획기본</a></td>
|
||||
<td class="edup_days">2</td>
|
||||
<td class="edup_time">14</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">15,22</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">2</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">24</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">22</td>
|
||||
<td class="edup_this">8</td>
|
||||
<td class="edup_pre">14</td>
|
||||
<td class="edup_pre">27</td>
|
||||
<td class="edup_pre"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="edup_title"><a href="#">[경영기획] 경영기획기본</a></td>
|
||||
<td class="edup_days">2</td>
|
||||
<td class="edup_time">14</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">15,22</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">2</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">24</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">22</td>
|
||||
<td class="edup_this">8</td>
|
||||
<td class="edup_pre">14</td>
|
||||
<td class="edup_pre">27</td>
|
||||
<td class="edup_pre"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="edup_title"><a href="#">[경영기획] 경영기획기본</a></td>
|
||||
<td class="edup_days">2</td>
|
||||
<td class="edup_time">14</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">15,22</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">2</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">24</td>
|
||||
<td class="edup_pass"></td>
|
||||
<td class="edup_pass">22</td>
|
||||
<td class="edup_this">8</td>
|
||||
<td class="edup_pre">14</td>
|
||||
<td class="edup_pre">27</td>
|
||||
<td class="edup_pre"></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tab_content">
|
||||
<div class="list_top">
|
||||
<div class="list_top">
|
||||
<div class="list_top_left">
|
||||
<label for="searchStatus2" class="label">신청상태 선택</label>
|
||||
<select class="selType1" id="searchStatus2" name="searchStatus2">
|
||||
@ -473,6 +460,88 @@ $(document).ready(function(){
|
||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tab_content">
|
||||
|
||||
|
||||
<!-- <div class="list_top">
|
||||
<div class="list_top_left">
|
||||
<label for="" class="label">교육과정 선택</label>
|
||||
<select class="selType1">
|
||||
<option for="">전체</option>
|
||||
<option for="">지난교육일정</option>
|
||||
<option for="">당월교육일정</option>
|
||||
<option for="">교육예정일정</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="btn_wrap">
|
||||
<div class="calendar_wrap">
|
||||
<duet-date-picker identifier="date" name="searchStartDt" class="startDate hydrated" value=""></duet-date-picker>
|
||||
</div>
|
||||
~
|
||||
<div class="calendar_wrap">
|
||||
<duet-date-picker identifier="date" name="searchEndDt" class="endDate hydrated" value=""></duet-date-picker>
|
||||
</div>
|
||||
<button type="button" class="btnType01">검색</button>
|
||||
</div>
|
||||
</div> -->
|
||||
|
||||
<div class="edup_result">
|
||||
<div>총 <span>6</span>개의 검색결과가 있습니다.</div>
|
||||
<ul>
|
||||
<li class="pass">지난교육일정</li>
|
||||
<li class="this">당월교육일정</li>
|
||||
<li class="pre">교육예정일정</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="edu_program">
|
||||
<table>
|
||||
<caption>교육일정표</caption>
|
||||
<colgroup>
|
||||
<col style="width: ;">
|
||||
<col style="width: ;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
<col style="width:4%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="first" rowspan="2">교육과정명<br/><span class="ep_text">(상세 내용을 보시려면 과정을 클릭하세요)</span></th>
|
||||
<th rowspan="2">일수</th>
|
||||
<th colspan="12">교육일정<sapn class="ep_text">(교육 시작일)</sapn></th>
|
||||
</tr>
|
||||
<tr id="monthTemp">
|
||||
<th>1</th>
|
||||
<th>2</th>
|
||||
<th>3</th>
|
||||
<th>4</th>
|
||||
<th>5</th>
|
||||
<th>6</th>
|
||||
<th>7</th>
|
||||
<th>8</th>
|
||||
<th>9</th>
|
||||
<th>10</th>
|
||||
<th>11</th>
|
||||
<th>12</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</form:form>
|
||||
</div>
|
||||
|
||||
@ -489,30 +558,30 @@ $(document).ready(function(){
|
||||
<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">
|
||||
<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>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
<div class="pop_btn_wrap btn_layout01">
|
||||
<div class="pop_btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
|
||||
@ -55,7 +55,7 @@
|
||||
</div> -->
|
||||
<div class="cont_wrap">
|
||||
<div class="cont_tit">
|
||||
<h2>교육기반강화연수</h2>
|
||||
<h2>기소유예</h2>
|
||||
<div class="sns_go">
|
||||
<button type="button" title="새창열림"><img
|
||||
src="/offeduadvc/visitEdu/usr/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"><a href="https://www.facebook.com/koreacopyright" target="_blank"></a></button>
|
||||
|
||||
@ -13,6 +13,9 @@
|
||||
<% pageContext.setAttribute("replaceChar", "\n"); %>
|
||||
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<spring:eval expression="@property['Globals.Innorix.License']" var="license"/>
|
||||
<script src="<c:url value='/innorix/innorix_${license}.js' />"></script>
|
||||
<script src="<c:url value='/js/kccadr/innorixCommon.js' />"></script>
|
||||
<style>
|
||||
input:disabled {
|
||||
background-color: #f9f9f9 !important;
|
||||
@ -179,6 +182,16 @@
|
||||
});
|
||||
}
|
||||
|
||||
function filePopupLayer(type){
|
||||
commonPopLayeropen(
|
||||
"${pageContext.request.contextPath}/web/ve/comm/popup/fileUploadPop.do"
|
||||
, 650
|
||||
, 464
|
||||
, {'eduAplctOrd' : '<c:out value='${info.eduAplctOrd}'/>','fileType' : type}
|
||||
, "Y"
|
||||
, "fileUploadPop"
|
||||
);
|
||||
}
|
||||
</script>
|
||||
|
||||
<form:form id="listForm" name="listForm" commandName="vEEduAplctVO" onsubmit="return false;" method="post">
|
||||
@ -773,9 +786,65 @@
|
||||
</c:if>
|
||||
</tbody>
|
||||
</table>
|
||||
<p style="color:gray;font-size:14px;padding-top:30px;">* 확정된 교육에 대한 변경은 위원회를 통해 진행 부탁드립니다.</p>
|
||||
</div>
|
||||
|
||||
<c:set var="instrYn" value="N"/>
|
||||
<c:forEach items="${chasiList}" var="list">
|
||||
<c:if test="${not empty list.instrNm}">
|
||||
<c:set var="instrYn" value="Y" />
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
<c:if test="${instrYn eq 'Y'}">
|
||||
<div class="tb_tit01">
|
||||
<div class="tb_tit01_left">
|
||||
<p>필요양식</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="btn_wrap"><input type="text" /> <button type="button" class="btnType05 data-tooltip="sub35_pop01" id="OATH" onclick="filePopupLayer('OATH')" title="팝업 열림">필요양식 업로드</button></div>
|
||||
<div class="tb_type02">
|
||||
<table>
|
||||
<%-- <caption>교육차시 정보 교육희망일, 시간, 구분, 대상, 배정강사, 인원 을/를 제공하는 표</caption> --%>
|
||||
<colgroup>
|
||||
<col style="width: 18%;">
|
||||
<col style="width: auto;">
|
||||
<col style="width: 11%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">파일</th>
|
||||
<th scope="col">강사명</th>
|
||||
<th scope="col">제출여부</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>
|
||||
범죄경력조회 동의서
|
||||
</th>
|
||||
<td>
|
||||
청소년강사1
|
||||
</td>
|
||||
<td>
|
||||
동의서.zip
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>
|
||||
범죄경력조회 동의서
|
||||
</th>
|
||||
<td>
|
||||
청소년강사2
|
||||
</td>
|
||||
<td>
|
||||
미제출
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p style="color:gray;font-size:14px;padding-top:30px;">* 확정된 교육에 대한 변경은 위원회를 통해 진행 부탁드립니다.</p>
|
||||
</div>
|
||||
</c:if>
|
||||
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
<c:if test="${info.aprvlCd eq '10'}">
|
||||
|
||||
@ -671,7 +671,7 @@
|
||||
|
||||
|
||||
<div class="cont_tit">
|
||||
<h2>교육신청</h2>
|
||||
<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>
|
||||
|
||||
@ -791,7 +791,7 @@ var psblFlag = "Y";//학생 신청가능기간여부 체크
|
||||
|
||||
|
||||
<div class="cont_tit">
|
||||
<h2>교육신청</h2>
|
||||
<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>
|
||||
|
||||
@ -72,7 +72,7 @@
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="<c:out value='${info.eduChasiOrd}'/>"/> <!-- 교육차시 순번 -->
|
||||
<input type="hidden" name="hstryCd" id="hstryCd" value=""/> <!-- 배정내역 코드 -->
|
||||
<div class="cont_tit">
|
||||
<h2>성인 강의 추가요청 상세</h2>
|
||||
<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>
|
||||
|
||||
@ -109,7 +109,7 @@
|
||||
<input type="hidden" name="limitcount" id="limitcount" value="1" /><!-- 최대 업로드 파일갯수 -->
|
||||
|
||||
<div class="cont_tit">
|
||||
<h2>성인 강의내역 상세</h2>
|
||||
<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>
|
||||
|
||||
@ -52,7 +52,7 @@
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="" />
|
||||
<div class="cont_tit">
|
||||
<h2>성인 강의내역 목록</h2>
|
||||
<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>
|
||||
|
||||
@ -87,7 +87,7 @@
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="<c:out value='${info.eduChasiOrd}'/>"/> <!-- 교육차시 순번 -->
|
||||
<input type="hidden" name="asgnmAprvlCd" id="asgnmAprvlCd" value=""/> <!-- 배정테이블의 확정코드 -->
|
||||
<div class="cont_tit">
|
||||
<h2>성인 강의 요청 상세</h2>
|
||||
<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>
|
||||
|
||||
@ -52,7 +52,7 @@
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="" />
|
||||
<div class="cont_tit">
|
||||
<h2>성인 강의 요청 목록</h2>
|
||||
<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>
|
||||
|
||||
@ -142,7 +142,7 @@ $( document ).ready(function() {
|
||||
|
||||
|
||||
<div class="cont_tit">
|
||||
<h2>성인 강의 종료교육 상세</h2>
|
||||
<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>
|
||||
|
||||
@ -58,7 +58,7 @@
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="" />
|
||||
<div class="cont_tit">
|
||||
<h2>성인 강의 종료교육 목록</h2>
|
||||
<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>
|
||||
|
||||
@ -37,7 +37,7 @@
|
||||
<!-- cont -->
|
||||
<div class="cont_wrap" id="sub">
|
||||
<div class="cont_tit">
|
||||
<h2>성인저작권강사 대시보드</h2>
|
||||
<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>
|
||||
|
||||
@ -158,7 +158,7 @@
|
||||
</script>
|
||||
<div class="cont_wrap" id="sub">
|
||||
<div class="cont_tit">
|
||||
<h2>성인 강사신청 상세</h2>
|
||||
<h2>성인 강사 신청 상세</h2>
|
||||
</div>
|
||||
<div class="tit_box">
|
||||
<i class="tit_box_icon1"></i>
|
||||
|
||||
@ -0,0 +1,228 @@
|
||||
<!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="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
||||
<%
|
||||
%>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<script type="text/javascript">
|
||||
</script>
|
||||
<title>강의배정팝업</title>
|
||||
<script type="text/javaScript" language="javascript">
|
||||
|
||||
function fncPopClose(){
|
||||
var activeTarget = $('[data-tooltip-con="sub52_pop01"]');
|
||||
activeTarget.hide();
|
||||
$('[data-tooltip="sub52_pop01"]').focus();
|
||||
}
|
||||
|
||||
// 저장
|
||||
function setDataSave(){
|
||||
if($("#aplctCn").val() == "") {
|
||||
alert("신청사유 내용을 입력해주세요");
|
||||
return;
|
||||
}
|
||||
|
||||
if (confirm("저장 하시겠습니까?")) {
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "${pageContext.request.contextPath}/kccadr/oprtn/adultVisitEdu/popup/eduAcmdtAplctPopupAjax.do",
|
||||
data: $("#createForm").serialize(),
|
||||
dataType:'json',
|
||||
async: false,
|
||||
success: function (data, status) {
|
||||
if (data.isSuccess == true) {
|
||||
alert("정상적으로 저장 되었습니다.");
|
||||
// 닫기
|
||||
location.reload();
|
||||
} else {
|
||||
alert("Msg : " + data.msg);
|
||||
}
|
||||
},
|
||||
error : function(xhr, status, error) {
|
||||
alert("Err : " + JSON.stringify(status));
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<form:form id="createForm" name="createForm" method="post" commandName="vEEduRprtVO" onsubmit="return false;">
|
||||
<input type="hidden" name="eduAplctOrd" value="<c:out value="${vEInstrAsgnmVO.eduAplctOrd}" />" />
|
||||
<input type="hidden" name="eduChasiOrd" value="<c:out value="${vEInstrAsgnmVO.eduChasiOrd}" />" />
|
||||
<input type="hidden" name="sbmtYn" id="sbmtYn" value="" />
|
||||
|
||||
<div class="popup_wrap popType02" tabindex="0" data-tooltip-con="sub52_pop01" data-focus="sub52_pop01" data-focus-prev="sub52_pop01_close">
|
||||
<div class="popup_tit">
|
||||
<p>숙박신청</p><button class="btn_popup_close tooltip-close" data-focus="sub52_pop01_close" onclick="fncPopClose(); return false;" title="팝업 닫기"><i></i></button>
|
||||
</div>
|
||||
<div class="popup_cont">
|
||||
<div class="pop_tb_type01">
|
||||
<table>
|
||||
<caption>숙박신청 (th)를 제공하는 표</caption>
|
||||
<colgroup>
|
||||
<col style="width: 120px;">
|
||||
<col style="width: auto">
|
||||
<col style="width: 120px;">
|
||||
<col style="width: auto">
|
||||
</colgroup>
|
||||
<tbody>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>성명</p>
|
||||
</th>
|
||||
<td><c:out value='${info.instrNm}' /></td>
|
||||
<th scope="row">
|
||||
<p>거주지</p>
|
||||
</th>
|
||||
<td><c:out value='${info.rsdne}' /></td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>성명</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value='${info.instrNm}' /></td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>거주지</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value='${info.rsdne}' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>학교명</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value='${info.scholInsttNm}' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>학교주소</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value='${info.addr}' /><c:out value='${info.addrDetail}' /></td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>강의일자</p>
|
||||
</th>
|
||||
<td><c:out value='${info.eduHopeDt}' /></td>
|
||||
<th scope="row">
|
||||
<p>첫 강의시간</p>
|
||||
</th>
|
||||
<td>
|
||||
<fmt:parseDate value="${info.strtTm}" var="strtTm" pattern="kkmm"/><fmt:formatDate value="${strtTm}" pattern="kk:mm"/>
|
||||
~<fmt:parseDate value="${info.endTm}" var="endTm" pattern="kkmm"/><fmt:formatDate value="${endTm}" pattern="kk:mm"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>강의일자</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value='${info.eduHopeDt}' /></td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>첫 강의시간</p>
|
||||
</th>
|
||||
<td>
|
||||
<fmt:parseDate value="${info.strtTm}" var="strtTm" pattern="kkmm"/><fmt:formatDate value="${strtTm}" pattern="kk:mm"/>
|
||||
~<fmt:parseDate value="${info.endTm}" var="endTm" pattern="kkmm"/><fmt:formatDate value="${endTm}" pattern="kk:mm"/>
|
||||
</td>
|
||||
</tr>
|
||||
<c:if test="${!empty acmdtAplctYesterday}">
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>전날 강의여부</p>
|
||||
</th>
|
||||
<td>
|
||||
Y
|
||||
</td>
|
||||
<th scope="row">
|
||||
<p>전날 학교명</p>
|
||||
</th>
|
||||
<td>
|
||||
<c:out value="${acmdtAplctYesterday.scholInsttNm}" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>전날 강의여부</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
Y
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>전날 학교명</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
<c:out value="${acmdtAplctYesterday.scholInsttNm}" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>전날 학교주소</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
<c:out value="${acmdtAplctYesterday.addr}" />
|
||||
</td>
|
||||
</tr>
|
||||
</c:if>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>신청사유</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
<c:out value='${info.aplctCn}' />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>처리결과</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
<ve:code codeId="VE0023" code="${info.aprvlCd}"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>미승인 사유</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
<td colspan="3"><c:out value='${info.aprvlCn}' /></td>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="pop_btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btnType02 tooltip-close" data-focus="sub52_pop01-close" onclick="fncPopClose(); return false;" data-focus-next="sub52_pop01">취소</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</form:form>
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,214 @@
|
||||
<!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="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
||||
<%
|
||||
%>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<script type="text/javascript">
|
||||
</script>
|
||||
<title>강의배정팝업</title>
|
||||
<script type="text/javaScript" language="javascript">
|
||||
|
||||
function fncPopClose(){
|
||||
var activeTarget = $('[data-tooltip-con="sub51_pop01"]');
|
||||
activeTarget.hide();
|
||||
$('[data-tooltip="sub51_pop01"]').focus();
|
||||
}
|
||||
|
||||
// 저장
|
||||
function setDataSave(){
|
||||
if($("#aplctCn").val() == "") {
|
||||
alert("신청사유 내용을 입력해주세요");
|
||||
return;
|
||||
}
|
||||
|
||||
if (confirm("저장 하시겠습니까?")) {
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/asgnmInfo/acmdtRegPopAjax.do",
|
||||
data: $("#createForm").serialize(),
|
||||
dataType:'json',
|
||||
async: false,
|
||||
success: function (data, status) {
|
||||
if (data.isSuccess == true) {
|
||||
alert("정상적으로 저장 되었습니다.");
|
||||
// 닫기
|
||||
location.reload();
|
||||
} else {
|
||||
alert("Msg : " + data.msg);
|
||||
}
|
||||
},
|
||||
error : function(xhr, status, error) {
|
||||
alert("Err : " + JSON.stringify(status));
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<form:form id="createForm" name="createForm" method="post" commandName="vEInstrFeeAcmdtVO" onsubmit="return false;">
|
||||
<input type="hidden" name="eduAplctOrd" value="<c:out value="${vEInstrFeeAcmdtVO.eduAplctOrd}" />" />
|
||||
<input type="hidden" name="eduChasiOrd" value="<c:out value="${vEInstrFeeAcmdtVO.eduChasiOrd}" />" />
|
||||
<input type="hidden" name="sbmtYn" id="sbmtYn" value="" />
|
||||
|
||||
|
||||
<div class="popup_wrap popType02" tabindex="0" data-tooltip-con="sub51_pop01" data-focus="sub51_pop01" data-focus-prev="sub51_pop01_close">
|
||||
<div class="popup_tit">
|
||||
<p>숙박신청</p><button class="btn_popup_close tooltip-close" data-focus="sub51_pop01_close" onclick="fncPopClose(); return false;" title="팝업 닫기"><i></i></button>
|
||||
</div>
|
||||
<div class="popup_cont">
|
||||
<div class="pop_tb_type01">
|
||||
<table>
|
||||
<caption>숙박신청 (th)를 제공하는 표</caption>
|
||||
<colgroup>
|
||||
<col style="width: 120px;">
|
||||
<col style="width: auto">
|
||||
<col style="width: 120px;">
|
||||
<col style="width: auto">
|
||||
</colgroup>
|
||||
<tbody>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>성명</p>
|
||||
</th>
|
||||
<td><c:out value='${info.instrNm}' /></td>
|
||||
<th scope="row">
|
||||
<p>거주지</p>
|
||||
</th>
|
||||
<td><c:out value='${info.rsdne}' /></td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>성명</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value='${info.instrNm}' /></td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>거주지</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value='${info.rsdne}' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>학교명</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value='${info.scholInsttNm}' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>학교주소</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value='${info.addr}' /><c:out value='${info.addrDetail}' /></td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>강의일자</p>
|
||||
</th>
|
||||
<td><c:out value='${info.eduHopeDt}' /></td>
|
||||
<th scope="row">
|
||||
<p>첫 강의시간</p>
|
||||
</th>
|
||||
<td>
|
||||
<fmt:parseDate value="${info.strtTm}" var="strtTm" pattern="kkmm"/><fmt:formatDate value="${strtTm}" pattern="kk:mm"/>
|
||||
~<fmt:parseDate value="${info.endTm}" var="endTm" pattern="kkmm"/><fmt:formatDate value="${endTm}" pattern="kk:mm"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>강의일자</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value='${info.eduHopeDt}' /></td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>첫 강의시간</p>
|
||||
</th>
|
||||
<td>
|
||||
<fmt:parseDate value="${info.strtTm}" var="strtTm" pattern="kkmm"/><fmt:formatDate value="${strtTm}" pattern="kk:mm"/>
|
||||
~<fmt:parseDate value="${info.endTm}" var="endTm" pattern="kkmm"/><fmt:formatDate value="${endTm}" pattern="kk:mm"/>
|
||||
</td>
|
||||
</tr>
|
||||
<c:if test="${!empty acmdtAplctYesterday}">
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>전날 강의여부</p>
|
||||
</th>
|
||||
<td>
|
||||
Y
|
||||
</td>
|
||||
<th scope="row">
|
||||
<p>전날 학교명</p>
|
||||
</th>
|
||||
<td>
|
||||
<c:out value="${acmdtAplctYesterday.scholInsttNm}" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>전날 강의여부</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
Y
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>전날 학교명</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
<c:out value="${acmdtAplctYesterday.scholInsttNm}" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>전날 학교주소</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
<c:out value="${acmdtAplctYesterday.addr}" />
|
||||
</td>
|
||||
</tr>
|
||||
</c:if>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>신청사유</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
<textarea name="aplctCn" id="aplctCn" class="cmm_cmt" cols="30" rows="3" placeholder="메모를 작성해주세요"></textarea>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="pop_btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<button type="button" class="btnType05" onclick="setDataSave(); return false;">제출</button>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btnType02 tooltip-close" data-focus="sub51_pop01-close" onclick="fncPopClose(); return false;" data-focus-next="sub51_pop01">취소</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</form:form>
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,234 @@
|
||||
<%@ page contentType="text/html; charset=utf-8"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
|
||||
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
|
||||
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
||||
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
||||
<!DOCTYPE html>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<title>강사프로필 목록</title>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<script type="text/javaScript" language="javascript">
|
||||
function fncGoCreate() {
|
||||
$("#listForm").attr("action","${pageContext.request.contextPath}/web/kccadr/accdnt/acd/adjstChangeDateCreate.do").submit();
|
||||
}
|
||||
|
||||
function fncRqst(){
|
||||
if(confirm("강의신청 하시겠습니까?")){
|
||||
$("#hstryCd").val("50"); //배정내역코드 - 강의신청
|
||||
var data = new FormData(document.getElementById("detailForm"));
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
enctype: 'multipart/form-data',
|
||||
url: "${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmAddRqstAjax.do",
|
||||
data: data,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success: function (returnData, status) {
|
||||
if(status == 'success'){
|
||||
alert("강의신청 완료하였습니다.");
|
||||
fncGoList();
|
||||
} else if(status== 'fail'){
|
||||
alert("강의신청 실패하였습니다.");
|
||||
}
|
||||
},
|
||||
error: function (e) { alert("강의신청 실패하였습니다."); console.log("ERROR : ", e); }
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function fncGoList(){
|
||||
var detailForm = document.detailForm;
|
||||
detailForm.action = "<c:url value='/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmAddRqstList.do'/>";
|
||||
detailForm.submit();
|
||||
}
|
||||
|
||||
|
||||
function goReqStatus(){
|
||||
$("#listForm").attr("action","${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/instrInfo/instrPrflReg.do").submit();
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<!-- cont -->
|
||||
<div class="cont_wrap" id="sub">
|
||||
<form:form id="detailForm" name="detailForm" commandName="vEInstrAsgnmVO" method="post" >
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEInstrAsgnmVO.pageIndex}'/>"/>
|
||||
<input type="hidden" name="searchStartDt" value="<c:out value="${vEInstrAsgnmVO.searchStartDt}" />" />
|
||||
<input type="hidden" name="searchEndDt" value="<c:out value="${vEInstrAsgnmVO.searchEndDt}" />" />
|
||||
<input type="hidden" name="searchKeyword" value="<c:out value="${vEInstrAsgnmVO.searchKeyword}" />" />
|
||||
<input type="hidden" name="userId" id="userId" value="<c:out value='${info.userId}'/>"/> <!-- 사용자 아이디 -->
|
||||
<input type="hidden" name="instrDiv" id="instrDiv" value="<c:out value='${info.instrDiv}'/>"/> <!-- 강사구분 -->
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="<c:out value='${info.eduAplctOrd}'/>"/> <!-- 교육신청 순번 -->
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="<c:out value='${info.eduChasiOrd}'/>"/> <!-- 교육차시 순번 -->
|
||||
<input type="hidden" name="hstryCd" id="hstryCd" value=""/> <!-- 배정내역 코드 -->
|
||||
<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="tit_box">
|
||||
<i class="tit_box_icon1"></i>
|
||||
<div>
|
||||
<p>찾아가는 저작권 교육</p>
|
||||
<span>‘찾아가는 저작권 교육’은 저작권 교육이 필요한 <span>전국 초ㆍ중ㆍ고등학교, 청소년ㆍ아동복지ㆍ노인ㆍ장애인 기관 및 단체 등</span>에 직접 방문하여 무료로 강의를 지원하는 맞춤형 교육 서비스입니다.</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tb_type01 tb_write">
|
||||
<table>
|
||||
<caption>성인 강의 추가요청 상세 (th 명)을 보여주는 표</caption>
|
||||
<colgroup>
|
||||
<col style="width: 220px;">
|
||||
<col style="width: auto;">
|
||||
<col style="width: 220px;">
|
||||
<col style="width: auto;">
|
||||
</colgroup>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>교육일시</p>
|
||||
</th>
|
||||
<td>${fn:substring(info.eduHopeDt,0,4)}년 ${fn:substring(info.eduHopeDt,4,6)}월 ${fn:substring(info.eduHopeDt,6,8)}일</td>
|
||||
<th scope="row">
|
||||
<p>차시</p>
|
||||
</th>
|
||||
<td>
|
||||
<fmt:parseDate value="${info.strtTm}" var="strtTm" pattern="kkmm"/><fmt:formatDate value="${strtTm}" pattern="kk:mm"/>
|
||||
~<fmt:parseDate value="${info.endTm}" var="endTm" pattern="kkmm"/><fmt:formatDate value="${endTm}" pattern="kk:mm"/>
|
||||
(<c:out value='${info.lrnTm}'/>분)
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>기관명</p>
|
||||
</th>
|
||||
<td>${info.scholInsttNm}</td>
|
||||
<th scope="row">
|
||||
<p>지역</p>
|
||||
</th>
|
||||
<td><ve:code codeId="VE0008" code="${info.eduSlctAreaCd}"/></td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>기관명</p>
|
||||
</th>
|
||||
<td colspan="3">${info.scholInsttNm}</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>지역</p>
|
||||
</th>
|
||||
<td colspan="3"><ve:code codeId="VE0008" code="${info.eduSlctAreaCd}"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>주소</p>
|
||||
</th>
|
||||
<td colspan="3">${info.addr}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>교육내용</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
<c:forEach var="eduList" items="${eduList}" varStatus="status">
|
||||
<c:if test="${fn:contains(info.eduCn, eduList.prcsOrd)}">
|
||||
- ${eduList.prcsNm} <br/>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>교육대상</p>
|
||||
</th>
|
||||
<td>${info.trgt}</td>
|
||||
<th scope="row">
|
||||
<p>인원</p>
|
||||
</th>
|
||||
<td>${info.prsnl}</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>교육대상</p>
|
||||
</th>
|
||||
<td colspan="3">${info.trgt}</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>인원</p>
|
||||
</th>
|
||||
<td colspan="3">${info.prsnl}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>신청자</p>
|
||||
</th>
|
||||
<td colspan="3">${info.chrgNm}</td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>연락처</p>
|
||||
</th>
|
||||
<td>${info.phone}</td>
|
||||
<th scope="row">
|
||||
<p>휴대전화</p>
|
||||
</th>
|
||||
<td>${info.clphone}</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>연락처</p>
|
||||
</th>
|
||||
<td colspan="3">${info.phone}</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>휴대전화</p>
|
||||
</th>
|
||||
<td colspan="3">${info.clphone}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>이메일</p>
|
||||
</th>
|
||||
<td colspan="3">${info.email}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>신청마감일</p>
|
||||
</th>
|
||||
<td colspan="3">*미구현</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<c:if test="${info.asgnmAprvlCd eq '50' and (empty info.hstryCd or info.hstryCd eq '10')}">
|
||||
<button type="button" class="btnType04 m_btn_block" onclick="fncRqst(); return false;">강의신청</button>
|
||||
</c:if>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btnType02 m_btn_block" onclick="fncGoList(); return false;">목록</button>
|
||||
</div>
|
||||
</div>
|
||||
</form:form>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,259 @@
|
||||
<%@ page contentType="text/html; charset=utf-8"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
|
||||
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
|
||||
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
||||
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<!DOCTYPE html>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<title>강사프로필 목록</title>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<script type="text/javaScript" language="javascript">
|
||||
function fncGoDetail(eduAplctOrd,eduChasiOrd){
|
||||
$("#eduAplctOrd").val(eduAplctOrd);
|
||||
$("#eduChasiOrd").val(eduChasiOrd);
|
||||
$("#listForm").attr("action","${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmAddRqstDetail.do").submit();
|
||||
}
|
||||
|
||||
function fncRqst(eduAplctOrd,eduChasiOrd){
|
||||
if(confirm("강의신청 하시겠습니까?")){
|
||||
$("#hstryCd").val("50"); //배정내역코드 - 강의신청
|
||||
$("#eduAplctOrd").val(eduAplctOrd); //배정내역코드 - 강의신청
|
||||
$("#eduChasiOrd").val(eduChasiOrd); //배정내역코드 - 강의신청
|
||||
var data = new FormData(document.getElementById("listForm"));
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
enctype: 'multipart/form-data',
|
||||
url: "${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmAddRqstAjax.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); }
|
||||
});
|
||||
|
||||
}
|
||||
event.stopImmediatePropagation();
|
||||
}
|
||||
|
||||
function linkPage(pageNo){
|
||||
var listForm = document.listForm ;
|
||||
listForm.pageIndex.value = pageNo ;
|
||||
listForm.action = "<c:url value='/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmAddRqstList.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
function goReqStatus(){
|
||||
$("#listForm").attr("action","${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/instrInfo/instrPrflReg.do").submit();
|
||||
}
|
||||
|
||||
function fncReset(thisObj){
|
||||
var targetObj = $(thisObj).closest('.list_top').find('select,input');
|
||||
$.each(targetObj, function(){
|
||||
$(this).val('');
|
||||
});
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<!-- cont -->
|
||||
<div class="cont_wrap" id="sub">
|
||||
<form:form id="listForm" name="listForm" commandName="vEInstrAsgnmVO">
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEInstrAsgnmVO.pageIndex}' default='1' />"/>
|
||||
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEInstrAsgnmVO.searchSortCnd}" />" />
|
||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEInstrAsgnmVO.searchSortOrd}" />" />
|
||||
<input type="hidden" name="searchStatus" value="<c:out value="${vEInstrAsgnmVO.searchStatus}" />" />
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="" />
|
||||
<input type="hidden" name="hstryCd" id="hstryCd" value="" />
|
||||
<div class="cont_tit">
|
||||
<h2>성인 강의 추가요청 목록</h2>
|
||||
<div class="sns_go">
|
||||
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button>
|
||||
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/twitter_icon.png" alt="트위터 바로가기"></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="list_top">
|
||||
<div class="list_top_left">
|
||||
</div>
|
||||
<div class="btn_wrap">
|
||||
<div class="calendar_wrap">
|
||||
<%-- <input type="text" name="searchEduHopeStartDt" value="${vEInstrAsgnmVO.searchEduHopeStartDt}" class="calendar" title="시작일 선택"> --%>
|
||||
<duet-date-picker identifier="date" name="searchEduHopeStartDt" class="startDate" value="${vEInstrAsgnmVO.searchEduHopeStartDt}"></duet-date-picker>
|
||||
</div>
|
||||
~
|
||||
<div class="calendar_wrap">
|
||||
<%-- <input type="text" name="searchEduHopeEndDt" value="${vEInstrAsgnmVO.searchEduHopeEndDt}" class="calendar" title="종료일 선택"> --%>
|
||||
<duet-date-picker identifier="date" name="searchEduHopeEndDt" class="endDate" value="${vEInstrAsgnmVO.searchEduHopeEndDt}"></duet-date-picker>
|
||||
</div>
|
||||
<script src="${pageContext.request.contextPath}/visitEdu/usr/publish/script/duetdatepicker.js"></script>
|
||||
학교(기관)명 :
|
||||
<input type="text" name="searchKeyword" id="searchKeyword" value="<c:out value='${vEInstrAsgnmVO.searchKeyword}' />" />
|
||||
<button type="button" class="btnType01" onclick="linkPage(1)">검색</button>
|
||||
<button type="button" class="btnType02" onclick="fncReset(this);">초기화</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tb_list01">
|
||||
<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%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">번호</th>
|
||||
<th scope="col">교육일자<!-- <button type="button">▼</button> --></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="yyyyMMdd"/> <!-- 요일 구하기 -->
|
||||
<tr onclick="fncGoDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');" style="cursor:pointer;">
|
||||
<th scope="row">
|
||||
<p>
|
||||
<c:if test="${vEInstrAsgnmVO.searchSortOrd eq 'desc' }">
|
||||
<c:out value="${ ( paginationInfo.totalRecordCount - ((paginationInfo.currentPageNo -1)*paginationInfo.recordCountPerPage) ) - status.index }"/>
|
||||
</c:if>
|
||||
<c:if test="${vEInstrAsgnmVO.searchSortOrd eq 'asc' }">
|
||||
<c:out value="${(paginationInfo.currentPageNo - 1) * paginationInfo.recordCountPerPage + status.count}"/>
|
||||
</c:if>
|
||||
</p>
|
||||
</th>
|
||||
<td><p>${fn:substring(list.eduHopeDt,0,4)}-${fn:substring(list.eduHopeDt,4,6)}-${fn:substring(list.eduHopeDt,6,8)}</p></td>
|
||||
<td><p><fmt:formatDate value="${eduHopeDt}" pattern="E"/></p></td>
|
||||
<td><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}'/>분)
|
||||
</p>
|
||||
</td>
|
||||
<td><p><ve:code codeId="VE0008" code="${list.eduSlctAreaCd}"/></p></td>
|
||||
<td><p><c:out value='${list.scholInsttNm}'/></p></td>
|
||||
<td><p><c:out value='${list.trgt}'/></p></td>
|
||||
<td>
|
||||
<span class="app_status1">
|
||||
<c:if test="${list.asgnmAprvlCd eq '50'}"> <!-- 내역 테이블의 코드 50(추가요청)일 시 -->
|
||||
<c:if test="${list.hstryCd eq '10' or empty list.hstryCd}"> <!-- 내역 코드 10(요청 강의 수락거절) or 내역 코드 없을 시(강의추가신청 전) -->
|
||||
<button type="button" class="btnType06" onclick="fncRqst('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>'); return flase;">강의신청</button>
|
||||
</c:if>
|
||||
<c:if test="${list.hstryCd eq '50'}"> <!-- 내역 코드 50(강의추가신청) -->
|
||||
<p>선정대기</p>
|
||||
</c:if>
|
||||
</c:if>
|
||||
<c:if test="${list.asgnmAprvlCd ne '50'}"> <!-- 내역 테이블의 코드 50(추가요청)이 아닐 시 -->
|
||||
<c:if test="${list.hstryCd eq '20'}"> <!-- 내역 코드 20(요청 강의 선정완료)) -->
|
||||
<p>선정완료</p>
|
||||
</c:if>
|
||||
<c:if test="${list.hstryCd eq '30'}"> <!-- 내역 코드 30(요청 강의 선정제외)) -->
|
||||
<p>선정제외</p>
|
||||
</c:if>
|
||||
</c:if>
|
||||
</span>
|
||||
</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="tb_list01_m">
|
||||
<c:forEach var="list" items="${vEInstrAsgnmVOList}" varStatus="status">
|
||||
<fmt:parseDate value="${list.eduHopeDt}" var="eduHopeDt" pattern="yyyyMMdd"/> <!-- 요일 구하기 -->
|
||||
<ul onclick="fncGoDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');">
|
||||
<li>
|
||||
<span>번호</span>
|
||||
<span><c:out value='${status.count}'/></span>
|
||||
</li>
|
||||
<li>
|
||||
<span>교육일자</span>
|
||||
<span>${fn:substring(list.eduHopeDt,0,4)}-${fn:substring(list.eduHopeDt,4,6)}-${fn:substring(list.eduHopeDt,6,8)}</span>
|
||||
</li>
|
||||
<li>
|
||||
<span>요일</span>
|
||||
<span><fmt:formatDate value="${eduHopeDt}" pattern="E"/></span>
|
||||
</li>
|
||||
<li>
|
||||
<span>시간</span>
|
||||
<span>
|
||||
<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}'/>분)
|
||||
</span>
|
||||
</li>
|
||||
<li>
|
||||
<span>지역</span>
|
||||
<span><ve:code codeId="VE0008" code="${list.eduSlctAreaCd}"/></span>
|
||||
</li>
|
||||
<li>
|
||||
<span>기관명</span>
|
||||
<span><c:out value='${list.scholInsttNm}'/></span>
|
||||
</li>
|
||||
<li>
|
||||
<span>교육대상</span>
|
||||
<span><c:out value='${list.trgt}'/></span>
|
||||
</li>
|
||||
<li>
|
||||
<span>신청상태</span>
|
||||
<span><span class="app_status1">
|
||||
<c:if test="${list.asgnmAprvlCd eq '50'}"> <!-- 내역 테이블의 코드 50(추가요청)일 시 -->
|
||||
<c:if test="${list.hstryCd eq '10' or empty list.hstryCd}"> <!-- 내역 코드 10(요청 강의 수락거절) or 내역 코드 없을 시(강의추가신청 전) -->
|
||||
<button type="button">강의신청</button>
|
||||
</c:if>
|
||||
<c:if test="${list.hstryCd eq '50'}"> <!-- 내역 코드 50(강의추가신청) -->
|
||||
<p>강의신청</p>
|
||||
</c:if>
|
||||
</c:if>
|
||||
<c:if test="${list.asgnmAprvlCd ne '50'}"> <!-- 내역 테이블의 코드 50(추가요청)이 아닐 시 -->
|
||||
<c:if test="${list.hstryCd eq '20'}"> <!-- 내역 코드 20(요청 강의 선정완료)) -->
|
||||
<p>선정완료</p>
|
||||
</c:if>
|
||||
<c:if test="${list.hstryCd eq '30'}"> <!-- 내역 코드 30(요청 강의 선정제외)) -->
|
||||
<p>선정제외</p>
|
||||
</c:if>
|
||||
</c:if>
|
||||
</span></span>
|
||||
</li>
|
||||
</ul>
|
||||
</c:forEach>
|
||||
<c:if test="${empty vEInstrAsgnmVOList}">
|
||||
<ul><li colspan="8"><spring:message code="common.nodata.msg" /></li></ul>
|
||||
</c:if>
|
||||
</div>
|
||||
|
||||
<div class="page">
|
||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
||||
</form:form>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,366 @@
|
||||
<%@ page contentType="text/html; charset=utf-8"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
|
||||
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
|
||||
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
||||
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<!DOCTYPE html>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<title>강사프로필 목록</title>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<spring:eval expression="@property['Globals.Innorix.License']" var="license"/>
|
||||
<script src="<c:url value='/innorix/innorix_${license}.js' />"></script>
|
||||
<script src="<c:url value='/js/kccadr/innorixCommon.js' />"></script>
|
||||
<link rel="stylesheet" href="<c:url value='/innorix/innorix.css'/>" type="text/css">
|
||||
<style>
|
||||
#lctrPlan{margin: 8px 0 0 0; border: 1px solid #d5d5d5; border-radius: 5px; height: 150px !important; background-color: #fafafa;}
|
||||
.innorix_basic div.irx_filetree.empty-uploader{background: url(/offeduadvc/visitEdu/usr/publish/images/content/dropzone_file_before.png) no-repeat center; height: 150px !important;}
|
||||
.irx_filetree,.innorix_basic div.irx_infoBox{height: 150px !important;}
|
||||
</style>
|
||||
<script type="text/javaScript" language="javascript">
|
||||
//강의계획서 업로드
|
||||
var control1 = new Object();
|
||||
var urlBase = "<c:url value='/innorix/exam/'/>"
|
||||
|
||||
$( document ).ready(function() {
|
||||
|
||||
$(".btn_add_file").on('click', function(){
|
||||
$("#file_temp").click();
|
||||
});
|
||||
|
||||
|
||||
|
||||
$('#file_temp').change(function(e){
|
||||
var objUpload = $(".upload_area");
|
||||
var files = $('#file_temp')[0].files;
|
||||
|
||||
handleFileUpload(files,objUpload); //파일업로드
|
||||
if($("#file_temp").length > 0){
|
||||
$("#file_temp").val(""); //파일지우기
|
||||
}
|
||||
});
|
||||
|
||||
//강의계획서 컨트롤 생성
|
||||
control1 = innorix.create({
|
||||
el : '#lctrPlan', // 컨트롤 출력 객체 ID
|
||||
installUrl: '<c:url value="/innorix/install/install.html" />', // Agent 설치 페이지
|
||||
uploadUrl: '<c:url value="/innorix/exam/upload.jsp?el=lctrPlan" />', // 업로드 URL
|
||||
maxFileCount : 1, // 첨부가능 파일 전체 개수
|
||||
width : 870, // 컨트롤 출력 너비(pixel)
|
||||
height : 80, // 컨트롤 출력 높이(pixel)
|
||||
allowExtension : ["txt","xls","xlsx","png","jpg","jpeg","doc","ppt","hwp","pdf","zip"],
|
||||
useContextMenu : 'false' //우클릭을 이용한 개별 업로드 방지
|
||||
});
|
||||
|
||||
//파일 추가 이벤트
|
||||
control1.on('afterAddFiles', function (p) {
|
||||
$('.lctrPlan_totalfileSize').text(getStrFileSize(p[0].fileSize)) ;
|
||||
$('.lctrPlan_totalfileCount').text(p.length);
|
||||
});
|
||||
//파일 삭제 이벤트
|
||||
control1.on('removeFiles', function (p) {
|
||||
$('.lctrPlan_totalfileSize').text('0MB') ;
|
||||
$('.lctrPlan_totalfileCount').text('0');
|
||||
if(control1Tmprr == 'Y'){
|
||||
if(confirm("삭제하시겠습니까?")){
|
||||
innorixDelRprtAtchFile(p[0].uniqueFileName, 'lctrPlan_rslt_atch_file_id')
|
||||
control1Tmprr = 'N';
|
||||
control1Chg = 'Y';
|
||||
$("#control1DownBtn").css('display', 'none');
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
//첨부파일 업로드 후속조치
|
||||
control1.on('uploadComplete', function (p) {
|
||||
/* fn_callBackInnorixInsert(p.files); */
|
||||
var data = p.files;
|
||||
var url = "<c:url value='/web/common/insertInnorixLctrPlanFileAjax.do' />";
|
||||
var sendData = {
|
||||
"prcsAplctPrdOrd": $('#prcsAplctPrdOrd').val()
|
||||
, "innorixFileListVO": data
|
||||
, "successMsg" : "제출 완료되었습니다."
|
||||
}
|
||||
if(fn_innorixCmmAjax(sendData, url) == "OK")
|
||||
{
|
||||
alert("업로드 완료");
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
function fncGoList(){
|
||||
var detailForm = document.detailForm;
|
||||
detailForm.action = "<c:url value='/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmList.do'/>";
|
||||
detailForm.submit();
|
||||
}
|
||||
|
||||
function fileSave(){
|
||||
|
||||
if(control1.getFileCount() == 0){
|
||||
alert("강의계획서를 첨부해주세요.")
|
||||
return false;
|
||||
}
|
||||
|
||||
//upload.jsp에서 /app/doc/offedu/sht/로 다시 set. context-properties.xml에서 파일 경로도 /app/doc/offedu/sht/
|
||||
var postObj = new Object();
|
||||
postObj.innoDirPath = $('#innoDirPath').val();
|
||||
control1.setPostData(postObj); // 업로드시 함께 전달될 POST Param 추가
|
||||
control1.upload();
|
||||
}
|
||||
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- cont -->
|
||||
<div class="cont_wrap" id="sub">
|
||||
<form:form id="detailForm" name="detailForm" commandName="vEPrcsDetailVO" method="post" >
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEPrcsDetailVO.pageIndex}'/>"/>
|
||||
<input type="hidden" name="searchEduHopeStartDt" value="<c:out value="${vEPrcsDetailVO.searchEduHopeStartDt}" />" />
|
||||
<input type="hidden" name="searchEduHopeEndDt" value="<c:out value="${vEPrcsDetailVO.searchEduHopeEndDt}" />" />
|
||||
<input type="hidden" name="searchKeyword" value="<c:out value="${vEPrcsDetailVO.searchKeyword}" />" />
|
||||
<input type="hidden" name="userId" id="userId" value="<c:out value='${info.userId}'/>"/> <!-- 사용자 아이디 -->
|
||||
<input type="hidden" name="instrDiv" id="instrDiv" value="<c:out value='${info.instrDiv}'/>"/> <!-- 강사구분 -->
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="<c:out value='${info.eduAplctOrd}'/>"/> <!-- 교육신청 순번 -->
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="<c:out value='${info.eduChasiOrd}'/>"/> <!-- 교육차시 순번 -->
|
||||
<input type="hidden" name="hstryCd" id="hstryCd" value=""/> <!-- 배정내역 코드 -->
|
||||
<input type="hidden" name="limitcount" id="limitcount" value="1" /><!-- 최대 업로드 파일갯수 -->
|
||||
<input type="hidden" name="prcsAplctPrdOrd" id="prcsAplctPrdOrd" value="<c:out value='${info.prcsAplctPrdOrd}'/>"/> /><!-- 최대 업로드 파일갯수 -->
|
||||
<input type="hidden" id="innoDirPath" value="<spring:eval expression="@globalSettings['Globals.Innorix.FilePath']"/>" />
|
||||
<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_tit01">
|
||||
<div class="tb_tit01_left">
|
||||
<p>교육과정 정보</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tb_type01 tb_write">
|
||||
<table>
|
||||
<caption>교육과정 정보(th 명)을 보여주는 표</caption>
|
||||
<colgroup>
|
||||
<col style="width: 220px;">
|
||||
<col style="width: auto;">
|
||||
<col style="width: 220px;">
|
||||
<col style="width: auto;">
|
||||
</colgroup>
|
||||
<tbody>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>교육부문</p>
|
||||
</th>
|
||||
<td>
|
||||
<ve:code codeId="VEA001" code="${info.prcsDiv}"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>교육부문</p>
|
||||
</th>
|
||||
<td colspan="3"><ve:code codeId="VEA001" code="${info.prcsDiv}"/></td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>과정</p>
|
||||
</th>
|
||||
<td>
|
||||
<c:out value="${info.prcsNm}"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>과정</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value="${info.prcsNm}"/></td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>기간</p>
|
||||
</th>
|
||||
<td>
|
||||
<c:out value="${info.eduStrtPnttm}"/>~<c:out value="${info.eduDdlnPnttm}"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>기간</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value="${info.strtPnttm}"/>~<c:out value="${info.endPnttm}"/></td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>교육장소</p>
|
||||
</th>
|
||||
<td>
|
||||
<c:out value="${info.eduPlace}"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>교육장소</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value="${info.eduPlace}"/></td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>상세교육과정</p>
|
||||
</th>
|
||||
<td>
|
||||
<c:out value="${info.prcsCn }" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>상세교육과정</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value="${info.prcsCn }" /></td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>정원</p>
|
||||
</th>
|
||||
<td>
|
||||
<c:out value="${info.nos}"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>정원</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value="${info.nos}"/></td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>신청자수</p>
|
||||
</th>
|
||||
<td>
|
||||
<c:out value="${info.nosCnt1}"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>신청자수</p>
|
||||
</th>
|
||||
<td colspan="3"><c:out value="${info.nosCnt1}"/></td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>상태</p>
|
||||
</th>
|
||||
<td>
|
||||
<ve:code codeId="VEA004" code="${info.ddlnCd}"/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>상태</p>
|
||||
</th>
|
||||
<td colspan="3"><ve:code codeId="VEA004" code="${info.ddlnCd}"/></td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row"><p>강의계획서</p></th>
|
||||
<td>
|
||||
<div class="btn_wrap">
|
||||
<button type="button" onclick="control1.openFileDialogSingle();" class="btnType01 lctrPlan_btn_add_file">강의계획서 파일찾기</button>
|
||||
<button type="button" onclick="fileSave();" class="btnType01 lctrPlan_btn_add_file">제출</button>
|
||||
<%-- <c:if test="${info.lctrPlanRsltAtchFileId != null && info.lctrPlanRsltAtchFileId != ''}">
|
||||
<button type="button" id="control1DownBtn" onclick="control1.download();" class="btnType01 cpy_btn_add_file">다운로드</button>
|
||||
</c:if> --%>
|
||||
</div>
|
||||
<div id="lctrPlan"></div><br/>
|
||||
<div class="file_cf">
|
||||
<div class="cf_left">
|
||||
<p>최대 <span class="lctrPlan_limitFileCount">1</span>개</p>
|
||||
</div>
|
||||
<div class="cf_right">
|
||||
<p>등록된 파일 <span class="upload_number lctrPlan_totalfileCount">0</span>개</p>
|
||||
<span class="upload_number lctrPlan_totalfileSize">0MB</span>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="tb_tit01">
|
||||
<div class="tb_tit01_left">
|
||||
<p>강사 배치 정보</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="t_dashboard_btm">
|
||||
<div class="tb_list01" style="width:100%;">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: 220px;">
|
||||
<col style="width: auto;">
|
||||
<col style="width: 220px;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<th>강사명</th>
|
||||
<th>연락처</th>
|
||||
<th>확정여부</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:choose>
|
||||
<c:when test="${!empty instrAsgnmList }">
|
||||
<c:forEach var="list" items="${instrAsgnmList}" varStatus="status">
|
||||
<tr>
|
||||
<td>
|
||||
<c:out value="${list.instrNm }"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.phone }"/>
|
||||
</td>
|
||||
<td>
|
||||
<ve:code codeId="VE0019" code="${list.asgnmAprvlCd}"/>
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<tr>
|
||||
<td colspan="4">강사 배치 정보가 없습니다.</td>
|
||||
</tr>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btnType02 m_btn_block" onclick="fncGoList(); return false;">목록</button>
|
||||
</div>
|
||||
</div>
|
||||
</form:form>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,194 @@
|
||||
<%@ page contentType="text/html; charset=utf-8"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
|
||||
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
|
||||
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
||||
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<script type="text/javaScript" language="javascript">
|
||||
$( document ).ready(function(){
|
||||
//성인강사인지 체크
|
||||
adultInstrCheck();
|
||||
});
|
||||
|
||||
function fncGoCreate() {
|
||||
$("#listForm").attr("action","${pageContext.request.contextPath}/web/kccadr/accdnt/acd/adjstChangeDateCreate.do").submit();
|
||||
}
|
||||
|
||||
function fncGoDetail(prcsAplctPrdOrd){
|
||||
$("#prcsAplctPrdOrd").val(prcsAplctPrdOrd);
|
||||
$("#listForm").attr("action","${pageContext.request.contextPath}/web/ve/instr/fndtnVisitEdu/asgnmInfo/instrAsgnmDetail.do").submit();
|
||||
}
|
||||
|
||||
function linkPage(pageNo){
|
||||
var listForm = document.listForm ;
|
||||
listForm.pageIndex.value = pageNo ;
|
||||
listForm.action = "<c:url value='/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmList.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
function goReqStatus(){
|
||||
$("#listForm").attr("action","${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/instrInfo/instrPrflReg.do").submit();
|
||||
}
|
||||
|
||||
function fncReset(thisObj){
|
||||
var targetObj = $(thisObj).closest('.list_top').find('select,input');
|
||||
$.each(targetObj, function(){
|
||||
$(this).val('');
|
||||
});
|
||||
}
|
||||
</script>
|
||||
|
||||
<!-- cont -->
|
||||
<div class="cont_wrap" id="sub">
|
||||
<form:form id="listForm" name="listForm" commandName="vEPrcsDetailVO">
|
||||
<input type="hidden" name="prcsAplctPrdOrd" id="prcsAplctPrdOrd" value=""/>
|
||||
<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" name="searchStatus" value="<c:out value="${vEPrcsDetailVO.searchStatus}" />" />
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="" />
|
||||
<div class="cont_tit">
|
||||
<h2>강의내역목록</h2>
|
||||
<div class="sns_go">
|
||||
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button>
|
||||
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/twitter_icon.png" alt="트위터 바로가기"></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="list_top">
|
||||
<div class="list_top_left">
|
||||
</div>
|
||||
<div class="btn_wrap">
|
||||
<div class="calendar_wrap">
|
||||
<%-- <input type="text" name="searchEduHopeStartDt" value="${vEPrcsDetailVO.searchEduHopeStartDt}" class="calendar" title="시작일 선택"> --%>
|
||||
<duet-date-picker identifier="date" name="searchEduHopeStartDt" class="startDate" value="${vEPrcsDetailVO.searchEduHopeStartDt}"></duet-date-picker>
|
||||
</div>
|
||||
~
|
||||
<div class="calendar_wrap">
|
||||
<%-- <input type="text" name="searchEduHopeEndDt" value="${vEPrcsDetailVO.searchEduHopeEndDt}" class="calendar" title="종료일 선택"> --%>
|
||||
<duet-date-picker identifier="date" name="searchEduHopeEndDt" class="endDate" value="${vEPrcsDetailVO.searchEduHopeEndDt}"></duet-date-picker>
|
||||
</div>
|
||||
<script src="${pageContext.request.contextPath}/visitEdu/usr/publish/script/duetdatepicker.js"></script>
|
||||
<button type="button" class="btnType01" onclick="linkPage(1); return false;">검색</button>
|
||||
<button type="button" class="btnType02" onclick="fncReset(this);">초기화</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tb_list01">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: 30%;">
|
||||
<col style="width: 30%;">
|
||||
<col style="width: 10%;">
|
||||
<col style="width: 10%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">교육과정</th>
|
||||
<th scope="col">교육기간</th>
|
||||
<th scope="col">정원</th>
|
||||
<th scope="col">신청자수</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${vEPrcsDetailVOList}" varStatus="status">
|
||||
<tr>
|
||||
<td>
|
||||
<a href="#none" onclick="fncGoDetail('<c:out value='${list.prcsAplctPrdOrd }' />')">${list.prcsNm } (${list.prcsAplctPrdOrd })</a>
|
||||
</td>
|
||||
<td>
|
||||
${list.eduStrtPnttm } ~ ${list.eduDdlnPnttm }
|
||||
</td>
|
||||
<td>
|
||||
${list.nos }
|
||||
</td>
|
||||
<td>
|
||||
${list.nosCnt1 }
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
<c:if test="${empty vEPrcsDetailVOList}">
|
||||
<tr><td colspan="4"><spring:message code="common.nodata.msg" /></td></tr>
|
||||
</c:if>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="tb_list01_m">
|
||||
<c:forEach var="list" items="${vEPrcsDetailVOList}" varStatus="status">
|
||||
<ul onclick="fncGoDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');">
|
||||
<li>
|
||||
<span>교육과정</span>
|
||||
<span><a href="#none" onclick="fncGoDetail('<c:out value='${list.prcsAplctPrdOrd }' />')">${list.prcsNm } (${list.prcsAplctPrdOrd })</a></span>
|
||||
</li>
|
||||
<li>
|
||||
<span>교육기간</span>
|
||||
<span>${list.eduStrtPnttm } ~ ${list.eduDdlnPnttm }</span>
|
||||
</li>
|
||||
<li>
|
||||
<span>정원</span>
|
||||
<span>${list.nos }</span>
|
||||
</li>
|
||||
<li>
|
||||
<span>신청자수</span>
|
||||
<span>${list.nosCnt1 }</span>
|
||||
</li>
|
||||
|
||||
<%-- <li>
|
||||
<span>교육일자</span>
|
||||
<span>${fn:substring(list.eduHopeDt,0,4)}-${fn:substring(list.eduHopeDt,4,6)}-${fn:substring(list.eduHopeDt,6,8)}</span>
|
||||
</li>
|
||||
<li>
|
||||
<span>요일</span>
|
||||
<span><fmt:formatDate value="${eduHopeDt}" pattern="E"/></span>
|
||||
</li>
|
||||
<li>
|
||||
<span>시간</span>
|
||||
<span>
|
||||
<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}'/>분)
|
||||
</span>
|
||||
</li>
|
||||
<li>
|
||||
<span>지역</span>
|
||||
<span><c:if test="${list.eduSlctCd eq '10'}">(온)</c:if><ve:code codeId="VE0008" code="${list.eduSlctAreaCd}"/></span>
|
||||
</li>
|
||||
<li>
|
||||
<span>기관(단체)명</span>
|
||||
<span><c:out value='${list.insttNm}'/></span>
|
||||
</li>
|
||||
<li>
|
||||
<span>총 금액</span>
|
||||
<span>
|
||||
<c:set var = "fee" value="" />
|
||||
<c:choose>
|
||||
<c:when test="${list.instrFeeSbmtYn ne 'Y'}">
|
||||
<c:set var = "fee" value="정산중" />
|
||||
</c:when>
|
||||
<c:when test="${list.acmdtSbmtYn eq 'Y' and empty list.acmdtAprvlCd}">
|
||||
<c:set var = "fee" value="정산중" />
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<c:set var = "fee" value="${list.instrFee + list.specialWorkAllow + list.distanceAllow + list.trafficFee + list.acmdtFee}" />
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
<td><p><c:out value="${fee}" /></p></td>
|
||||
</span>
|
||||
</li> --%>
|
||||
</ul>
|
||||
</c:forEach>
|
||||
<c:if test="${empty vEPrcsDetailVOList}">
|
||||
<ul><li colspan="4"><spring:message code="common.nodata.msg" /></li></ul>
|
||||
</c:if>
|
||||
</div>
|
||||
|
||||
<div class="page">
|
||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
||||
</div>
|
||||
</form:form>
|
||||
</div>
|
||||
@ -0,0 +1,295 @@
|
||||
<%@ page contentType="text/html; charset=utf-8"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
|
||||
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
|
||||
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
||||
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<!DOCTYPE html>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<title>강사프로필 목록</title>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<script type="text/javaScript" language="javascript">
|
||||
function fncGoCreate() {
|
||||
$("#listForm").attr("action","${pageContext.request.contextPath}/web/kccadr/accdnt/acd/adjstChangeDateCreate.do").submit();
|
||||
}
|
||||
|
||||
function fncSave(asgnmAprvlCd){
|
||||
var ment = "";
|
||||
if(asgnmAprvlCd == '30'){
|
||||
ment = "수락";
|
||||
$("#asgnmAprvlCd").val("30");
|
||||
}
|
||||
|
||||
if(asgnmAprvlCd == '40'){
|
||||
ment = "거절";
|
||||
$("#asgnmAprvlCd").val("40");
|
||||
}
|
||||
|
||||
if(asgnmAprvlCd == '60'){
|
||||
ment = "변경요청";
|
||||
$("#asgnmAprvlCd").val("60");
|
||||
}
|
||||
|
||||
if(confirm(ment+"처리 하시겠습니까?")){
|
||||
var data = new FormData(document.getElementById("detailForm"));
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
enctype: 'multipart/form-data',
|
||||
url: "${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmRqstMdfyAjax.do",
|
||||
data: data,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success: function (returnData, status) {
|
||||
if(status == 'success'){
|
||||
alert(ment+"처리 완료하였습니다.");
|
||||
fncGoList();
|
||||
} else if(status== 'fail'){
|
||||
alert(ment+"처리 실패하였습니다.");
|
||||
}
|
||||
},
|
||||
error: function (e) { alert(ment+"처리에 실패하였습니다."); console.log("ERROR : ", e); }
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function fncGoList(){
|
||||
var detailForm = document.detailForm;
|
||||
detailForm.action = "<c:url value='/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmRqstList.do'/>";
|
||||
detailForm.submit();
|
||||
}
|
||||
|
||||
|
||||
function goReqStatus(){
|
||||
$("#listForm").attr("action","${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/instrInfo/instrPrflReg.do").submit();
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<!-- cont -->
|
||||
<div class="cont_wrap" id="sub">
|
||||
<form:form id="detailForm" name="detailForm" commandName="vEInstrAsgnmVO" method="post" >
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEInstrAsgnmVO.pageIndex}'/>"/>
|
||||
<input type="hidden" name="searchAsgnmAprvlCd" value="<c:out value="${vEInstrAsgnmVO.searchAsgnmAprvlCd}" />" />
|
||||
<input type="hidden" name="searchEduHopeStartDt" value="<c:out value="${vEInstrAsgnmVO.searchEduHopeStartDt}" />" />
|
||||
<input type="hidden" name="searchEduHopeEndDt" value="<c:out value="${vEInstrAsgnmVO.searchEduHopeEndDt}" />" />
|
||||
<input type="hidden" name="searchKeyword" value="<c:out value="${vEInstrAsgnmVO.searchKeyword}" />" />
|
||||
<input type="hidden" name="userId" id="userId" value="<c:out value='${info.userId}'/>"/> <!-- 사용자 아이디 -->
|
||||
<input type="hidden" name="instrDiv" id="instrDiv" value="<c:out value='${info.instrDiv}'/>"/> <!-- 강사구분 -->
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="<c:out value='${info.eduAplctOrd}'/>"/> <!-- 교육신청 순번 -->
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="<c:out value='${info.eduChasiOrd}'/>"/> <!-- 교육차시 순번 -->
|
||||
<input type="hidden" name="asgnmAprvlCd" id="asgnmAprvlCd" value=""/> <!-- 배정테이블의 확정코드 -->
|
||||
<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="tit_box">
|
||||
<i class="tit_box_icon1"></i>
|
||||
<div>
|
||||
<p>찾아가는 저작권 교육</p>
|
||||
<span>‘찾아가는 저작권 교육’은 저작권 교육이 필요한 <span>전국 초ㆍ중ㆍ고등학교, 청소년ㆍ아동복지ㆍ노인ㆍ장애인 기관 및 단체 등</span>에 직접 방문하여 무료로 강의를 지원하는 맞춤형 교육 서비스입니다.</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tb_type01 tb_write">
|
||||
<table>
|
||||
<caption>성인 강의 요청 상세 (th 명)을 보여주는 표</caption>
|
||||
<colgroup>
|
||||
<col style="width: 220px;">
|
||||
<col style="width: auto;">
|
||||
<col style="width: 220px;">
|
||||
<col style="width: auto;">
|
||||
</colgroup>
|
||||
<tbody>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>교육일시</p>
|
||||
</th>
|
||||
<td>${fn:substring(info.eduHopeDt,0,4)}년 ${fn:substring(info.eduHopeDt,4,6)}월 ${fn:substring(info.eduHopeDt,6,8)}일</td>
|
||||
<th scope="row">
|
||||
<p>시간</p>
|
||||
</th>
|
||||
<td>
|
||||
<fmt:parseDate value="${info.strtTm}" var="strtTm" pattern="kkmm"/><fmt:formatDate value="${strtTm}" pattern="kk:mm"/>
|
||||
~<fmt:parseDate value="${info.endTm}" var="endTm" pattern="kkmm"/><fmt:formatDate value="${endTm}" pattern="kk:mm"/>
|
||||
(<c:out value='${info.lrnTm}'/>분)
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>교육일시</p>
|
||||
</th>
|
||||
<td colspan="3">${fn:substring(info.eduHopeDt,0,4)}년 ${fn:substring(info.eduHopeDt,4,6)}월 ${fn:substring(info.eduHopeDt,6,8)}일</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>시간</p>
|
||||
</th>
|
||||
<td colspan="3">
|
||||
<fmt:parseDate value="${info.strtTm}" var="strtTm" pattern="kkmm"/><fmt:formatDate value="${strtTm}" pattern="kk:mm"/>
|
||||
~<fmt:parseDate value="${info.endTm}" var="endTm" pattern="kkmm"/><fmt:formatDate value="${endTm}" pattern="kk:mm"/>
|
||||
(<c:out value='${info.lrnTm}'/>분)
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>기관(단체)명</p>
|
||||
</th>
|
||||
<td>${info.insttNm}</td>
|
||||
<th scope="row">
|
||||
<p>지역</p>
|
||||
</th>
|
||||
<td><c:if test="${info.eduSlctCd eq '10'}">(온)</c:if><ve:code codeId="VE0008" code="${info.eduSlctAreaCd}"/></td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>기관(단체)명</p>
|
||||
</th>
|
||||
<td colspan="3">${info.insttNm}</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>지역</p>
|
||||
</th>
|
||||
<td colspan="3"><c:if test="${info.eduSlctCd eq '10'}">(온)</c:if><ve:code codeId="VE0008" code="${info.eduSlctAreaCd}"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>교육장소</p>
|
||||
</th>
|
||||
<td colspan="3">${info.addr}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>강의주제</p>
|
||||
</th>
|
||||
<td colspan="3">${info.hopeSbjct}</td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>교육대상</p>
|
||||
</th>
|
||||
<td>${info.trgt}</td>
|
||||
<th scope="row">
|
||||
<p>인원</p>
|
||||
</th>
|
||||
<td>${info.prsnl}</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>교육대상</p>
|
||||
</th>
|
||||
<td colspan="3">${info.trgt}</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>인원</p>
|
||||
</th>
|
||||
<td colspan="3">${info.prsnl}</td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>강의료</p>
|
||||
</th>
|
||||
<td><fmt:formatNumber value="${instrFee.instrFee}" pattern="#,###"/></td>
|
||||
<th scope="row">
|
||||
<p>교통비 등</p>
|
||||
</th>
|
||||
<td><fmt:formatNumber value="${instrFee.instrFeeSum}" pattern="#,###"/></td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>강의료</p>
|
||||
</th>
|
||||
<td colspan="3"><fmt:formatNumber value="${instrFee.instrFee}" pattern="#,###"/></td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>교통비 등</p>
|
||||
</th>
|
||||
<td colspan="3"><fmt:formatNumber value="${instrFee.instrFeeSum}" pattern="#,###"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>담당자</p>
|
||||
</th>
|
||||
<td colspan="3">${info.chrgNm}</td>
|
||||
</tr>
|
||||
<tr class="trLength4">
|
||||
<th scope="row">
|
||||
<p>연락처</p>
|
||||
</th>
|
||||
<td>${info.phone}</td>
|
||||
<th scope="row">
|
||||
<p>휴대전화</p>
|
||||
</th>
|
||||
<td>${info.clphone}</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>연락처</p>
|
||||
</th>
|
||||
<td colspan="3">${info.phone}</td>
|
||||
</tr>
|
||||
<tr class="trLength2">
|
||||
<th scope="row">
|
||||
<p>휴대전화</p>
|
||||
</th>
|
||||
<td colspan="3">${info.clphone}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>이메일</p>
|
||||
</th>
|
||||
<td colspan="3">${info.email}</td>
|
||||
</tr>
|
||||
<!-- <tr>
|
||||
<th scope="row">
|
||||
<p>수락마감일</p>
|
||||
</th>
|
||||
<td colspan="3">*마감일 이후에는 자동으로 거절상태로 변경됩니다.</td>
|
||||
</tr> -->
|
||||
<c:if test="${info.hstryCd eq '40'}">
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>변경 요청 여부</p>
|
||||
</th>
|
||||
<td colspan="3">O</td>
|
||||
</tr>
|
||||
</c:if>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<c:if test="${info.asgnmAprvlCd eq '20' }"> <!-- 배정 테이블 수락요청 상태 -->
|
||||
<button type="button" class="btnType04 m_btn_block" onclick="fncSave('30'); return false;">요청수락</button>
|
||||
</c:if>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<c:if test="${info.asgnmAprvlCd eq '20' }"> <!-- 배정 테이블 수락요청 상태 -->
|
||||
<button type="button" class="btnType03 m_btn_block" onclick="fncSave('40'); return false;">요청거절</button>
|
||||
</c:if>
|
||||
<c:if test="${info.asgnmAprvlCd eq '30' and info.hstryCd ne '40' and info.hstryCnt eq '0'}"> <!-- 배정테이블 수락승인, 변경요청 내역이 없으며, 거절 등 내역이 없는 경우 : 강사가 요청을 바로 수락 한 경우만 -->
|
||||
<button type="button" class="btnType03 m_btn_block" onclick="fncSave('60'); return false;">변경요청</button>
|
||||
</c:if>
|
||||
<button type="button" class="btnType02 m_btn_block" onclick="fncGoList(); return false;">목록</button>
|
||||
</div>
|
||||
</div>
|
||||
</form:form>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,270 @@
|
||||
<%@ page contentType="text/html; charset=utf-8"%>
|
||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
|
||||
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
|
||||
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
||||
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<script type="text/javaScript" language="javascript">
|
||||
$( document ).ready(function(){
|
||||
//성인강사인지 체크
|
||||
adultInstrCheck();
|
||||
});
|
||||
|
||||
function fncGoCreate() {
|
||||
$("#listForm").attr("action","${pageContext.request.contextPath}/web/kccadr/accdnt/acd/adjstChangeDateCreate.do").submit();
|
||||
}
|
||||
|
||||
function fncGoDetail(eduAplctOrd,eduChasiOrd){
|
||||
$("#eduAplctOrd").val(eduAplctOrd);
|
||||
$("#eduChasiOrd").val(eduChasiOrd);
|
||||
$("#listForm").attr("action","${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmRqstDetail.do").submit();
|
||||
}
|
||||
|
||||
function linkPage(pageNo){
|
||||
var listForm = document.listForm ;
|
||||
listForm.pageIndex.value = pageNo ;
|
||||
listForm.action = "<c:url value='/web/ve/instr/adultVisitEdu/asgnmInfo/instrAsgnmRqstList.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
function goReqStatus(){
|
||||
$("#listForm").attr("action","${pageContext.request.contextPath}/web/ve/instr/adultVisitEdu/instrInfo/instrPrflReg.do").submit();
|
||||
}
|
||||
|
||||
function fncReset(thisObj){
|
||||
var targetObj = $(thisObj).closest('.list_top').find('select,input');
|
||||
$.each(targetObj, function(){
|
||||
$(this).val('');
|
||||
});
|
||||
}
|
||||
</script>
|
||||
|
||||
<!-- cont -->
|
||||
<div class="cont_wrap" id="sub">
|
||||
<form:form id="listForm" name="listForm" commandName="vEInstrAsgnmVO">
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEInstrAsgnmVO.pageIndex}' default='1' />"/>
|
||||
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEInstrAsgnmVO.searchSortCnd}" />" />
|
||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEInstrAsgnmVO.searchSortOrd}" />" />
|
||||
<input type="hidden" name="searchStatus" value="<c:out value="${vEInstrAsgnmVO.searchStatus}" />" />
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="" />
|
||||
<div class="cont_tit">
|
||||
<h2>성인 강의 요청 목록</h2>
|
||||
<div class="sns_go">
|
||||
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button>
|
||||
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/twitter_icon.png" alt="트위터 바로가기"></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="list_top">
|
||||
<div class="list_top_left">
|
||||
<label for="searchCdtn" class="label">검색조건 선택</label>
|
||||
<select class="selType1" name="searchAsgnmAprvlCd" id="searchCdtn">
|
||||
<option value="" <c:if test="${vEInstrAsgnmVO.searchAsgnmAprvlCd eq ''}">selected</c:if>>전체</option>
|
||||
<option value="20" <c:if test="${vEInstrAsgnmVO.searchAsgnmAprvlCd eq '20'}">selected</c:if>>대기</option>
|
||||
<option value="30" <c:if test="${vEInstrAsgnmVO.searchAsgnmAprvlCd eq '30'}">selected</c:if>>수락</option>
|
||||
<option value="40" <c:if test="${vEInstrAsgnmVO.searchAsgnmAprvlCd eq '40'}">selected</c:if>>거절</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="btn_wrap">
|
||||
<div class="calendar_wrap">
|
||||
<%-- <input type="text" name="searchEduHopeStartDt" value="${vEInstrAsgnmVO.searchEduHopeStartDt}" class="calendar" title="시작일 선택"> --%>
|
||||
<duet-date-picker identifier="date" name="searchEduHopeStartDt" class="startDate" value="${vEInstrAsgnmVO.searchEduHopeStartDt}"></duet-date-picker>
|
||||
</div>
|
||||
~
|
||||
<div class="calendar_wrap">
|
||||
<%-- <input type="text" name="searchEduHopeEndDt" value="${vEInstrAsgnmVO.searchEduHopeEndDt}" class="calendar" title="종료일 선택"> --%>
|
||||
<duet-date-picker identifier="date" name="searchEduHopeEndDt" class="endDate" value="${vEInstrAsgnmVO.searchEduHopeEndDt}"></duet-date-picker>
|
||||
</div>
|
||||
<script src="${pageContext.request.contextPath}/visitEdu/usr/publish/script/duetdatepicker.js"></script>
|
||||
<button type="button" class="btnType01" onclick="linkPage(1); return false;">검색</button>
|
||||
<button type="button" class="btnType02" onclick="fncReset(this);">초기화</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tb_list01">
|
||||
<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%;">
|
||||
</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>
|
||||
</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" onclick="fncGoDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');" style="cursor:pointer;">
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<tr onclick="fncGoDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');" style="cursor:pointer;">
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
<td>
|
||||
<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>${list.eduHopeDt}</p></td>
|
||||
<td><p><fmt:formatDate value="${eduHopeDt}" pattern="E"/></p></td>
|
||||
<td><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}'/>분)
|
||||
</p></td>
|
||||
<td><p><c:if test="${list.eduSlctCd eq '10'}">(온)</c:if><ve:code codeId="VE0008" code="${list.eduSlctAreaCd}"/></p></td>
|
||||
<td><p><c:out value='${list.insttNm}'/></p></td>
|
||||
<c:set var = "fee" value="" />
|
||||
<c:choose>
|
||||
<c:when test="${list.instrFeeSbmtYn ne 'Y'}">
|
||||
<c:set var = "fee" value="정산중" />
|
||||
</c:when>
|
||||
<c:when test="${list.acmdtSbmtYn eq 'Y' and empty list.acmdtAprvlCd}">
|
||||
<c:set var = "fee" value="정산중" />
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<c:set var = "fee" value="${list.instrFee + list.specialWorkAllow + list.distanceAllow + list.trafficFee + list.acmdtFee}" />
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
<td><p><c:out value='${fee}'/></p></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></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="tb_list01_m">
|
||||
<c:forEach var="list" items="${vEInstrAsgnmVOList}" varStatus="status">
|
||||
<fmt:parseDate value="${list.eduHopeDt}" var="eduHopeDt" pattern="yyyy.MM.dd"/> <!-- 요일 구하기 -->
|
||||
<ul onclick="fncGoDetail('<c:out value="${list.eduAplctOrd}"/>', '<c:out value="${list.eduChasiOrd}"/>');">
|
||||
<li>
|
||||
<span>번호</span>
|
||||
<span>
|
||||
<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>
|
||||
</span>
|
||||
</li>
|
||||
<li>
|
||||
<span>교육일자</span>
|
||||
<span>${fn:substring(list.eduHopeDt,0,4)}-${fn:substring(list.eduHopeDt,4,6)}-${fn:substring(list.eduHopeDt,6,8)}</span>
|
||||
</li>
|
||||
<li>
|
||||
<span>요일</span>
|
||||
<span><fmt:formatDate value="${eduHopeDt}" pattern="E"/></span>
|
||||
</li>
|
||||
<li>
|
||||
<span>시간</span>
|
||||
<span>
|
||||
<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}'/>분)
|
||||
</span>
|
||||
</li>
|
||||
<li>
|
||||
<span>지역</span>
|
||||
<span><c:if test="${list.eduSlctCd eq '10'}">(온)</c:if><ve:code codeId="VE0008" code="${list.eduSlctAreaCd}"/></span>
|
||||
</li>
|
||||
<li>
|
||||
<span>기관(단체)명</span>
|
||||
<span><c:out value='${list.insttNm}'/></span>
|
||||
</li>
|
||||
<li>
|
||||
<span>총 금액</span>
|
||||
<c:set var = "fee" value="" />
|
||||
<c:choose>
|
||||
<c:when test="${list.instrFeeSbmtYn ne 'Y'}">
|
||||
<c:set var = "fee" value="정산중" />
|
||||
</c:when>
|
||||
<c:when test="${list.acmdtSbmtYn eq 'Y' and empty list.acmdtAprvlCd}">
|
||||
<c:set var = "fee" value="정산중" />
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<c:set var = "fee" value="${list.instrFee + list.specialWorkAllow + list.distanceAllow + list.trafficFee + list.acmdtFee}" />
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
<span><c:out value='${fee}'/></span>
|
||||
</li>
|
||||
<li>
|
||||
<span>신청상태</span>
|
||||
<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>
|
||||
|
||||
<span><c:out value='${statCd}'/></span>
|
||||
</li>
|
||||
</ul>
|
||||
</c:forEach>
|
||||
<c:if test="${empty vEInstrAsgnmVOList}">
|
||||
<ul><li colspan="8"><spring:message code="common.nodata.msg" /></li></ul>
|
||||
</c:if>
|
||||
</div>
|
||||
|
||||
<div class="page">
|
||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
||||
</div>
|
||||
</form:form>
|
||||
</div>
|
||||
@ -103,7 +103,7 @@
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="<c:out value='${info.eduChasiOrd}'/>"/> <!-- 교육차시 순번 -->
|
||||
<input type="hidden" name="hstryCd" id="hstryCd" value=""/> <!-- 배정내역 코드 -->
|
||||
<div class="cont_tit">
|
||||
<h2>청소년 강의 추가요청 상세</h2>
|
||||
<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>
|
||||
|
||||
@ -193,7 +193,7 @@
|
||||
<input type="hidden" name="hstryCd" id="hstryCd" value="" />
|
||||
<input type="hidden" name="checkedField" id="checkedField" value="" />
|
||||
<div class="cont_tit">
|
||||
<h2>청소년 강의 추가요청 목록</h2>
|
||||
<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>
|
||||
|
||||
@ -310,7 +310,7 @@
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="<c:out value='${info.eduChasiOrd}'/>"/> <!-- 교육차시 순번 -->
|
||||
<input type="hidden" name="hstryCd" id="hstryCd" value=""/> <!-- 배정내역 코드 -->
|
||||
<div class="cont_tit">
|
||||
<h2>강의내역 상세</h2>
|
||||
<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>
|
||||
|
||||
@ -49,7 +49,7 @@
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="" />
|
||||
|
||||
<div class="cont_tit">
|
||||
<h2>청소년 강의내역 목록</h2>
|
||||
<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>
|
||||
|
||||
@ -89,7 +89,7 @@
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="<c:out value='${info.eduChasiOrd}'/>"/> <!-- 교육차시 순번 -->
|
||||
<input type="hidden" name="asgnmAprvlCd" id="asgnmAprvlCd" value=""/> <!-- 배정테이블의 확정코드 -->
|
||||
<div class="cont_tit">
|
||||
<h2>청소년 강의 요청 상세</h2>
|
||||
<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>
|
||||
|
||||
@ -52,7 +52,7 @@
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="" />
|
||||
<div class="cont_tit">
|
||||
<h2>청소년 강의 요청 목록</h2>
|
||||
<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>
|
||||
|
||||
@ -83,7 +83,7 @@ $( document ).ready(function() {
|
||||
<input type="hidden" name="pageIndex" />
|
||||
|
||||
<div class="cont_tit">
|
||||
<h2>청소년 강의 종료교육 상세</h2>
|
||||
<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>
|
||||
|
||||
@ -52,7 +52,7 @@
|
||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
|
||||
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="" />
|
||||
<div class="cont_tit">
|
||||
<h2>청소년 강의 종료교육 목록</h2>
|
||||
<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>
|
||||
|
||||
@ -47,7 +47,7 @@
|
||||
<!-- cont -->
|
||||
<div class="cont_wrap" id="sub">
|
||||
<div class="cont_tit">
|
||||
<h2>청소년저작권강사 대시보드</h2>
|
||||
<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>
|
||||
|
||||
@ -289,7 +289,7 @@
|
||||
</div>
|
||||
<div class="cont_wrap" id="sub">
|
||||
<div class="cont_tit">
|
||||
<h2>청소년저작권강사정보 상세</h2>
|
||||
<h2>청소년 강사 신청 상세</h2>
|
||||
</div>
|
||||
<div class="tit_box">
|
||||
<i class="tit_box_icon1"></i>
|
||||
|
||||
@ -10,8 +10,8 @@ body {color: #222;}
|
||||
.logo img {width: 200px;}
|
||||
|
||||
/* header */
|
||||
header{width: 100%; height: 130px; position: fixed; top: 0; left: 0; transition: height .4s ease-in-out, background-color .4s ease-in-out, margin .4s ease-in-out; overflow: hidden; box-sizing: border-box;z-index: 20; background-color: #fff; border-bottom: 1px solid #e2e4e6;max-height: 350px;}
|
||||
header.on{background-color: #fff; box-shadow: 0 3px 10px rgba(0,0,0,0.1); max-height: 350px;}
|
||||
header{width: 100%; height: 130px; position: fixed; top: 0; left: 0; transition: height .4s ease-in-out, background-color .4s ease-in-out, margin .4s ease-in-out; overflow: hidden; box-sizing: border-box;z-index: 20; background-color: #fff; border-bottom: 1px solid #e2e4e6;/* max-height: 350px; */}
|
||||
header.on{background-color: #fff; box-shadow: 0 3px 10px rgba(0,0,0,0.1);/* max-height: 350px; */}
|
||||
header::before{position: absolute; content: " "; display: block; top: 130px; left: 0; height: 1px; background-color: #ddd; opacity: 0; transition: opacity .4s ease-in-out;}
|
||||
header::after{position: absolute; content: " "; display: block; width: 100%; height: 1px; background-color: #d5d5d5; top: 130px; left: 0; opacity: 0; transition: opacity .4s ease-in-out;}
|
||||
header.on::after{top: 130px; opacity: 1;}
|
||||
@ -52,8 +52,8 @@ header.scroll{box-shadow: 0 5px 8px rgba(0,0,0,0.15);}
|
||||
.header_inner .nav_wrap{box-sizing: border-box; height: 100%; width: 100%; margin: 0 50px;}
|
||||
.header_inner #menu{width: 100%; margin: 0 auto; height: 100%;}
|
||||
.header_inner .depth01 {display: flex; height: 100%;}
|
||||
.header_inner .dep_li_01,.header_inner .dep_li_02,.header_inner .dep_li_03 {justify-content:flex-start;}
|
||||
.header_inner .dep_li_04,.header_inner .dep_li_05,.header_inner .dep_li_06,.header_inner .dep_li_07 {justify-content:space-between;}
|
||||
/* .header_inner .dep_li_01,.header_inner .dep_li_02,.header_inner .dep_li_03 {justify-content:flex-start;}
|
||||
.header_inner .dep_li_04,.header_inner .dep_li_05,.header_inner .dep_li_06,.header_inner .dep_li_07 {justify-content:space-between;} */
|
||||
.header_inner .depth01_li{position: relative; height:100%; padding: 0; box-sizing: border-box;}
|
||||
.header_inner .dep_li_04 .depth01_li{width: calc((100% - 40px)/4);}
|
||||
.header_inner .dep_li_01 .depth01_li{width: 100%;}
|
||||
@ -69,7 +69,7 @@ header.scroll{box-shadow: 0 5px 8px rgba(0,0,0,0.15);}
|
||||
.header_inner .menu_link .menu_link_br {color: #E95504;font-family: 'nanumsquare', 'Noto Sans KR', sans-serif; }
|
||||
.header_inner .on .menu_link{color: #E95504;}
|
||||
.on .nav_wrap .on .menu_link::before{width: 100%;}
|
||||
.header_inner .depth02{position: absolute; text-align: center; padding: 15px 0; width: 100%; left: 50%; transform: translateX(-50%);border-right: 1px solid #d5d5d5; max-height: 350px;}
|
||||
.header_inner .depth02{position: absolute; text-align: center; padding: 15px 0; width: 100%; left: 50%; transform: translateX(-50%);border-right: 1px solid #d5d5d5;/* max-height: 350px; */}
|
||||
.header_inner .depth01_li:first-child .depth02{border-left: 1px solid #d5d5d5;}
|
||||
.header_inner .depth01_li:hover .depth02::after{position:absolute;content:"";width:calc(100% + 4px);height:100%;background-color:#fff8f4;left:-2px;top:0;}
|
||||
.header_inner .depth01_li:hover .depth02 li{position:relative;z-index:1;}
|
||||
@ -100,10 +100,11 @@ header.scroll{box-shadow: 0 5px 8px rgba(0,0,0,0.15);}
|
||||
.full_menu .depth01_li{display: flex; border-bottom: 1px solid #d5d5d5; padding: 20px 0;}
|
||||
.full_menu .depth01_li:first-child{padding: 0 0 20px 0;}
|
||||
.full_menu .depth01_li:last-child{border-bottom: 0;}
|
||||
.full_menu .depth01_li .menu_link{width:350px;font-size: 22px; font-weight: 500; color: #222;}
|
||||
.full_menu .depth01_li .menu_link{width:350px;font-size: 20px; font-weight: 500; color: #222;}
|
||||
.full_menu .depth01_li:hover .menu_link,.full_menu .depth01_li .depth02 li:hover{color: #e95504;}
|
||||
.full_menu .depth01_li .depth02 li:hover{font-weight: 500;}
|
||||
.full_menu .depth01_li .depth02{display: flex; width: calc(100% - 350px); font-size: 18px; font-weight: 300; color: #666; justify-content: space-between;}
|
||||
.full_menu .depth01_li .depth02{display: flex; width: calc(100% - 138px); font-size: 18px; font-weight: 300; color: #666; justify-content:flex-start; flex-wrap: wrap;}
|
||||
.full_menu .depth01_li .depth02 li{width:calc(100% / 4); height:40px;}
|
||||
|
||||
/* .full_menu .depth01 .menu_link{font-size: 20px; font-weight: 500; color: #ea5404; position: relative; padding-bottom: 25px; letter-spacing: -1px; text-align: center; height: 40px;}
|
||||
.full_menu .depth01 .menu_link>span {display: block; padding-top: 5px;}
|
||||
|
||||
@ -6,6 +6,13 @@ $(document).ready(function () {
|
||||
gnbOpen();
|
||||
}, 100);
|
||||
|
||||
if($(".full_menu .depth01_li a:contains('ZOOM 신청 게시판(청소년)')").length == "1"){
|
||||
$(".full_menu .depth01_li>a").css("width","24%");
|
||||
$(".full_menu .depth01_li .depth02").css("width","calc(100% - 50px)");
|
||||
$(".full_menu .depth01_li a:contains('ZOOM 신청 게시판(청소년)')").html("ZOOM 신청 게시판"+"<br>"+"(청소년)")
|
||||
}else{}
|
||||
|
||||
|
||||
//ie 버그로 인하여 강제로 탭키 가도록 설정
|
||||
if (ie_check()) {
|
||||
$("#main").prop("tabindex", "0");
|
||||
@ -155,30 +162,20 @@ function header() {
|
||||
|
||||
var gnb = $("#menu");
|
||||
var header = $("header")
|
||||
|
||||
var height_array = gnb.find('.depth02').map(function(){
|
||||
return $(this).outerHeight();
|
||||
});
|
||||
h=Math.max.apply(Math, height_array)+130;
|
||||
function open_gnb(item) {
|
||||
var depth01 = item;
|
||||
var depth01_li = depth01.closest(".depth01_li");
|
||||
var depth02 = depth01_li.find(".depth02");
|
||||
var height_array = gnb.find('.depth02').map(function(){
|
||||
return $(this).outerHeight();
|
||||
});
|
||||
|
||||
var h = Math.max.apply(Math, height_array)+150;
|
||||
//console.log(height_array,Math.max.apply(Math, height_array)+150);
|
||||
if(h+1>=Math.max.apply(Math, height_array)){
|
||||
h;
|
||||
header.addClass("on").css('height',h + 'px');
|
||||
$("header .depth02").css('height',h+'px');
|
||||
//console.log("1");
|
||||
}else{
|
||||
header.addClass("on").css('height',h + 'px');
|
||||
$("header .depth02").css('height',h+'px');
|
||||
//console.log("2");
|
||||
}
|
||||
header.addClass("on").css('height',h + 'px');
|
||||
depth01_li.addClass("on");
|
||||
$('header .depth02').css('height',h + 'px');
|
||||
}
|
||||
|
||||
|
||||
|
||||
gnb.find(".menu_link").on("mouseover", function () {
|
||||
open_gnb($(this));
|
||||
});
|
||||
@ -187,6 +184,12 @@ function header() {
|
||||
var depth01 = $(this);
|
||||
depth01.addClass("on").siblings().removeClass("on");
|
||||
});
|
||||
gnb.find(".depth02").on("mouseover", function () {
|
||||
if(header.is(".on") !== true){
|
||||
$('header .depth02').attr('style','');
|
||||
}else{$('header .depth02').css('height',h + 'px');}
|
||||
});
|
||||
|
||||
|
||||
gnb.find(".menu_link").on("focusin", function () {
|
||||
open_gnb($(this));
|
||||
@ -203,9 +206,20 @@ function header() {
|
||||
|
||||
header.on("mouseleave", function () {
|
||||
header.removeClass("on").attr('style','');
|
||||
$('header .depth02').attr('style','');
|
||||
$(".depth01_li").removeClass("on");
|
||||
$("header .depth02").animate({height:'auto'},0);
|
||||
});
|
||||
|
||||
gnb.on("mouseleave", function () {
|
||||
header.removeClass("on").attr('style','');
|
||||
$('header .depth02').attr('style','');
|
||||
$(".depth01_li").removeClass("on");
|
||||
$("header .depth02").animate({height:'auto'},1000);
|
||||
});
|
||||
$(".depth01_li").on('mouseleave',function(){
|
||||
$('header .depth02').attr('style','');
|
||||
})
|
||||
|
||||
$("#menu .depth01_li:last-child .depth02 li:last-child").on("focusout", function () {
|
||||
header.removeClass("on").attr('style','');
|
||||
|
||||
Loading…
Reference in New Issue
Block a user