Merge branch 'hylee' into advc
Conflicts: src/main/java/kcc/ve/aplct/fndtnEnhanceTrn/web/FndtnEnhanceTrnController.java src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsDetailVO.java
This commit is contained in:
commit
4c671acf57
@ -46,15 +46,17 @@ public class QustnrCommonUtil {
|
|||||||
)throws Exception{
|
)throws Exception{
|
||||||
//설문 문항 정보
|
//설문 문항 정보
|
||||||
{
|
{
|
||||||
|
System.out.println("===========!!===========");
|
||||||
VEAQestnrVO vEAQestnrVO = new VEAQestnrVO();
|
VEAQestnrVO vEAQestnrVO = new VEAQestnrVO();
|
||||||
vEAQestnrVO.setSiteId(VeConstants.LCTR_DIV_CD_10); //청소년
|
vEAQestnrVO.setSiteId(p_siteId); //청소년
|
||||||
vEAQestnrVO.setSiteIdCd("10"); //10-기본설문, 20-신청자설문, 30-강사설문
|
vEAQestnrVO.setSiteIdCd(p_siteIdCd); //10-기본설문, 20-신청자설문, 30-강사설문
|
||||||
vEAQestnrVO = p_vEALettnQestnrMIXService.selectDetail_MIX_LQI_02(vEAQestnrVO);
|
vEAQestnrVO = p_vEALettnQestnrMIXService.selectDetail_MIX_LQI_02(vEAQestnrVO);
|
||||||
|
|
||||||
//문항정보
|
//문항정보
|
||||||
Map <String, Object> commandMap =new HashMap<String, Object>();
|
Map <String, Object> commandMap =new HashMap<String, Object>();
|
||||||
commandMap.put("qestnrTmplatId", "QTMPLA_0000000000001");
|
commandMap.put("qestnrTmplatId", p_qestnrTmplatId);
|
||||||
commandMap.put("qestnrId",vEAQestnrVO.getQestnrId()); //문제 ID
|
commandMap.put("qestnrId",vEAQestnrVO.getQestnrId()); //문제 ID
|
||||||
|
System.out.println("=====");
|
||||||
p_model.addAttribute("Comtnqustnrqesitm", p_egovQustnrRespondInfoService.selectQustnrRespondInfoManageComtnqustnrqesitm(commandMap));
|
p_model.addAttribute("Comtnqustnrqesitm", p_egovQustnrRespondInfoService.selectQustnrRespondInfoManageComtnqustnrqesitm(commandMap));
|
||||||
p_model.addAttribute("qestnrId", vEAQestnrVO.getQestnrId());
|
p_model.addAttribute("qestnrId", vEAQestnrVO.getQestnrId());
|
||||||
p_model.addAttribute("qustnrTmplatId", vEAQestnrVO.getQustnrTmplatId());
|
p_model.addAttribute("qustnrTmplatId", vEAQestnrVO.getQustnrTmplatId());
|
||||||
|
|||||||
@ -162,4 +162,6 @@ public interface EgovQustnrRespondInfoService {
|
|||||||
void updateQustnrRespondManage(QustnrRespondManageVO qustnrRespondManageVO);
|
void updateQustnrRespondManage(QustnrRespondManageVO qustnrRespondManageVO);
|
||||||
|
|
||||||
void deleteChasiStatus(VEEduAplctVO vEEduAplctVO);
|
void deleteChasiStatus(VEEduAplctVO vEEduAplctVO);
|
||||||
|
|
||||||
|
public List<QustnrRespondInfoVO> selectQustnrDetail(QustnrRespondInfoVO qustnrVO);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -111,6 +111,10 @@ public class QustnrRespondInfoVO implements Serializable {
|
|||||||
|
|
||||||
private String qustnrIemType = "";
|
private String qustnrIemType = "";
|
||||||
|
|
||||||
|
// 20231124 이호영
|
||||||
|
// 강화 기반은 라디오 버튼이라 변수 추가함
|
||||||
|
private String responseRadio = "";
|
||||||
|
|
||||||
public List<QustnrRespondInfoVO> getResultList() {
|
public List<QustnrRespondInfoVO> getResultList() {
|
||||||
return resultList;
|
return resultList;
|
||||||
}
|
}
|
||||||
@ -449,15 +453,21 @@ public class QustnrRespondInfoVO implements Serializable {
|
|||||||
this.beforeAndAfter = beforeAndAfter;
|
this.beforeAndAfter = beforeAndAfter;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public String getQustnrTmplatId() {
|
public String getQustnrTmplatId() {
|
||||||
return qustnrTmplatId;
|
return qustnrTmplatId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public void setQustnrTmplatId(String qustnrTmplatId) {
|
public void setQustnrTmplatId(String qustnrTmplatId) {
|
||||||
this.qustnrTmplatId = qustnrTmplatId;
|
this.qustnrTmplatId = qustnrTmplatId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getResponseRadio() {
|
||||||
|
return responseRadio;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setResponseRadio(String responseRadio) {
|
||||||
|
this.responseRadio = responseRadio;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -245,5 +245,9 @@ public class EgovQustnrRespondInfoServiceImpl extends EgovAbstractServiceImpl im
|
|||||||
public void deleteChasiStatus(VEEduAplctVO vEEduAplctVO) {
|
public void deleteChasiStatus(VEEduAplctVO vEEduAplctVO) {
|
||||||
dao.deleteChasiStatus(vEEduAplctVO);
|
dao.deleteChasiStatus(vEEduAplctVO);
|
||||||
}
|
}
|
||||||
|
@Override
|
||||||
|
public List<QustnrRespondInfoVO> selectQustnrDetail(QustnrRespondInfoVO qustnrVO) {
|
||||||
|
return dao.selectQustnrDetail(qustnrVO);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -210,4 +210,8 @@ public class QustnrRespondInfoDao extends EgovAbstractDAO {
|
|||||||
delete("QustnrRespondInfo.deleteChasiStatusFormLettnqustnrrespondinfo", vEEduAplctVO);
|
delete("QustnrRespondInfo.deleteChasiStatusFormLettnqustnrrespondinfo", vEEduAplctVO);
|
||||||
delete("QustnrRespondInfo.deleteChasiStatusFormlettnqestnrrslt", vEEduAplctVO);
|
delete("QustnrRespondInfo.deleteChasiStatusFormlettnqestnrrslt", vEEduAplctVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<QustnrRespondInfoVO> selectQustnrDetail(QustnrRespondInfoVO qustnrVO) {
|
||||||
|
return (List<QustnrRespondInfoVO>) list("QustnrRespondInfo.selectQustnrDetail", qustnrVO);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -419,6 +419,7 @@ public class EduEndAdultController {
|
|||||||
|
|
||||||
model.addAttribute("chasiList", vEEduChasiVOList);
|
model.addAttribute("chasiList", vEEduChasiVOList);
|
||||||
|
|
||||||
|
|
||||||
//문항정보
|
//문항정보
|
||||||
try {
|
try {
|
||||||
model = qustnrCommonUtil._qustnrQesItm(
|
model = qustnrCommonUtil._qustnrQesItm(
|
||||||
|
|||||||
@ -16,6 +16,7 @@ import org.springframework.stereotype.Controller;
|
|||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.ResponseBody;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
|
|
||||||
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
|
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
|
||||||
@ -26,7 +27,11 @@ import kcc.com.cmm.service.impl.CmmUseDAO;
|
|||||||
import kcc.com.cmm.util.StringUtil;
|
import kcc.com.cmm.util.StringUtil;
|
||||||
import kcc.com.utl.user.service.CheckFileUtil;
|
import kcc.com.utl.user.service.CheckFileUtil;
|
||||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||||
|
import kcc.com.utl.user.service.QustnrCommonUtil;
|
||||||
import kcc.let.uat.uia.service.SsoLoginVO;
|
import kcc.let.uat.uia.service.SsoLoginVO;
|
||||||
|
import kcc.let.uss.olp.qri.service.EgovQustnrRespondInfoService;
|
||||||
|
import kcc.let.uss.olp.qri.service.QustnrRespondInfoVO;
|
||||||
|
import kcc.let.uss.olp.qrm.service.QustnrRespondManageVO;
|
||||||
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
||||||
import kcc.ve.adv.tngr.stngInfo.service.VEACmpltCrtfcMixService;
|
import kcc.ve.adv.tngr.stngInfo.service.VEACmpltCrtfcMixService;
|
||||||
import kcc.ve.aplct.adultVisitEdu.eduAplct.service.EduAplctAdultService;
|
import kcc.ve.aplct.adultVisitEdu.eduAplct.service.EduAplctAdultService;
|
||||||
@ -42,6 +47,7 @@ import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
|||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsMIXService;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsMIXService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsOnlnCntntService;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsOnlnCntntService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
||||||
|
import kcc.ve.oprtn.qestnr.service.VEALettnQestnrMIXService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육신청(성인찾아가는교육)
|
* 교육신청(성인찾아가는교육)
|
||||||
@ -155,6 +161,20 @@ public class FndtnEnhanceTrnController {
|
|||||||
@Resource(name = "vEACmpltCrtfcMixService")
|
@Resource(name = "vEACmpltCrtfcMixService")
|
||||||
private VEACmpltCrtfcMixService vEACmpltCrtfcMixService;
|
private VEACmpltCrtfcMixService vEACmpltCrtfcMixService;
|
||||||
|
|
||||||
|
// 설문 복합 VEA_
|
||||||
|
@Resource(name = "vEALettnQestnrMIXService")
|
||||||
|
private VEALettnQestnrMIXService vEALettnQestnrMIXService;
|
||||||
|
|
||||||
|
@Resource(name = "egovQustnrRespondInfoService")
|
||||||
|
private EgovQustnrRespondInfoService egovQustnrRespondInfoService;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// 설문 util
|
||||||
|
@Resource(name = "qustnrCommonUtil")
|
||||||
|
private QustnrCommonUtil qustnrCommonUtil;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 대시보드 임시
|
* 대시보드 임시
|
||||||
*/
|
*/
|
||||||
@ -603,9 +623,6 @@ public class FndtnEnhanceTrnController {
|
|||||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||||
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
||||||
|
|
||||||
// 페이징 없이 select를 하기 위한
|
|
||||||
vEPrcsDetailVO.setRecordCountPerPage(10000);
|
|
||||||
vEPrcsDetailVO.setFirstIndex(0);
|
|
||||||
|
|
||||||
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsAplctPrdService.selectPagingList4Fndth(vEPrcsDetailVO);
|
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsAplctPrdService.selectPagingList4Fndth(vEPrcsDetailVO);
|
||||||
|
|
||||||
@ -616,6 +633,41 @@ public class FndtnEnhanceTrnController {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@RequestMapping("/web/ve/aplct/fndtnEnhanceTrn/selectSchduleManagerListAjax.do")
|
||||||
|
@ResponseBody
|
||||||
|
// public ModelAndView eduSelectAjax(
|
||||||
|
public List<VEPrcsDetailVO> selectSchduleManagerListAjax(
|
||||||
|
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||||
|
, ModelMap model
|
||||||
|
, HttpServletRequest request
|
||||||
|
) throws Exception {
|
||||||
|
|
||||||
|
// ModelAndView modelAndView = new ModelAndView();
|
||||||
|
// modelAndView.setViewName("jsonView");
|
||||||
|
|
||||||
|
//로그인 처리====================================
|
||||||
|
//로그인 정보 가져오기
|
||||||
|
|
||||||
|
// String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model);
|
||||||
|
// if (!"".equals(s_oprtnLoginCheckNInfo)) {
|
||||||
|
// modelAndView.addObject("result", "loginFail");
|
||||||
|
// return modelAndView;
|
||||||
|
// }
|
||||||
|
|
||||||
|
//로그인 처리====================================
|
||||||
|
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||||
|
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
||||||
|
|
||||||
|
|
||||||
|
vEPrcsDetailVO.setsTodate(vEPrcsDetailVO.getsTodate().split("T")[0].replaceAll("-", ""));
|
||||||
|
List<VEPrcsDetailVO> vEPrcsDetailVOList = vEPrcsAplctPrdService.selectSchduleManagerList(vEPrcsDetailVO);
|
||||||
|
|
||||||
|
// modelAndView.addObject("data", vEPrcsDetailVOList);
|
||||||
|
// modelAndView.addObject("result", "success");
|
||||||
|
|
||||||
|
return vEPrcsDetailVOList;
|
||||||
|
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* 교육소개 임시페이지
|
* 교육소개 임시페이지
|
||||||
*/
|
*/
|
||||||
@ -643,6 +695,184 @@ public class FndtnEnhanceTrnController {
|
|||||||
return "/web/ve/aplct/fndtnEnhanceTrn/popup/eduAplctPop";
|
return "/web/ve/aplct/fndtnEnhanceTrn/popup/eduAplctPop";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @methodName : fndthEduPrcsAplctPrdMngRegAjax
|
||||||
|
* @author : 이호영
|
||||||
|
* @date : 2023.11.24
|
||||||
|
* @description : 설문조사 내역 select
|
||||||
|
* @param vEPrcsDetailVO
|
||||||
|
* @param model
|
||||||
|
* @param request
|
||||||
|
* @return
|
||||||
|
* @throws Exception
|
||||||
|
*/
|
||||||
|
@RequestMapping("/web/ve/aplct/fndtnEnhanceTrn/selectQustnrCommonAjax.do")
|
||||||
|
public ModelAndView selectQustnrCommonAjax(
|
||||||
|
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||||
|
, ModelMap model
|
||||||
|
, HttpServletRequest request
|
||||||
|
) throws Exception {
|
||||||
|
|
||||||
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
|
modelAndView.setViewName("jsonView");
|
||||||
|
|
||||||
|
|
||||||
|
//문항정보
|
||||||
|
try {
|
||||||
|
|
||||||
|
model = qustnrCommonUtil._qustnrQesItm(
|
||||||
|
model
|
||||||
|
, vEPrcsDetailVO.getLctrDivCd() //청소년 -10, 성인-20, 체험-30, 기반강화-50 , 기소유예-60 ...VE0011
|
||||||
|
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
||||||
|
, "QTMPLA_0000000000001"
|
||||||
|
, vEALettnQestnrMIXService
|
||||||
|
, egovQustnrRespondInfoService
|
||||||
|
);
|
||||||
|
|
||||||
|
}catch(Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
modelAndView.addAllObjects(model);
|
||||||
|
|
||||||
|
modelAndView.addObject("result", "success");
|
||||||
|
|
||||||
|
return modelAndView;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @methodName : fndtnmergeSrvyInfoAjax
|
||||||
|
* @author : 이호영
|
||||||
|
* @date : 2023.11.24
|
||||||
|
* @description : 기반 기소 설문조사 등록 및 수정
|
||||||
|
* @param request
|
||||||
|
* @param model
|
||||||
|
* @param veEduAplctVO
|
||||||
|
* @param qustnrRespondInfoVO
|
||||||
|
* @return
|
||||||
|
* @throws Exception
|
||||||
|
*/
|
||||||
|
@RequestMapping("/web/ve/aplct/fndtnEnhanceTrn/mergeSrvyInfoAjax.do")
|
||||||
|
public ModelAndView commonMergeSrvyInfoAjax( HttpServletRequest request
|
||||||
|
, ModelMap model
|
||||||
|
, VEEduAplctVO veEduAplctVO
|
||||||
|
, QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception {
|
||||||
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
|
modelAndView.setViewName("jsonView");
|
||||||
|
try {
|
||||||
|
|
||||||
|
LoginVO loginVO = checkLoginUtil.getAuthLoginVO();
|
||||||
|
if (loginVO == null) {
|
||||||
|
modelAndView.addObject("result", "fail");
|
||||||
|
modelAndView.addObject("msg", "로그인 해주세요.");
|
||||||
|
return modelAndView;
|
||||||
|
}
|
||||||
|
|
||||||
|
qustnrRespondInfoVO.getResultList().stream()
|
||||||
|
.forEach(item -> {
|
||||||
|
|
||||||
|
item.setQustnrTmplatId(qustnrRespondInfoVO.getQustnrTmplatId());
|
||||||
|
item.setRespondId(loginVO.getId());
|
||||||
|
item.setFrstRegisterId(loginVO.getId());
|
||||||
|
item.setLastUpdusrId(loginVO.getId());
|
||||||
|
item.setEduAplctOrd(veEduAplctVO.getEduAplctOrd());
|
||||||
|
|
||||||
|
if("verySatisfied".equals(item.getResponseRadio())) {
|
||||||
|
item.setVerySatisfied("1");
|
||||||
|
}
|
||||||
|
if("satisfied".equals(item.getResponseRadio())) {
|
||||||
|
item.setSatisfied("1");
|
||||||
|
}
|
||||||
|
if("neither".equals(item.getResponseRadio())) {
|
||||||
|
item.setNeither("1");
|
||||||
|
}
|
||||||
|
if("dissatisfied".equals(item.getResponseRadio())) {
|
||||||
|
item.setDissatisfied("1");
|
||||||
|
}
|
||||||
|
if("veryDissatisfied".equals(item.getResponseRadio())) {
|
||||||
|
item.setVeryDissatisfied("1");
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
if ("update".equals(qustnrRespondInfoVO.getQustnrIemType())) {
|
||||||
|
egovQustnrRespondInfoService.updateSrvyInfo(item);
|
||||||
|
} else {
|
||||||
|
egovQustnrRespondInfoService.insertSrvyInfo(item);
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
// TODO Auto-generated catch block
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// 설문 문항 결과 등록
|
||||||
|
// for(int i=0; i < qustnrRespondInfoVO.getResultList().size(); i++) {
|
||||||
|
// qustnrRespondInfoVO.getResultList().get(i).setQustnrTmplatId(qustnrRespondInfoVO.getQustnrTmplatId());
|
||||||
|
// qustnrRespondInfoVO.getResultList().get(i).setRespondId(loginVO.getId());
|
||||||
|
// qustnrRespondInfoVO.getResultList().get(i).setFrstRegisterId(loginVO.getId());
|
||||||
|
// qustnrRespondInfoVO.getResultList().get(i).setLastUpdusrId(loginVO.getId());
|
||||||
|
// qustnrRespondInfoVO.getResultList().get(i).setLastUpdusrId(loginVO.getId());
|
||||||
|
// qustnrRespondInfoVO.getResultList().get(i).setEduAplctOrd(veEduAplctVO.getEduAplctOrd());
|
||||||
|
|
||||||
|
// if("update".equals(qustnrRespondInfoVO.getQustnrIemType())) {
|
||||||
|
// egovQustnrRespondInfoService.updateSrvyInfo(qustnrRespondInfoVO.getResultList().get(i));
|
||||||
|
// }else {
|
||||||
|
// egovQustnrRespondInfoService.insertSrvyInfo(qustnrRespondInfoVO.getResultList().get(i));
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
}catch(Exception ex) {
|
||||||
|
System.out.println("Exception vEEduAplctOnlnService.updateBulk");
|
||||||
|
}
|
||||||
|
modelAndView.addObject("result", "success");
|
||||||
|
return modelAndView;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@RequestMapping("/web/ve/aplct/fndtnEnhanceTrn/selectSrvyInfoAjax.do")
|
||||||
|
public ModelAndView fndtnInSelectSrvyInfoAjax( HttpServletRequest request
|
||||||
|
, ModelMap model
|
||||||
|
, VEEduAplctVO veEduAplctVO
|
||||||
|
, QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception {
|
||||||
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
|
modelAndView.setViewName("jsonView");
|
||||||
|
try {
|
||||||
|
|
||||||
|
LoginVO loginVO = checkLoginUtil.getAuthLoginVO();
|
||||||
|
if (loginVO == null) {
|
||||||
|
modelAndView.addObject("result", "fail");
|
||||||
|
modelAndView.addObject("msg", "로그인 해주세요.");
|
||||||
|
return modelAndView;
|
||||||
|
}
|
||||||
|
|
||||||
|
qustnrRespondInfoVO.setEduAplctOrd(veEduAplctVO.getEduAplctOrd());
|
||||||
|
qustnrRespondInfoVO.setRespondId(loginVO.getId());
|
||||||
|
|
||||||
|
List<QustnrRespondInfoVO> qustnrRespondInfoVOList = egovQustnrRespondInfoService.selectQustnrDetail(qustnrRespondInfoVO);
|
||||||
|
|
||||||
|
modelAndView.addObject("data", qustnrRespondInfoVOList);
|
||||||
|
modelAndView.addObject("respondId", qustnrRespondInfoVOList.get(0).getRespondId());
|
||||||
|
modelAndView.addObject("result", "success");
|
||||||
|
}catch(Exception ex) {
|
||||||
|
System.out.println("Exception vEEduAplctOnlnService.updateBulk");
|
||||||
|
modelAndView.addObject("result", "fail");
|
||||||
|
modelAndView.addObject("msg", "관리자에게 문의해 주세요");
|
||||||
|
}
|
||||||
|
return modelAndView;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
|
|||||||
@ -542,7 +542,7 @@ public class EduEndTngrController {
|
|||||||
ModelAndView modelAndView = new ModelAndView();
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
modelAndView.setViewName("jsonView");
|
modelAndView.setViewName("jsonView");
|
||||||
try {
|
try {
|
||||||
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_10);
|
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_20);
|
||||||
|
|
||||||
VEEduChasiVO ChasiInfo = vEEduMIXService.selectChasiInfo(vEEduChasiVO);
|
VEEduChasiVO ChasiInfo = vEEduMIXService.selectChasiInfo(vEEduChasiVO);
|
||||||
ChasiInfo.setInstrNm(egovCryptoUtil.decrypt(ChasiInfo.getInstrNm()));
|
ChasiInfo.setInstrNm(egovCryptoUtil.decrypt(ChasiInfo.getInstrNm()));
|
||||||
|
|||||||
@ -961,7 +961,7 @@ public class InstrPrflController {
|
|||||||
|
|
||||||
|
|
||||||
schduleManageVO.setSearchStartDt(schduleManageVO.getSearchStartDt().split("T")[0].replaceAll("-", ""));
|
schduleManageVO.setSearchStartDt(schduleManageVO.getSearchStartDt().split("T")[0].replaceAll("-", ""));
|
||||||
|
System.out.println("=================");
|
||||||
return schduleManageService.selectSchManageStatusInstrList(schduleManageVO);
|
return schduleManageService.selectSchManageStatusInstrList(schduleManageVO);
|
||||||
}
|
}
|
||||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|||||||
@ -55,4 +55,6 @@ public interface VEPrcsAplctPrdService {
|
|||||||
|
|
||||||
void updateEtc(VEPrcsDetailVO vEPrcsDetailVO);
|
void updateEtc(VEPrcsDetailVO vEPrcsDetailVO);
|
||||||
|
|
||||||
|
List<VEPrcsDetailVO> selectSchduleManagerList(VEPrcsDetailVO vEPrcsDetailVO);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -154,10 +154,10 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
|||||||
|
|
||||||
private String mberNm;
|
private String mberNm;
|
||||||
|
|
||||||
private String instrNm; //강사명
|
private String sTodate;
|
||||||
|
private String start;
|
||||||
|
private String send;
|
||||||
|
|
||||||
private String chrgNm;
|
|
||||||
private String insttNm;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -753,25 +753,24 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
|||||||
public void setMberNm(String mberNm) {
|
public void setMberNm(String mberNm) {
|
||||||
this.mberNm = mberNm;
|
this.mberNm = mberNm;
|
||||||
}
|
}
|
||||||
public String getInstrNm() {
|
public String getsTodate() {
|
||||||
return instrNm;
|
return sTodate;
|
||||||
}
|
}
|
||||||
public void setInstrNm(String instrNm) {
|
public void setsTodate(String sTodate) {
|
||||||
this.instrNm = instrNm;
|
this.sTodate = sTodate;
|
||||||
}
|
}
|
||||||
public String getChrgNm() {
|
public String getStart() {
|
||||||
return chrgNm;
|
return start;
|
||||||
}
|
}
|
||||||
public void setChrgNm(String chrgNm) {
|
public void setStart(String start) {
|
||||||
this.chrgNm = chrgNm;
|
this.start = start;
|
||||||
}
|
}
|
||||||
public String getInsttNm() {
|
public String getSend() {
|
||||||
return insttNm;
|
return send;
|
||||||
}
|
}
|
||||||
public void setInsttNm(String insttNm) {
|
public void setSend(String send) {
|
||||||
this.insttNm = insttNm;
|
this.send = send;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -120,4 +120,8 @@ public class VEPrcsAplctPrdDAO extends EgovAbstractDAO {
|
|||||||
update("VEPrcsAplctPrdDAO.updateEtc", vEPrcsDetailVO);
|
update("VEPrcsAplctPrdDAO.updateEtc", vEPrcsDetailVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<VEPrcsDetailVO> selectSchduleManagerList(VEPrcsDetailVO vEPrcsDetailVO) {
|
||||||
|
return (List<VEPrcsDetailVO>) list("VEPrcsAplctPrdDAO.selectSchduleManagerList", vEPrcsDetailVO);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -127,4 +127,9 @@ public class VEPrcsAplctPrdServiceImpl implements VEPrcsAplctPrdService {
|
|||||||
vEPrcsAplctPrdDAO.updateEtc(vEPrcsDetailVO);
|
vEPrcsAplctPrdDAO.updateEtc(vEPrcsDetailVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<VEPrcsDetailVO> selectSchduleManagerList(VEPrcsDetailVO vEPrcsDetailVO) {
|
||||||
|
return vEPrcsAplctPrdDAO.selectSchduleManagerList(vEPrcsDetailVO);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -298,7 +298,7 @@ public class EduRsltMngAdultController {
|
|||||||
try {
|
try {
|
||||||
model = qustnrCommonUtil._qustnrQesItm(
|
model = qustnrCommonUtil._qustnrQesItm(
|
||||||
model
|
model
|
||||||
, VeConstants.LCTR_DIV_CD_10 //청소년 -10, 성인-20, ...VE0012
|
, VeConstants.LCTR_DIV_CD_20 //청소년 -10, 성인-20, ...VE0012
|
||||||
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
||||||
, "QTMPLA_0000000000001"
|
, "QTMPLA_0000000000001"
|
||||||
, vEALettnQestnrMIXService
|
, vEALettnQestnrMIXService
|
||||||
@ -324,7 +324,7 @@ public class EduRsltMngAdultController {
|
|||||||
try{
|
try{
|
||||||
model = qustnrCommonUtil._chasiSrvyList(
|
model = qustnrCommonUtil._chasiSrvyList(
|
||||||
model
|
model
|
||||||
, VeConstants.LCTR_DIV_CD_10 //청소년 -10, 성인-20, ...VE0012
|
, VeConstants.LCTR_DIV_CD_20 //청소년 -10, 성인-20, ...VE0012
|
||||||
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
||||||
, vEEduAplctVO.getEduAplctOrd()
|
, vEEduAplctVO.getEduAplctOrd()
|
||||||
, vEEduAplctVO.getEduChasiOrd()
|
, vEEduAplctVO.getEduChasiOrd()
|
||||||
|
|||||||
@ -116,6 +116,7 @@
|
|||||||
</select>
|
</select>
|
||||||
<!-- 설문조사(설문등록):: 설문등록 /설문문 항정보-->
|
<!-- 설문조사(설문등록):: 설문등록 /설문문 항정보-->
|
||||||
<select id="QustnrRespondInfo.selectQustnrRespondInfoManageComtnqustnrqesitm" parameterClass="java.util.Map" resultClass="egovMap">
|
<select id="QustnrRespondInfo.selectQustnrRespondInfoManageComtnqustnrqesitm" parameterClass="java.util.Map" resultClass="egovMap">
|
||||||
|
/*QustnrRespondInfo.selectQustnrRespondInfoManageComtnqustnrqesitm*/
|
||||||
SELECT
|
SELECT
|
||||||
A.QUSTNR_QESITM_ID "qestnrQesitmId",
|
A.QUSTNR_QESITM_ID "qestnrQesitmId",
|
||||||
A.QESTNR_ID,
|
A.QESTNR_ID,
|
||||||
@ -650,6 +651,34 @@
|
|||||||
AND B.EDU_CHASI_ORD = #eduChasiOrd#
|
AND B.EDU_CHASI_ORD = #eduChasiOrd#
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="QustnrRespondInfo.selectQustnrDetail" parameterClass="QustnrRespondInfoVO" resultClass="QustnrRespondInfoVO">
|
||||||
|
SELECT
|
||||||
|
QUSTNR_TMPLAT_ID as qustnrTmplatId
|
||||||
|
, QESTNR_ID as qestnrId
|
||||||
|
, QUSTNR_QESITM_ID as qustnrQesitmId
|
||||||
|
, QUSTNR_RSLT_ID as qustnrRsltId
|
||||||
|
, EDU_APLCT_ORD as eduAplctOrd
|
||||||
|
, EDU_CHASI_ORD as eduChasiOrd
|
||||||
|
, RESPOND_ID as respondId
|
||||||
|
, VERY_SATISFIED as verySatisfied
|
||||||
|
, SATISFIED as satisfied
|
||||||
|
, NEITHER as neither
|
||||||
|
, DISSATISFIED as dissatisfied
|
||||||
|
, VERY_DISSATISFIED as veryDissatisfied
|
||||||
|
, ANSWER as answer
|
||||||
|
, FRST_REGIST_PNTTM as frstRegistPnttm
|
||||||
|
, FRST_REGISTER_ID as frstRegisterId
|
||||||
|
, LAST_UPDT_PNTTM as lastUpdtPnttm
|
||||||
|
, LAST_UPDUSR_ID as lastUpdusrId
|
||||||
|
, QUSTNR_IEM_ID as qustnrIemId
|
||||||
|
FROM LETTNQESTNRRSLTDETAIL
|
||||||
|
WHERE 1=1
|
||||||
|
AND EDU_APLCT_ORD = #eduAplctOrd#
|
||||||
|
AND RESPOND_ID = #respondId#
|
||||||
|
AND QUSTNR_TMPLAT_ID = #qustnrTmplatId#
|
||||||
|
|
||||||
|
</select>
|
||||||
|
|
||||||
<select id="QustnrRespondInfo.selectChasiSrvyExcelList_bak" parameterClass="QustnrRespondInfoVO" resultClass="QustnrRespondInfoVO">
|
<select id="QustnrRespondInfo.selectChasiSrvyExcelList_bak" parameterClass="QustnrRespondInfoVO" resultClass="QustnrRespondInfoVO">
|
||||||
/* QustnrRespondInfo.selectChasiSrvyExcelList_bak */
|
/* QustnrRespondInfo.selectChasiSrvyExcelList_bak */
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@ -19,9 +19,10 @@
|
|||||||
|
|
||||||
<!-- 응답자정보(설문조사)::수정 -->
|
<!-- 응답자정보(설문조사)::수정 -->
|
||||||
<update id="QustnrRespondManage.updateQustnrRespondManage">
|
<update id="QustnrRespondManage.updateQustnrRespondManage">
|
||||||
|
/*QustnrRespondManage.updateQustnrRespondManage*/
|
||||||
UPDATE LETTNQUSTNRRESPONDINFO
|
UPDATE LETTNQUSTNRRESPONDINFO
|
||||||
SET
|
SET
|
||||||
LAST_UPDT_PNTTM = NOW()
|
LAST_UPDT_PNTTM = SYSDATE
|
||||||
, LAST_UPDUSR_ID = #lastUpdusrId#
|
, LAST_UPDUSR_ID = #lastUpdusrId#
|
||||||
<isNotNull property="qestnrParticipant">
|
<isNotNull property="qestnrParticipant">
|
||||||
, QESTNR_RESPONDENT_COUNT = #qestnrParticipant#
|
, QESTNR_RESPONDENT_COUNT = #qestnrParticipant#
|
||||||
|
|||||||
@ -19,9 +19,10 @@
|
|||||||
|
|
||||||
<!-- 응답자정보(설문조사)::수정 -->
|
<!-- 응답자정보(설문조사)::수정 -->
|
||||||
<update id="QustnrRespondManage.updateQustnrRespondManage">
|
<update id="QustnrRespondManage.updateQustnrRespondManage">
|
||||||
|
/*QustnrRespondManage.updateQustnrRespondManage*/
|
||||||
UPDATE LETTNQUSTNRRESPONDINFO
|
UPDATE LETTNQUSTNRRESPONDINFO
|
||||||
SET
|
SET
|
||||||
LAST_UPDT_PNTTM = NOW()
|
LAST_UPDT_PNTTM = SYSDATE
|
||||||
, LAST_UPDUSR_ID = #lastUpdusrId#
|
, LAST_UPDUSR_ID = #lastUpdusrId#
|
||||||
<isNotNull property="qestnrParticipant">
|
<isNotNull property="qestnrParticipant">
|
||||||
, QESTNR_RESPONDENT_COUNT = #qestnrParticipant#
|
, QESTNR_RESPONDENT_COUNT = #qestnrParticipant#
|
||||||
|
|||||||
@ -633,12 +633,17 @@
|
|||||||
vadi.APLCT_STATE_CD AS aplctStateCd,
|
vadi.APLCT_STATE_CD AS aplctStateCd,
|
||||||
vadi.CNCL_ATCH_FILE_ID AS cnclAtchFileId,
|
vadi.CNCL_ATCH_FILE_ID AS cnclAtchFileId,
|
||||||
vadi.CNCL_CN AS cnclCn,
|
vadi.CNCL_CN AS cnclCn,
|
||||||
CASE WHEN EXISTS ( /* 설문조사 */
|
CASE
|
||||||
SELECT 1
|
WHEN EXISTS (/* 설문조사 */
|
||||||
FROM lettnqestnrrslt lerslt
|
SELECT
|
||||||
WHERE lerslt.respond_id = 'USRCNFRM_00000002720'
|
1
|
||||||
AND vpap.PRCS_APLCT_PRD_ORD = lerslt.edu_aplct_ord
|
FROM
|
||||||
) THEN 1 ELSE 0 END as qestRsltExists
|
LETTNQESTNRRSLTDETAIL lersltD
|
||||||
|
WHERE
|
||||||
|
lersltD.respond_id = a.USER_ID
|
||||||
|
AND a.edu_aplct_ord = lersltD.edu_aplct_ord ) THEN 1
|
||||||
|
ELSE 0
|
||||||
|
END AS qestRsltExists
|
||||||
from
|
from
|
||||||
VE_EDU_APLCT a
|
VE_EDU_APLCT a
|
||||||
join ve_prcs_aplct_prd vpap
|
join ve_prcs_aplct_prd vpap
|
||||||
@ -723,4 +728,23 @@
|
|||||||
PRCS_APLCT_PRD_ORD = #prcsAplctPrdOrd#
|
PRCS_APLCT_PRD_ORD = #prcsAplctPrdOrd#
|
||||||
AND EDU_APLCT_ORD = #eduAplctOrd#
|
AND EDU_APLCT_ORD = #eduAplctOrd#
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="VEPrcsAplctPrdDAO.selectSchduleManagerList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
|
||||||
|
/*VEPrcsAplctPrdDAO.selectSchduleManagerList*/
|
||||||
|
SELECT
|
||||||
|
a.PRCS_APLCT_PRD_ORD as prcsAplctPrdOrd
|
||||||
|
, a.PRCS_ORD as prcsOrd
|
||||||
|
, TO_CHAR(TO_DATE(a.EDU_STRT_PNTTM, 'YYYY.MM.DD'), 'YYYY-MM-DD') AS "start" /*시작*/
|
||||||
|
, TO_CHAR(TO_DATE(a.EDU_DDLN_PNTTM, 'YYYY.MM.DD'), 'YYYY-MM-DD') AS "end" /*종료*/
|
||||||
|
, b.PRCS_NM AS title
|
||||||
|
, b.PRCS_CN AS prcsCn
|
||||||
|
FROM
|
||||||
|
ve_prcs_aplct_prd a
|
||||||
|
LEFT JOIN VE_PRCS b
|
||||||
|
ON a.prcs_ord = b.prcs_ord
|
||||||
|
where
|
||||||
|
a.LCTR_DIV_CD ='60'
|
||||||
|
AND SUBSTRING(a.EDU_STRT_PNTTM, 1, 7) = TO_CHAR(TO_DATE(#sTodate#,'YYYYMMDD')+ 7,'YYYY.MM')
|
||||||
|
|
||||||
|
</select>
|
||||||
</sqlMap>
|
</sqlMap>
|
||||||
|
|||||||
@ -56,6 +56,7 @@ $(document).ready(function(){
|
|||||||
// dayDiff 값을 추가합니다.
|
// dayDiff 값을 추가합니다.
|
||||||
newRow.append('<td class="edup_days">' + dayDiff + '</td>');
|
newRow.append('<td class="edup_days">' + dayDiff + '</td>');
|
||||||
|
|
||||||
|
console.log('currentMonth : ' ,currentMonth);
|
||||||
// 교육일정 칼럼을 초기화합니다.
|
// 교육일정 칼럼을 초기화합니다.
|
||||||
for (var i = 1; i <= 12; i++) {
|
for (var i = 1; i <= 12; i++) {
|
||||||
// 다음 월 class
|
// 다음 월 class
|
||||||
@ -68,6 +69,7 @@ $(document).ready(function(){
|
|||||||
} else if (i === currentMonth) {
|
} else if (i === currentMonth) {
|
||||||
cellClass = "edup_this";
|
cellClass = "edup_this";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (i === parseInt(startDt.split('.')[1])) {
|
if (i === parseInt(startDt.split('.')[1])) {
|
||||||
newRow.append('<td class="' + cellClass + '" onclick="fncGoDetail(\'' + item.prcsAplctPrdOrd + '\')" style="cursor:pointer;">' + parseInt(startDt.split('.')[2]) + '</td>');
|
newRow.append('<td class="' + cellClass + '" onclick="fncGoDetail(\'' + item.prcsAplctPrdOrd + '\')" style="cursor:pointer;">' + parseInt(startDt.split('.')[2]) + '</td>');
|
||||||
} else {
|
} else {
|
||||||
@ -469,7 +471,7 @@ $(document).ready(function(){
|
|||||||
|
|
||||||
|
|
||||||
<div class="tab_content">
|
<div class="tab_content">
|
||||||
<!--
|
|
||||||
<div class="list_top">
|
<div class="list_top">
|
||||||
<div class="list_top_left">
|
<div class="list_top_left">
|
||||||
<label for="" class="label">교육과정 선택</label>
|
<label for="" class="label">교육과정 선택</label>
|
||||||
@ -492,7 +494,7 @@ $(document).ready(function(){
|
|||||||
<button type="button" class="btnType01">검색</button>
|
<button type="button" class="btnType01">검색</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
-->
|
|
||||||
<div class="edup_result">
|
<div class="edup_result">
|
||||||
<div>총 <span>6</span>개의 검색결과가 있습니다.</div>
|
<div>총 <span>6</span>개의 검색결과가 있습니다.</div>
|
||||||
<ul>
|
<ul>
|
||||||
|
|||||||
@ -84,6 +84,200 @@ $(document).ready(function(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 설문조사 버튼 클릭 이벤트
|
||||||
|
function selectQestnInfo(id, action){
|
||||||
|
|
||||||
|
$('#eduAplctOrd').val(id);
|
||||||
|
if(action == 'insert'){
|
||||||
|
$('#popupUpdate').hide();
|
||||||
|
$('#popupInsert').show();
|
||||||
|
}
|
||||||
|
else if(action == 'update'){
|
||||||
|
$('#popupUpdate').show();
|
||||||
|
$('#popupInsert').hide();
|
||||||
|
}
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type:"POST"
|
||||||
|
,url:"${pageContext.request.contextPath}/web/ve/aplct/fndtnEnhanceTrn/selectQustnrCommonAjax.do"
|
||||||
|
,data: {
|
||||||
|
"lctrDivCd" : "50" // 기반강화 -> 기소유예(60)도 같이써야함
|
||||||
|
// ,"eduChasiOrd" : chId
|
||||||
|
}
|
||||||
|
,dataType:'json'
|
||||||
|
,success:function(returnData){
|
||||||
|
console.log('returnData : ', returnData);
|
||||||
|
fn_makeQestnTbody(returnData);
|
||||||
|
|
||||||
|
// update면 선택한 목록 가져오기
|
||||||
|
if(action == 'update'){
|
||||||
|
fn_selectQestnTbody();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
,error:function(request , status, error){
|
||||||
|
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// 설문조사 문항 가져오기
|
||||||
|
function fn_makeQestnTbody(returnData){
|
||||||
|
|
||||||
|
$('#qustnrTmplatId').val(returnData.qustnrTmplatId);
|
||||||
|
$('#qestnrId').val(returnData.qestnrId);
|
||||||
|
|
||||||
|
|
||||||
|
var data = returnData.Comtnqustnrqesitm; // 이 변수에 AJAX를 통해 가져온 데이터가 저장되어 있다고 가정
|
||||||
|
|
||||||
|
$('#qestmInfoSize').val(data.length);
|
||||||
|
// tbody에 새로운 행들을 추가
|
||||||
|
var $tbody = $("#qestnTbody");
|
||||||
|
$tbody.empty(); // 기존의 tbody 내용을 비웁니다.
|
||||||
|
|
||||||
|
$.each(data, function(index, item) {
|
||||||
|
var $row = $("<tr></tr>");
|
||||||
|
|
||||||
|
// hiddem값 셋팅
|
||||||
|
$row.append('<input type="hidden" name="resultList[' + index + '].qestnrId" value="' + item.qestnrId + '">');
|
||||||
|
$row.append('<input type="hidden" name="resultList[' + index + '].qestnrQesitmId" value="' + item.qestnrQesitmId + '">');
|
||||||
|
$row.append('<input type="hidden" id="qustnrRsltId_'+index+'" name="resultList[' + index + '].qustnrRsltId" value="">');
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// 첫 번째 열: 설문 문항
|
||||||
|
$row.append('<th scope="row" class="t_left">' + (index + 1) + ') ' + item.qestnCn + '</th>');
|
||||||
|
|
||||||
|
// 평가 옵션 열 추가
|
||||||
|
var inputTypes = ['verySatisfied', 'satisfied', 'neither', 'dissatisfied', 'veryDissatisfied'];
|
||||||
|
$.each(inputTypes, function(i, type) {
|
||||||
|
var inputId = type + '_' + index;
|
||||||
|
var $cell = $('<td></td>');
|
||||||
|
var $label = $('<label for="' + inputId + '" class="label">' + type + '</label>');
|
||||||
|
var $input = $('<input type="radio" class="popupInput" id="' + inputId + '" name="resultList[' + index + '].responseRadio" value="' + type + '">');
|
||||||
|
|
||||||
|
$cell.append($label).append($input);
|
||||||
|
$row.append($cell);
|
||||||
|
});
|
||||||
|
$tbody.append($row);
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function srvySendSubmit(type){
|
||||||
|
|
||||||
|
var isValid = true;
|
||||||
|
$("#qestnTbody tr").each(function(index) {
|
||||||
|
// 해당 행의 라디오 버튼이 선택되었는지 확인
|
||||||
|
if ($("input[type='radio']:checked", this).length === 0) {
|
||||||
|
isValid = false;
|
||||||
|
alert("문항 " + (index + 1) + "을(를) 확인해주세요.");
|
||||||
|
isValid = false;
|
||||||
|
return false; // 반복 중지
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!isValid) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var masage = "";
|
||||||
|
if(type == 'i'){
|
||||||
|
masage = "설문결과를 등록 하시겠습니까?";
|
||||||
|
$("#qustnrIemType").val("insert")
|
||||||
|
}else if(type == 'u'){
|
||||||
|
masage = "설문결과를 수정 하시겠습니까?";
|
||||||
|
$("#qustnrIemType").val("update")
|
||||||
|
}
|
||||||
|
|
||||||
|
if(confirm(masage)){
|
||||||
|
var data = new FormData(document.getElementById("srvyPopupForm"));
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type:"POST"
|
||||||
|
,url:"${pageContext.request.contextPath}/web/ve/aplct/fndtnEnhanceTrn/mergeSrvyInfoAjax.do"
|
||||||
|
,data: data
|
||||||
|
,dataType:'json'
|
||||||
|
,async: false
|
||||||
|
,processData: false
|
||||||
|
,contentType: false
|
||||||
|
,cache: false
|
||||||
|
,success:function(returnData){
|
||||||
|
if(returnData.result == 'success'){
|
||||||
|
|
||||||
|
|
||||||
|
if(type == 'i'){
|
||||||
|
alert("설문결과가 등록 되었습니다.");
|
||||||
|
}else if(type == 'u'){
|
||||||
|
alert("설문결과가 수정 되었습니다.");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
window.location.reload();
|
||||||
|
}else if(returnData.result == 'fail'){
|
||||||
|
alert(returnData.msg);
|
||||||
|
location.href="${pageContext.request.contextPath}/web/user/login/ssoLogin.do?test=test";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
,error:function(request , status, error){
|
||||||
|
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function fn_selectQestnTbody(){
|
||||||
|
|
||||||
|
var data = new FormData(document.getElementById("srvyPopupForm"));
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type:"POST"
|
||||||
|
,url:"${pageContext.request.contextPath}/web/ve/aplct/fndtnEnhanceTrn/selectSrvyInfoAjax.do"
|
||||||
|
,data: data
|
||||||
|
,dataType:'json'
|
||||||
|
,async: false
|
||||||
|
,processData: false
|
||||||
|
,contentType: false
|
||||||
|
,cache: false
|
||||||
|
,success:function(returnData){
|
||||||
|
if(returnData.result == 'success'){
|
||||||
|
$('#qestnrRespondId').val(returnData.respondId);
|
||||||
|
$.each(returnData.data, function(index, item) {
|
||||||
|
console.log('#'+item.verySatisfied+'_'+index);
|
||||||
|
|
||||||
|
$('#qustnrRsltId'+'_'+index).val(item.qustnrRsltId);
|
||||||
|
|
||||||
|
|
||||||
|
if(item.verySatisfied == '1') {
|
||||||
|
$('#verySatisfied'+'_'+index).prop('checked', true);
|
||||||
|
}
|
||||||
|
if(item.satisfied == '1') {
|
||||||
|
$('#satisfied'+'_'+index).prop('checked', true);
|
||||||
|
}
|
||||||
|
if(item.neither == '1') {
|
||||||
|
$('#neither'+'_'+index).prop('checked', true);
|
||||||
|
}
|
||||||
|
if(item.dissatisfied == '1') {
|
||||||
|
$('#dissatisfied'+'_'+index).prop('checked', true);
|
||||||
|
}
|
||||||
|
if(item.veryDissatisfied == '1') {
|
||||||
|
$('#veryDissatisfied'+'_'+index).prop('checked', true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
console.log('returnData : ', returnData);
|
||||||
|
|
||||||
|
}else if(returnData.result == 'fail'){
|
||||||
|
alert(returnData.msg);
|
||||||
|
// location.href="${pageContext.request.contextPath}/web/user/login/ssoLogin.do?test=test";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
,error:function(request , status, error){
|
||||||
|
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- content -->
|
<!-- content -->
|
||||||
@ -103,7 +297,6 @@ $(document).ready(function(){
|
|||||||
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEPrcsDetailVO.searchSortCnd}" />" />
|
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEPrcsDetailVO.searchSortCnd}" />" />
|
||||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEPrcsDetailVO.searchSortOrd}" />" />
|
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEPrcsDetailVO.searchSortOrd}" />" />
|
||||||
|
|
||||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="" />
|
|
||||||
<div class="cont_tit">
|
<div class="cont_tit">
|
||||||
<h2>신청목록</h2>
|
<h2>신청목록</h2>
|
||||||
<div class="sns_go">
|
<div class="sns_go">
|
||||||
@ -146,7 +339,7 @@ $(document).ready(function(){
|
|||||||
<caption>교육 목록표</caption>
|
<caption>교육 목록표</caption>
|
||||||
<colgroup>
|
<colgroup>
|
||||||
<col style="width:35%;">
|
<col style="width:35%;">
|
||||||
<col style="width:;">
|
<col style="width:10%;">
|
||||||
<col style="width:13%;">
|
<col style="width:13%;">
|
||||||
<col style="width:13%;">
|
<col style="width:13%;">
|
||||||
<col style="width:13%;">
|
<col style="width:13%;">
|
||||||
@ -174,10 +367,11 @@ $(document).ready(function(){
|
|||||||
<!-- 신청 승인상태 20 and 현재가 교육종료보다 이후 체크 1 -->
|
<!-- 신청 승인상태 20 and 현재가 교육종료보다 이후 체크 1 -->
|
||||||
<c:choose>
|
<c:choose>
|
||||||
<c:when test="${list.aprvlCd eq 20 and list.dateChk eq 1 and not list.qestRsltExists }">
|
<c:when test="${list.aprvlCd eq 20 and list.dateChk eq 1 and not list.qestRsltExists }">
|
||||||
<button type="button" title="설문등록" class="btnType04" data-tooltip="edu_in">설문등록</button>
|
<button type="button" class="btnType01" data-tooltip="sub37_pop01" onclick="selectQestnInfo('${list.eduAplctOrd}','insert')" title="팝업 열림">설문등록</button>
|
||||||
|
<!-- <button type="button" title="설문등록" class="btnType04" data-tooltip="edu_in">설문등록</button> -->
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:when test="${list.aprvlCd eq 20 and list.dateChk eq 1 and list.qestRsltExists }">
|
<c:when test="${list.aprvlCd eq 20 and list.dateChk eq 1 and list.qestRsltExists }">
|
||||||
설문완료
|
<button type="button" class="btnType01" data-tooltip="sub37_pop01" onclick="selectQestnInfo('${list.eduAplctOrd}','update')" title="팝업 열림">설문수정</button>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
-
|
-
|
||||||
@ -187,7 +381,7 @@ $(document).ready(function(){
|
|||||||
<td>
|
<td>
|
||||||
<c:choose>
|
<c:choose>
|
||||||
<c:when test="${list.qestRsltExists }">
|
<c:when test="${list.qestRsltExists }">
|
||||||
<button type="button" title="출력" class="btnType03">출력</button>
|
<button type="button" title="이수증" class="btnType01" onclick="fncCmpltCrtfc('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');">이수증</button>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:when test="${list.dateChk eq 1 and not list.qestRsltExists}">
|
<c:when test="${list.dateChk eq 1 and not list.qestRsltExists}">
|
||||||
교육완료
|
교육완료
|
||||||
@ -197,7 +391,6 @@ $(document).ready(function(){
|
|||||||
</c:otherwise>
|
</c:otherwise>
|
||||||
</c:choose>
|
</c:choose>
|
||||||
|
|
||||||
<button type="button" title="이수증" class="btnType01" onclick="fncCmpltCrtfc('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');">이수증테스트</button>
|
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<!-- <td>-</td> -->
|
<!-- <td>-</td> -->
|
||||||
@ -228,6 +421,72 @@ $(document).ready(function(){
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- 강의만족도 결과 등록 팝업 -->
|
||||||
|
<form id="srvyPopupForm" name="srvyPopupForm" method="post" >
|
||||||
|
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="">
|
||||||
|
<input type="hidden" name="qustnrTmplatId" id="qustnrTmplatId" value="${qustnrTmplatId}">
|
||||||
|
<input type="hidden" name="qestnrId" id="qestnrId" value="${qestnrId}">
|
||||||
|
<input type="hidden" id="qestmInfoSize" value="${fn:length(Comtnqustnrqesitm)}">
|
||||||
|
|
||||||
|
<input type="hidden" name="qestnrRespondId" id="qestnrRespondId" value="">
|
||||||
|
<input type="hidden" name="qustnrIemType" id="qustnrIemType" value="">
|
||||||
|
|
||||||
|
<div class="tooltip-wrap">
|
||||||
|
<div class="popup_wrap popType05" tabindex="0" data-tooltip-con="sub37_pop01" data-focus="sub37_pop01" data-focus-prev="sub37_pop01_close">
|
||||||
|
<div class="popup_tit">
|
||||||
|
<p>강의만족도 결과 등록</p>
|
||||||
|
<button class="btn_popup_close tooltip-close" data-focus="sub37_pop01_close" title="팝업 닫기"><i></i></button>
|
||||||
|
</div>
|
||||||
|
<div class="popup_cont">
|
||||||
|
<div class="cont_body">
|
||||||
|
|
||||||
|
<div class="pop_tb_type02">
|
||||||
|
<table>
|
||||||
|
<caption>평가문항, 매우만족, 만족, 보통, 불만족, 매우 불만족 입력</caption>
|
||||||
|
<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 id="qestnTbody">
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="pop_btn_wrap btn_layout01">
|
||||||
|
<div class="btn_left">
|
||||||
|
</div>
|
||||||
|
<div class="btn_center">
|
||||||
|
|
||||||
|
<button type="button" class="btnType05" id="popupInsert" onclick="srvySendSubmit('i');">제출</button>
|
||||||
|
|
||||||
|
<button type="button" class="btnType05" id="popupUpdate" onclick="srvySendSubmit('u');">수정</button>
|
||||||
|
|
||||||
|
<button type="button" class="btnType02 tooltip-close" data-focus-next="sub37_pop01" data-focus="sub37_pop01_close">취소</button>
|
||||||
|
</div>
|
||||||
|
<div class="btn_right">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
<!--// 강의만족도 결과 등록 팝업-->
|
||||||
|
|
||||||
<script src="http://119.193.215.98:8093/ReportingServer/html5/js/crownix-viewer.min.js"></script>
|
<script src="http://119.193.215.98:8093/ReportingServer/html5/js/crownix-viewer.min.js"></script>
|
||||||
<link rel="stylesheet" type="text/css" href="http://119.193.215.98:8093/ReportingServer/html5/css/crownix-viewer.min.css">
|
<link rel="stylesheet" type="text/css" href="http://119.193.215.98:8093/ReportingServer/html5/css/crownix-viewer.min.css">
|
||||||
<script>
|
<script>
|
||||||
|
|||||||
@ -206,9 +206,9 @@
|
|||||||
<div class="tb_tit02_left">
|
<div class="tb_tit02_left">
|
||||||
<div class="t_best q_title">Q&A</div>
|
<div class="t_best q_title">Q&A</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn_wrap1">
|
<!-- <div class="btn_wrap1"> -->
|
||||||
<button type="button" title="최근 교육 목록 더보기" class="con_more" onclick="location.href='/offedu/web/ve/aplct/fndtnEnhanceTrn/fndtnEduAplctList.do'">더보기</button>
|
<!-- <button type="button" title="최근 교육 목록 더보기" class="con_more" onclick="location.href='/offedu/web/ve/aplct/fndtnEnhanceTrn/fndtnEduAplctList.do'">더보기</button> -->
|
||||||
</div>
|
<!-- </div> -->
|
||||||
</div>
|
</div>
|
||||||
<div class="btn_right">
|
<div class="btn_right">
|
||||||
<button type="button" class="btnType04" data-tooltip="target_confirm_popup">교육문의</button>
|
<button type="button" class="btnType04" data-tooltip="target_confirm_popup">교육문의</button>
|
||||||
|
|||||||
@ -11,71 +11,32 @@
|
|||||||
<un:useConstants var="VeConstants" className="kcc.ve.cmm.VeConstants" />
|
<un:useConstants var="VeConstants" className="kcc.ve.cmm.VeConstants" />
|
||||||
<title>교육신청 목록 > 성인 찾아가는 저작권 교육 > 한국저작권위원회 저작권 교육 시스템</title>
|
<title>교육신청 목록 > 성인 찾아가는 저작권 교육 > 한국저작권위원회 저작권 교육 시스템</title>
|
||||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||||
|
<style type="text/css">
|
||||||
|
.fc-day-sat { color:#0000FF; } /* 토요일 */
|
||||||
|
.fc-day-sun { color:#FF0000; } /* 일요일 */
|
||||||
|
</style>
|
||||||
|
<link type="text/css" rel="stylesheet" href="<c:url value='/js/fullcalendar/5.9.0/main.css' />" />
|
||||||
|
<script type="text/javascript" src="<c:url value='/js/fullcalendar/5.9.0/main.js'/>"></script>
|
||||||
|
<script type="text/javascript" src="<c:url value='/js/fullcalendar/5.9.0/locales-all.js'/>"></script>
|
||||||
<script type="text/javaScript" language="javascript">
|
<script type="text/javaScript" language="javascript">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
|
$('#schduleManager').hide();
|
||||||
|
|
||||||
$('.tab_button').click(function(){
|
$('.tab_button').click(function(){
|
||||||
var type = $(this).data('info');
|
var type = $(this).data('info');
|
||||||
// list 타입이면 return;
|
// list 타입이면 return;
|
||||||
if(type === 'list')
|
if(type === 'list'){
|
||||||
|
$('#schduleManager').hide();
|
||||||
return false;
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
var data = fncEduSelect();
|
$('#schduleManager').show();
|
||||||
console.log('data : ', data);
|
|
||||||
|
|
||||||
// 월 하이라이트 체크
|
|
||||||
fn_MonthHL();
|
|
||||||
|
|
||||||
// 현재 날짜를 가져옵니다.
|
|
||||||
var today = new Date();
|
|
||||||
var currentMonth = today.getMonth() + 1;
|
|
||||||
|
|
||||||
// 데이터 추가 전 촐기화
|
|
||||||
$(".edu_program tbody").empty();
|
|
||||||
// 반복시작
|
|
||||||
$.each(data, function(index, item) {
|
|
||||||
var prcsNm = item.prcsNm;
|
|
||||||
var startDt = item.eduStrtPnttm;
|
|
||||||
// 교육 일수 구하기
|
|
||||||
var dayDiff = fn_dayDiff(item);
|
|
||||||
var newRow = $("<tr></tr>");
|
|
||||||
|
|
||||||
// prcsNm 값을 추가합니다.
|
|
||||||
newRow.append('<td class="edup_title">' + prcsNm + '</td>');
|
|
||||||
|
|
||||||
// dayDiff 값을 추가합니다.
|
|
||||||
newRow.append('<td class="edup_days">' + dayDiff + '</td>');
|
|
||||||
|
|
||||||
// 교육일정 칼럼을 초기화합니다.
|
|
||||||
for (var i = 1; i <= 12; i++) {
|
|
||||||
// 다음 월 class
|
|
||||||
var cellClass = "edup_pass"; // 기본값
|
|
||||||
|
|
||||||
// 전 월 class
|
|
||||||
if (i < currentMonth) {
|
|
||||||
cellClass = "edup_pre";
|
|
||||||
// 현재 월
|
|
||||||
} else if (i === currentMonth) {
|
|
||||||
cellClass = "edup_this";
|
|
||||||
}
|
|
||||||
if (i === parseInt(startDt.split('.')[1])) {
|
|
||||||
newRow.append('<td class="' + cellClass + '" onclick="fncGoDetail(\'' + item.prcsAplctPrdOrd + '\')" style="cursor:pointer;">' + parseInt(startDt.split('.')[2]) + '</td>');
|
|
||||||
} else {
|
|
||||||
newRow.append('<td class="' + cellClass + '"></td>');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 테이블에 새로운 행을 추가합니다.
|
|
||||||
$(".edu_program tbody").append(newRow);
|
|
||||||
|
|
||||||
});
|
|
||||||
//-- /반복끝
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$(".aplctBtn button").click(function(){
|
$(".aplctBtn button").click(function(){
|
||||||
var regForm = document.regForm;
|
var regForm = document.regForm;
|
||||||
regForm.prcsAplctPrdOrd.value = $(this).data('info');
|
regForm.prcsAplctPrdOrd.value = $(this).data('info');
|
||||||
@ -103,7 +64,6 @@ $(document).ready(function(){
|
|||||||
|
|
||||||
var ddlnCdText = '';
|
var ddlnCdText = '';
|
||||||
|
|
||||||
console.log('');
|
|
||||||
if (currentDate < strtPnttm) {
|
if (currentDate < strtPnttm) {
|
||||||
ddlnCdText = "접수전";
|
ddlnCdText = "접수전";
|
||||||
} else if (currentDate >= strtPnttm && currentDate <= endPnttm) {
|
} else if (currentDate >= strtPnttm && currentDate <= endPnttm) {
|
||||||
@ -125,6 +85,118 @@ $(document).ready(function(){
|
|||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
|
var calendarEl = document.getElementById('schduleManager');
|
||||||
|
|
||||||
|
var calendar = new FullCalendar.Calendar(calendarEl, {
|
||||||
|
locale: 'ko',
|
||||||
|
timezone : "local",
|
||||||
|
weekends : true,
|
||||||
|
editable : false,
|
||||||
|
firstDay : 0, //월요일이 먼저 오게 하려면 1
|
||||||
|
dayMaxEvents: true,
|
||||||
|
navLinks: false,
|
||||||
|
customButtons: {
|
||||||
|
myCustomButton: {
|
||||||
|
text: '오늘',
|
||||||
|
click: function(event, elm) {
|
||||||
|
alert('clicked the custom button!');
|
||||||
|
}
|
||||||
|
},viewWeekends : {
|
||||||
|
text : '주말',
|
||||||
|
click : function (event, elm) {
|
||||||
|
calendar.setOption("weekends" , calendar.getOption("weekends") ? false : true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},buttonText: {
|
||||||
|
listMonth: '일정'
|
||||||
|
},
|
||||||
|
headerToolbar: {
|
||||||
|
//left: 'prevYear nextYear today',
|
||||||
|
left: 'today',
|
||||||
|
center: 'prev title next',
|
||||||
|
//right: 'dayGridMonth,listMonth'
|
||||||
|
right: ''
|
||||||
|
},
|
||||||
|
eventSources: [
|
||||||
|
{
|
||||||
|
events: function(info, successCallback, failureCallback) {
|
||||||
|
var events = [];
|
||||||
|
console.log('info', info);
|
||||||
|
|
||||||
|
var s_todate = info.startStr;
|
||||||
|
ex_s_todate = info.startStr;
|
||||||
|
|
||||||
|
var data = fncEduSelect(s_todate);
|
||||||
|
console.log(data);
|
||||||
|
|
||||||
|
data.forEach(item => {
|
||||||
|
console.log(item);
|
||||||
|
item.url = '${pageContext.request.contextPath}/web/ve/aplct/sspnIdtmt/eduAplctDetail.do?prcsAplctPrdOrd='+item.prcsAplctPrdOrd; // 여기서 원하는 URL로 대체
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
events.push({
|
||||||
|
title: 'title',
|
||||||
|
start: '2023-11-10',
|
||||||
|
end: '2023-11-29',
|
||||||
|
url: '${pageContext.request.contextPath}/detail.do?seq='
|
||||||
|
});
|
||||||
|
// successCallback(events);
|
||||||
|
successCallback(data);
|
||||||
|
|
||||||
|
/*
|
||||||
|
$.ajax({
|
||||||
|
url: '<c:url value="/web/ve/instr/tngrVisitEdu/instrInfo/tngrSchduleManagerAjaxLoadData.do"/>',
|
||||||
|
type: 'POST',
|
||||||
|
dataType: 'json',
|
||||||
|
data: {
|
||||||
|
searchStartDt : "",
|
||||||
|
//searchStartDt : "",
|
||||||
|
searchStartDt : s_todate,
|
||||||
|
todate : info.start,
|
||||||
|
searchYearMonth : function(){
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
success: function(data) {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
successCallback(data);
|
||||||
|
|
||||||
|
// 날짜 계산
|
||||||
|
// setCalDate(data, info.startStr);
|
||||||
|
}
|
||||||
|
}); */
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
eventContent: function(arg, createElement) {
|
||||||
|
event.preventDefault();
|
||||||
|
console.log(arg.event._def.url);
|
||||||
|
// arg.event._def.url = "#none";
|
||||||
|
},
|
||||||
|
eventClick: function(info) {
|
||||||
|
info.jsEvent.preventDefault();
|
||||||
|
console.log('info.event._def.extendedProps : ', info);
|
||||||
|
location.href = info.event.url;
|
||||||
|
// schDetailPop(info.event._def.extendedProps.schSeq, info.event._def.extendedProps.schChasiSeq);
|
||||||
|
return false;
|
||||||
|
},
|
||||||
|
});
|
||||||
|
calendar.render();
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 대상자 이름, 생년월일, 대상자TB ID
|
// 대상자 이름, 생년월일, 대상자TB ID
|
||||||
function fncEduReg(trgtNm, dBirth, sspnIdtmtTrgtOrd){
|
function fncEduReg(trgtNm, dBirth, sspnIdtmtTrgtOrd){
|
||||||
var form = document.regForm;
|
var form = document.regForm;
|
||||||
@ -191,10 +263,14 @@ $(document).ready(function(){
|
|||||||
$("#monthTemp th:nth-child(" + currentMonth + ")").addClass("edup_this");
|
$("#monthTemp th:nth-child(" + currentMonth + ")").addClass("edup_this");
|
||||||
}
|
}
|
||||||
|
|
||||||
function fncEduSelect(){
|
function fncEduSelect(s_todate){
|
||||||
var returnVal = '';
|
var returnVal = '';
|
||||||
|
|
||||||
|
var form = document.selectForm ;
|
||||||
|
form.sTodate.value = s_todate;
|
||||||
|
|
||||||
var data = new FormData(document.getElementById("selectForm"));
|
var data = new FormData(document.getElementById("selectForm"));
|
||||||
var url = "${pageContext.request.contextPath}/web/ve/aplct/fndtnEnhanceTrn/eduSelectAjax.do";
|
var url = "${pageContext.request.contextPath}/web/ve/aplct/fndtnEnhanceTrn/selectSchduleManagerListAjax.do";
|
||||||
console.log(data);
|
console.log(data);
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type:"POST",
|
type:"POST",
|
||||||
@ -206,10 +282,9 @@ $(document).ready(function(){
|
|||||||
contentType: false,
|
contentType: false,
|
||||||
cache: false,
|
cache: false,
|
||||||
success:function(returnData){
|
success:function(returnData){
|
||||||
if(returnData.result == "success"){
|
|
||||||
console.log('returnData : ', returnData);
|
console.log('returnData : ', returnData);
|
||||||
returnVal = returnData.data;
|
// returnVal = returnData.data;
|
||||||
}
|
returnVal = returnData;
|
||||||
},
|
},
|
||||||
error:function(request , status, error){
|
error:function(request , status, error){
|
||||||
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||||
@ -307,6 +382,108 @@ $(document).ready(function(){
|
|||||||
$('#dBirth').val('');
|
$('#dBirth').val('');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
*##############################################################################
|
||||||
|
* START
|
||||||
|
*##############################################################################
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
// 날짜 계산
|
||||||
|
function setCalDate(data, startStr) {
|
||||||
|
// 현재월 구하기
|
||||||
|
startStr = startStr.substr(0, 10);
|
||||||
|
|
||||||
|
console.log('startStr : ', startStr);
|
||||||
|
|
||||||
|
startStr = startStr.replace(/-/g, "");
|
||||||
|
console.log('startStr : ', startStr);
|
||||||
|
startStr = startStr.replace(/./g, "");
|
||||||
|
|
||||||
|
var todayYear = startStr.substring(0,4);
|
||||||
|
var todayMonth = 0;
|
||||||
|
var todayDay = startStr.substring(6,8);
|
||||||
|
|
||||||
|
if (todayDay == "01") {
|
||||||
|
todayMonth = startStr.substring(4,6);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
if (startStr.substring(4,6) == "12") {
|
||||||
|
todayMonth = "01";
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
todayMonth = parseInt(startStr.substring(4,6), 10) + 1;
|
||||||
|
if (todayMonth < 10) {
|
||||||
|
todayMonth = "0" + todayMonth;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// End
|
||||||
|
//alert(todayMonth);
|
||||||
|
|
||||||
|
var monthCnt = 0;
|
||||||
|
var week1Cnt = 0, week2Cnt = 0, week3Cnt = 0, week4Cnt = 0, week5Cnt = 0, week6Cnt = 0;
|
||||||
|
|
||||||
|
var sHtml = "";
|
||||||
|
for (var j = 0; j < data.length; j++) {
|
||||||
|
var schStartDate = data[j].start.substr(0, 10);
|
||||||
|
schStartDate = replaceAll(schStartDate, "-", "");
|
||||||
|
schStartDate = replaceAll(schStartDate, ".", "");
|
||||||
|
schStartDate = replaceAll(schStartDate, "/", "");
|
||||||
|
|
||||||
|
var thisYear = schStartDate.substring(0,4);
|
||||||
|
var thisMonth = schStartDate.substring(4,6);
|
||||||
|
var thisDay = schStartDate.substring(6,8);
|
||||||
|
var thisWeek = getSecofWeek(schStartDate);
|
||||||
|
|
||||||
|
// 해당월 데이터만 처리
|
||||||
|
if (todayMonth == thisMonth) {
|
||||||
|
monthCnt++;
|
||||||
|
|
||||||
|
if (thisWeek == 1) {
|
||||||
|
week1Cnt++;
|
||||||
|
}
|
||||||
|
else if (thisWeek == 2) {
|
||||||
|
week2Cnt++;
|
||||||
|
}
|
||||||
|
else if (thisWeek == 3) {
|
||||||
|
week3Cnt++;
|
||||||
|
}
|
||||||
|
else if (thisWeek == 4) {
|
||||||
|
week4Cnt++;
|
||||||
|
}
|
||||||
|
else if (thisWeek == 5) {
|
||||||
|
week5Cnt++;
|
||||||
|
}
|
||||||
|
else if (thisWeek == 6) {
|
||||||
|
week6Cnt++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
sHtml += "전체 : " + monthCnt + "건";
|
||||||
|
sHtml += " (1주차 : " + week1Cnt + "건";
|
||||||
|
sHtml += ", 2주차 : " + week2Cnt + "건";
|
||||||
|
sHtml += ", 3주차 : " + week3Cnt + "건";
|
||||||
|
sHtml += ", 4주차 : " + week4Cnt + "건";
|
||||||
|
sHtml += ", 5주차 : " + week5Cnt + "건";
|
||||||
|
sHtml += ", 6주차 : " + week6Cnt + "건)";
|
||||||
|
|
||||||
|
sHtml += ' <button type="button" class="btn_down_excel" onclick="excelDownLoad();">일정현황 엑셀 다운로드</button>';
|
||||||
|
|
||||||
|
|
||||||
|
//$("#weekCnt").html(sHtml);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 해당일 주차 계산
|
||||||
|
function getSecofWeek(date) {
|
||||||
|
var d = new Date( date.substring(0,4), parseInt(date.substring(4,6))-1, date.substring(6,8) );
|
||||||
|
var fd = new Date( date.substring(0,4), parseInt(date.substring(4,6))-1, 1 );
|
||||||
|
|
||||||
|
return Math.ceil((parseInt(date.substring(6,8))+fd.getDay())/7);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- content -->
|
<!-- content -->
|
||||||
@ -314,6 +491,7 @@ $(document).ready(function(){
|
|||||||
|
|
||||||
<form name="selectForm" id="selectForm">
|
<form name="selectForm" id="selectForm">
|
||||||
<input type="hidden" name="lctrDivCd" value="60">
|
<input type="hidden" name="lctrDivCd" value="60">
|
||||||
|
<input type="hidden" name="sTodate" value="">
|
||||||
</form>
|
</form>
|
||||||
<form name="confirmForm" id="confirmForm">
|
<form name="confirmForm" id="confirmForm">
|
||||||
<input type="hidden" name="trgtNm">
|
<input type="hidden" name="trgtNm">
|
||||||
@ -464,84 +642,7 @@ $(document).ready(function(){
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="tab_content">
|
<div class="tab_content" id="schduleManager">
|
||||||
|
|
||||||
|
|
||||||
<!-- <div class="list_top">
|
|
||||||
<div class="list_top_left">
|
|
||||||
<label for="" class="label">교육과정 선택</label>
|
|
||||||
<select class="selType1">
|
|
||||||
<option for="">전체</option>
|
|
||||||
<option for="">지난교육일정</option>
|
|
||||||
<option for="">당월교육일정</option>
|
|
||||||
<option for="">교육예정일정</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
|
||||||
<div class="btn_wrap">
|
|
||||||
<div class="calendar_wrap">
|
|
||||||
<duet-date-picker identifier="date" name="searchStartDt" class="startDate hydrated" value=""></duet-date-picker>
|
|
||||||
</div>
|
|
||||||
~
|
|
||||||
<div class="calendar_wrap">
|
|
||||||
<duet-date-picker identifier="date" name="searchEndDt" class="endDate hydrated" value=""></duet-date-picker>
|
|
||||||
</div>
|
|
||||||
<button type="button" class="btnType01">검색</button>
|
|
||||||
</div>
|
|
||||||
</div> -->
|
|
||||||
|
|
||||||
<div class="edup_result">
|
|
||||||
<div>총 <span>6</span>개의 검색결과가 있습니다.</div>
|
|
||||||
<ul>
|
|
||||||
<li class="pass">지난교육일정</li>
|
|
||||||
<li class="this">당월교육일정</li>
|
|
||||||
<li class="pre">교육예정일정</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="edu_program">
|
|
||||||
<table>
|
|
||||||
<caption>교육일정표</caption>
|
|
||||||
<colgroup>
|
|
||||||
<col style="width: ;">
|
|
||||||
<col style="width: ;">
|
|
||||||
<col style="width:4%;">
|
|
||||||
<col style="width:4%;">
|
|
||||||
<col style="width:4%;">
|
|
||||||
<col style="width:4%;">
|
|
||||||
<col style="width:4%;">
|
|
||||||
<col style="width:4%;">
|
|
||||||
<col style="width:4%;">
|
|
||||||
<col style="width:4%;">
|
|
||||||
<col style="width:4%;">
|
|
||||||
<col style="width:4%;">
|
|
||||||
<col style="width:4%;">
|
|
||||||
<col style="width:4%;">
|
|
||||||
</colgroup>
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th class="first" rowspan="2">교육과정명<br/><span class="ep_text">(상세 내용을 보시려면 과정을 클릭하세요)</span></th>
|
|
||||||
<th rowspan="2">일수</th>
|
|
||||||
<th colspan="12">교육일정<sapn class="ep_text">(교육 시작일)</sapn></th>
|
|
||||||
</tr>
|
|
||||||
<tr id="monthTemp">
|
|
||||||
<th>1</th>
|
|
||||||
<th>2</th>
|
|
||||||
<th>3</th>
|
|
||||||
<th>4</th>
|
|
||||||
<th>5</th>
|
|
||||||
<th>6</th>
|
|
||||||
<th>7</th>
|
|
||||||
<th>8</th>
|
|
||||||
<th>9</th>
|
|
||||||
<th>10</th>
|
|
||||||
<th>11</th>
|
|
||||||
<th>12</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -200,6 +200,9 @@
|
|||||||
<div class="tb_tit02_left">
|
<div class="tb_tit02_left">
|
||||||
<div class="t_best q_title">Q&A</div>
|
<div class="t_best q_title">Q&A</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="btn_wrap1">
|
||||||
|
<button type="button" title="최근 교육 목록 더보기" class="con_more" onclick="location.href='/offedu/web/ve/aplct/fndtnEnhanceTrn/fndtnEduAplctList.do'">더보기</button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn_right">
|
<div class="btn_right">
|
||||||
<button type="button" class="btnType04" data-tooltip="target_confirm_popup">교육문의</button>
|
<button type="button" class="btnType04" data-tooltip="target_confirm_popup">교육문의</button>
|
||||||
|
|||||||
@ -178,6 +178,200 @@ $(document).ready(function(){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 설문조사 버튼 클릭 이벤트
|
||||||
|
function selectQestnInfo(id, action){
|
||||||
|
|
||||||
|
$('#srvyPopupForm #eduAplctOrd').val(id);
|
||||||
|
$('#eduAplctOrd').val(id);
|
||||||
|
if(action == 'insert'){
|
||||||
|
$('#popupUpdate').hide();
|
||||||
|
$('#popupInsert').show();
|
||||||
|
}
|
||||||
|
else if(action == 'update'){
|
||||||
|
$('#popupUpdate').show();
|
||||||
|
$('#popupInsert').hide();
|
||||||
|
}
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type:"POST"
|
||||||
|
,url:"${pageContext.request.contextPath}/web/ve/aplct/fndtnEnhanceTrn/selectQustnrCommonAjax.do"
|
||||||
|
,data: {
|
||||||
|
"lctrDivCd" : "60" // 기반강화 -> 기소유예(60)도 같이써야함
|
||||||
|
// ,"eduChasiOrd" : chId
|
||||||
|
}
|
||||||
|
,dataType:'json'
|
||||||
|
,success:function(returnData){
|
||||||
|
console.log('returnData : ', returnData);
|
||||||
|
fn_makeQestnTbody(returnData);
|
||||||
|
|
||||||
|
// update면 선택한 목록 가져오기
|
||||||
|
if(action == 'update'){
|
||||||
|
fn_selectQestnTbody();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
,error:function(request , status, error){
|
||||||
|
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// 설문조사 문항 가져오기
|
||||||
|
function fn_makeQestnTbody(returnData){
|
||||||
|
|
||||||
|
$('#qustnrTmplatId').val(returnData.qustnrTmplatId);
|
||||||
|
$('#qestnrId').val(returnData.qestnrId);
|
||||||
|
|
||||||
|
|
||||||
|
var data = returnData.Comtnqustnrqesitm; // 이 변수에 AJAX를 통해 가져온 데이터가 저장되어 있다고 가정
|
||||||
|
|
||||||
|
$('#qestmInfoSize').val(data.length);
|
||||||
|
// tbody에 새로운 행들을 추가
|
||||||
|
var $tbody = $("#qestnTbody");
|
||||||
|
$tbody.empty(); // 기존의 tbody 내용을 비웁니다.
|
||||||
|
|
||||||
|
$.each(data, function(index, item) {
|
||||||
|
var $row = $("<tr></tr>");
|
||||||
|
|
||||||
|
// hiddem값 셋팅
|
||||||
|
$row.append('<input type="hidden" name="resultList[' + index + '].qestnrId" value="' + item.qestnrId + '">');
|
||||||
|
$row.append('<input type="hidden" name="resultList[' + index + '].qestnrQesitmId" value="' + item.qestnrQesitmId + '">');
|
||||||
|
$row.append('<input type="hidden" id="qustnrRsltId_'+index+'" name="resultList[' + index + '].qustnrRsltId" value="">');
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// 첫 번째 열: 설문 문항
|
||||||
|
$row.append('<th scope="row" class="t_left">' + (index + 1) + ') ' + item.qestnCn + '</th>');
|
||||||
|
|
||||||
|
// 평가 옵션 열 추가
|
||||||
|
var inputTypes = ['verySatisfied', 'satisfied', 'neither', 'dissatisfied', 'veryDissatisfied'];
|
||||||
|
$.each(inputTypes, function(i, type) {
|
||||||
|
var inputId = type + '_' + index;
|
||||||
|
var $cell = $('<td></td>');
|
||||||
|
var $label = $('<label for="' + inputId + '" class="label">' + type + '</label>');
|
||||||
|
var $input = $('<input type="radio" class="popupInput" id="' + inputId + '" name="resultList[' + index + '].responseRadio" value="' + type + '">');
|
||||||
|
|
||||||
|
$cell.append($label).append($input);
|
||||||
|
$row.append($cell);
|
||||||
|
});
|
||||||
|
$tbody.append($row);
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function srvySendSubmit(type){
|
||||||
|
|
||||||
|
var isValid = true;
|
||||||
|
$("#qestnTbody tr").each(function(index) {
|
||||||
|
// 해당 행의 라디오 버튼이 선택되었는지 확인
|
||||||
|
if ($("input[type='radio']:checked", this).length === 0) {
|
||||||
|
isValid = false;
|
||||||
|
alert("문항 " + (index + 1) + "을(를) 확인해주세요.");
|
||||||
|
isValid = false;
|
||||||
|
return false; // 반복 중지
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!isValid) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var masage = "";
|
||||||
|
if(type == 'i'){
|
||||||
|
masage = "설문결과를 등록 하시겠습니까?";
|
||||||
|
$("#qustnrIemType").val("insert")
|
||||||
|
}else if(type == 'u'){
|
||||||
|
masage = "설문결과를 수정 하시겠습니까?";
|
||||||
|
$("#qustnrIemType").val("update")
|
||||||
|
}
|
||||||
|
|
||||||
|
if(confirm(masage)){
|
||||||
|
var data = new FormData(document.getElementById("srvyPopupForm"));
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type:"POST"
|
||||||
|
,url:"${pageContext.request.contextPath}/web/ve/aplct/fndtnEnhanceTrn/mergeSrvyInfoAjax.do"
|
||||||
|
,data: data
|
||||||
|
,dataType:'json'
|
||||||
|
,async: false
|
||||||
|
,processData: false
|
||||||
|
,contentType: false
|
||||||
|
,cache: false
|
||||||
|
,success:function(returnData){
|
||||||
|
if(returnData.result == 'success'){
|
||||||
|
|
||||||
|
|
||||||
|
if(type == 'i'){
|
||||||
|
alert("설문결과가 등록 되었습니다.");
|
||||||
|
}else if(type == 'u'){
|
||||||
|
alert("설문결과가 수정 되었습니다.");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
window.location.reload();
|
||||||
|
}else if(returnData.result == 'fail'){
|
||||||
|
alert(returnData.msg);
|
||||||
|
location.href="${pageContext.request.contextPath}/web/user/login/ssoLogin.do?test=test";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
,error:function(request , status, error){
|
||||||
|
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function fn_selectQestnTbody(){
|
||||||
|
|
||||||
|
var data = new FormData(document.getElementById("srvyPopupForm"));
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type:"POST"
|
||||||
|
,url:"${pageContext.request.contextPath}/web/ve/aplct/fndtnEnhanceTrn/selectSrvyInfoAjax.do"
|
||||||
|
,data: data
|
||||||
|
,dataType:'json'
|
||||||
|
,async: false
|
||||||
|
,processData: false
|
||||||
|
,contentType: false
|
||||||
|
,cache: false
|
||||||
|
,success:function(returnData){
|
||||||
|
if(returnData.result == 'success'){
|
||||||
|
$('#qestnrRespondId').val(returnData.respondId);
|
||||||
|
$.each(returnData.data, function(index, item) {
|
||||||
|
console.log('#'+item.verySatisfied+'_'+index);
|
||||||
|
|
||||||
|
$('#qustnrRsltId'+'_'+index).val(item.qustnrRsltId);
|
||||||
|
|
||||||
|
|
||||||
|
if(item.verySatisfied == '1') {
|
||||||
|
$('#verySatisfied'+'_'+index).prop('checked', true);
|
||||||
|
}
|
||||||
|
if(item.satisfied == '1') {
|
||||||
|
$('#satisfied'+'_'+index).prop('checked', true);
|
||||||
|
}
|
||||||
|
if(item.neither == '1') {
|
||||||
|
$('#neither'+'_'+index).prop('checked', true);
|
||||||
|
}
|
||||||
|
if(item.dissatisfied == '1') {
|
||||||
|
$('#dissatisfied'+'_'+index).prop('checked', true);
|
||||||
|
}
|
||||||
|
if(item.veryDissatisfied == '1') {
|
||||||
|
$('#veryDissatisfied'+'_'+index).prop('checked', true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
console.log('returnData : ', returnData);
|
||||||
|
|
||||||
|
}else if(returnData.result == 'fail'){
|
||||||
|
alert(returnData.msg);
|
||||||
|
// location.href="${pageContext.request.contextPath}/web/user/login/ssoLogin.do?test=test";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
,error:function(request , status, error){
|
||||||
|
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- content -->
|
<!-- content -->
|
||||||
@ -253,7 +447,7 @@ $(document).ready(function(){
|
|||||||
<col style="width:10%;">
|
<col style="width:10%;">
|
||||||
<col style="width:13%;">
|
<col style="width:13%;">
|
||||||
<col style="width:13%;">
|
<col style="width:13%;">
|
||||||
<col style="width:13%;">
|
<%-- <col style="width:13%;"> --%>
|
||||||
</colgroup>
|
</colgroup>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@ -261,7 +455,7 @@ $(document).ready(function(){
|
|||||||
<th>교육일자</th>
|
<th>교육일자</th>
|
||||||
<th>신청결과</th>
|
<th>신청결과</th>
|
||||||
<th>설문조사</th>
|
<th>설문조사</th>
|
||||||
<th>이수증</th>
|
<!-- <th>이수증</th> -->
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@ -328,23 +522,23 @@ $(document).ready(function(){
|
|||||||
and list.aplctStateCd ne 30
|
and list.aplctStateCd ne 30
|
||||||
and list.aprvlCd ne 40
|
and list.aprvlCd ne 40
|
||||||
}">
|
}">
|
||||||
<button type="button" title="설문등록" class="btnType04" data-tooltip="edu_in">설문등록</button>
|
<button type="button" class="btnType01" data-tooltip="sub37_pop01" onclick="selectQestnInfo('${list.eduAplctOrd}','insert')" title="팝업 열림">설문등록</button>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:when test="${list.aprvlCd eq 20 and list.dateChk eq 1 and list.qestRsltExists }">
|
<c:when test="${list.aprvlCd eq 20 and list.dateChk eq 1 and list.qestRsltExists }">
|
||||||
설문완료
|
<button type="button" class="btnType01" data-tooltip="sub37_pop01" onclick="selectQestnInfo('${list.eduAplctOrd}','update')" title="팝업 열림">설문수정</button>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
-
|
-
|
||||||
</c:otherwise>
|
</c:otherwise>
|
||||||
</c:choose>
|
</c:choose>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<!-- <td> -->
|
||||||
<!--
|
<!--
|
||||||
취소상태
|
취소상태
|
||||||
list.aplctStateCd ne 30
|
list.aplctStateCd ne 30
|
||||||
list.aprvlCd ne 40
|
list.aprvlCd ne 40
|
||||||
-->
|
-->
|
||||||
<c:choose>
|
<%-- <c:choose>
|
||||||
<c:when test="${list.qestRsltExists }">
|
<c:when test="${list.qestRsltExists }">
|
||||||
<button type="button" title="출력" class="btnType03">출력</button>
|
<button type="button" title="출력" class="btnType03">출력</button>
|
||||||
</c:when>
|
</c:when>
|
||||||
@ -358,11 +552,11 @@ $(document).ready(function(){
|
|||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
-
|
-
|
||||||
</c:otherwise>
|
</c:otherwise>
|
||||||
</c:choose>
|
</c:choose> --%>
|
||||||
|
|
||||||
<button type="button" title="이수증" class="btnType01" onclick="fncCmpltCrtfc('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');">이수증테스트</button>
|
<%-- <button type="button" title="이수증" class="btnType01" onclick="fncCmpltCrtfc('<c:out value="${list.prcsAplctPrdOrd}"/>', '<c:out value="${list.eduAplctOrd}"/>');">이수증테스트</button> --%>
|
||||||
|
|
||||||
</td>
|
<!-- </td> -->
|
||||||
<!-- <td>-</td> -->
|
<!-- <td>-</td> -->
|
||||||
</tr>
|
</tr>
|
||||||
</c:forEach>
|
</c:forEach>
|
||||||
@ -459,6 +653,71 @@ $(document).ready(function(){
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- 강의만족도 결과 등록 팝업 -->
|
||||||
|
<form id="srvyPopupForm" name="srvyPopupForm" method="post" >
|
||||||
|
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="">
|
||||||
|
<input type="hidden" name="qustnrTmplatId" id="qustnrTmplatId" value="${qustnrTmplatId}">
|
||||||
|
<input type="hidden" name="qestnrId" id="qestnrId" value="${qestnrId}">
|
||||||
|
<input type="hidden" id="qestmInfoSize" value="${fn:length(Comtnqustnrqesitm)}">
|
||||||
|
|
||||||
|
<input type="hidden" name="qestnrRespondId" id="qestnrRespondId" value="">
|
||||||
|
<input type="hidden" name="qustnrIemType" id="qustnrIemType" value="">
|
||||||
|
|
||||||
|
<div class="tooltip-wrap">
|
||||||
|
<div class="popup_wrap popType05" tabindex="0" data-tooltip-con="sub37_pop01" data-focus="sub37_pop01" data-focus-prev="sub37_pop01_close">
|
||||||
|
<div class="popup_tit">
|
||||||
|
<p>강의만족도 결과 등록</p>
|
||||||
|
<button class="btn_popup_close tooltip-close" data-focus="sub37_pop01_close" title="팝업 닫기"><i></i></button>
|
||||||
|
</div>
|
||||||
|
<div class="popup_cont">
|
||||||
|
<div class="cont_body">
|
||||||
|
|
||||||
|
<div class="pop_tb_type02">
|
||||||
|
<table>
|
||||||
|
<caption>평가문항, 매우만족, 만족, 보통, 불만족, 매우 불만족 입력</caption>
|
||||||
|
<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 id="qestnTbody">
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="pop_btn_wrap btn_layout01">
|
||||||
|
<div class="btn_left">
|
||||||
|
</div>
|
||||||
|
<div class="btn_center">
|
||||||
|
|
||||||
|
<button type="button" class="btnType05" id="popupInsert" onclick="srvySendSubmit('i');">제출</button>
|
||||||
|
|
||||||
|
<button type="button" class="btnType05" id="popupUpdate" onclick="srvySendSubmit('u');">수정</button>
|
||||||
|
|
||||||
|
<button type="button" class="btnType02 tooltip-close" data-focus-next="sub37_pop01" data-focus="sub37_pop01_close">취소</button>
|
||||||
|
</div>
|
||||||
|
<div class="btn_right">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
<!--// 강의만족도 결과 등록 팝업-->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user