Merge branch 'master' into sub
임시 커밋 - 정수빈
This commit is contained in:
commit
1a67655492
@ -68,6 +68,7 @@ public class EgovSessionMapping extends EgovUsersByUsernameMapping {
|
||||
String strOrgnztNm = rs.getString("orgnzt_nm");
|
||||
String strAuthority = rs.getString("authority");
|
||||
String strMberSeq = rs.getString("mber_seq");
|
||||
String strJoinType = rs.getString("join_type");
|
||||
|
||||
|
||||
HttpServletRequest request = ((ServletRequestAttributes)
|
||||
@ -88,6 +89,7 @@ public class EgovSessionMapping extends EgovUsersByUsernameMapping {
|
||||
loginVO.setOrgnztNm(strOrgnztNm);
|
||||
loginVO.setAuthority(strAuthority);
|
||||
loginVO.setMembSeq(strMberSeq);
|
||||
loginVO.setJoinType(strJoinType);
|
||||
|
||||
request.getSession().setAttribute("LoginVO", loginVO); // LoginVO세션 생성
|
||||
|
||||
|
||||
@ -1849,11 +1849,18 @@ public class EgovLoginController {
|
||||
// 관리자 로그인 시
|
||||
LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
|
||||
|
||||
System.out.println("===========actionMain===========2");
|
||||
System.out.println(loginService.getUserAuth(user).getAuthority());
|
||||
System.out.println(user.getAuthority());
|
||||
|
||||
if ("ROLE_ADMIN".equals(loginService.getUserAuth(user).getAuthority())) { // 수퍼관리자 경우
|
||||
String authStr = user.getAuthority();
|
||||
if(
|
||||
"0".equals(user.getJoinType())
|
||||
&& ("ROLE_ADMIN".equals(authStr)
|
||||
|| "ROLE_VISIT".equals(authStr)
|
||||
|| "ROLE_ADR_JRSDC".equals(authStr)
|
||||
|| "ROLE_ADR_KIPO".equals(authStr)
|
||||
|| "ROLE_ADR_PREV".equals(authStr))
|
||||
) { //관리자 계정 생성 후 비밀번호를 한번도 변경하지 않은경우 비밀번호 변경 페이지로 이동
|
||||
return "redirect:/uss/umt/user/EgovUserSelectUpdtView4Self.do";
|
||||
} else if ("ROLE_ADMIN".equals(loginService.getUserAuth(user).getAuthority())) { // 수퍼관리자 경우
|
||||
return "redirect:/cmm/main/mainPage.do";
|
||||
} else if ("ROLE_USER_MANAGER".equals(user.getAuthority())) {
|
||||
return "redirect:/web/main/mainPage.do";
|
||||
|
||||
@ -180,6 +180,8 @@ public class UserManageVO extends UserDefaultVO{
|
||||
|
||||
private String mberCi;
|
||||
|
||||
private String joinType;
|
||||
|
||||
public String getAuthorCode() {
|
||||
return authorCode;
|
||||
}
|
||||
@ -723,6 +725,13 @@ public class UserManageVO extends UserDefaultVO{
|
||||
public void setMberCi(String mberCi) {
|
||||
this.mberCi = mberCi;
|
||||
}
|
||||
public String getJoinType() {
|
||||
return joinType;
|
||||
}
|
||||
public void setJoinType(String joinType) {
|
||||
this.joinType = joinType;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -131,6 +131,8 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
|
||||
//pass = EgovFileScrty.encryptPassword(userManageVO.getPassword(), userManageVO.getEmplyrId());
|
||||
pass = EgovNewPasswordUtil.hashPassword(userManageVO.getPassword());
|
||||
userManageVO.setPassword(pass);
|
||||
//사용자가 비밀번호 변경해야함
|
||||
userManageVO.setJoinType("0");
|
||||
}else {
|
||||
//관리자 이외
|
||||
userManageVO.setPassword(pass);
|
||||
|
||||
@ -57,6 +57,7 @@ import kcc.com.cmm.service.EgovFileMngService;
|
||||
import kcc.com.cmm.service.EgovFileMngUtil;
|
||||
import kcc.com.cmm.util.EgovDoubleSubmitHelper;
|
||||
import kcc.com.cmm.util.RedirectUrlMaker;
|
||||
import kcc.com.cmm.util.StringUtil;
|
||||
import kcc.com.utl.fcc.service.EgovStringUtil;
|
||||
import kcc.let.org.service.LocVO;
|
||||
import kcc.let.org.service.OrgChartManageService;
|
||||
@ -2482,6 +2483,14 @@ public class EgovUserManageController {
|
||||
p_model.addAttribute("userOneDepth", userOneDepth);
|
||||
p_model.addAttribute("userTwoDepth", userTwoDepth);
|
||||
p_model.addAttribute("orgHiddenList", orgHiddenList);
|
||||
|
||||
// 계정 생성 후 비밀번호를 한번도 변경하지 않았으면 관련 메시지 노출
|
||||
if(
|
||||
StringUtil.isNotEmpty(p_loginVO.getJoinType())
|
||||
&& "0".equals(p_loginVO.getJoinType())
|
||||
){
|
||||
p_model.addAttribute("message", "계정 생성 후 비밀번호를 변경하지 않았습니다. \\n비밀번호를 변경 해주시기 바랍니다.");
|
||||
}
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
@ -561,7 +561,14 @@ public class CmdTrgtController {
|
||||
try {
|
||||
if (vEEduAplctVO !=null) {
|
||||
vEPrcsAplctVO.setPrcsAplctPrdOrd(vEPrcsDetailVODetail.getPrcsAplctPrdOrd());
|
||||
vEPrcsAplctVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||
|
||||
//나의 강의실, 신청목록에서 접근 시 해당 교육 정보 노출
|
||||
//교육 신청목록에서 접근 시 가장 최근 정보 노출
|
||||
if(StringUtils.isNotEmpty(vEPrcsDetailVO.getEduAplctOrd())) {
|
||||
vEPrcsAplctVO.setEduAplctOrd(vEPrcsDetailVO.getEduAplctOrd());
|
||||
}else {
|
||||
vEPrcsAplctVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||
}
|
||||
|
||||
vEPrcsAplctVO = vEPrcsAplctPrdService.selectAplctInfo(vEPrcsAplctVO);
|
||||
}
|
||||
|
||||
@ -560,7 +560,14 @@ public class PreventController {
|
||||
try {
|
||||
if (vEEduAplctVO !=null) {
|
||||
vEPrcsAplctVO.setPrcsAplctPrdOrd(vEPrcsDetailVODetail.getPrcsAplctPrdOrd());
|
||||
vEPrcsAplctVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||
|
||||
//나의 강의실, 신청목록에서 접근 시 해당 교육 정보 노출
|
||||
//교육 신청목록에서 접근 시 가장 최근 정보 노출
|
||||
if(StringUtils.isNotEmpty(vEPrcsDetailVO.getEduAplctOrd())) {
|
||||
vEPrcsAplctVO.setEduAplctOrd(vEPrcsDetailVO.getEduAplctOrd());
|
||||
}else {
|
||||
vEPrcsAplctVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||
}
|
||||
|
||||
vEPrcsAplctVO = vEPrcsAplctPrdService.selectAplctInfo(vEPrcsAplctVO);
|
||||
}
|
||||
|
||||
@ -277,4 +277,10 @@ public class VEEduMIXServiceImpl implements VEEduMIXService {
|
||||
public List<VEEduAplctVO> selectExprnRsltFileDownList(VEEduAplctVO paramVO) throws Exception{
|
||||
return vEEduMIXDAO.selectExprnRsltFileDownList(paramVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateCnclStatus(VEEduAplctVO paramVO) {
|
||||
vEEduMIXDAO.updateCnclStatus(paramVO);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -275,11 +275,53 @@ public class VEInstrMixServiceImpl implements VEInstrMixService {
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_no3(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_no4(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_no4(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_no5(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_no5(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_no6(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_no6(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_no7(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_no7(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_prevent_no5(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_prevent_no5(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no1(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no1(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no2(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no2(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no3(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no3(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no4(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no4(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no5(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no5(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no6(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no6(vEInstrDetailVO);
|
||||
}
|
||||
|
||||
public List<VELctrDetailVO> selectEduPrfrmInfo_csi_cmdTrgt_no7(VEInstrDetailVO vEInstrDetailVO) throws Exception{
|
||||
return vEInstrMixDAO.selectEduPrfrmInfo_csi_cmdTrgt_no7(vEInstrDetailVO);
|
||||
}
|
||||
}
|
||||
|
||||
@ -170,4 +170,8 @@ public class VEPrcsAplctPrdDAO extends EgovAbstractDAO {
|
||||
return (List<VEPrcsDetailVO>) list("VEPrcsAplctPrdDAO.selectTrgtList4_60", vEPrcsDetailVO);
|
||||
}
|
||||
|
||||
public List<VEPrcsDetailVO> findByAprvlQustnrAllList(VEPrcsDetailVO vEPrcsDetailVO) {
|
||||
return (List<VEPrcsDetailVO>) list("VEPrcsAplctPrdDAO.findByAprvlQustnrAllList", vEPrcsDetailVO);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -5,6 +5,7 @@ import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpSession;
|
||||
|
||||
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
|
||||
@ -32,6 +33,8 @@ import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiService;
|
||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailActvtHstryService;
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailActvtHstryVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrMixService;
|
||||
import kcc.ve.instr.tngrVisitEdu.lctrInfo.service.VELctrDetailVO;
|
||||
@ -69,6 +72,8 @@ public class CndtnInstrMngController {
|
||||
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(CndtnInstrMngController.class);
|
||||
|
||||
private final String LCTR_DIV_CD = "60";
|
||||
|
||||
//로그인 체크 util
|
||||
@Resource(name = "checkLoginUtil")
|
||||
private CheckLoginUtil checkLoginUtil;
|
||||
@ -152,6 +157,10 @@ public class CndtnInstrMngController {
|
||||
@Resource(name = "vELctrMIXService")
|
||||
private VELctrMIXService vELctrMIXService;
|
||||
|
||||
// 첨부파일 정보
|
||||
@Resource(name="vEInstrDetailActvtHstryService")
|
||||
private VEInstrDetailActvtHstryService vEInstrDetailActvtHstryService;
|
||||
|
||||
/*
|
||||
|
||||
// 교육신청 서비스단
|
||||
@ -216,7 +225,7 @@ public class CndtnInstrMngController {
|
||||
vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo);
|
||||
|
||||
//기반강화 조회
|
||||
vEPrcsDetailVO.setLctrDivCd("60"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
|
||||
vEPrcsDetailVO.setLctrDivCd(LCTR_DIV_CD); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
|
||||
|
||||
//교육확정 목록 조회
|
||||
vEPrcsDetailVO.setDdlnCd("20");
|
||||
@ -306,7 +315,7 @@ public class CndtnInstrMngController {
|
||||
vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo);
|
||||
|
||||
//기반강화 조회
|
||||
vEPrcsDetailVO.setLctrDivCd("60"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
|
||||
vEPrcsDetailVO.setLctrDivCd(LCTR_DIV_CD); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
|
||||
|
||||
//교육확정 목록 조회
|
||||
vEPrcsDetailVO.setDdlnCd("20");
|
||||
@ -419,7 +428,7 @@ public class CndtnInstrMngController {
|
||||
vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo);
|
||||
|
||||
//기반강화 조회
|
||||
vEPrcsDetailVO.setLctrDivCd("60"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
|
||||
vEPrcsDetailVO.setLctrDivCd(LCTR_DIV_CD); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부
|
||||
|
||||
//교육확정 목록 조회
|
||||
vEPrcsDetailVO.setDdlnCd("20");
|
||||
@ -533,6 +542,7 @@ public class CndtnInstrMngController {
|
||||
|
||||
//차시별 정보
|
||||
VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO();
|
||||
vEPrcsDetailVO.setLctrDivCd(LCTR_DIV_CD);
|
||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsAplctPrdService.selectPagingList4Fndth4Stts(vEPrcsDetailVO);
|
||||
model.addAttribute("vEPrcsDetailVOList", vEPrcsDetailVOList);
|
||||
|
||||
@ -585,7 +595,7 @@ public class CndtnInstrMngController {
|
||||
{
|
||||
vEInstrDetailVODetail = egovCryptoUtil.encryptVEInstrDetailVO(vEInstrDetailVODetail);
|
||||
vEInstrDetailVODetail.setSearchEduStateCd("20"); //이수만 보기
|
||||
List<VELctrDetailVO> selectAsgnmInfoT4List_no4 = vEInstrMixService.selectEduPrfrmInfo_csi_no1(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT4List_no4 = vEInstrMixService.selectEduPrfrmInfo_csi_no4(vEInstrDetailVODetail);
|
||||
|
||||
model.addAttribute("list_no4",selectAsgnmInfoT4List_no4);
|
||||
}
|
||||
@ -601,7 +611,7 @@ public class CndtnInstrMngController {
|
||||
{
|
||||
vEInstrDetailVODetail = egovCryptoUtil.encryptVEInstrDetailVO(vEInstrDetailVODetail);
|
||||
vEInstrDetailVODetail.setSearchEduStateCd("20"); //이수만 보기
|
||||
List<VELctrDetailVO> selectAsgnmInfoT6List = vEInstrMixService.selectEduPrfrmInfo_csi_no3(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT6List = vEInstrMixService.selectEduPrfrmInfo_csi_no6(vEInstrDetailVODetail);
|
||||
model.addAttribute("list_no6",selectAsgnmInfoT6List);
|
||||
}
|
||||
// ⑦월별 교육차시별 차시명, 이수, 미이수, 연기인원 통계
|
||||
@ -642,6 +652,59 @@ public class CndtnInstrMngController {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @methodName : instrActvtHstrySignMngList
|
||||
* @author : 이호영
|
||||
* @date : 2023.12.28
|
||||
* @description : 직인대장관리(이수증) - 기반 기소
|
||||
* @param vEInstrDetailActvtHstryVO
|
||||
* @param model
|
||||
* @param request
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
@RequestMapping("/kccadr/oprtn/cndtnSspnIdtmt/instrActvtHstrySignAndCmpltCrtfcMngList.do")
|
||||
public String instrActvtHstrySignAndCmpltCrtfcMngList(
|
||||
@ModelAttribute("vEInstrActvtHstryVO") VEInstrDetailActvtHstryVO vEInstrDetailActvtHstryVO
|
||||
, 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); //로그인 정보가 없으면 로그인 페이지로 이동한다.
|
||||
// }
|
||||
//로그인 처리====================================
|
||||
|
||||
//1.pageing step1
|
||||
PaginationInfo paginationInfo = this.setPagingStep1_VEInstrDetailActvtHstryVO(vEInstrDetailActvtHstryVO);
|
||||
//2. pageing step2
|
||||
vEInstrDetailActvtHstryVO = this.setPagingStep2_VEInstrDetailActvtHstryVO(vEInstrDetailActvtHstryVO, paginationInfo);
|
||||
vEInstrDetailActvtHstryVO.setSearchKeyword(egovCryptoUtil.encrypt(vEInstrDetailActvtHstryVO.getSearchKeyword()));
|
||||
// List<VEInstrDetailActvtHstryVO> vEInstrDetailActvtHstryVOList = vEInstrDetailActvtHstryService.selectSignPagingList(vEInstrDetailActvtHstryVO);
|
||||
List<VEInstrDetailActvtHstryVO> vEInstrDetailActvtHstryVOList = vEInstrDetailActvtHstryService.selectSignAndCmpltCrtfcPagingList(vEInstrDetailActvtHstryVO);
|
||||
|
||||
vEInstrDetailActvtHstryVOList.stream().forEach(t-> t.setMberNm(egovCryptoUtil.decrypt(t.getMberNm())));
|
||||
|
||||
//3.pageing step3
|
||||
paginationInfo = this.setPagingStep3_VEInstrDetailActvtHstryVO(vEInstrDetailActvtHstryVOList, paginationInfo);
|
||||
model.addAttribute("paginationInfo", paginationInfo);
|
||||
|
||||
// 검색어 복호화
|
||||
vEInstrDetailActvtHstryVO.setSearchKeyword(egovCryptoUtil.decrypt(vEInstrDetailActvtHstryVO.getSearchKeyword()));
|
||||
//대상 리스트, 페이징 정보 전달
|
||||
model.addAttribute("list", vEInstrDetailActvtHstryVOList);
|
||||
|
||||
|
||||
|
||||
// return "oprtn/cmm/instrActvtHstrySignMngList";
|
||||
return "oprtn/cndtnSspnIdtmt/instrActvtHstrySignAndCmpltCrtfcMngList";
|
||||
}
|
||||
|
||||
/**
|
||||
* 교육실적통계 화면-개별
|
||||
*/
|
||||
@ -1022,7 +1085,7 @@ public class CndtnInstrMngController {
|
||||
//vEInstrDetailVODetail.setInstrNm(vEInstrDetailVODetail.getSearchKeyword());
|
||||
vEInstrDetailVODetail = egovCryptoUtil.encryptVEInstrDetailVO(vEInstrDetailVODetail);
|
||||
vEInstrDetailVODetail.setSearchEduStateCd("20"); //이수만 보기
|
||||
List<VELctrDetailVO> selectAsgnmInfoT2List = vEInstrMixService.selectEduPrfrmInfo_csi_no1(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT2List = vEInstrMixService.selectEduPrfrmInfo_csi_no4(vEInstrDetailVODetail);
|
||||
|
||||
//복호화
|
||||
//selectAsgnmInfoT2List = egovCryptoUtil.decryptVELctrDetailVOList(selectAsgnmInfoT2List);
|
||||
@ -1265,7 +1328,7 @@ public class CndtnInstrMngController {
|
||||
//vEInstrDetailVODetail.setInstrNm(vEInstrDetailVODetail.getSearchKeyword());
|
||||
vEInstrDetailVODetail = egovCryptoUtil.encryptVEInstrDetailVO(vEInstrDetailVODetail);
|
||||
vEInstrDetailVODetail.setSearchEduStateCd("20"); //이수만 보기
|
||||
List<VELctrDetailVO> selectAsgnmInfoT3List = vEInstrMixService.selectEduPrfrmInfo_csi_no3(vEInstrDetailVODetail);
|
||||
List<VELctrDetailVO> selectAsgnmInfoT3List = vEInstrMixService.selectEduPrfrmInfo_csi_no6(vEInstrDetailVODetail);
|
||||
|
||||
//복호화
|
||||
//selectAsgnmInfoT2List = egovCryptoUtil.decryptVELctrDetailVOList(selectAsgnmInfoT2List);
|
||||
@ -1376,7 +1439,52 @@ public class CndtnInstrMngController {
|
||||
return p_paginationInfo;
|
||||
}
|
||||
|
||||
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
||||
private PaginationInfo setPagingStep1_VEInstrDetailActvtHstryVO(
|
||||
VEInstrDetailActvtHstryVO p_vEEduAplctVO
|
||||
)throws Exception{
|
||||
// pageing step1
|
||||
PaginationInfo paginationInfo = new PaginationInfo();
|
||||
paginationInfo.setCurrentPageNo(p_vEEduAplctVO.getPageIndex());
|
||||
paginationInfo.setRecordCountPerPage(p_vEEduAplctVO.getPageUnit());
|
||||
paginationInfo.setPageSize(p_vEEduAplctVO.getPageSize());
|
||||
|
||||
return paginationInfo;
|
||||
}
|
||||
|
||||
|
||||
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
||||
private VEInstrDetailActvtHstryVO setPagingStep2_VEInstrDetailActvtHstryVO(
|
||||
VEInstrDetailActvtHstryVO p_vEEduAplctVO
|
||||
, PaginationInfo p_paginationInfo
|
||||
)throws Exception{
|
||||
// pageing step2
|
||||
p_vEEduAplctVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
||||
p_vEEduAplctVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
||||
p_vEEduAplctVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
||||
|
||||
if("".equals(p_vEEduAplctVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
||||
p_vEEduAplctVO.setSearchSortCnd("prcs_ord");
|
||||
p_vEEduAplctVO.setSearchSortOrd("desc");
|
||||
}
|
||||
|
||||
return p_vEEduAplctVO;
|
||||
}
|
||||
|
||||
|
||||
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
||||
private PaginationInfo setPagingStep3_VEInstrDetailActvtHstryVO(
|
||||
List<VEInstrDetailActvtHstryVO> p_vEEduAplctVOList
|
||||
|
||||
, PaginationInfo p_paginationInfo
|
||||
)throws Exception{
|
||||
// pageing step3
|
||||
int totCnt = 0;
|
||||
if(p_vEEduAplctVOList.size() > 0) totCnt = p_vEEduAplctVOList.get(0).getTotCnt();
|
||||
p_paginationInfo.setTotalRecordCount(totCnt);
|
||||
|
||||
return p_paginationInfo;
|
||||
}
|
||||
|
||||
|
||||
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
||||
|
||||
@ -448,7 +448,7 @@ public class MainController {
|
||||
BoardVO boardVO = new BoardVO();
|
||||
boardVO.setRecordCountPerPage(5); //게시글 수
|
||||
boardVO.setFirstIndex(0); //
|
||||
boardVO.setBbsId("BBSMSTR_000000000653");
|
||||
boardVO.setBbsId("BBSMSTR_000000000010");
|
||||
List<BoardVO> vo = bbsMngService.selectMainBoardRecent(boardVO);
|
||||
//게시글 내용 html 태그 삭제
|
||||
for(int i=0; i<vo.size(); i++) {
|
||||
@ -968,7 +968,7 @@ public class MainController {
|
||||
/*최초 사이트 체크와 동시에 session 설정, 점검중 페이지 적용 */
|
||||
@RequestMapping(value="/com/firstSiteCheck.do")
|
||||
public String firstSiteCheck(HttpServletRequest request, @RequestParam Map<String, Object> commandMap,
|
||||
ModelMap model)
|
||||
ModelMap model, MenuManageJTreeVO menuManageVO)
|
||||
throws Exception {
|
||||
try {
|
||||
SiteManagerVO siteManagerVO = new SiteManagerVO();
|
||||
@ -978,6 +978,31 @@ public class MainController {
|
||||
return "web/com/insp";
|
||||
}
|
||||
model.addAttribute("siteManagerVO", siteManagerVO);
|
||||
|
||||
|
||||
//로그인 권한 정보 불러오기
|
||||
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
|
||||
String auth = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getAuthority());
|
||||
//권한별 메뉴표시
|
||||
if(!auth.equals("ROLE_ADMIN") && auth != "") {
|
||||
menuManageVO.setAuthorCode(auth);
|
||||
}else if(auth.equals("ROLE_ADMIN")) {
|
||||
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
|
||||
}
|
||||
else {
|
||||
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
|
||||
}
|
||||
|
||||
MenuManageVO resultVO = new MenuManageVO();
|
||||
MenuManageVO tempMenuManageVO = new MenuManageVO();
|
||||
tempMenuManageVO.setSearchCondition("Y");
|
||||
setViewMenu(request , commandMap , tempMenuManageVO , resultVO , menuManageVO );
|
||||
List<MenuManageJTreeVO> menuResultList = menuCreateManageService.selectMenuLeftListJtreeWeb(menuManageVO) ;
|
||||
model.addAttribute("menuResultList", menuResultList);
|
||||
String pageUrl = request.getRequestURI().replaceAll(request.getContextPath(), "");
|
||||
|
||||
String pageUri = pageUrl.substring(0, pageUrl.lastIndexOf("/"));
|
||||
model.addAttribute("pageUri", pageUri);
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
@ -848,6 +848,7 @@
|
||||
AND b.sex = #sex#
|
||||
|
||||
and c.edu_strt_pnttm >= TO_CHAR(NOW(),'YYYY.MM.DD')
|
||||
AND a.aprvl_cd in ('10','20','60')
|
||||
</select>
|
||||
|
||||
<!-- 기소유예 대상자 확인 STEP00 -->
|
||||
|
||||
@ -0,0 +1,311 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd">
|
||||
<!-- 찾교 강사, 강사상세 테이블 -->
|
||||
<sqlMap namespace="VEInstrDetailApptHchkHstry">
|
||||
<typeAlias alias="egovMap" type="egovframework.rte.psl.dataaccess.util.EgovMap"/>
|
||||
<typeAlias alias="VEInstrDetailActvtHstryVO" type="kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailActvtHstryVO"/>
|
||||
|
||||
|
||||
<!-- 공통 테이블 명 -->
|
||||
<sql id="VEInstrDetailActvtHstryDAO.table_name">
|
||||
ve_instr_detail_actvt_hstry
|
||||
</sql>
|
||||
|
||||
<!-- 저장용 공통 컬럼 명 -->
|
||||
<sql id="VEInstrDetailActvtHstryDAO.column_name">
|
||||
instr_detail_actvt_hstry_ord
|
||||
, user_id
|
||||
, instr_detail_ord
|
||||
, aplct_pnttm
|
||||
, state_cd
|
||||
, state_pnttm
|
||||
, aplct_atch_file_id
|
||||
, cmpnn_cn
|
||||
, frst_regist_pnttm
|
||||
, frst_register_id
|
||||
, last_updt_pnttm
|
||||
, last_updusr_id
|
||||
|
||||
, docu_nmbr
|
||||
, sex
|
||||
, purpose
|
||||
, bsns_nmbr
|
||||
, bsns_nm
|
||||
|
||||
</sql>
|
||||
|
||||
<!-- 조회용 공통 컬럼 명 -->
|
||||
<sql id="VEInstrDetailActvtHstryDAO.select_column_name">
|
||||
a.instr_detail_actvt_hstry_ord as instrDetailActvtHstryOrd
|
||||
, a.user_id as userId
|
||||
, a.instr_detail_ord as instrDetailOrd
|
||||
, TO_CHAR(a.aplct_pnttm,'YYYY-MM-DD') AS aplctPnttm
|
||||
, a.state_cd as stateCd
|
||||
, TO_CHAR(a.state_pnttm,'YYYY-MM-DD') AS statePnttm
|
||||
, a.aplct_atch_file_id as aplctAtchFileId
|
||||
, a.cmpnn_cn as cmpnnCn
|
||||
, TO_CHAR(a.frst_regist_pnttm,'YYYY-MM-DD') AS frstRegistPnttm
|
||||
, a.frst_register_id as frstRegisterId
|
||||
, TO_CHAR(a.last_updt_pnttm,'YYYY-MM-DD') AS frstRegistPnttm
|
||||
, a.last_updusr_id as lastUpdusrId
|
||||
|
||||
, a.docu_nmbr AS docuNmbr
|
||||
, a.sex
|
||||
, a.purpose
|
||||
, a.bsns_nmbr AS bsnsNmbr
|
||||
, a.bsns_nm AS bsnsNm
|
||||
, a.actvt_period AS actvtPeriod
|
||||
</sql>
|
||||
|
||||
<insert id="VEInstrDetailActvtHstryDAO.insert" parameterClass="VEInstrDetailActvtHstryVO">
|
||||
/* VEInstrDetailActvtHstryDAO.insert */
|
||||
INSERT INTO <include refid="VEInstrDetailActvtHstryDAO.table_name"/> (
|
||||
<include refid="VEInstrDetailActvtHstryDAO.column_name"/>
|
||||
)VALUES(
|
||||
#instrDetailActvtHstryOrd#
|
||||
, #userId#
|
||||
, #instrDetailOrd#
|
||||
, SYSDATE
|
||||
, #stateCd#
|
||||
, SYSDATE
|
||||
, #aplctAtchFileId#
|
||||
, #cmpnnCn#
|
||||
, SYSDATE
|
||||
, #frstRegisterId#
|
||||
, ''
|
||||
, #lastUpdusrId#
|
||||
|
||||
, #docuNmbr#
|
||||
, #sex#
|
||||
, #purpose#
|
||||
, #bsnsNmbr#
|
||||
, #bsnsNm#
|
||||
)
|
||||
</insert>
|
||||
|
||||
<select id="VEInstrDetailActvtHstryDAO.selectList" parameterClass="VEInstrDetailActvtHstryVO" resultClass="VEInstrDetailActvtHstryVO">
|
||||
/* VEInstrDetailActvtHstryDAO.selectList */
|
||||
SELECT
|
||||
<include refid="VEInstrDetailActvtHstryDAO.select_column_name"/>
|
||||
FROM
|
||||
<include refid="VEInstrDetailActvtHstryDAO.table_name"/> a
|
||||
WHERE
|
||||
user_id = #userId#
|
||||
|
||||
</select>
|
||||
|
||||
<select id="VEInstrDetailActvtHstryDAO.selectPagingList" parameterClass="VEInstrDetailActvtHstryVO" resultClass="VEInstrDetailActvtHstryVO">
|
||||
/* VEInstrDetailActvtHstryDAO.selectPagingList */
|
||||
SELECT
|
||||
COUNT(1) OVER() AS totCnt ,
|
||||
TO_CHAR(a.state_pnttm, 'YYYY') ||'-'||a.docu_nmbr||'호' AS docuNmbrDp ,
|
||||
b.INSTR_NM AS instrNm ,
|
||||
<include refid="VEInstrDetailActvtHstryDAO.select_column_name"/>
|
||||
FROM
|
||||
<include refid="VEInstrDetailActvtHstryDAO.table_name"/> a
|
||||
JOIN ve_instr_detail b
|
||||
ON a.user_id = b.user_id
|
||||
AND a.instr_detail_ord = b.instr_detail_ord
|
||||
AND b.INSTR_DIV = #instrDiv#
|
||||
WHERE
|
||||
1=1
|
||||
<isNotEmpty prepend="AND" property="searchKeyword">
|
||||
b.INSTR_NM = #searchKeyword#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty prepend="AND" property="searchSelStatus">
|
||||
a.state_cd = #searchSelStatus#
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty prepend="AND" property="searchStartDt">
|
||||
TO_CHAR(a.aplct_pnttm,'YYYYMMDD') <![CDATA[ >= ]]> REPLACE(#searchStartDt#, '.' , '')
|
||||
</isNotEmpty>
|
||||
<isNotEmpty prepend="AND" property="searchEndDt">
|
||||
TO_CHAR(a.aplct_pnttm,'YYYYMMDD')<![CDATA[ <= ]]> REPLACE(#searchEndDt#, '.' , '')
|
||||
</isNotEmpty>
|
||||
|
||||
ORDER BY a.aplct_pnttm desc
|
||||
|
||||
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
|
||||
|
||||
</select>
|
||||
|
||||
<select id="VEInstrDetailActvtHstryDAO.selectSignPagingList" parameterClass="VEInstrDetailActvtHstryVO" resultClass="VEInstrDetailActvtHstryVO">
|
||||
/* VEInstrDetailActvtHstryDAO.selectSignPagingList */
|
||||
SELECT
|
||||
COUNT(1) OVER() AS totCnt ,
|
||||
TO_CHAR(a.state_pnttm, 'YYYY') ||'-'||a.docu_nmbr||'호' AS docuNmbrDp ,
|
||||
b.INSTR_NM AS instrNm ,
|
||||
<include refid="VEInstrDetailActvtHstryDAO.select_column_name"/>
|
||||
|
||||
, c.cnt
|
||||
, c.chasiSum
|
||||
FROM
|
||||
<include refid="VEInstrDetailActvtHstryDAO.table_name"/> a
|
||||
JOIN ve_instr_detail b
|
||||
ON a.user_id = b.user_id
|
||||
AND a.instr_detail_ord = b.instr_detail_ord
|
||||
left outer join
|
||||
(
|
||||
|
||||
SELECT c.USER_ID AS userId
|
||||
, count(*) AS cnt
|
||||
, sum(b.chasi) AS chasiSum
|
||||
FROM ve_edu_aplct a
|
||||
, ve_edu_chasi b
|
||||
, ve_edu_chasi_instr_asgnm c
|
||||
WHERE a.EDU_APLCT_ORD =b.EDU_APLCT_ORD
|
||||
AND b.EDU_APLCT_ORD =c.EDU_APLCT_ORD
|
||||
AND b.EDU_CHASI_ORD =c.EDU_CHASI_ORD
|
||||
AND a.aprvl_cd='60'
|
||||
AND c.asgnm_aprvl_Cd='30'
|
||||
GROUP BY c.USER_ID
|
||||
|
||||
)c
|
||||
on(
|
||||
a.user_id=c.userId
|
||||
)
|
||||
WHERE
|
||||
1=1
|
||||
AND a.docu_nmbr IS not null
|
||||
|
||||
<isNotEmpty prepend="AND" property="searchKeyword">
|
||||
b.INSTR_NM = #searchKeyword#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty prepend="AND" property="searchSelStatus">
|
||||
a.state_cd = #searchSelStatus#
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty prepend="AND" property="searchStartDt">
|
||||
TO_CHAR(a.aplct_pnttm,'YYYYMMDD') <![CDATA[ >= ]]> REPLACE(#searchStartDt#, '.' , '')
|
||||
</isNotEmpty>
|
||||
<isNotEmpty prepend="AND" property="searchEndDt">
|
||||
TO_CHAR(a.aplct_pnttm,'YYYYMMDD')<![CDATA[ <= ]]> REPLACE(#searchEndDt#, '.' , '')
|
||||
</isNotEmpty>
|
||||
|
||||
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
|
||||
|
||||
</select>
|
||||
|
||||
<select id="VEInstrDetailActvtHstryDAO.selectSignAndCmpltCrtfcPagingList" parameterClass="VEInstrDetailActvtHstryVO" resultClass="VEInstrDetailActvtHstryVO">
|
||||
/* VEInstrDetailActvtHstryDAO.selectSignAndCmpltCrtfcPagingList */
|
||||
|
||||
SELECT
|
||||
COUNT(1) OVER() AS totCnt
|
||||
, a.PRCS_APLCT_PRD_ORD as prcsAplctPrdOrd
|
||||
, b.LCTR_DIV_CD AS lctrDivCd
|
||||
, b.EDU_STRT_PNTTM AS eduStrtPnttm
|
||||
, a.EDU_APLCT_ORD as eduAplctOrd
|
||||
, a.APLCT_STATE_CD as aplctStateCd
|
||||
, a.EDU_CMPLT_CRTFC_NMBR as eduCmpltCrtfcNmbr
|
||||
, c.PRCS_NM as prcsNm
|
||||
, c.PRCS_DIV as prcsDiv
|
||||
, d.USER_ID as userId
|
||||
, e.MBER_NM as mberNm
|
||||
, to_char( a.LAST_UPDT_PNTTM ,'YYYY.MM.DD' ) AS lastUpdtPnttm
|
||||
FROM
|
||||
vea_aplct_detail_info a
|
||||
LEFT JOIN ve_prcs_aplct_prd b
|
||||
ON a.PRCS_APLCT_PRD_ORD = b.PRCS_APLCT_PRD_ORD
|
||||
LEFT JOIN ve_prcs c
|
||||
ON b.PRCS_ORD = c.PRCS_ORD
|
||||
LEFT JOIN VE_EDU_APLCT d
|
||||
ON a.EDU_APLCT_ORD = d.EDU_APLCT_ORD
|
||||
LEFT JOIN LETTNGNRLMBER e
|
||||
ON e.MBER_ID = d.USER_ID
|
||||
WHERE
|
||||
a.APLCT_STATE_CD ='20'
|
||||
AND
|
||||
b.LCTR_DIV_CD !='60'
|
||||
AND
|
||||
a.EDU_CMPLT_CRTFC_NMBR IS NOT null
|
||||
|
||||
<isNotEmpty prepend="AND" property="searchKeyword">
|
||||
e.MBER_NM = #searchKeyword#
|
||||
</isNotEmpty>
|
||||
<isNotEmpty prepend="AND" property="searchSelStatus">
|
||||
a.state_cd = #searchSelStatus#
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty prepend="AND" property="searchStartDt">
|
||||
TO_CHAR(a.LAST_UPDT_PNTTM,'YYYYMMDD') <![CDATA[ >= ]]> REPLACE(#searchStartDt#, '.' , '')
|
||||
</isNotEmpty>
|
||||
<isNotEmpty prepend="AND" property="searchEndDt">
|
||||
TO_CHAR(a.LAST_UPDT_PNTTM,'YYYYMMDD')<![CDATA[ <= ]]> REPLACE(#searchEndDt#, '.' , '')
|
||||
</isNotEmpty>
|
||||
|
||||
ORDER BY a.EDU_CMPLT_CRTFC_NMBR desc
|
||||
|
||||
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
|
||||
|
||||
</select>
|
||||
|
||||
<select id="VEInstrDetailActvtHstryDAO.findById" parameterClass="VEInstrDetailActvtHstryVO" resultClass="VEInstrDetailActvtHstryVO">
|
||||
/*VEInstrDetailActvtHstryDAO.findById */
|
||||
SELECT
|
||||
TO_CHAR(a.state_pnttm, 'YYYY') ||'-'||a.docu_nmbr||'호' AS docuNmbrDp ,
|
||||
b.user_id AS userId ,
|
||||
b.instr_nm as instrNm ,
|
||||
b.phone ,
|
||||
b.post ,
|
||||
b.addr ,
|
||||
b.addr_detail as addrDetail ,
|
||||
<include refid="VEInstrDetailActvtHstryDAO.select_column_name"/>
|
||||
|
||||
|
||||
FROM
|
||||
<include refid="VEInstrDetailActvtHstryDAO.table_name"/> a
|
||||
JOIN ve_instr_detail b
|
||||
ON a.user_id = b.user_id
|
||||
AND a.instr_detail_ord = b.instr_detail_ord
|
||||
WHERE
|
||||
a.instr_detail_actvt_hstry_ord = #instrDetailActvtHstryOrd#
|
||||
|
||||
|
||||
|
||||
</select>
|
||||
<update id="VEInstrDetailActvtHstryDAO.updateStateCd" parameterClass="VEInstrDetailActvtHstryVO">
|
||||
UPDATE
|
||||
<include refid="VEInstrDetailActvtHstryDAO.table_name" />
|
||||
SET
|
||||
state_cd = #stateCd#
|
||||
|
||||
<isEqual property="stateCd" compareValue="30">
|
||||
, docu_nmbr = NVL(
|
||||
(
|
||||
SELECT nvl(max(docu_nmbr),0) AS docuNmbr
|
||||
FROM ve_instr_detail_actvt_hstry a
|
||||
WHERE state_cd='30'
|
||||
AND to_char(a.state_pnttm,'YYYY')=(
|
||||
SELECT to_char(sysdate,'YYYY')
|
||||
FROM dual
|
||||
)
|
||||
GROUP BY to_char(a.state_pnttm,'YYYY')
|
||||
),0
|
||||
)+1
|
||||
</isEqual>
|
||||
|
||||
<isNotEmpty property="cmpnnCn">
|
||||
, cmpnn_cn = #cmpnnCn#
|
||||
</isNotEmpty>
|
||||
, state_pnttm = SYSDATE
|
||||
, LAST_UPDT_PNTTM = SYSDATE
|
||||
, LAST_UPDUSR_ID = #lastUpdusrId#
|
||||
WHERE
|
||||
instr_detail_actvt_hstry_ord = #instrDetailActvtHstryOrd#
|
||||
|
||||
</update>
|
||||
|
||||
|
||||
<update id="VEInstrDetailActvtHstryDAO.updateActvtPeriod" parameterClass="VEInstrDetailActvtHstryVO">
|
||||
UPDATE
|
||||
<include refid="VEInstrDetailActvtHstryDAO.table_name" />
|
||||
SET
|
||||
actvt_period = #actvtPeriod#
|
||||
WHERE
|
||||
instr_detail_actvt_hstry_ord = #instrDetailActvtHstryOrd#
|
||||
|
||||
</update>
|
||||
|
||||
|
||||
|
||||
</sqlMap>
|
||||
@ -632,12 +632,11 @@
|
||||
|
||||
|
||||
<isNotEmpty property="lctrDivCd">
|
||||
AND a.lctr_div_cd=#lctrDivCd#
|
||||
AND b.lctr_div_cd=#lctrDivCd#
|
||||
</isNotEmpty>
|
||||
|
||||
<isEqual property="lctrDivCd" compareValue="60">
|
||||
AND COALESCE(a.use_yn,'Y')='Y'
|
||||
</isEqual>
|
||||
|
||||
AND COALESCE(a.use_yn,'Y')!='D'
|
||||
|
||||
|
||||
ORDER BY 1, b.prcs_nm ASC
|
||||
@ -1702,6 +1701,241 @@
|
||||
AND aprvl_cd='20'
|
||||
|
||||
|
||||
</select>
|
||||
</select>
|
||||
|
||||
<!-- 교육 확정 목록 (설문조사, 이수증 수정)-->
|
||||
<select id="findByAprvlQustnrAllList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
|
||||
/* VEPrcsAplctPrdDAO.findByAprvlQustnrAllList */
|
||||
select
|
||||
COUNT(1) OVER() AS totCnt ,
|
||||
a.edu_aplct_ord AS eduAplctOrd ,
|
||||
vpap.PRCS_APLCT_PRD_ORD AS prcsAplctPrdOrd ,
|
||||
vp.prcs_nm AS prcsNm ,
|
||||
vp.prcs_cn AS prcsCn ,
|
||||
vp.prcs_div AS prcsDiv ,
|
||||
vpap.title AS title ,
|
||||
vpap.strt_pnttm AS strtPnttm ,
|
||||
vpap.end_pnttm AS endPnttm ,
|
||||
vpap.edu_strt_pnttm AS eduStrtPnttm ,
|
||||
vpap.edu_ddln_pnttm AS eduDdlnPnttm ,
|
||||
|
||||
case
|
||||
when to_char(now(),'YYYY.MM.DD HH24') >= concat(vpap.qustnr_strt_pnttm, ' ', vpap.qustnr_tm) and vpap.qustnr_tm>'' then 1
|
||||
else 0
|
||||
end as qustnrTm,
|
||||
|
||||
|
||||
CASE
|
||||
WHEN to_char(now(), 'YYYY.MM.DD') > COALESCE(vpap.edu_ddln_pnttm,vpap.edu_strt_pnttm) THEN 1
|
||||
ELSE 0
|
||||
END AS qestRsltExists,
|
||||
|
||||
a.APRVL_CD AS aprvlCd,
|
||||
vpap.ddln_cd AS ddlnCd,
|
||||
vadi.APLCT_STATE_CD AS aplctStateCd,
|
||||
vadi.CNCL_ATCH_FILE_ID AS cnclAtchFileId,
|
||||
vadi.CNCL_CN AS cnclCn,
|
||||
|
||||
|
||||
/* 설문지 정보 */
|
||||
I10.qustnr_tmplat_id AS qustnrTmplatId ,
|
||||
|
||||
COALESCE(qustnr01.QESTNR_ID_10, I10.qestnr_id_10) AS qestnrId10 ,
|
||||
COALESCE(qustnr01.QESTNR_ID_20, I20.qestnr_id_20) AS qestnrId20 ,
|
||||
COALESCE(qustnr01.QESTNR_ID_30, I30.qestnr_id_30) AS qestnrId30 ,
|
||||
|
||||
/* 답변 정보 */
|
||||
|
||||
COALESCE(qustnr01.QESTNR_ID_10_CNT,0) AS qestnrId10Cnt ,
|
||||
COALESCE(qustnr01.QESTNR_ID_20_CNT,0) AS qestnrId20Cnt ,
|
||||
COALESCE(qustnr01.QESTNR_ID_30_CNT,0) AS qestnrId30Cnt ,
|
||||
a.lctr_div_cd AS lctrDivCd
|
||||
|
||||
from
|
||||
VE_EDU_APLCT a
|
||||
join ve_prcs_aplct_prd vpap
|
||||
on a.prcs_ord = vpap.prcs_aplct_prd_ord
|
||||
join ve_prcs vp /* 과정 */
|
||||
on vpap.prcs_ord = vp.prcs_ord
|
||||
left join vea_aplct_detail_info vadi /* 신청상세정보 */
|
||||
on a.edu_aplct_ord = vadi.edu_aplct_ord
|
||||
and vpap.prcs_aplct_prd_ord = vadi.prcs_aplct_prd_ord
|
||||
|
||||
LEFT OUTER JOIN (
|
||||
|
||||
SELECT
|
||||
aa.EDU_APLCT_ORD ,
|
||||
aa.prcs_ord,
|
||||
aa.QUSTNR_TMPLAT_ID ,
|
||||
aa.user_id
|
||||
|
||||
, max(CASE WHEN bb.site_id_cd = '10' THEN aa.QESTNR_ID END) AS QESTNR_ID_10
|
||||
, max(CASE WHEN bb.site_id_cd = '20' THEN aa.QESTNR_ID END) AS QESTNR_ID_20
|
||||
, max(CASE WHEN bb.site_id_cd = '30' THEN aa.QESTNR_ID END) AS QESTNR_ID_30
|
||||
|
||||
, SUM(CASE WHEN bb.site_id_cd = '10' THEN 1 ELSE 0 END) AS QESTNR_ID_10_CNT
|
||||
, SUM(CASE WHEN bb.site_id_cd = '20' THEN 1 ELSE 0 END) AS QESTNR_ID_20_CNT
|
||||
, SUM(CASE WHEN bb.site_id_cd = '30' THEN 1 ELSE 0 END) AS QESTNR_ID_30_CNT
|
||||
|
||||
FROM (
|
||||
SELECT
|
||||
a.EDU_APLCT_ORD ,
|
||||
a.prcs_ord,
|
||||
b.QUSTNR_TMPLAT_ID ,
|
||||
b.QESTNR_ID
|
||||
, a.user_id
|
||||
|
||||
FROM
|
||||
ve_edu_aplct a ,
|
||||
LETTNQESTNRRSLTDETAIL b
|
||||
WHERE
|
||||
1 = 1
|
||||
AND a.edu_aplct_ord = b.edu_aplct_ord
|
||||
AND (b.EDU_CHASI_ORD IS NULL or b.EDU_CHASI_ORD = '')
|
||||
AND a.user_id=#userId#
|
||||
|
||||
)aa
|
||||
, lettnqestnrinfo bb
|
||||
WHERE aa.qustnr_tmplat_id=bb.qustnr_tmplat_id
|
||||
AND aa.qestnr_id=bb.qestnr_id
|
||||
|
||||
GROUP BY
|
||||
aa.EDU_APLCT_ORD ,
|
||||
aa.prcs_ord,
|
||||
aa.QUSTNR_TMPLAT_ID ,
|
||||
aa.user_id
|
||||
|
||||
) qustnr01
|
||||
on(
|
||||
|
||||
a.edu_aplct_ord = qustnr01.edu_Aplct_Ord
|
||||
AND a.PRCS_ORD = qustnr01.prcs_Ord
|
||||
|
||||
)
|
||||
|
||||
|
||||
LEFT OUTER JOIN (
|
||||
/* 현재 진행가능한 설문 정보(기본, 선생님, 강사) 여러개가 있는 경우는 최근 등록된 설문 정보를 가져온다.*/
|
||||
SELECT
|
||||
a.QUSTNR_TMPLAT_ID ,
|
||||
a.SITE_ID ,
|
||||
/*
|
||||
(CASE WHEN a.STTUS = '1' THEN a.QESTNR_ID END) AS QESTNR_ID_10
|
||||
*/
|
||||
(CASE WHEN a.STTUS = '1' THEN a.QESTNR_ID ELSE a.QESTNR_ID END) AS QESTNR_ID_10
|
||||
FROM
|
||||
LETTNQESTNRINFO a
|
||||
WHERE
|
||||
a.SITE_ID = #siteId#
|
||||
/*
|
||||
AND a.SITE_ID_CD IN ('10')
|
||||
*/
|
||||
/*
|
||||
AND a.STTUS IN ('1')
|
||||
*/
|
||||
AND TO_CHAR(NOW(),
|
||||
'YYYY.MM.DD') BETWEEN COALESCE(a.qustnr_bgnde,
|
||||
'2000.01.01')
|
||||
AND COALESCE(a.qustnr_endde,
|
||||
'9999.12.31')
|
||||
ORDER BY coalesce(a.qustnr_bgnde,'9999.12.31')
|
||||
LIMIT 1
|
||||
) I10 ON
|
||||
(1 = 1)
|
||||
|
||||
LEFT OUTER JOIN (
|
||||
/* 현재 진행가능한 설문 정보(기본, 선생님, 강사) 여러개가 있는 경우는 최근 등록된 설문 정보를 가져온다.*/
|
||||
SELECT
|
||||
a.QUSTNR_TMPLAT_ID ,
|
||||
a.SITE_ID ,
|
||||
/*
|
||||
(CASE WHEN a.STTUS = '1' THEN a.QESTNR_ID END) AS QESTNR_ID_20
|
||||
*/
|
||||
(CASE WHEN a.STTUS = '1' THEN a.QESTNR_ID ELSE a.QESTNR_ID END) AS QESTNR_ID_20
|
||||
|
||||
FROM
|
||||
LETTNQESTNRINFO a
|
||||
WHERE
|
||||
a.SITE_ID = #siteId#
|
||||
/*
|
||||
AND a.SITE_ID_CD IN ('20')
|
||||
*/
|
||||
/*
|
||||
AND a.STTUS IN ('1')
|
||||
*/
|
||||
AND TO_CHAR(NOW(),
|
||||
'YYYY.MM.DD') BETWEEN COALESCE(a.qustnr_bgnde,
|
||||
'2000.01.01')
|
||||
AND COALESCE(a.qustnr_endde,
|
||||
'9999.12.31')
|
||||
ORDER BY coalesce(a.qustnr_bgnde,'9999.12.31')
|
||||
LIMIT 1
|
||||
) I20 ON
|
||||
(1 = 1)
|
||||
|
||||
LEFT OUTER JOIN (
|
||||
/* 현재 진행가능한 설문 정보(기본, 선생님, 강사) 여러개가 있는 경우는 최근 등록된 설문 정보를 가져온다.*/
|
||||
SELECT
|
||||
a.QUSTNR_TMPLAT_ID ,
|
||||
a.SITE_ID ,
|
||||
/*
|
||||
(CASE WHEN a.STTUS = '1' THEN a.QESTNR_ID END) AS QESTNR_ID_30
|
||||
*/
|
||||
(CASE WHEN a.STTUS = '1' THEN a.QESTNR_ID ELSE a.QESTNR_ID END) AS QESTNR_ID_30
|
||||
|
||||
FROM
|
||||
LETTNQESTNRINFO a
|
||||
WHERE
|
||||
a.SITE_ID = #siteId#
|
||||
/*
|
||||
AND a.SITE_ID_CD IN ('30')
|
||||
*/
|
||||
/*
|
||||
AND a.STTUS IN ('1')
|
||||
*/
|
||||
AND TO_CHAR(NOW(),
|
||||
'YYYY.MM.DD') BETWEEN COALESCE(a.qustnr_bgnde,
|
||||
'2000.01.01')
|
||||
AND COALESCE(a.qustnr_endde,
|
||||
'9999.12.31')
|
||||
|
||||
ORDER BY coalesce(a.qustnr_bgnde,'9999.12.31')
|
||||
LIMIT 1
|
||||
|
||||
) I30 ON
|
||||
(1 = 1)
|
||||
|
||||
where
|
||||
a.user_id = #userId#
|
||||
|
||||
<isNotEmpty property="searchStartDt">
|
||||
AND vpap.edu_strt_pnttm <![CDATA[ >= ]]> #searchStartDt#
|
||||
</isNotEmpty>
|
||||
|
||||
<isNotEmpty property="searchEndDt">
|
||||
AND vpap.edu_strt_pnttm <![CDATA[ <= ]]> #searchEndDt#
|
||||
</isNotEmpty>
|
||||
<isEqual property="searchStatus" compareValue="5"> /*VEA003 미이수 : 수강중 강의*/
|
||||
AND vadi.aplct_state_cd = '10'
|
||||
</isEqual>
|
||||
<isEqual property="searchStatus" compareValue="30"> /*취소 : 취소*/
|
||||
AND vadi.aplct_state_cd = #searchStatus#
|
||||
</isEqual>
|
||||
<isEqual property="searchStatus" compareValue="20"> /*이수완료 : 종료 강의*/
|
||||
AND vadi.aplct_state_cd is not null
|
||||
AND a.aprvl_cd = #searchStatus#
|
||||
</isEqual>
|
||||
<isEqual property="searchStatus" compareValue="15"> /*수강중 강의*/
|
||||
AND vadi.aplct_state_cd is null
|
||||
AND a.aprvl_cd = '20'
|
||||
</isEqual>
|
||||
<isEqual property="searchStatus" compareValue="10"> /*요청 : 요청 강의*/
|
||||
AND a.aprvl_cd = #searchStatus#
|
||||
</isEqual>
|
||||
|
||||
ORDER BY vpap.edu_strt_pnttm desc
|
||||
LIMIT #recordCountPerPage# OFFSET #firstIndex#
|
||||
|
||||
</select>
|
||||
|
||||
</sqlMap>
|
||||
|
||||
@ -595,7 +595,6 @@
|
||||
/* 신청 후 취소 */
|
||||
, user_id = NULL
|
||||
, edu_aplct_ord = NULL
|
||||
, edu_state_cd = '10'
|
||||
, prcs_aplct_prd_ord_cmplt = NULL
|
||||
</isEqual>
|
||||
|
||||
@ -603,7 +602,6 @@
|
||||
/* 신청 후 반려 */
|
||||
, user_id = NULL
|
||||
, edu_aplct_ord = NULL
|
||||
, edu_state_cd = '10'
|
||||
, prcs_aplct_prd_ord_cmplt = NULL
|
||||
</isEqual>
|
||||
|
||||
@ -622,6 +620,7 @@
|
||||
<isEqual property="reqNo" compareValue="6-2">
|
||||
/* 취소 신청 승은(교육중단) edu_state_cd=60,req_state_cd=40 */
|
||||
, edu_state_cd = '60'
|
||||
, req_state_cd = '35'
|
||||
/* , req_state_cd = '40' 의뢰상태는 교육의 취소, 확정과 관계없이 대상자의 의뢰 상태를 변경 하는것 이므로 여기서는 제외한다. */
|
||||
</isEqual>
|
||||
WHERE
|
||||
@ -642,12 +641,18 @@
|
||||
|
||||
</isEqual>
|
||||
|
||||
<isEqual property="reqNo" compareValue="4">
|
||||
<isEqual property="reqNo" compareValue="6-2">
|
||||
/* 신청 후 관리자 반려 aplct_state_cd=50 */
|
||||
, aplct_state_cd = '50'
|
||||
, aplct_state_cd = '60'
|
||||
|
||||
</isEqual>
|
||||
|
||||
|
||||
<isEqual property="reqNo" compareValue="6-3">
|
||||
/* 취소 신청 후 관리자 반려 aplct_state_cd=null */
|
||||
, aplct_state_cd = null
|
||||
|
||||
</isEqual>
|
||||
|
||||
WHERE
|
||||
edu_aplct_ord = #eduAplctOrd#
|
||||
</update>
|
||||
|
||||
@ -85,6 +85,10 @@ $( document ).ready(function(){
|
||||
$('#userWork_case2').hide();
|
||||
}
|
||||
*/
|
||||
|
||||
<c:if test="${message != null}">
|
||||
alert("<c:out value='${message}' />");
|
||||
</c:if>
|
||||
});
|
||||
|
||||
function setOrgDepth_01(){
|
||||
|
||||
@ -174,11 +174,11 @@ function bbsMasterExcelDownload(){
|
||||
|
||||
<input type="text" id="searchWrd" name="searchWrd" value="<c:out value='${searchVO.searchWrd}'/>" class="search_input" placeholder="검색어를 입력하세요" onkeyDown="press(event);">
|
||||
<button class="btn_search" onclick="javascript:linkPage('1'); return false;">검색</button>
|
||||
<c:if test="${bbsAttrMngAuth}">
|
||||
<%-- <c:if test="${bbsAttrMngAuth}">
|
||||
<input type="checkbox" name="useAt" id="useAt" value="N" onclick="javascript:linkPage('1'); return false;"
|
||||
<c:if test="${'N' eq searchVO.useAt}"> checked='checked' </c:if> >
|
||||
<label for="useAt"></label>미사용
|
||||
</c:if>
|
||||
</c:if> --%>
|
||||
<select class="sel2 sel_type1" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px">
|
||||
<option value='10' <c:if test="${searchVO.pageUnit == '10' or searchVO.pageUnit == ''}">selected</c:if>>10줄</option>
|
||||
<option value='20' <c:if test="${searchVO.pageUnit == '20'}">selected</c:if>>20줄</option>
|
||||
|
||||
@ -845,37 +845,37 @@
|
||||
</td>
|
||||
<td>
|
||||
<c:choose>
|
||||
<c:when test="${list.aprvlCd eq '35'}"><!-- 취소 요청 -->
|
||||
<ve:code codeId="VE0003" code="${list.aprvlCd}"/>
|
||||
<c:when test="${list.aplctStateCd eq '35'}"><!-- 취소 요청 -->
|
||||
<ve:code codeId="VEA003" code="${list.aplctStateCd}"/>
|
||||
<button type="button" class="btn_type04" onclick="fncCancelUser('${list.eduAplctOrd}', '${info.prcsAplctPrdOrd}', '6-2')">취소승인</button>
|
||||
<button type="button" class="btn_type05" onclick="fncCancelUser('${list.eduAplctOrd}', '${info.prcsAplctPrdOrd}', '6-3')">취소반려</button>
|
||||
<br/>
|
||||
<br/>
|
||||
${list.aplctCn}
|
||||
${list.cnclCn}
|
||||
<br/>
|
||||
<c:import url="/cmm/fms/selectBBSFileInfs.do" charEncoding="utf-8">
|
||||
<c:param name="param_atchFileId" value="${list.rsltAtchFileId}" />
|
||||
<c:param name="param_atchFileId" value="${list.cnclAtchFileId}" />
|
||||
</c:import>
|
||||
|
||||
</c:when>
|
||||
<c:when test="${list.aprvlCd eq '40'}"><!-- 취소 승인 -->
|
||||
<c:when test="${list.aplctStateCd eq '60' and not empty list.cnclCn}"><!-- 취소 승인 -->
|
||||
취소승인
|
||||
<br/>
|
||||
<br/>
|
||||
${list.aplctCn}
|
||||
${list.cnclCn}
|
||||
<br/>
|
||||
<c:import url="/cmm/fms/selectBBSFileInfs.do" charEncoding="utf-8">
|
||||
<c:param name="param_atchFileId" value="${list.rsltAtchFileId}" />
|
||||
<c:param name="param_atchFileId" value="${list.cnclAtchFileId}" />
|
||||
</c:import>
|
||||
</c:when>
|
||||
<c:when test="${list.aprvlCd eq '60' and not empty list.aplctCn}"><!-- 취소정보가 있는데 60이면 취소 반려 처리 -->
|
||||
<c:when test="${list.aplctStateCd ne '60' and not empty list.cnclCn}"><!-- 취소정보가 있는데 60이면 취소 반려 처리 -->
|
||||
취소반려
|
||||
<br/>
|
||||
<br/>
|
||||
${list.aplctCn}
|
||||
${list.cnclCn}
|
||||
<br/>
|
||||
<c:import url="/cmm/fms/selectBBSFileInfs.do" charEncoding="utf-8">
|
||||
<c:param name="param_atchFileId" value="${list.rsltAtchFileId}" />
|
||||
<c:param name="param_atchFileId" value="${list.cnclAtchFileId}" />
|
||||
</c:import>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
@ -961,7 +961,8 @@
|
||||
<button type="button" class="btn_type04" onclick="fn_statusChgList('20', '<c:out value="${info.prcsAplctPrdOrd }" />'); return false;">이수</button>
|
||||
<button type="button" class="btn_type04" onclick="fn_statusChgList('10', '<c:out value="${info.prcsAplctPrdOrd }" />'); return false;">미이수</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
|
||||
<div class="tb_tit01">
|
||||
@ -1015,6 +1016,227 @@
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- 문항리스트_상세 -->
|
||||
<div class="tb_tit01">
|
||||
<p>교육 내용에 대한 전반적 만족도 평가</p>
|
||||
</div>
|
||||
<!-- <div class="tb_type01"> -->
|
||||
<!-- <table> -->
|
||||
<%-- <c:if test="${!empty chasiSrvyList}"> --%>
|
||||
<%-- <colgroup> --%>
|
||||
<%-- <col style="width: 120px;"> --%>
|
||||
<%-- <col style="width: auto;"> --%>
|
||||
<%-- <col style="width: 120px;"> --%>
|
||||
<%-- <col style="width: auto;"> --%>
|
||||
<%-- </colgroup> --%>
|
||||
<!-- <tbody class="ta_con"> -->
|
||||
<!-- <tr> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>참석자</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td> -->
|
||||
<%-- <input type="hidden" class="popupInput" id="qestnrParticipant" name="qestnrParticipant" value="<c:out value="${qestnrParticipant}"/>"> --%>
|
||||
<%-- <c:out value="${qestnrParticipant}"/> --%>
|
||||
<!-- </td> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>응답율</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td id="responseRate">-</td> -->
|
||||
<!-- </tr> -->
|
||||
<!-- <tr> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>응답자</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td> -->
|
||||
<%-- <input type="hidden" class="popupInput" id="qestnrRespondent" name="qestnrRespondent" value="<c:out value="${qestnrRespondent}"/>"> --%>
|
||||
<%-- <c:out value="${qestnrRespondent}"/> --%>
|
||||
<!-- </td> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>무응답</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td id="noResponse">-</td> -->
|
||||
<!-- </tr> -->
|
||||
<!-- </tbody> -->
|
||||
<%-- </c:if> --%>
|
||||
<%-- <c:if test="${empty chasiSrvyList}"> --%>
|
||||
<!-- <tr> -->
|
||||
<!-- <td colspan="2">등록된 평가문항이 없습니다.</td> -->
|
||||
<!-- </tr> -->
|
||||
<%-- </c:if> --%>
|
||||
<!-- </table> -->
|
||||
<!-- </div> -->
|
||||
<c:if test="${!empty chasiSrvyList}">
|
||||
<div class="tb_type01 list2">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: auto;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">평가문항</th>
|
||||
<th scope="col">매우만족</th>
|
||||
<th scope="col">만족</th>
|
||||
<th scope="col">보통</th>
|
||||
<th scope="col">불만족</th>
|
||||
<th scope="col">매우불만족</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach items="${Comtnqustnrqesitm}" var="QestmInfo" varStatus="status1">
|
||||
<c:forEach items="${chasiSrvyList}" var="chasiSrvyInfo" varStatus="">
|
||||
<c:if test="${QestmInfo.qestnrQesitmId eq chasiSrvyInfo.qestnrQesitmId}">
|
||||
<tr>
|
||||
<th scope="row" class="t_left">
|
||||
${status1.count}) <c:out value="${QestmInfo.qestnCn}" escapeXml="true" />
|
||||
</th>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.verySatisfied}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.satisfied}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.neither}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.dissatisfied}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.veryDissatisfied}"/>
|
||||
</td>
|
||||
</tr>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</c:forEach>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</c:if>
|
||||
|
||||
|
||||
<!-- 기타의견이 있으면 보여준다. -->
|
||||
<c:if test="${not empty subjInfo}">
|
||||
<div class="tb_type01 list2">
|
||||
|
||||
<table>
|
||||
<caption>기타의견</caption>
|
||||
<colgroup>
|
||||
<col style="auto;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">기타의견</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<br/>
|
||||
<c:out value="${fn:replace(subjInfo.qustnrCn , crlf , '<br/>')}" escapeXml="false" />
|
||||
<br/>
|
||||
<br/>
|
||||
</th>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<br/>
|
||||
<br/>
|
||||
<br/>
|
||||
|
||||
</div>
|
||||
</c:if>
|
||||
|
||||
<!-- btn_wrap -->
|
||||
<!--
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
<c:if test="${!empty chasiSrvyList}">
|
||||
<button class="btn_type02" onclick="fncExcelDown(); return false;">엑셀 다운로드</button>
|
||||
</c:if>
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br/>
|
||||
<br/>
|
||||
-->
|
||||
|
||||
|
||||
|
||||
|
||||
<c:choose>
|
||||
<%-- <c:when test="${chasiSrvyList[0].neither ne '' and chasiSrvyList[0].neither ne null}"> --%>
|
||||
<c:when test="${qestnrParticipant ne '' and qestnrParticipant ne null}">
|
||||
|
||||
<div class="btn_wrap">
|
||||
<div class="btn_right">
|
||||
|
||||
<c:forEach var="list" items="${chasiQr}" varStatus="status">
|
||||
|
||||
<c:choose>
|
||||
|
||||
<c:when test="${not empty list.qestnrId10}">
|
||||
|
||||
<button type="button" class="btn_type04" data-info="${list.eduChasiOrd}" data-tooltip="sub37_pop20"
|
||||
onclick="fn_chasiQRPop('${list.eduAplctOrd}','${list.eduChasiOrd}','10','print'
|
||||
,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}'
|
||||
)" title="팝업 열림">설문QR</button>
|
||||
</c:when>
|
||||
|
||||
<c:otherwise>
|
||||
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
</c:forEach>
|
||||
|
||||
<button type="button" class="btn_type06" onclick="fn_chasiStatusPop(); return false;">수정</button>
|
||||
<button type="button" class="btn_type01" onclick="fn_delete(); return false;">삭제</button>
|
||||
</div>
|
||||
</div>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<!-- 등록버튼 추가 필요 -->
|
||||
<div class="btn_wrap">
|
||||
<div class="btn_right">
|
||||
|
||||
<c:forEach var="list" items="${chasiQr}" varStatus="status">
|
||||
|
||||
<c:choose>
|
||||
|
||||
<c:when test="${not empty list.qestnrId10}">
|
||||
|
||||
<button type="button" class="btn_type04" data-info="${list.eduChasiOrd}" data-tooltip="sub37_pop20"
|
||||
onclick="fn_chasiQRPop('${list.eduAplctOrd}','${list.eduChasiOrd}','10','print'
|
||||
,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}'
|
||||
)" title="팝업 열림">설문QR</button>
|
||||
</c:when>
|
||||
|
||||
<c:otherwise>
|
||||
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
</c:forEach>
|
||||
|
||||
<!-- <button type="button" class="btn_type06" onclick="fn_chasiStatusPop(); return false;">등록</button> -->
|
||||
</div>
|
||||
</div>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -0,0 +1,249 @@
|
||||
<!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="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %>
|
||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
||||
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<un:useConstants var="KccadrStatus" className="kcc.kccadr.cmm.KccadrConstants" />
|
||||
<%
|
||||
/**
|
||||
* @Class Name : instrActvtHstrySignMngList.jsp
|
||||
* @Description : 운영관리 > 직인대장관리
|
||||
* @Modification Information
|
||||
* @
|
||||
* @ 수정일 수정자 수정내용
|
||||
* @ ------- -------- ---------------------------
|
||||
* @ 2022.12.7 안주영 최초 생성
|
||||
* @author 안주영
|
||||
* @since 2022.2.7
|
||||
* @version 1.0
|
||||
* @see
|
||||
*
|
||||
*/
|
||||
%>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<style>
|
||||
input:read-only{
|
||||
background-color: #ededed;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
|
||||
});
|
||||
|
||||
function press(event) {
|
||||
if (event.keyCode==13) {
|
||||
fncGoList();
|
||||
}
|
||||
}
|
||||
|
||||
function fncGoList(){
|
||||
linkPage(1);
|
||||
}
|
||||
|
||||
function linkPage(pageNo){
|
||||
var listForm = document.listForm ;
|
||||
listForm.pageIndex.value = pageNo ;
|
||||
listForm.action = "<c:url value='/kccadr/oprtn/cmdTrgt/instrActvtHstrySignAndCmpltCrtfcMngList.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
// function fn_goDetail(instrDetailActvtHstryOrd){
|
||||
// var form = document.detailForm;
|
||||
// form.instrDetailActvtHstryOrd.value = instrDetailActvtHstryOrd ;
|
||||
// form.action = "<c:url value='/kccadr/oprtn/tngrVisitEdu/instrActvtHstryMngDetail.do'/>";
|
||||
// form.submit();
|
||||
// }
|
||||
|
||||
function fncReset(thisObj){
|
||||
var targetObj = $(thisObj).closest('.list_top').find('select,input');
|
||||
$.each(targetObj, function(){
|
||||
if($(this).prop('tagName') == 'SELECT'){
|
||||
if($(this).attr('name').indexOf('Month') != -1){
|
||||
$(this).val(new Date().getMonth()+1);
|
||||
}else if($(this).attr('name').indexOf('Year') != -1){
|
||||
$(this).val(new Date().getFullYear());
|
||||
}else{
|
||||
$(this).prop("selectedIndex", 0);
|
||||
}
|
||||
}else{
|
||||
$(this).val('');
|
||||
}
|
||||
});
|
||||
}
|
||||
</script>
|
||||
<title>직인대장관리(이수증)</title>
|
||||
</head>
|
||||
<body>
|
||||
<form id="detailForm" name="detailForm" method="post">
|
||||
<input type="hidden" name="instrDetailActvtHstryOrd" id="instrDetailActvtHstryOrd" value=""/>
|
||||
</form>
|
||||
<form id="listForm" name="listForm" method="post">
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEInstrActvtHstryVO.pageIndex}' default='1' />"/>
|
||||
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEInstrActvtHstryVO.searchSortCnd}" />" />
|
||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEInstrActvtHstryVO.searchSortOrd}" />" />
|
||||
|
||||
<div class="cont_wrap">
|
||||
<div class="box">
|
||||
|
||||
<!-- cont_tit -->
|
||||
<div class="cont_tit">
|
||||
<h2>직인대장관리(이수증) 목록</h2>
|
||||
<ul class="cont_nav">
|
||||
<li class="home"><a href="/"><i></i></a></li>
|
||||
<li>
|
||||
<p>운영관리</p>
|
||||
</li>
|
||||
<li><span class="cur_nav">직인대장관리(이수증)</span></li>
|
||||
</ul>
|
||||
</div>
|
||||
<!-- //cont_tit -->
|
||||
|
||||
<div class="cont">
|
||||
<!-- list_top -->
|
||||
<div class="list_top">
|
||||
<!--
|
||||
<div class="list_top_1">
|
||||
<div class="util_left">
|
||||
<p>구분</p>
|
||||
</div>
|
||||
<div class="util_right">
|
||||
<ve:select codeId="VEA011" name="searchSelStatus" id="searchSelStatus" css="class='sel_type1'"
|
||||
selectedValue="${vEInstrActvtHstryVO.searchSelStatus}" defaultValue=''
|
||||
defaultText='전체'
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
-->
|
||||
<div class="list_top_2">
|
||||
<div class="util_left">
|
||||
<p>발급일자</p>
|
||||
</div>
|
||||
<div class="util_right">
|
||||
<div class="calendar_wrap">
|
||||
<input type="text" class="calendar" title="시작일 선택" id="searchStartDt" name="searchStartDt" value="<c:out value='${vEInstrActvtHstryVO.searchStartDt}'/>">
|
||||
</div>
|
||||
~
|
||||
<div class="calendar_wrap">
|
||||
<input type="text" class="calendar" title="종료일 선택" id="searchEndDt" name="searchEndDt" value="<c:out value='${vEInstrActvtHstryVO.searchEndDt}'/>">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="list_top_2">
|
||||
<div class="util_left">
|
||||
<p>성명</p>
|
||||
</div>
|
||||
<div class="util_right">
|
||||
<input type="text" id=searchKeyword name="searchKeyword" class="search_input" placeholder="검색어를 입력하세요" value="<c:out value='${vEInstrActvtHstryVO.searchKeyword}'/>" onkeyDown="press(event);">
|
||||
<button class="btn_type08" onclick="fncGoList(); return false;">검색</button>
|
||||
<button class="btn_type03" onclick="fncReset(this); return false;">초기화</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- //list_top -->
|
||||
|
||||
<!-- list util -->
|
||||
<div class="list_util">
|
||||
<p class="list_util_p">총 건수 : <span><c:out value="${paginationInfo.totalRecordCount}" /></span>건</p>
|
||||
<div>
|
||||
<select class="sel_type1" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px">
|
||||
<option value='10' <c:if test="${vEInstrActvtHstryVO.pageUnit == '10' or vEInstrActvtHstryVO.pageUnit == ''}">selected</c:if>>10줄</option>
|
||||
<option value='20' <c:if test="${vEInstrActvtHstryVO.pageUnit == '20'}">selected</c:if>>20줄</option>
|
||||
<option value='30' <c:if test="${vEInstrActvtHstryVO.pageUnit == '30'}">selected</c:if>>30줄</option>
|
||||
<option value='100' <c:if test="${vEInstrActvtHstryVO.pageUnit == '100'}">selected</c:if>>100줄</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- list -->
|
||||
<div class="tb_type01">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: 60px;">
|
||||
<col style="width: 150px;">
|
||||
<col style="width: 120px;">
|
||||
<col style="width: 120px;">
|
||||
<col style="width: 120px;">
|
||||
<col style="width: 120px;">
|
||||
<col style="width: 120px;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>번호</th>
|
||||
<th>항목</th>
|
||||
<th>문서번호</th>
|
||||
<th>과정명</th>
|
||||
<th>교육일시</th>
|
||||
<th>성명</th>
|
||||
<th>발급일자</th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${list}" varStatus="status">
|
||||
<%-- <tr onclick="fn_goDetail('${list.instrDetailActvtHstryOrd}')" style="cursor:pointer;"> --%>
|
||||
<!-- VE0011 -->
|
||||
<tr>
|
||||
<td>
|
||||
<c:out value="${ ( paginationInfo.totalRecordCount - ((paginationInfo.currentPageNo -1)*paginationInfo.recordCountPerPage) ) - status.index }"/>
|
||||
</td>
|
||||
<td>
|
||||
<ve:code codeId="VE0011" code="${list.lctrDivCd }"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:if test="${list.lctrDivCd eq '50'}">실무역량-</c:if>
|
||||
<c:if test="${list.lctrDivCd eq '60'}">기소유예-</c:if>
|
||||
<c:out value="${list.eduCmpltCrtfcNmbr }" />
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.prcsNm }" />
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.eduStrtPnttm }" />
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.mberNm }" />
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.lastUpdtPnttm }" />
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
<c:if test="${empty list}">
|
||||
<tr><td colspan="7"><spring:message code="common.nodata.msg" /></td></tr>
|
||||
</c:if>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- //list -->
|
||||
<!-- page -->
|
||||
<div class="page">
|
||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
||||
</div>
|
||||
<!-- //page -->
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- //cont -->
|
||||
|
||||
</form>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@ -0,0 +1,249 @@
|
||||
<!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="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %>
|
||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
||||
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||
<un:useConstants var="KccadrStatus" className="kcc.kccadr.cmm.KccadrConstants" />
|
||||
<%
|
||||
/**
|
||||
* @Class Name : instrActvtHstrySignMngList.jsp
|
||||
* @Description : 운영관리 > 직인대장관리
|
||||
* @Modification Information
|
||||
* @
|
||||
* @ 수정일 수정자 수정내용
|
||||
* @ ------- -------- ---------------------------
|
||||
* @ 2022.12.7 안주영 최초 생성
|
||||
* @author 안주영
|
||||
* @since 2022.2.7
|
||||
* @version 1.0
|
||||
* @see
|
||||
*
|
||||
*/
|
||||
%>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<style>
|
||||
input:read-only{
|
||||
background-color: #ededed;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
|
||||
});
|
||||
|
||||
function press(event) {
|
||||
if (event.keyCode==13) {
|
||||
fncGoList();
|
||||
}
|
||||
}
|
||||
|
||||
function fncGoList(){
|
||||
linkPage(1);
|
||||
}
|
||||
|
||||
function linkPage(pageNo){
|
||||
var listForm = document.listForm ;
|
||||
listForm.pageIndex.value = pageNo ;
|
||||
listForm.action = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/instrActvtHstrySignAndCmpltCrtfcMngList.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
// function fn_goDetail(instrDetailActvtHstryOrd){
|
||||
// var form = document.detailForm;
|
||||
// form.instrDetailActvtHstryOrd.value = instrDetailActvtHstryOrd ;
|
||||
// form.action = "<c:url value='/kccadr/oprtn/tngrVisitEdu/instrActvtHstryMngDetail.do'/>";
|
||||
// form.submit();
|
||||
// }
|
||||
|
||||
function fncReset(thisObj){
|
||||
var targetObj = $(thisObj).closest('.list_top').find('select,input');
|
||||
$.each(targetObj, function(){
|
||||
if($(this).prop('tagName') == 'SELECT'){
|
||||
if($(this).attr('name').indexOf('Month') != -1){
|
||||
$(this).val(new Date().getMonth()+1);
|
||||
}else if($(this).attr('name').indexOf('Year') != -1){
|
||||
$(this).val(new Date().getFullYear());
|
||||
}else{
|
||||
$(this).prop("selectedIndex", 0);
|
||||
}
|
||||
}else{
|
||||
$(this).val('');
|
||||
}
|
||||
});
|
||||
}
|
||||
</script>
|
||||
<title>직인대장관리(이수증)</title>
|
||||
</head>
|
||||
<body>
|
||||
<form id="detailForm" name="detailForm" method="post">
|
||||
<input type="hidden" name="instrDetailActvtHstryOrd" id="instrDetailActvtHstryOrd" value=""/>
|
||||
</form>
|
||||
<form id="listForm" name="listForm" method="post">
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEInstrActvtHstryVO.pageIndex}' default='1' />"/>
|
||||
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEInstrActvtHstryVO.searchSortCnd}" />" />
|
||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEInstrActvtHstryVO.searchSortOrd}" />" />
|
||||
|
||||
<div class="cont_wrap">
|
||||
<div class="box">
|
||||
|
||||
<!-- cont_tit -->
|
||||
<div class="cont_tit">
|
||||
<h2>직인대장관리(이수증) 목록</h2>
|
||||
<ul class="cont_nav">
|
||||
<li class="home"><a href="/"><i></i></a></li>
|
||||
<li>
|
||||
<p>운영관리</p>
|
||||
</li>
|
||||
<li><span class="cur_nav">직인대장관리(이수증)</span></li>
|
||||
</ul>
|
||||
</div>
|
||||
<!-- //cont_tit -->
|
||||
|
||||
<div class="cont">
|
||||
<!-- list_top -->
|
||||
<div class="list_top">
|
||||
<!--
|
||||
<div class="list_top_1">
|
||||
<div class="util_left">
|
||||
<p>구분</p>
|
||||
</div>
|
||||
<div class="util_right">
|
||||
<ve:select codeId="VEA011" name="searchSelStatus" id="searchSelStatus" css="class='sel_type1'"
|
||||
selectedValue="${vEInstrActvtHstryVO.searchSelStatus}" defaultValue=''
|
||||
defaultText='전체'
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
-->
|
||||
<div class="list_top_2">
|
||||
<div class="util_left">
|
||||
<p>발급일자</p>
|
||||
</div>
|
||||
<div class="util_right">
|
||||
<div class="calendar_wrap">
|
||||
<input type="text" class="calendar" title="시작일 선택" id="searchStartDt" name="searchStartDt" value="<c:out value='${vEInstrActvtHstryVO.searchStartDt}'/>">
|
||||
</div>
|
||||
~
|
||||
<div class="calendar_wrap">
|
||||
<input type="text" class="calendar" title="종료일 선택" id="searchEndDt" name="searchEndDt" value="<c:out value='${vEInstrActvtHstryVO.searchEndDt}'/>">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="list_top_2">
|
||||
<div class="util_left">
|
||||
<p>성명</p>
|
||||
</div>
|
||||
<div class="util_right">
|
||||
<input type="text" id=searchKeyword name="searchKeyword" class="search_input" placeholder="검색어를 입력하세요" value="<c:out value='${vEInstrActvtHstryVO.searchKeyword}'/>" onkeyDown="press(event);">
|
||||
<button class="btn_type08" onclick="fncGoList(); return false;">검색</button>
|
||||
<button class="btn_type03" onclick="fncReset(this); return false;">초기화</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- //list_top -->
|
||||
|
||||
<!-- list util -->
|
||||
<div class="list_util">
|
||||
<p class="list_util_p">총 건수 : <span><c:out value="${paginationInfo.totalRecordCount}" /></span>건</p>
|
||||
<div>
|
||||
<select class="sel_type1" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px">
|
||||
<option value='10' <c:if test="${vEInstrActvtHstryVO.pageUnit == '10' or vEInstrActvtHstryVO.pageUnit == ''}">selected</c:if>>10줄</option>
|
||||
<option value='20' <c:if test="${vEInstrActvtHstryVO.pageUnit == '20'}">selected</c:if>>20줄</option>
|
||||
<option value='30' <c:if test="${vEInstrActvtHstryVO.pageUnit == '30'}">selected</c:if>>30줄</option>
|
||||
<option value='100' <c:if test="${vEInstrActvtHstryVO.pageUnit == '100'}">selected</c:if>>100줄</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- list -->
|
||||
<div class="tb_type01">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: 60px;">
|
||||
<col style="width: 150px;">
|
||||
<col style="width: 120px;">
|
||||
<col style="width: 120px;">
|
||||
<col style="width: 120px;">
|
||||
<col style="width: 120px;">
|
||||
<col style="width: 120px;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>번호</th>
|
||||
<th>항목</th>
|
||||
<th>문서번호</th>
|
||||
<th>과정명</th>
|
||||
<th>교육일시</th>
|
||||
<th>성명</th>
|
||||
<th>발급일자</th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${list}" varStatus="status">
|
||||
<%-- <tr onclick="fn_goDetail('${list.instrDetailActvtHstryOrd}')" style="cursor:pointer;"> --%>
|
||||
<!-- VE0011 -->
|
||||
<tr>
|
||||
<td>
|
||||
<c:out value="${ ( paginationInfo.totalRecordCount - ((paginationInfo.currentPageNo -1)*paginationInfo.recordCountPerPage) ) - status.index }"/>
|
||||
</td>
|
||||
<td>
|
||||
<ve:code codeId="VE0011" code="${list.lctrDivCd }"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:if test="${list.lctrDivCd eq '50'}">실무역량-</c:if>
|
||||
<c:if test="${list.lctrDivCd eq '60'}">기소유예-</c:if>
|
||||
<c:out value="${list.eduCmpltCrtfcNmbr }" />
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.prcsNm }" />
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.eduStrtPnttm }" />
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.mberNm }" />
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${list.lastUpdtPnttm }" />
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
<c:if test="${empty list}">
|
||||
<tr><td colspan="7"><spring:message code="common.nodata.msg" /></td></tr>
|
||||
</c:if>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- //list -->
|
||||
<!-- page -->
|
||||
<div class="page">
|
||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
||||
</div>
|
||||
<!-- //page -->
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- //cont -->
|
||||
|
||||
</form>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@ -1220,21 +1220,20 @@
|
||||
|
||||
|
||||
<!-- list util -->
|
||||
<div class="list_util">
|
||||
<!--
|
||||
<p class="list_util_p">총 건수 : <span><c:out value="${paginationInfo.totalRecordCount}" /></span>건</p>
|
||||
-->
|
||||
<div class="list_util">
|
||||
<p class="list_util_p">
|
||||
⑦월별 교육차시별 차시명, 이수, 미이수, 연기인원 통계
|
||||
</p>
|
||||
<div>
|
||||
<!-- <button type="button" class="btn_down_excel" onclick="excelDownLoadArea();">엑셀 다운로드(강의지역)</button> -->
|
||||
<div>
|
||||
<button type="button" class="btn_down_excel" onclick="excelDownLoad_no7();">엑셀 다운로드</button>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
-->
|
||||
|
||||
<!-- list -->
|
||||
<!--
|
||||
<div class="tb_type01">
|
||||
<table>
|
||||
<colgroup>
|
||||
@ -1248,7 +1247,6 @@
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<!-- <th>대상</th> -->
|
||||
<th></th>
|
||||
<th>차시</th>
|
||||
<th>이수인원</th>
|
||||
@ -1260,18 +1258,6 @@
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${list_no7}" varStatus="status">
|
||||
<tr>
|
||||
<!--
|
||||
<td>
|
||||
<c:choose>
|
||||
<c:when test="${list.divCd eq title1}">
|
||||
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<c:out value="${list.divCd}"/>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
</td>
|
||||
-->
|
||||
<c:choose>
|
||||
<c:when test="${list.codeNm eq '13'}">
|
||||
<td>합계</td>
|
||||
@ -1305,9 +1291,9 @@
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
-->
|
||||
<!-- //list -->
|
||||
|
||||
|
||||
|
||||
</c:if>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
1305
src/main/webapp/WEB-INF/jsp/oprtn/prevent/newEduPrfrmMngList.jsp
Normal file
1305
src/main/webapp/WEB-INF/jsp/oprtn/prevent/newEduPrfrmMngList.jsp
Normal file
File diff suppressed because it is too large
Load Diff
@ -563,8 +563,11 @@
|
||||
<th scope="row">상태</th>
|
||||
<td class="ddlnCdStts">
|
||||
<c:choose>
|
||||
<c:when test="${not empty info.aprvlCd}">
|
||||
<kc:code codeId="VE0003" code="${info.aprvlCd}"/>
|
||||
<c:when test="${not empty prcsAplctVO.aprvlCd}">
|
||||
<kc:code codeId="VE0003" code="${prcsAplctVO.aprvlCd}"/>
|
||||
<c:if test="${prcsAplctVO.aprvlCd eq '60' and not empty prcsAplctVO.aplctStateCd}">
|
||||
- <kc:code codeId="VEA003" code="${prcsAplctVO.aplctStateCd}"/>
|
||||
</c:if>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<kc:code codeId="VEA004" code="${info.ddlnCd}"/>
|
||||
@ -608,8 +611,8 @@
|
||||
<button type="button" class="btn line red large" onclick="fncCancelUser('${infoAplctOrd.eduAplctOrd}', '${infoAplctOrd.prcsOrd}', '2-1')">교육취소</button>
|
||||
</c:if>
|
||||
|
||||
<c:if test="${prcsAplctVO.aprvlCd eq '60' and prcsAplctVO.ddlnCd eq '20'}">
|
||||
<%-- <button type="button" class="btnType05" onclick="fncCancelStatusChange('${infoAplctOrd.eduAplctOrd}', '${infoAplctOrd.prcsOrd}', '6-1')">취소요청</button> --%>
|
||||
<c:if test="${prcsAplctVO.aprvlCd eq '60' and prcsAplctVO.ddlnCd eq '20' and empty prcsAplctVO.aplctStateCd}">
|
||||
<button type="button" class="btnType05" onclick="fncCancelStatusChange('${infoAplctOrd.eduAplctOrd}', '${infoAplctOrd.prcsOrd}', '6-1')">취소요청</button>
|
||||
</c:if>
|
||||
|
||||
</div>
|
||||
|
||||
@ -12,7 +12,6 @@
|
||||
<title>교육신청 목록 > 기소유예 찾아가는 저작권 교육 > 한국지식재산보호원 저작권 교육 시스템</title>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
|
||||
<link rel="stylesheet" href="/ipedu/visitEdu/adm/publish/css/reset.css">
|
||||
|
||||
<style>
|
||||
.duet-date__dialog-content,.duet-date__dialog{max-width:400px;width:364px;}
|
||||
@ -270,7 +269,8 @@ $(document).ready(function(){
|
||||
ο 개인정보의 수집 이용 목적 : 교육 대상자 및 이수자 관리
|
||||
ο 수집하는 개인정보 항목 : 성명, 생년월일, 휴대전화, 이메일
|
||||
ο 개인정보의 보유 및 이용기간 : 사업 종료시까지
|
||||
ο 동의를 거부할 권리가 있다는 사실 및 동의 거부에 따른 불이익이 있는 경우에는 그 불이익의 내용 : 귀하의 개인정보 제공 및 동의를 거부할 권리가 있으며, 위 항목 동의 거부시 수강신청이 불가할 수 있음
|
||||
ο 동의를 거부할 권리가 있다는 사실 및 동의 거부에 따른 불이익이 있는 경우에는 그 불이익의 내용 :
|
||||
귀하의 개인정보 제공 및 동의를 거부할 권리가 있으며, 위 항목 동의 거부시 수강신청이 불가할 수 있음
|
||||
</pre>
|
||||
<div class="pop_btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
|
||||
@ -0,0 +1,347 @@
|
||||
<%@ 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"%>
|
||||
<%
|
||||
/**
|
||||
* @Class Name : eduCancelPop.jsp
|
||||
* @Description : 교육취소요청 팝업
|
||||
* @Modification Information
|
||||
* @
|
||||
* @ 수정일 수정자 수정내용
|
||||
* @ ------- -------- ---------------------------
|
||||
* @ 2021.08.09 김봉호 최초 생성
|
||||
* @author 김봉호
|
||||
* @since 2021.08.21
|
||||
* @version 1.0
|
||||
* @see
|
||||
*
|
||||
*/
|
||||
%>
|
||||
<script type="text/javaScript" language="javascript">
|
||||
|
||||
$(document).ready(function(){
|
||||
//파일첨부관련 설정들===============================================
|
||||
$(".btn_add_file").on('click', function(){
|
||||
$("#file_temp").click();
|
||||
});
|
||||
|
||||
$("#limitcount").val("1");
|
||||
|
||||
//파일첨부관련 설정들===============================================
|
||||
|
||||
|
||||
// 레이어팝업 포커싱 이동 수정
|
||||
$(".tooltip-close").click(function(){
|
||||
var activeTarget = $('[data-tooltip-con="sub35_pop03"]');
|
||||
activeTarget.hide();
|
||||
$('[data-tooltip="sub35_pop03"]').focus();
|
||||
});
|
||||
|
||||
|
||||
$('#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(""); //파일지우기
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
function fncPopClose(){
|
||||
self.close();
|
||||
}
|
||||
|
||||
|
||||
function fncSave(flag){
|
||||
/*
|
||||
<!-- for validator #3 -->
|
||||
*/
|
||||
//if (!validateVEEduAplctVO(document.createForm)) return;
|
||||
/*
|
||||
<!-- for validator #3 -->
|
||||
*/
|
||||
//저장
|
||||
|
||||
|
||||
if ($("#aprvlCn").val().length>300){
|
||||
alert("취소사유는 300자까지만 가능합니다.");
|
||||
return;
|
||||
}
|
||||
|
||||
if ($("#aprvlCn").val().length<=0){
|
||||
alert("취소사유는 반드시 넣어주세요.");
|
||||
return;
|
||||
}
|
||||
|
||||
//첨부파일 등록 처리
|
||||
$('#file_temp').val(""); //첨부파일 중복 등록 방지를 위해 추가
|
||||
$("#sbmtYn").val(flag);
|
||||
//var data = new FormData(form);
|
||||
var data = new FormData(document.getElementById("createForm"));
|
||||
|
||||
//첨부파일 등록 처리-step1
|
||||
//if(!data.get("fileSize")){
|
||||
/*
|
||||
if($('#tbody_fiielist tr').length*1<=0){
|
||||
alert("첨부파일을 등록해 주세요");
|
||||
return false;
|
||||
|
||||
}
|
||||
*/
|
||||
|
||||
//첨부파일 등록 처리-step2
|
||||
_fileForm2.forEach(function(obj, idx) {
|
||||
if (obj) data.append("file"+idx, obj.fileObj);
|
||||
});
|
||||
|
||||
|
||||
// $("#mode").val(type);
|
||||
/*
|
||||
var data = new FormData(document.getElementById("createForm"));
|
||||
_fileForm2.forEach(function(obj, idx) {
|
||||
if (obj) data.append("file"+idx, obj.fileObj);
|
||||
});
|
||||
*/
|
||||
|
||||
|
||||
if(confirm("취소요청 제출 하시겠습니까?\n관리자 승인 후 취소처리가됩니다.")){
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
enctype: 'multipart/form-data',
|
||||
url: "${pageContext.request.contextPath}/web/ve/aplct/sspnIdtmt/popup/eduCancelPopupAjax.do",
|
||||
data: data,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success: function (returnData, status) {
|
||||
if(status == 'success'){
|
||||
alert("등록 되었습니다.");
|
||||
location.reload();
|
||||
} else if(status== 'fail'){
|
||||
alert("등록에 실패하였습니다.");
|
||||
}
|
||||
},
|
||||
error: function (e) { alert("저장에 실패하였습니다."); console.log("ERROR : ", e); }
|
||||
});
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<form: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="prcsAplctPrdOrd" value="<c:out value="${vEInstrAsgnmVO.prcsAplctPrdOrd}" />" />
|
||||
<input type="hidden" id="userId" name="userId" value="<c:out value="${vEInstrAsgnmVO.userId}" />" />
|
||||
<input type="hidden" name="sbmtYn" id="sbmtYn" value="" />
|
||||
<input type="hidden" name="limitcount" id="limitcount" value="1" /><!-- 최대 업로드 파일갯수 -->
|
||||
<input type="hidden" name="allrowFileExtsn" value="JPG,PNG,JPEG" /><!-- 확장자 제한-->
|
||||
|
||||
<div class="popup_wrap popType03" tabindex="0" data-tooltip-con="sub35_pop03" data-focus="sub35_pop03" data-focus-prev="sub35_pop03_close">
|
||||
<div class="popup_tit">
|
||||
<p>취소요청</p><button class="btn_popup_close tooltip-close" data-focus="sub35_pop03_close" title="팝업 닫기"><i></i></button>
|
||||
</div>
|
||||
<div class="popup_cont">
|
||||
<div class="pop_tb_type01">
|
||||
<table>
|
||||
<caption>첨부파일, 취소사유를 입력하는 표</caption>
|
||||
<colgroup>
|
||||
<col style="width: 120px;">
|
||||
<col style="width: auto">
|
||||
</colgroup>
|
||||
<tbody>
|
||||
<%-- <tr>
|
||||
<th scope="row">
|
||||
<p>첨부파일</p>
|
||||
</th>
|
||||
<td class="upload_area">
|
||||
<div class="btn_wrap">
|
||||
<button type="button" class="btnType01 btn_add_file">파일 찾기</button>
|
||||
|
||||
<!-- <p style="color:grey;padding:5px;">파일명은 <span style="color:red;font-weight:500">1기 홍길동 결과보고서(0328-0401)</span> 형태로 등록해주세요.</p> -->
|
||||
|
||||
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
|
||||
</div>
|
||||
<div class="file_wrap file_upload_box no_img_box">
|
||||
<table>
|
||||
<caption>첨부파일 리스트 : 파일명, 종류, 크기</caption>
|
||||
<colgroup>
|
||||
<col style="width: auto;">
|
||||
<col style="width: 15%;">
|
||||
<col style="width: 15%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<th scope="col">파일 명</th>
|
||||
<th scope="col">종류</th>
|
||||
<th scope="col">크기</th>
|
||||
</thead>
|
||||
<tbody class="tb_file_before">
|
||||
<tr>
|
||||
<td colspan="3">
|
||||
<p>첨부하실 파일을 <span>마우스끌어서</span> 넣어주세요.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="file_wrap fileAfter file_list_div" style="display: none;">
|
||||
<table>
|
||||
<caption>첨부파일 리스트 : 파일명, 종류, 크기, 삭제</caption>
|
||||
<colgroup>
|
||||
<col style="width: auto;">
|
||||
<col style="width: 20%;">
|
||||
<col style="width: 20%;">
|
||||
<col style="width: 60px;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<th scope="col">파일 명</th>
|
||||
<th scope="col">종류</th>
|
||||
<th scope="col">크기</th>
|
||||
<th scope="col">삭제</th>
|
||||
</thead>
|
||||
<tbody id="tbody_fiielist" class="tb_file_after">
|
||||
<c:forEach var="fileList" items="${fileList}" varStatus="status">
|
||||
<tr class="item_${fileList.atchFileId}_${fileList.fileSn} uploaded_obj">
|
||||
<input type="hidden" name="fileSize" class="item_file_size" value="${fileList.fileSize}">
|
||||
<td class="td_filename">
|
||||
<span class="file_name_text">${fileList.orignlFileNm}</span>
|
||||
</td>
|
||||
<td class="td_filesort">
|
||||
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
|
||||
</td>
|
||||
<td class="td_filesize">
|
||||
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
|
||||
</td>
|
||||
<td>
|
||||
<button type="button" class="btn_del" onclick="delAtchFile('${fileList.atchFileId}', '${fileList.fileSn}'); return false;"><i></i></button>
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="file_cf">
|
||||
<div class="cf_left">
|
||||
<p>최대 <span>3</span>개</p>
|
||||
<p><span>50MB</span>제한</p>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr> --%>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p class="req_text"><span>필수입력 항목</span>*</p>
|
||||
<p>취소사유</p>
|
||||
</th>
|
||||
<td>
|
||||
<textarea name="aprvlCn" id="aprvlCn" title="특이사항"></textarea>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<dl class="filewrap_div filewrap_eduRsltRprtRegPop">
|
||||
<dt>첨부파일</dt>
|
||||
<dd class="upload_area">
|
||||
<div class="btn_wrap">
|
||||
<button type="button" class="btnType01 btn_add_file">파일 찾기</button>
|
||||
|
||||
<!-- <p style="color:grey;padding:5px;">파일명은 <span style="color:red;font-weight:500">1기 홍길동 결과보고서(0328-0401)</span> 형태로 등록해주세요.</p> -->
|
||||
|
||||
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
|
||||
</div>
|
||||
<div class="file_wrap file_upload_box no_img_box">
|
||||
<table>
|
||||
<caption>첨부파일 리스트 : 파일명, 종류, 크기</caption>
|
||||
<colgroup>
|
||||
<col style="width: auto;">
|
||||
<col style="width: 15%;">
|
||||
<col style="width: 15%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<th scope="col">파일 명</th>
|
||||
<th scope="col">종류</th>
|
||||
<th scope="col">크기</th>
|
||||
</thead>
|
||||
<tbody class="tb_file_before">
|
||||
<tr>
|
||||
<td colspan="3">
|
||||
<p>첨부하실 파일을 <span>마우스끌어서</span> 넣어주세요.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="file_wrap fileAfter file_list_div" style="display: none;">
|
||||
<table>
|
||||
<caption>첨부파일 리스트 : 파일명, 종류, 크기, 삭제</caption>
|
||||
<colgroup>
|
||||
<col style="width: auto;">
|
||||
<col style="width: 20%;">
|
||||
<col style="width: 20%;">
|
||||
<col style="width: 60px;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<th scope="col">파일 명</th>
|
||||
<th scope="col">종류</th>
|
||||
<th scope="col">크기</th>
|
||||
<th scope="col">삭제</th>
|
||||
</thead>
|
||||
<tbody id="tbody_fiielist" class="tb_file_after">
|
||||
<c:forEach var="fileList" items="${fileList}" varStatus="status">
|
||||
<tr class="item_${fileList.atchFileId}_${fileList.fileSn} uploaded_obj">
|
||||
<input type="hidden" name="fileSize" class="item_file_size" value="${fileList.fileSize}">
|
||||
<td class="td_filename">
|
||||
<span class="file_name_text">${fileList.orignlFileNm}</span>
|
||||
</td>
|
||||
<td class="td_filesort">
|
||||
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
|
||||
</td>
|
||||
<td class="td_filesize">
|
||||
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
|
||||
</td>
|
||||
<td>
|
||||
<button type="button" class="btn_del" onclick="delAtchFile('${fileList.atchFileId}', '${fileList.fileSn}'); return false;"><i></i></button>
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="file_cf">
|
||||
<div class="cf_left">
|
||||
<p>최대 <span>1</span>개</p>
|
||||
<p><span>50MB</span>제한</p>
|
||||
</div>
|
||||
</div>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<div class="pop_btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<button type="button" onclick="fncSave('Y'); return false;" class="btnType05">제출</button>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btnType02 tooltip-close" data-focus="sub35_pop03_close" data-focus-next="sub35_pop03">취소</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</form:form>
|
||||
@ -11,10 +11,6 @@
|
||||
<un:useConstants var="VeConstants" className="kcc.ve.cmm.VeConstants" />
|
||||
<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>
|
||||
input:disabled {
|
||||
background-color: #f9f9f9 !important;
|
||||
@ -22,9 +18,6 @@
|
||||
input:read-only {
|
||||
background-color: #f9f9f9 !important;
|
||||
}
|
||||
#fileControl{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(/ipedu/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">
|
||||
|
||||
@ -32,31 +25,6 @@
|
||||
|
||||
$(document).ready(function(){
|
||||
|
||||
//대용량 업로드 세팅
|
||||
|
||||
/*
|
||||
* ==================================================================
|
||||
* INNORIX
|
||||
* 파일전송 컨트롤 생성
|
||||
* ==================================================================
|
||||
*/
|
||||
control = innorix.create({
|
||||
el: '#fileControl' // 컨트롤 출력 HTML 객체 ID
|
||||
, transferMode: 'both' // 업로드, 다운로드 혼합사용
|
||||
, installUrl: '<c:url value="/innorix/install/install.html" />' // Agent 설치 페이지
|
||||
, uploadUrl: '<c:url value="/innorix/exam/upload.jsp" />' // 업로드 URL
|
||||
, height:40
|
||||
, width: 650
|
||||
, maxFileCount : 1 // 첨부파일 최대 갯수
|
||||
, allowExtension : ["txt","xls","xlsx","png","jpg","jpeg","doc","ppt","hwp","pdf","zip"]
|
||||
// 가능한 확장자 txt|xls|xlsx|png|jpg|jpeg|doc|ppt|hwp|pdf|zip
|
||||
});
|
||||
|
||||
// 업로드 완료 후 이벤트
|
||||
control.on('uploadComplete', function (p) {
|
||||
console.log('uploadComplete : ', p);
|
||||
fn_callBackInnorix(p.files); // 파일 정보 DB isnert function
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
@ -124,59 +92,14 @@ $(document).ready(function(){
|
||||
}
|
||||
|
||||
|
||||
function fncGoDetail(prcsAplctPrdOrd){
|
||||
function fncGoDetail(prcsAplctPrdOrd, eduAplctOrd){
|
||||
var viewForm = document.viewForm ;
|
||||
viewForm.prcsAplctPrdOrd.value = prcsAplctPrdOrd ;
|
||||
viewForm.eduAplctOrd.value = eduAplctOrd ;
|
||||
viewForm.action = "<c:url value='/web/ve/aplct/cmdTrgt/eduAplctDetail.do'/>";
|
||||
viewForm.submit();
|
||||
}
|
||||
|
||||
|
||||
|
||||
//서류 요청
|
||||
function insetDocReq(){
|
||||
//서류명 체크
|
||||
if($("input[name=cnclCn]").val() == ''){
|
||||
alert("취소사유를 입력해 주세요");
|
||||
return false;
|
||||
}
|
||||
//첨부파일 체크 및 요청
|
||||
if(confirm("제출 하시겠습니까?")){
|
||||
if(control.getUploadFiles().length > 0){
|
||||
var postObj = new Object();
|
||||
postObj.innoDirPath = $('#innoDirPath').val();
|
||||
control.setPostData(postObj); // 업로드시 함께 전달될 POST Param 추가
|
||||
control.upload(); // 업로드 시작
|
||||
}else{
|
||||
alert("등록된 첨부파일이 없습니다.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//서류 요청 양식 업로드 후 콜백
|
||||
function fn_callBackInnorix(data){
|
||||
var url = "<c:url value='/web/common/insertInnorixSspnCnClAjax.do' />";
|
||||
//선택된 강사 ID
|
||||
|
||||
var sendData = {
|
||||
"fileType": "sspnForm"
|
||||
, "eduAplctOrd": $('#cnclForm #eduAplctOrd').val()
|
||||
, "prcsAplctPrdOrd": $('#cnclForm #prcsAplctPrdOrd').val()
|
||||
, "innorixFileListVO": data
|
||||
, "cnclCn" : $('#cnclCn').val()
|
||||
, "successMsg" : "등록이 완료되었습니다."
|
||||
}
|
||||
console.log('sendData : ', sendData);
|
||||
/*
|
||||
* 공통 : innorixCommon.js
|
||||
* fn_innorixCmmAjax() 호출 후 status가 성공(OK)이면 실행
|
||||
*/
|
||||
if(fn_innorixCmmAjax(sendData, url) == "OK")
|
||||
{
|
||||
location.reload(true);
|
||||
}
|
||||
}
|
||||
|
||||
// 설문조사 버튼 클릭 이벤트
|
||||
function selectQestnInfo(id, action){
|
||||
@ -425,6 +348,7 @@ $(document).ready(function(){
|
||||
</form>
|
||||
<form name="viewForm" id="viewForm">
|
||||
<input type="hidden" name="prcsAplctPrdOrd">
|
||||
<input type="hidden" name="eduAplctOrd">
|
||||
</form>
|
||||
<form name="goEduAplctListForm" id="goEduAplctListForm">
|
||||
</form>
|
||||
@ -495,7 +419,7 @@ $(document).ready(function(){
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${list}" varStatus="status">
|
||||
<tr>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');" onkeypress="if(event.keyCode == 13){fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');}" style="cursor:pointer;" tabindex="0">
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');" onkeypress="if(event.keyCode == 13){fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');}" style="cursor:pointer;" tabindex="0">
|
||||
<c:choose>
|
||||
<c:when test="${not empty list.title}">
|
||||
<c:out value="${list.title}"/>
|
||||
@ -559,13 +483,13 @@ $(document).ready(function(){
|
||||
(취소-반려)
|
||||
</c:if>
|
||||
<c:if test="${list.aplctStateCd eq 10 }"> <!--교육 승인된 상태 (미이수)일 때만 취소버튼 노출 -->
|
||||
<button type="button" title="신청취소" class="btnType02 btn small gray fill" data-tooltip="sub37_pop02" onclick="fn_cnclUpdate('${list.eduAplctOrd }','${list.prcsAplctPrdOrd }')">취소</button>
|
||||
<%-- <button type="button" title="신청취소" class="btnType02 btn small fill gray" data-tooltip="sub37_pop02" onclick="fn_cnclUpdate('${list.eduAplctOrd }','${list.prcsAplctPrdOrd }')">취소</button> --%>
|
||||
</c:if>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<kc:code codeId="VE0003" code="${list.aprvlCd}"/>
|
||||
<c:if test="${list.aprvlCd eq 10 }">
|
||||
<button type="button" title="신청취소" class="btnType02 btn small gray fill" onclick="fn_veEduAplctCnclUpdate('${list.eduAplctOrd }')">취소</button>
|
||||
<%-- <button type="button" title="신청취소" class="btnType02 btn small fill gray" onclick="fn_veEduAplctCnclUpdate('${list.eduAplctOrd }')">취소</button> --%>
|
||||
</c:if>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
@ -639,7 +563,7 @@ $(document).ready(function(){
|
||||
</td>
|
||||
<td>
|
||||
<c:if test="${(list.aprvlCd eq '10' or list.aprvlCd eq '20') and list.ddlnCd ne '20'}">
|
||||
<button type="button" class="btnType05 small line red" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');">교육취소</button>
|
||||
<button type="button" class="btnType05 small line red" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');">교육취소</button>
|
||||
</c:if>
|
||||
</td>
|
||||
</tr>
|
||||
@ -670,75 +594,6 @@ $(document).ready(function(){
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- 서류요청 팝업 -->
|
||||
<div class="tooltip-wrap">
|
||||
<div class="popup_wrap popType05" tabindex="0" data-tooltip-con="sub37_pop02" data-focus="sub37_pop02" data-focus-prev="sub37_pop02_close">
|
||||
<div class="popup_tit">
|
||||
<p>취소 사용 제출</p>
|
||||
<button class="btn_popup_close tooltip-close" data-focus="sub37_pop02_close" title="팝업 닫기"><i></i></button>
|
||||
</div>
|
||||
<div class="popup_cont">
|
||||
<div class="cont_body">
|
||||
<div class="popup_table_top">
|
||||
<button type="button" class="btnType06">취소양식 다운로드</button>
|
||||
</div>
|
||||
<div class="pop_tb_type01">
|
||||
<table>
|
||||
<caption>취소사유 작성표</caption>
|
||||
<colgroup>
|
||||
<col style="width: 22%;">
|
||||
<col style="">
|
||||
</colgroup>
|
||||
<tr>
|
||||
<th scope="col">취소사유</th>
|
||||
<td><label for="cnclCn" class="label">취소사유 작성</label>
|
||||
<textarea id="cnclCn" name="cnclCn" title="취소사유 작성하기"></textarea></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
<div class="popup_cont upload_area">
|
||||
<div>
|
||||
<div class="pop_search_wrap">
|
||||
<label for="fileNm" class="label">첨부파일 선택</label>
|
||||
<button type="button" onclick="control.openFileDialogSingle();" class="btnType01 btn_add_file">파일찾기</button>
|
||||
</div>
|
||||
<div id="fileControl"></div><br/>
|
||||
<div class="pop_btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pop_btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
|
||||
<!-- <button type="button" class="btnType05">제출</button> -->
|
||||
<button type="button" class="btnType05" id="popupSubmin" onclick="insetDocReq();">요청</button>
|
||||
|
||||
<button type="button" class="btnType02 tooltip-close" data-focus="sub37_pop02_close" data-focus-next="sub37_pop02">닫기</button>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--// 서류요청 팝업-->
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- 강의만족도 결과 등록 팝업 -->
|
||||
<form id="srvyPopupForm" name="srvyPopupForm" method="post" >
|
||||
|
||||
|
||||
@ -508,7 +508,7 @@ function loadImage(src) {
|
||||
<input type="hidden" name="qestmInfoSize" id="qestmInfoSize" value="${fn:length(chasiSrvyList)}">
|
||||
|
||||
|
||||
<div class="popup_wrap popType01 estimate_popup" data-info="${vEEduChasiVO.eduAplctOrd}" data-tooltip-con="sub36_pop02" data-focus="sub36_pop02" data-focus-prev="sub36_pop02_close">
|
||||
<div class="popup_wrap popType01 estimate_popup" data-info="${vEEduChasiVO.eduAplctOrd}" data-tooltip-con="sub36_pop02" data-focus="sub36_pop02" data-focus-prev="sub36_pop02_close" id="popup_cont">
|
||||
|
||||
<div class="popup_tit">
|
||||
<p>이수증 출력</p>
|
||||
|
||||
@ -563,8 +563,11 @@
|
||||
<th scope="row">상태</th>
|
||||
<td class="ddlnCdStts">
|
||||
<c:choose>
|
||||
<c:when test="${not empty info.aprvlCd}">
|
||||
<kc:code codeId="VE0003" code="${info.aprvlCd}"/>
|
||||
<c:when test="${not empty prcsAplctVO.aprvlCd}">
|
||||
<kc:code codeId="VE0003" code="${prcsAplctVO.aprvlCd}"/>
|
||||
<c:if test="${prcsAplctVO.aprvlCd eq '60' and not empty prcsAplctVO.aplctStateCd}">
|
||||
- <kc:code codeId="VEA003" code="${prcsAplctVO.aplctStateCd}"/>
|
||||
</c:if>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<kc:code codeId="VEA004" code="${info.ddlnCd}"/>
|
||||
@ -608,8 +611,8 @@
|
||||
<button type="button" class="btn line red large" onclick="fncCancelUser('${infoAplctOrd.eduAplctOrd}', '${infoAplctOrd.prcsOrd}', '2-1')">교육취소</button>
|
||||
</c:if>
|
||||
|
||||
<c:if test="${prcsAplctVO.aprvlCd eq '60' and prcsAplctVO.ddlnCd eq '20'}">
|
||||
<%-- <button type="button" class="btnType05" onclick="fncCancelStatusChange('${infoAplctOrd.eduAplctOrd}', '${infoAplctOrd.prcsOrd}', '6-1')">취소요청</button> --%>
|
||||
<c:if test="${prcsAplctVO.aprvlCd eq '60' and prcsAplctVO.ddlnCd eq '20' and empty prcsAplctVO.aplctStateCd}">
|
||||
<button type="button" class="btnType05" onclick="fncCancelStatusChange('${infoAplctOrd.eduAplctOrd}', '${infoAplctOrd.prcsOrd}', '6-1')">취소요청</button>
|
||||
</c:if>
|
||||
|
||||
</div>
|
||||
|
||||
@ -24,9 +24,10 @@
|
||||
}
|
||||
|
||||
|
||||
function fncGoDetail(prcsAplctPrdOrd){
|
||||
function fncGoDetail(prcsAplctPrdOrd, eduAplctOrd){
|
||||
var viewForm = document.viewForm ;
|
||||
viewForm.prcsAplctPrdOrd.value = prcsAplctPrdOrd ;
|
||||
viewForm.eduAplctOrd.value = eduAplctOrd;
|
||||
viewForm.action = "<c:url value='/web/ve/aplct/prevent/eduAplctDetail.do'/>";
|
||||
viewForm.submit();
|
||||
}
|
||||
@ -187,6 +188,7 @@
|
||||
</form>
|
||||
<form name="viewForm" id="viewForm">
|
||||
<input type="hidden" name="prcsAplctPrdOrd">
|
||||
<input type="hidden" name="eduAplctOrd">
|
||||
</form>
|
||||
<form:form id="listForm" name="listForm" commandName="vEEduAplctVO">
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEEduAplctVO.pageIndex}' default='1' />"/>
|
||||
@ -234,7 +236,7 @@
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${list}" varStatus="status">
|
||||
<tr>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');" onkeypress="if(event.keyCode == 13){fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');}" style="cursor:pointer;" tabindex="0">
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');" onkeypress="if(event.keyCode == 13){fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');}" style="cursor:pointer;" tabindex="0">
|
||||
<!-- <td> -->
|
||||
|
||||
<c:choose>
|
||||
@ -252,7 +254,12 @@
|
||||
<c:out value="${list.eduStrtPnttm}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:choose>
|
||||
<kc:code codeId="VE0003" code="${list.aprvlCd}"/>
|
||||
<c:if test="${list.aprvlCd eq '60' and not empty list.aplctStateCd}">
|
||||
- <kc:code codeId="VEA003" code="${list.aplctStateCd}"/>
|
||||
</c:if>
|
||||
|
||||
<%-- <c:choose>
|
||||
<c:when test="${not empty list.aplctStateCd }">
|
||||
<kc:code codeId="VEA003" code="${list.aplctStateCd}"/>
|
||||
</c:when>
|
||||
@ -265,8 +272,8 @@
|
||||
<button type="button" class="btnType02" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');">취소</button>
|
||||
</c:if>
|
||||
<c:if test="${list.aprvlCd eq '60' and list.ddlnCd eq '20'}">
|
||||
<%-- <button type="button" class="btnType02" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');">취소</button> --%>
|
||||
</c:if>
|
||||
<button type="button" class="btnType02" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');">취소</button>
|
||||
</c:if> --%>
|
||||
|
||||
</td>
|
||||
<td>
|
||||
@ -355,7 +362,7 @@
|
||||
<ul onclick="">
|
||||
<li>
|
||||
<span>교육과정</span>
|
||||
<span onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');" >
|
||||
<span onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');" >
|
||||
<c:choose>
|
||||
<c:when test="${not empty list.title}">
|
||||
<c:out value="${list.title}"/>
|
||||
@ -383,7 +390,7 @@
|
||||
</c:choose>
|
||||
|
||||
<c:if test="${(list.aprvlCd eq '10' or list.aprvlCd eq '20') and list.ddlnCd ne '20'}">
|
||||
<button type="button" class="btnType02" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');">취소</button>
|
||||
<button type="button" class="btnType02" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');">취소</button>
|
||||
</c:if>
|
||||
<c:if test="${list.aprvlCd eq '60' and list.ddlnCd eq '20'}">
|
||||
<%-- <button type="button" class="btnType02" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');">취소</button> --%>
|
||||
|
||||
@ -0,0 +1,347 @@
|
||||
<%@ 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"%>
|
||||
<%
|
||||
/**
|
||||
* @Class Name : eduCancelPop.jsp
|
||||
* @Description : 교육취소요청 팝업
|
||||
* @Modification Information
|
||||
* @
|
||||
* @ 수정일 수정자 수정내용
|
||||
* @ ------- -------- ---------------------------
|
||||
* @ 2021.08.09 김봉호 최초 생성
|
||||
* @author 김봉호
|
||||
* @since 2021.08.21
|
||||
* @version 1.0
|
||||
* @see
|
||||
*
|
||||
*/
|
||||
%>
|
||||
<script type="text/javaScript" language="javascript">
|
||||
|
||||
$(document).ready(function(){
|
||||
//파일첨부관련 설정들===============================================
|
||||
$(".btn_add_file").on('click', function(){
|
||||
$("#file_temp").click();
|
||||
});
|
||||
|
||||
$("#limitcount").val("1");
|
||||
|
||||
//파일첨부관련 설정들===============================================
|
||||
|
||||
|
||||
// 레이어팝업 포커싱 이동 수정
|
||||
$(".tooltip-close").click(function(){
|
||||
var activeTarget = $('[data-tooltip-con="sub35_pop03"]');
|
||||
activeTarget.hide();
|
||||
$('[data-tooltip="sub35_pop03"]').focus();
|
||||
});
|
||||
|
||||
|
||||
$('#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(""); //파일지우기
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
function fncPopClose(){
|
||||
self.close();
|
||||
}
|
||||
|
||||
|
||||
function fncSave(flag){
|
||||
/*
|
||||
<!-- for validator #3 -->
|
||||
*/
|
||||
//if (!validateVEEduAplctVO(document.createForm)) return;
|
||||
/*
|
||||
<!-- for validator #3 -->
|
||||
*/
|
||||
//저장
|
||||
|
||||
|
||||
if ($("#aprvlCn").val().length>300){
|
||||
alert("취소사유는 300자까지만 가능합니다.");
|
||||
return;
|
||||
}
|
||||
|
||||
if ($("#aprvlCn").val().length<=0){
|
||||
alert("취소사유는 반드시 넣어주세요.");
|
||||
return;
|
||||
}
|
||||
|
||||
//첨부파일 등록 처리
|
||||
$('#file_temp').val(""); //첨부파일 중복 등록 방지를 위해 추가
|
||||
$("#sbmtYn").val(flag);
|
||||
//var data = new FormData(form);
|
||||
var data = new FormData(document.getElementById("createForm"));
|
||||
|
||||
//첨부파일 등록 처리-step1
|
||||
//if(!data.get("fileSize")){
|
||||
/*
|
||||
if($('#tbody_fiielist tr').length*1<=0){
|
||||
alert("첨부파일을 등록해 주세요");
|
||||
return false;
|
||||
|
||||
}
|
||||
*/
|
||||
|
||||
//첨부파일 등록 처리-step2
|
||||
_fileForm2.forEach(function(obj, idx) {
|
||||
if (obj) data.append("file"+idx, obj.fileObj);
|
||||
});
|
||||
|
||||
|
||||
// $("#mode").val(type);
|
||||
/*
|
||||
var data = new FormData(document.getElementById("createForm"));
|
||||
_fileForm2.forEach(function(obj, idx) {
|
||||
if (obj) data.append("file"+idx, obj.fileObj);
|
||||
});
|
||||
*/
|
||||
|
||||
|
||||
if(confirm("취소요청 제출 하시겠습니까?\n관리자 승인 후 취소처리가됩니다.")){
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
enctype: 'multipart/form-data',
|
||||
url: "${pageContext.request.contextPath}/web/ve/aplct/sspnIdtmt/popup/eduCancelPopupAjax.do",
|
||||
data: data,
|
||||
dataType:'json',
|
||||
async: false,
|
||||
processData: false,
|
||||
contentType: false,
|
||||
cache: false,
|
||||
success: function (returnData, status) {
|
||||
if(status == 'success'){
|
||||
alert("등록 되었습니다.");
|
||||
location.reload();
|
||||
} else if(status== 'fail'){
|
||||
alert("등록에 실패하였습니다.");
|
||||
}
|
||||
},
|
||||
error: function (e) { alert("저장에 실패하였습니다."); console.log("ERROR : ", e); }
|
||||
});
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<form: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="prcsAplctPrdOrd" value="<c:out value="${vEInstrAsgnmVO.prcsAplctPrdOrd}" />" />
|
||||
<input type="hidden" id="userId" name="userId" value="<c:out value="${vEInstrAsgnmVO.userId}" />" />
|
||||
<input type="hidden" name="sbmtYn" id="sbmtYn" value="" />
|
||||
<input type="hidden" name="limitcount" id="limitcount" value="1" /><!-- 최대 업로드 파일갯수 -->
|
||||
<input type="hidden" name="allrowFileExtsn" value="JPG,PNG,JPEG" /><!-- 확장자 제한-->
|
||||
|
||||
<div class="popup_wrap popType03" tabindex="0" data-tooltip-con="sub35_pop03" data-focus="sub35_pop03" data-focus-prev="sub35_pop03_close">
|
||||
<div class="popup_tit">
|
||||
<p>취소요청</p><button class="btn_popup_close tooltip-close" data-focus="sub35_pop03_close" title="팝업 닫기"><i></i></button>
|
||||
</div>
|
||||
<div class="popup_cont">
|
||||
<div class="pop_tb_type01">
|
||||
<table>
|
||||
<caption>첨부파일, 취소사유를 입력하는 표</caption>
|
||||
<colgroup>
|
||||
<col style="width: 120px;">
|
||||
<col style="width: auto">
|
||||
</colgroup>
|
||||
<tbody>
|
||||
<%-- <tr>
|
||||
<th scope="row">
|
||||
<p>첨부파일</p>
|
||||
</th>
|
||||
<td class="upload_area">
|
||||
<div class="btn_wrap">
|
||||
<button type="button" class="btnType01 btn_add_file">파일 찾기</button>
|
||||
|
||||
<!-- <p style="color:grey;padding:5px;">파일명은 <span style="color:red;font-weight:500">1기 홍길동 결과보고서(0328-0401)</span> 형태로 등록해주세요.</p> -->
|
||||
|
||||
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
|
||||
</div>
|
||||
<div class="file_wrap file_upload_box no_img_box">
|
||||
<table>
|
||||
<caption>첨부파일 리스트 : 파일명, 종류, 크기</caption>
|
||||
<colgroup>
|
||||
<col style="width: auto;">
|
||||
<col style="width: 15%;">
|
||||
<col style="width: 15%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<th scope="col">파일 명</th>
|
||||
<th scope="col">종류</th>
|
||||
<th scope="col">크기</th>
|
||||
</thead>
|
||||
<tbody class="tb_file_before">
|
||||
<tr>
|
||||
<td colspan="3">
|
||||
<p>첨부하실 파일을 <span>마우스끌어서</span> 넣어주세요.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="file_wrap fileAfter file_list_div" style="display: none;">
|
||||
<table>
|
||||
<caption>첨부파일 리스트 : 파일명, 종류, 크기, 삭제</caption>
|
||||
<colgroup>
|
||||
<col style="width: auto;">
|
||||
<col style="width: 20%;">
|
||||
<col style="width: 20%;">
|
||||
<col style="width: 60px;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<th scope="col">파일 명</th>
|
||||
<th scope="col">종류</th>
|
||||
<th scope="col">크기</th>
|
||||
<th scope="col">삭제</th>
|
||||
</thead>
|
||||
<tbody id="tbody_fiielist" class="tb_file_after">
|
||||
<c:forEach var="fileList" items="${fileList}" varStatus="status">
|
||||
<tr class="item_${fileList.atchFileId}_${fileList.fileSn} uploaded_obj">
|
||||
<input type="hidden" name="fileSize" class="item_file_size" value="${fileList.fileSize}">
|
||||
<td class="td_filename">
|
||||
<span class="file_name_text">${fileList.orignlFileNm}</span>
|
||||
</td>
|
||||
<td class="td_filesort">
|
||||
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
|
||||
</td>
|
||||
<td class="td_filesize">
|
||||
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
|
||||
</td>
|
||||
<td>
|
||||
<button type="button" class="btn_del" onclick="delAtchFile('${fileList.atchFileId}', '${fileList.fileSn}'); return false;"><i></i></button>
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="file_cf">
|
||||
<div class="cf_left">
|
||||
<p>최대 <span>3</span>개</p>
|
||||
<p><span>50MB</span>제한</p>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr> --%>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p class="req_text"><span>필수입력 항목</span>*</p>
|
||||
<p>취소사유</p>
|
||||
</th>
|
||||
<td>
|
||||
<textarea name="aprvlCn" id="aprvlCn" title="특이사항"></textarea>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<dl class="filewrap_div filewrap_eduRsltRprtRegPop">
|
||||
<dt>첨부파일</dt>
|
||||
<dd class="upload_area">
|
||||
<div class="btn_wrap">
|
||||
<button type="button" class="btnType01 btn_add_file">파일 찾기</button>
|
||||
|
||||
<!-- <p style="color:grey;padding:5px;">파일명은 <span style="color:red;font-weight:500">1기 홍길동 결과보고서(0328-0401)</span> 형태로 등록해주세요.</p> -->
|
||||
|
||||
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
|
||||
</div>
|
||||
<div class="file_wrap file_upload_box no_img_box">
|
||||
<table>
|
||||
<caption>첨부파일 리스트 : 파일명, 종류, 크기</caption>
|
||||
<colgroup>
|
||||
<col style="width: auto;">
|
||||
<col style="width: 15%;">
|
||||
<col style="width: 15%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<th scope="col">파일 명</th>
|
||||
<th scope="col">종류</th>
|
||||
<th scope="col">크기</th>
|
||||
</thead>
|
||||
<tbody class="tb_file_before">
|
||||
<tr>
|
||||
<td colspan="3">
|
||||
<p>첨부하실 파일을 <span>마우스끌어서</span> 넣어주세요.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="file_wrap fileAfter file_list_div" style="display: none;">
|
||||
<table>
|
||||
<caption>첨부파일 리스트 : 파일명, 종류, 크기, 삭제</caption>
|
||||
<colgroup>
|
||||
<col style="width: auto;">
|
||||
<col style="width: 20%;">
|
||||
<col style="width: 20%;">
|
||||
<col style="width: 60px;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<th scope="col">파일 명</th>
|
||||
<th scope="col">종류</th>
|
||||
<th scope="col">크기</th>
|
||||
<th scope="col">삭제</th>
|
||||
</thead>
|
||||
<tbody id="tbody_fiielist" class="tb_file_after">
|
||||
<c:forEach var="fileList" items="${fileList}" varStatus="status">
|
||||
<tr class="item_${fileList.atchFileId}_${fileList.fileSn} uploaded_obj">
|
||||
<input type="hidden" name="fileSize" class="item_file_size" value="${fileList.fileSize}">
|
||||
<td class="td_filename">
|
||||
<span class="file_name_text">${fileList.orignlFileNm}</span>
|
||||
</td>
|
||||
<td class="td_filesort">
|
||||
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
|
||||
</td>
|
||||
<td class="td_filesize">
|
||||
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
|
||||
</td>
|
||||
<td>
|
||||
<button type="button" class="btn_del" onclick="delAtchFile('${fileList.atchFileId}', '${fileList.fileSn}'); return false;"><i></i></button>
|
||||
</td>
|
||||
</tr>
|
||||
</c:forEach>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="file_cf">
|
||||
<div class="cf_left">
|
||||
<p>최대 <span>1</span>개</p>
|
||||
<p><span>50MB</span>제한</p>
|
||||
</div>
|
||||
</div>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<div class="pop_btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
<button type="button" onclick="fncSave('Y'); return false;" class="btnType05">제출</button>
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
<button type="button" class="btnType02 tooltip-close" data-focus="sub35_pop03_close" data-focus-next="sub35_pop03">취소</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</form:form>
|
||||
@ -563,8 +563,11 @@
|
||||
<th scope="row">상태</th>
|
||||
<td class="ddlnCdStts">
|
||||
<c:choose>
|
||||
<c:when test="${not empty info.aprvlCd}">
|
||||
<kc:code codeId="VE0003" code="${info.aprvlCd}"/>
|
||||
<c:when test="${not empty prcsAplctVO.aprvlCd}">
|
||||
<kc:code codeId="VE0003" code="${prcsAplctVO.aprvlCd}"/>
|
||||
<c:if test="${prcsAplctVO.aprvlCd eq '60' and not empty prcsAplctVO.aplctStateCd}">
|
||||
- <kc:code codeId="VEA003" code="${prcsAplctVO.aplctStateCd}"/>
|
||||
</c:if>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<kc:code codeId="VEA004" code="${info.ddlnCd}"/>
|
||||
@ -608,8 +611,8 @@
|
||||
<button type="button" class="btn line red large" onclick="fncCancelUser('${infoAplctOrd.eduAplctOrd}', '${infoAplctOrd.prcsOrd}', '2-1')">교육취소</button>
|
||||
</c:if>
|
||||
|
||||
<c:if test="${prcsAplctVO.aprvlCd eq '60' and prcsAplctVO.ddlnCd eq '20'}">
|
||||
<%-- <button type="button" class="btnType05" onclick="fncCancelStatusChange('${infoAplctOrd.eduAplctOrd}', '${infoAplctOrd.prcsOrd}', '6-1')">취소요청</button> --%>
|
||||
<c:if test="${prcsAplctVO.aprvlCd eq '60' and prcsAplctVO.ddlnCd eq '20' and empty prcsAplctVO.aplctStateCd}">
|
||||
<button type="button" class="btnType05" onclick="fncCancelStatusChange('${infoAplctOrd.eduAplctOrd}', '${infoAplctOrd.prcsOrd}', '6-1')">취소요청</button>
|
||||
</c:if>
|
||||
|
||||
</div>
|
||||
|
||||
@ -24,9 +24,10 @@
|
||||
}
|
||||
|
||||
|
||||
function fncGoDetail(prcsAplctPrdOrd){
|
||||
function fncGoDetail(prcsAplctPrdOrd, eduAplctOrd){
|
||||
var viewForm = document.viewForm ;
|
||||
viewForm.prcsAplctPrdOrd.value = prcsAplctPrdOrd ;
|
||||
viewForm.eduAplctOrd.value = eduAplctOrd ;
|
||||
//viewForm.action = "<c:url value='/web/ve/aplct/sspnIdtmt/eduAplctDetail.do'/>";
|
||||
viewForm.action = "<c:url value='/web/ve/aplct/sspnIdtmt/eduAplctDetail.do'/>";
|
||||
viewForm.submit();
|
||||
@ -188,6 +189,7 @@
|
||||
</form>
|
||||
<form name="viewForm" id="viewForm">
|
||||
<input type="hidden" name="prcsAplctPrdOrd">
|
||||
<input type="hidden" name="eduAplctOrd">
|
||||
</form>
|
||||
<form:form id="listForm" name="listForm" commandName="vEEduAplctVO">
|
||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEEduAplctVO.pageIndex}' default='1' />"/>
|
||||
@ -235,7 +237,7 @@
|
||||
<tbody>
|
||||
<c:forEach var="list" items="${list}" varStatus="status">
|
||||
<tr>
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');" onkeypress="if(event.keyCode == 13){fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');}" style="cursor:pointer;" tabindex="0">
|
||||
<td onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');" onkeypress="if(event.keyCode == 13){fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');}" style="cursor:pointer;" tabindex="0">
|
||||
<!-- <td> -->
|
||||
|
||||
<c:choose>
|
||||
@ -254,7 +256,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<kc:code codeId="VE0003" code="${list.aprvlCd}"/>
|
||||
<c:if test="${list.aprvlCd eq '60'}">
|
||||
<c:if test="${list.aprvlCd eq '60' and not empty list.aplctStateCd}">
|
||||
- <kc:code codeId="VEA003" code="${list.aplctStateCd}"/>
|
||||
</c:if>
|
||||
|
||||
@ -295,13 +297,12 @@
|
||||
|
||||
<c:choose>
|
||||
|
||||
<%-- <c:when test="${list.aprvlCd eq 60 and list.qestRsltExists and list.aplctStateCd ne 10 and list.aplctStateCd ne 30}"> --%>
|
||||
<c:when test="${list.aprvlCd eq 60 and list.qestRsltExists}">
|
||||
<!-- 설문노출대상(확정처리를 받았음(60) && 교육기간이 지났음 list.qestRsltExists=true && 미이수가 아닌것(10) ) -->
|
||||
<c:when test="${list.aprvlCd eq 60 and list.qestRsltExists and list.aplctStateCd ne 10 and list.aplctStateCd ne 30}">
|
||||
<!-- 설문노출대상(승인처리를 받았음(20) && 교육기간이 지났음 list.qestRsltExists=true && 미이수가 아닌것(10) ) -->
|
||||
|
||||
<c:choose>
|
||||
|
||||
<c:when test="${list.qestnrId10Cnt gt 0}">
|
||||
<c:when test="${list.aplctStateCd eq 20 and list.qestnrId10Cnt gt 0}">
|
||||
<!-- 작성된 설문이 있다 -->
|
||||
<button type="button" class="btnType02" data-info="${list.eduAplctOrd}" data-tooltip="sub36_pop02"
|
||||
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','10','select'
|
||||
@ -309,13 +310,21 @@
|
||||
)" title="팝업 열림">설문완료</button>
|
||||
</c:when>
|
||||
|
||||
<c:when test="${empty list.qestnrId10}">
|
||||
<c:when test="${empty list.qestnrId10 and list.aprvlCd eq 20}">
|
||||
<!-- 대상 설문이 없다 -->
|
||||
대상설문없음
|
||||
</c:when>
|
||||
</c:when>
|
||||
|
||||
<c:when test="${not empty list.qestnrId10 and list.qestnrId10Cnt eq 0 and list.qustnrTm eq '1'}">
|
||||
<!-- 설문 키값이 있고, 답변이 없고, 설문 오픈 시간이 지났다(1), (0-지나기전)면 설문 등록을 연다 -->
|
||||
<c:when test="${(empty list.qestnrId10Cnt or list.qestnrId10Cnt eq 0) and list.qustnrTm eq '0'}">
|
||||
<!-- 작성된 설문이 없다 -->
|
||||
<button type="button" class="btn small mint line sur_bt" data-info="${list.eduAplctOrd}" data-tooltip="sub36_pop02"
|
||||
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','10','insert'
|
||||
,'${list.qustnrTmplatId}','${list.qestnrId10}',''
|
||||
)" title="팝업 열림">설문등록</button>
|
||||
</c:when>
|
||||
|
||||
<c:when test="${list.qustnrTm eq '1'}">
|
||||
<!-- 작성된 설문이 없다 -->
|
||||
<button type="button" class="btn small mint line sur_bt" data-info="${list.eduAplctOrd}" data-tooltip="sub36_pop02"
|
||||
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','10','insert'
|
||||
,'${list.qustnrTmplatId}','${list.qestnrId10}',''
|
||||
@ -337,13 +346,15 @@
|
||||
</td>
|
||||
<td>
|
||||
<c:choose>
|
||||
<c:when test="${list.qestRsltExists and list.aprvlCd eq '60' and list.aplctStateCd eq '20'}">
|
||||
<!-- 교육 기간 종료 & 교육신청은 확정(60) & 교육상태는 이슈(20) & 수료증 출력 가능 -->
|
||||
<c:when test="${list.qestRsltExists }">
|
||||
<button type="button" class="btn small mint line sur_bt" data-info="${list.eduAplctOrd}" data-tooltip="sub36_pop02"
|
||||
onclick="fncPrintCert('${list.eduAplctOrd}','${list.eduChasiOrd}','10','insert'
|
||||
,'${list.qustnrTmplatId}','${list.qestnrId10}',''
|
||||
)" title="출력">출력</button>
|
||||
</c:when>
|
||||
<c:when test="${list.dateChk eq 1 and not list.qestRsltExists}">
|
||||
교육완료
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
-
|
||||
</c:otherwise>
|
||||
@ -364,7 +375,7 @@
|
||||
<ul onclick="">
|
||||
<li>
|
||||
<span>교육과정</span>
|
||||
<span onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');" >
|
||||
<span onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');" >
|
||||
<c:choose>
|
||||
<c:when test="${not empty list.title}">
|
||||
<c:out value="${list.title}"/>
|
||||
@ -392,7 +403,7 @@
|
||||
</c:choose>
|
||||
|
||||
<c:if test="${(list.aprvlCd eq '10' or list.aprvlCd eq '20') and list.ddlnCd ne '20'}">
|
||||
<button type="button" class="btnType02" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');">취소</button>
|
||||
<button type="button" class="btnType02" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');">취소</button>
|
||||
</c:if>
|
||||
<c:if test="${list.aprvlCd eq '60' and list.ddlnCd eq '20'}">
|
||||
<%-- <button type="button" class="btnType02" onclick="fncGoDetail('<c:out value="${list.prcsAplctPrdOrd}"/>');">취소</button> --%>
|
||||
|
||||
@ -141,6 +141,7 @@
|
||||
<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="prcsAplctPrdOrd" value="<c:out value="${vEInstrAsgnmVO.prcsAplctPrdOrd}" />" />
|
||||
<input type="hidden" id="userId" name="userId" value="<c:out value="${vEInstrAsgnmVO.userId}" />" />
|
||||
<input type="hidden" name="sbmtYn" id="sbmtYn" value="" />
|
||||
<input type="hidden" name="limitcount" id="limitcount" value="1" /><!-- 최대 업로드 파일갯수 -->
|
||||
|
||||
@ -47,7 +47,7 @@
|
||||
//강의계획서 컨트롤 생성
|
||||
control1 = innorix.create({
|
||||
el : '#lctrPlan', // 컨트롤 출력 객체 ID
|
||||
installUrl: '<c:url value="/innorix/install/install.html" />', // Agent 설치 페이지
|
||||
/* 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)
|
||||
|
||||
@ -47,7 +47,7 @@
|
||||
//강의계획서 컨트롤 생성
|
||||
control1 = innorix.create({
|
||||
el : '#docAtch', // 컨트롤 출력 객체 ID
|
||||
installUrl: '<c:url value="/innorix/install/install.html" />', // Agent 설치 페이지
|
||||
/* installUrl: '<c:url value="/innorix/install/install.html" />', // Agent 설치 페이지 */
|
||||
uploadUrl: '<c:url value="/innorix/exam/upload.jsp?el=docAtch" />', // 업로드 URL
|
||||
maxFileCount : 1, // 첨부가능 파일 전체 개수
|
||||
width : 870, // 컨트롤 출력 너비(pixel)
|
||||
|
||||
@ -69,7 +69,7 @@
|
||||
control = innorix.create({
|
||||
el: '#fileControl' // 컨트롤 출력 HTML 객체 ID
|
||||
, transferMode: 'both' // 업로드, 다운로드 혼합사용
|
||||
, installUrl: '<c:url value="/innorix/install/install.html" />' // Agent 설치 페이지
|
||||
/* , installUrl: '<c:url value="/innorix/install/install.html" />' // Agent 설치 페이지 */
|
||||
, uploadUrl: '<c:url value="/innorix/exam/upload.jsp" />' // 업로드 URL
|
||||
, height:40
|
||||
, width: 650
|
||||
|
||||
Loading…
Reference in New Issue
Block a user