2023-12-05 09:38 설문내용 수정
This commit is contained in:
parent
495fadb6b5
commit
a701feaf16
@ -10,7 +10,6 @@ import org.springframework.stereotype.Service;
|
|||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
|
|
||||||
import kcc.let.uss.olp.qri.service.EgovQustnrRespondInfoService;
|
import kcc.let.uss.olp.qri.service.EgovQustnrRespondInfoService;
|
||||||
import kcc.ve.cmm.VeConstants;
|
|
||||||
import kcc.ve.oprtn.qestnr.service.VEALettnQestnrMIXService;
|
import kcc.ve.oprtn.qestnr.service.VEALettnQestnrMIXService;
|
||||||
import kcc.ve.oprtn.qestnr.service.VEAQestnrVO;
|
import kcc.ve.oprtn.qestnr.service.VEAQestnrVO;
|
||||||
|
|
||||||
@ -46,7 +45,8 @@ public class QustnrCommonUtil {
|
|||||||
)throws Exception{
|
)throws Exception{
|
||||||
//설문 문항 정보
|
//설문 문항 정보
|
||||||
{
|
{
|
||||||
System.out.println("===========!!===========");
|
//설문지 정보
|
||||||
|
System.out.println("===========!설문지정보!===========");
|
||||||
VEAQestnrVO vEAQestnrVO = new VEAQestnrVO();
|
VEAQestnrVO vEAQestnrVO = new VEAQestnrVO();
|
||||||
vEAQestnrVO.setSiteId(p_siteId); //청소년
|
vEAQestnrVO.setSiteId(p_siteId); //청소년
|
||||||
vEAQestnrVO.setSiteIdCd(p_siteIdCd); //10-기본설문, 20-신청자설문, 30-강사설문
|
vEAQestnrVO.setSiteIdCd(p_siteIdCd); //10-기본설문, 20-신청자설문, 30-강사설문
|
||||||
@ -56,7 +56,7 @@ public class QustnrCommonUtil {
|
|||||||
Map <String, Object> commandMap =new HashMap<String, Object>();
|
Map <String, Object> commandMap =new HashMap<String, Object>();
|
||||||
commandMap.put("qestnrTmplatId", p_qestnrTmplatId);
|
commandMap.put("qestnrTmplatId", p_qestnrTmplatId);
|
||||||
commandMap.put("qestnrId",vEAQestnrVO.getQestnrId()); //문제 ID
|
commandMap.put("qestnrId",vEAQestnrVO.getQestnrId()); //문제 ID
|
||||||
System.out.println("=====");
|
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());
|
||||||
|
|||||||
@ -157,6 +157,8 @@ public interface EgovQustnrRespondInfoService {
|
|||||||
// 차수별 설문 조회
|
// 차수별 설문 조회
|
||||||
public List<QustnrRespondInfoVO> selectChasiSrvyList(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception;
|
public List<QustnrRespondInfoVO> selectChasiSrvyList(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception;
|
||||||
|
|
||||||
|
// 차수별 설문 조회
|
||||||
|
public List<QustnrRespondInfoVO> selectChasiSrvyList202312(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception;
|
||||||
|
|
||||||
public List<QustnrRespondInfoVO> selectChasiSrvyExcelList(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception;
|
public List<QustnrRespondInfoVO> selectChasiSrvyExcelList(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception;
|
||||||
|
|
||||||
|
|||||||
@ -111,6 +111,17 @@ public class QustnrRespondInfoVO implements Serializable {
|
|||||||
|
|
||||||
private String qustnrIemType = "";
|
private String qustnrIemType = "";
|
||||||
|
|
||||||
|
private String qustnrRespondId = "";
|
||||||
|
|
||||||
|
private String qustnrTTmplatId = "";
|
||||||
|
|
||||||
|
private String qestnCn = "";
|
||||||
|
|
||||||
|
private String mxmmChoiseCo = "";
|
||||||
|
|
||||||
|
private String qustnrQesitmId = "";
|
||||||
|
|
||||||
|
|
||||||
// 20231124 이호영
|
// 20231124 이호영
|
||||||
// 강화 기반은 라디오 버튼이라 변수 추가함
|
// 강화 기반은 라디오 버튼이라 변수 추가함
|
||||||
private String responseRadio = "";
|
private String responseRadio = "";
|
||||||
@ -470,4 +481,64 @@ public class QustnrRespondInfoVO implements Serializable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public String getQustnrRespondId() {
|
||||||
|
return qustnrRespondId;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public void setQustnrRespondId(String qustnrRespondId) {
|
||||||
|
this.qustnrRespondId = qustnrRespondId;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public String getQustnrTTmplatId() {
|
||||||
|
return qustnrTTmplatId;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public void setQustnrTTmplatId(String qustnrTTmplatId) {
|
||||||
|
this.qustnrTTmplatId = qustnrTTmplatId;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public String getQestnCn() {
|
||||||
|
return qestnCn;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public void setQestnCn(String qestnCn) {
|
||||||
|
this.qestnCn = qestnCn;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public String getMxmmChoiseCo() {
|
||||||
|
return mxmmChoiseCo;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public void setMxmmChoiseCo(String mxmmChoiseCo) {
|
||||||
|
this.mxmmChoiseCo = mxmmChoiseCo;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public String getQustnrQesitmId() {
|
||||||
|
return qustnrQesitmId;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public void setQustnrQesitmId(String qustnrQesitmId) {
|
||||||
|
this.qustnrQesitmId = qustnrQesitmId;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,6 +3,10 @@ package kcc.let.uss.olp.qri.service.impl;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
|
import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl;
|
||||||
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
|
import egovframework.rte.fdl.idgnr.EgovIdGnrService;
|
||||||
import kcc.com.cmm.ComDefaultVO;
|
import kcc.com.cmm.ComDefaultVO;
|
||||||
@ -11,10 +15,6 @@ import kcc.let.uss.olp.qri.service.QustnrRespondInfoVO;
|
|||||||
import kcc.let.uss.olp.qrm.service.QustnrRespondManageVO;
|
import kcc.let.uss.olp.qrm.service.QustnrRespondManageVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
|
|
||||||
import org.springframework.stereotype.Service;
|
|
||||||
/**
|
/**
|
||||||
* 설문조사 ServiceImpl Class 구현
|
* 설문조사 ServiceImpl Class 구현
|
||||||
* @author 공통서비스 장동한
|
* @author 공통서비스 장동한
|
||||||
@ -234,6 +234,12 @@ public class EgovQustnrRespondInfoServiceImpl extends EgovAbstractServiceImpl im
|
|||||||
public List<QustnrRespondInfoVO> selectChasiSrvyList(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception {
|
public List<QustnrRespondInfoVO> selectChasiSrvyList(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception {
|
||||||
return dao.selectChasiSrvyList(qustnrRespondInfoVO);
|
return dao.selectChasiSrvyList(qustnrRespondInfoVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<QustnrRespondInfoVO> selectChasiSrvyList202312(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception {
|
||||||
|
return dao.selectChasiSrvyList202312(qustnrRespondInfoVO);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public QustnrRespondInfoVO selectSiteIdQustnrTmplat(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception {
|
public QustnrRespondInfoVO selectSiteIdQustnrTmplat(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception {
|
||||||
return dao.selectSiteIdQustnrTmplat(qustnrRespondInfoVO);
|
return dao.selectSiteIdQustnrTmplat(qustnrRespondInfoVO);
|
||||||
|
|||||||
@ -3,14 +3,14 @@ package kcc.let.uss.olp.qri.service.impl;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
import egovframework.rte.psl.dataaccess.EgovAbstractDAO;
|
import egovframework.rte.psl.dataaccess.EgovAbstractDAO;
|
||||||
import kcc.com.cmm.ComDefaultVO;
|
import kcc.com.cmm.ComDefaultVO;
|
||||||
import kcc.let.uss.olp.qri.service.QustnrRespondInfoVO;
|
import kcc.let.uss.olp.qri.service.QustnrRespondInfoVO;
|
||||||
import kcc.let.uss.olp.qrm.service.QustnrRespondManageVO;
|
import kcc.let.uss.olp.qrm.service.QustnrRespondManageVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||||
|
|
||||||
import org.springframework.stereotype.Repository;
|
|
||||||
/**
|
/**
|
||||||
* 설문조사 Dao Class 구현
|
* 설문조사 Dao Class 구현
|
||||||
* @author 공통서비스 장동한
|
* @author 공통서비스 장동한
|
||||||
@ -193,6 +193,11 @@ public class QustnrRespondInfoDao extends EgovAbstractDAO {
|
|||||||
return (List<QustnrRespondInfoVO>) list("QustnrRespondInfo.selectChasiSrvyList", qustnrRespondInfoVO);
|
return (List<QustnrRespondInfoVO>) list("QustnrRespondInfo.selectChasiSrvyList", qustnrRespondInfoVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
public List<QustnrRespondInfoVO> selectChasiSrvyList202312(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception{
|
||||||
|
return (List<QustnrRespondInfoVO>) list("QustnrRespondInfo.selectChasiSrvyList202312", qustnrRespondInfoVO);
|
||||||
|
}
|
||||||
|
|
||||||
public QustnrRespondInfoVO selectSiteIdQustnrTmplat(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception{
|
public QustnrRespondInfoVO selectSiteIdQustnrTmplat(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception{
|
||||||
return (QustnrRespondInfoVO) select("QustnrRespondInfo.selectSiteIdQustnrTmplat", qustnrRespondInfoVO);
|
return (QustnrRespondInfoVO) select("QustnrRespondInfo.selectSiteIdQustnrTmplat", qustnrRespondInfoVO);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -412,7 +412,11 @@ public class EduEndAdultController {
|
|||||||
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||||
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_20);
|
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_20);
|
||||||
vEEduChasiVO.setPageIndex(0);
|
vEEduChasiVO.setPageIndex(0);
|
||||||
List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList(vEEduChasiVO);
|
|
||||||
|
vEEduChasiVO.setSiteId("20"); //설문정보를 위해서 설문지의 대상값을 넣는다. VE0011 10-청소년, 20-성인,30-체험, 40-외부, 50-기반, 60-기소
|
||||||
|
|
||||||
|
//List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList(vEEduChasiVO);
|
||||||
|
List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList202312(vEEduChasiVO);
|
||||||
|
|
||||||
//복호화
|
//복호화
|
||||||
vEEduChasiVOList = egovCryptoUtil.decryptVEEduChasiVOList(vEEduChasiVOList);
|
vEEduChasiVOList = egovCryptoUtil.decryptVEEduChasiVOList(vEEduChasiVOList);
|
||||||
|
|||||||
@ -15,13 +15,20 @@ import org.springframework.web.bind.annotation.ResponseBody;
|
|||||||
|
|
||||||
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||||
|
import kcc.com.utl.user.service.QustnrCommonUtil;
|
||||||
import kcc.kccadr.adjst.service.AdjstReqService;
|
import kcc.kccadr.adjst.service.AdjstReqService;
|
||||||
|
import kcc.let.uss.olp.qri.service.EgovQustnrRespondInfoService;
|
||||||
|
import kcc.let.uss.olp.qri.service.QustnrRespondInfoVO;
|
||||||
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
||||||
import kcc.ve.adv.tngr.stngInfo.service.VEAStngMixService;
|
import kcc.ve.adv.tngr.stngInfo.service.VEAStngMixService;
|
||||||
import kcc.ve.adv.tngr.stngInfo.service.VEAStngVO;
|
import kcc.ve.adv.tngr.stngInfo.service.VEAStngVO;
|
||||||
import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ScholInfoService;
|
import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ScholInfoService;
|
||||||
import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ScholInfoVO;
|
import kcc.ve.aplct.cpyrgExprnClsrm.exprnClsrmAplct.service.ScholInfoVO;
|
||||||
|
import kcc.ve.cmm.VeConstants;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||||
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiVO;
|
||||||
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
||||||
|
import kcc.ve.oprtn.qestnr.service.VEALettnQestnrMIXService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 학교검색(대국민)
|
* 학교검색(대국민)
|
||||||
@ -68,6 +75,23 @@ public class ScholInfoController {
|
|||||||
//강의설정 관리(MIX)
|
//강의설정 관리(MIX)
|
||||||
@Resource(name = "vEAStngMixService")
|
@Resource(name = "vEAStngMixService")
|
||||||
private VEAStngMixService vEAStngMixService;
|
private VEAStngMixService vEAStngMixService;
|
||||||
|
|
||||||
|
//교육과정신청
|
||||||
|
@Resource(name = "vEEduMIXService")
|
||||||
|
private VEEduMIXService vEEduMIXService;
|
||||||
|
|
||||||
|
//설문응답정보
|
||||||
|
@Resource(name = "egovQustnrRespondInfoService")
|
||||||
|
private EgovQustnrRespondInfoService egovQustnrRespondInfoService;
|
||||||
|
|
||||||
|
// 설문 util
|
||||||
|
@Resource(name = "qustnrCommonUtil")
|
||||||
|
private QustnrCommonUtil qustnrCommonUtil;
|
||||||
|
|
||||||
|
// 설문 복합 VEA_
|
||||||
|
@Resource(name = "vEALettnQestnrMIXService")
|
||||||
|
private VEALettnQestnrMIXService vEALettnQestnrMIXService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 학교정보 검색 팝업 리스트
|
* 학교정보 검색 팝업 리스트
|
||||||
*/
|
*/
|
||||||
@ -202,55 +226,6 @@ public class ScholInfoController {
|
|||||||
}
|
}
|
||||||
//calendarPopList.jsp
|
//calendarPopList.jsp
|
||||||
|
|
||||||
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
|
||||||
private PaginationInfo setPagingStep1(
|
|
||||||
ScholInfoVO scholInfoVO
|
|
||||||
)throws Exception{
|
|
||||||
// paging step1
|
|
||||||
PaginationInfo paginationInfo = new PaginationInfo();
|
|
||||||
paginationInfo.setCurrentPageNo(scholInfoVO.getPageIndex());
|
|
||||||
paginationInfo.setRecordCountPerPage(scholInfoVO.getPageUnit());
|
|
||||||
paginationInfo.setPageSize(5);
|
|
||||||
|
|
||||||
return paginationInfo;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
|
||||||
private ScholInfoVO setPagingStep2(
|
|
||||||
ScholInfoVO scholInfoVO
|
|
||||||
, PaginationInfo p_paginationInfo
|
|
||||||
)throws Exception{
|
|
||||||
// paging step2
|
|
||||||
scholInfoVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
|
||||||
scholInfoVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
|
||||||
scholInfoVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
|
||||||
|
|
||||||
if("".equals(scholInfoVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
|
||||||
scholInfoVO.setSearchSortCnd("schol_nm");
|
|
||||||
scholInfoVO.setSearchSortOrd("desc");
|
|
||||||
}
|
|
||||||
|
|
||||||
return scholInfoVO;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
|
||||||
private PaginationInfo setPagingStep3(
|
|
||||||
List<ScholInfoVO> p_scholInfoVOList
|
|
||||||
|
|
||||||
, PaginationInfo p_paginationInfo
|
|
||||||
)throws Exception{
|
|
||||||
// paging step3
|
|
||||||
int totCnt = 0;
|
|
||||||
if(p_scholInfoVOList.size() > 0) totCnt = p_scholInfoVOList.get(0).getTotCnt();
|
|
||||||
p_paginationInfo.setTotalRecordCount(totCnt);
|
|
||||||
|
|
||||||
return p_paginationInfo;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//교육가능시수 달력 팝업 데이타 - 해당 회차의 선택한 기간 정보에 대한 달력의 정보들
|
//교육가능시수 달력 팝업 데이타 - 해당 회차의 선택한 기간 정보에 대한 달력의 정보들
|
||||||
@RequestMapping(value = "/popup/calendarPopListAjax.do")
|
@RequestMapping(value = "/popup/calendarPopListAjax.do")
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
@ -311,4 +286,129 @@ public class ScholInfoController {
|
|||||||
|
|
||||||
//return schduleManageService.selectSchManageStatusList(schduleManageVO);
|
//return schduleManageService.selectSchManageStatusList(schduleManageVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 설문 팝업 리스트
|
||||||
|
*/
|
||||||
|
@RequestMapping("popup/qustnrPopList.do")
|
||||||
|
public String qustnrPopList(
|
||||||
|
@ModelAttribute("vEEduChasiVO") VEEduChasiVO vEEduChasiVO
|
||||||
|
, QustnrRespondInfoVO qustnrRespondInfoVO
|
||||||
|
, ModelMap model
|
||||||
|
, HttpServletRequest request
|
||||||
|
) throws Exception {
|
||||||
|
|
||||||
|
String s_action = request.getParameter("action"); //insert or select
|
||||||
|
System.out.println("s_action");
|
||||||
|
System.out.println(s_action);
|
||||||
|
System.out.println(vEEduChasiVO.getQustnrTmplatId());
|
||||||
|
System.out.println(vEEduChasiVO.getQestnrId());
|
||||||
|
System.out.println(vEEduChasiVO.getQustnrRespondId());
|
||||||
|
|
||||||
|
System.out.println(qustnrRespondInfoVO.getQustnrTmplatId());
|
||||||
|
System.out.println(qustnrRespondInfoVO.getQestnrId());
|
||||||
|
System.out.println(qustnrRespondInfoVO.getQustnrRespondId());
|
||||||
|
//차시 정보
|
||||||
|
try {
|
||||||
|
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_10); //10-청소년 강사, 20-성인강사 VE0001
|
||||||
|
|
||||||
|
VEEduChasiVO ChasiInfo = vEEduMIXService.selectChasiInfo(vEEduChasiVO);
|
||||||
|
ChasiInfo.setInstrNm(egovCryptoUtil.decrypt(ChasiInfo.getInstrNm()));
|
||||||
|
|
||||||
|
ChasiInfo.setStrtTm(ChasiInfo.getStrtTm().substring(0,2)+":"+ChasiInfo.getStrtTm().substring(2,4));
|
||||||
|
ChasiInfo.setEndTm(ChasiInfo.getEndTm().substring(0,2)+":"+ChasiInfo.getEndTm().substring(2,4));
|
||||||
|
|
||||||
|
model.addAttribute("chasiInfo", ChasiInfo);
|
||||||
|
|
||||||
|
}catch(Exception ex) {
|
||||||
|
System.out.println("Exception vEEduAplctOnlnService.updateBulk");
|
||||||
|
}
|
||||||
|
|
||||||
|
//참석 답변 정보
|
||||||
|
try {
|
||||||
|
List<QustnrRespondInfoVO> chasiSrvyList = egovQustnrRespondInfoService.selectChasiSrvyList202312(qustnrRespondInfoVO);
|
||||||
|
model.addAttribute("qestnrRespondent", chasiSrvyList.get(0).getQestnrRespondent());
|
||||||
|
model.addAttribute("qestnrParticipant", chasiSrvyList.get(0).getQestnrParticipant());
|
||||||
|
model.addAttribute("chasiSrvyList", chasiSrvyList);
|
||||||
|
}catch(Exception ex) {
|
||||||
|
System.out.println("Exception vEEduAplctOnlnService.updateBulk");
|
||||||
|
}
|
||||||
|
|
||||||
|
//설문 참여 정보
|
||||||
|
/*
|
||||||
|
try {
|
||||||
|
model = qustnrCommonUtil._qustnrQesItm(
|
||||||
|
model
|
||||||
|
, VeConstants.LCTR_DIV_CD_10 //청소년 -10, 성인-20, ...VE0012
|
||||||
|
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
||||||
|
, "QTMPLA_0000000000001"
|
||||||
|
, vEALettnQestnrMIXService
|
||||||
|
, egovQustnrRespondInfoService
|
||||||
|
);
|
||||||
|
|
||||||
|
}catch(Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
return "/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/popup/qustnrPopList";
|
||||||
|
}
|
||||||
|
|
||||||
|
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// private function
|
||||||
|
//
|
||||||
|
//
|
||||||
|
|
||||||
|
//페이징을 위한 처리 step1 - 페이징 기본 정보 설정
|
||||||
|
private PaginationInfo setPagingStep1(
|
||||||
|
ScholInfoVO scholInfoVO
|
||||||
|
)throws Exception{
|
||||||
|
// paging step1
|
||||||
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
|
paginationInfo.setCurrentPageNo(scholInfoVO.getPageIndex());
|
||||||
|
paginationInfo.setRecordCountPerPage(scholInfoVO.getPageUnit());
|
||||||
|
paginationInfo.setPageSize(5);
|
||||||
|
|
||||||
|
return paginationInfo;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화
|
||||||
|
private ScholInfoVO setPagingStep2(
|
||||||
|
ScholInfoVO scholInfoVO
|
||||||
|
, PaginationInfo p_paginationInfo
|
||||||
|
)throws Exception{
|
||||||
|
// paging step2
|
||||||
|
scholInfoVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex());
|
||||||
|
scholInfoVO.setLastIndex(p_paginationInfo.getLastRecordIndex());
|
||||||
|
scholInfoVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
|
if("".equals(scholInfoVO.getSearchSortCnd())){ //최초조회시 최신것 조회List
|
||||||
|
scholInfoVO.setSearchSortCnd("schol_nm");
|
||||||
|
scholInfoVO.setSearchSortOrd("desc");
|
||||||
|
}
|
||||||
|
|
||||||
|
return scholInfoVO;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기
|
||||||
|
private PaginationInfo setPagingStep3(
|
||||||
|
List<ScholInfoVO> p_scholInfoVOList
|
||||||
|
|
||||||
|
, PaginationInfo p_paginationInfo
|
||||||
|
)throws Exception{
|
||||||
|
// paging step3
|
||||||
|
int totCnt = 0;
|
||||||
|
if(p_scholInfoVOList.size() > 0) totCnt = p_scholInfoVOList.get(0).getTotCnt();
|
||||||
|
p_paginationInfo.setTotalRecordCount(totCnt);
|
||||||
|
|
||||||
|
return p_paginationInfo;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -471,7 +471,11 @@ public class EduEndTngrController {
|
|||||||
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
||||||
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_10);
|
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_10);
|
||||||
vEEduChasiVO.setPageIndex(0);
|
vEEduChasiVO.setPageIndex(0);
|
||||||
List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList(vEEduChasiVO);
|
|
||||||
|
vEEduChasiVO.setSiteId("10"); //설문정보를 위해서 설문지의 대상값을 넣는다. VE0011 10-청소년, 20-성인,30-체험, 40-외부, 50-기반, 60-기소
|
||||||
|
|
||||||
|
//List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList(vEEduChasiVO);
|
||||||
|
List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList202312(vEEduChasiVO);
|
||||||
|
|
||||||
model.addAttribute("chasiList", vEEduChasiVOList);
|
model.addAttribute("chasiList", vEEduChasiVOList);
|
||||||
|
|
||||||
@ -541,8 +545,9 @@ public class EduEndTngrController {
|
|||||||
, @ModelAttribute("vEEduChasiVO") VEEduChasiVO vEEduChasiVO) throws Exception {
|
, @ModelAttribute("vEEduChasiVO") VEEduChasiVO vEEduChasiVO) throws Exception {
|
||||||
ModelAndView modelAndView = new ModelAndView();
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
modelAndView.setViewName("jsonView");
|
modelAndView.setViewName("jsonView");
|
||||||
|
//차시 정보
|
||||||
try {
|
try {
|
||||||
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_20);
|
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_10); //10-청소년 강사, 20-성인강사 VE0001
|
||||||
|
|
||||||
VEEduChasiVO ChasiInfo = vEEduMIXService.selectChasiInfo(vEEduChasiVO);
|
VEEduChasiVO ChasiInfo = vEEduMIXService.selectChasiInfo(vEEduChasiVO);
|
||||||
ChasiInfo.setInstrNm(egovCryptoUtil.decrypt(ChasiInfo.getInstrNm()));
|
ChasiInfo.setInstrNm(egovCryptoUtil.decrypt(ChasiInfo.getInstrNm()));
|
||||||
@ -649,6 +654,63 @@ public class EduEndTngrController {
|
|||||||
return modelAndView;
|
return modelAndView;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 교육설문 등록 - 청소년, 성인 공통
|
||||||
|
*/
|
||||||
|
@RequestMapping(value="/insertNewSrvyInfoAjax.do")
|
||||||
|
public ModelAndView insertNewSrvyInfoAjax( HttpServletRequest request
|
||||||
|
, ModelMap model
|
||||||
|
, VEEduAplctVO veEduAplctVO
|
||||||
|
, QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception {
|
||||||
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
|
modelAndView.setViewName("jsonView");
|
||||||
|
try {
|
||||||
|
|
||||||
|
System.out.println("qustnrRespondInfoVO");
|
||||||
|
System.out.println(qustnrRespondInfoVO);
|
||||||
|
System.out.println(qustnrRespondInfoVO);
|
||||||
|
|
||||||
|
//String
|
||||||
|
|
||||||
|
LoginVO loginVO = checkLoginUtil.getAuthLoginVO();
|
||||||
|
if (loginVO == null) {
|
||||||
|
modelAndView.addObject("result", "fail");
|
||||||
|
modelAndView.addObject("msg", "로그인 해주세요.");
|
||||||
|
return modelAndView;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 설문 참석자, 응답자, 결과 저장
|
||||||
|
QustnrRespondManageVO qustnrRespondManageVO = new QustnrRespondManageVO();
|
||||||
|
qustnrRespondManageVO.setEduAplctOrd(veEduAplctVO.getEduAplctOrd());
|
||||||
|
qustnrRespondManageVO.setEduChasiOrd(veEduAplctVO.getEduChasiOrd());
|
||||||
|
qustnrRespondManageVO.setQestnrId(qustnrRespondInfoVO.getQestnrId());
|
||||||
|
qustnrRespondManageVO.setQestnrParticipant(qustnrRespondInfoVO.getQestnrParticipant());
|
||||||
|
qustnrRespondManageVO.setQestnrRespondent(qustnrRespondInfoVO.getQestnrRespondent());
|
||||||
|
qustnrRespondManageVO.setFrstRegisterId(loginVO.getId());
|
||||||
|
qustnrRespondManageVO.setLastUpdusrId(loginVO.getId());
|
||||||
|
qustnrRespondManageVO.setQestnrTmplatId(qustnrRespondInfoVO.getQustnrTmplatId());
|
||||||
|
|
||||||
|
egovQustnrRespondManageService.insertQustnrRespondManage(qustnrRespondManageVO);
|
||||||
|
// 설문 문항 결과 등록
|
||||||
|
for(int i=0; i < qustnrRespondInfoVO.getResultList().size(); i++) {
|
||||||
|
System.out.println("qustnrRespondInfoVO.getResultList().get(i).getQustnrQesitmId()");
|
||||||
|
System.out.println(qustnrRespondInfoVO.getResultList().get(i).getQustnrQesitmId());
|
||||||
|
qustnrRespondInfoVO.getResultList().get(i).setQustnrTmplatId(qustnrRespondInfoVO.getQustnrTmplatId());
|
||||||
|
qustnrRespondInfoVO.getResultList().get(i).setQustnrQesitmId(qustnrRespondInfoVO.getQustnrQesitmId());
|
||||||
|
|
||||||
|
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).setEduAplctOrd(veEduAplctVO.getEduAplctOrd());
|
||||||
|
qustnrRespondInfoVO.getResultList().get(i).setEduChasiOrd(veEduAplctVO.getEduChasiOrd());
|
||||||
|
egovQustnrRespondInfoService.insertSrvyInfo(qustnrRespondInfoVO.getResultList().get(i));
|
||||||
|
}
|
||||||
|
}catch(Exception ex) {
|
||||||
|
System.out.println("Exception vEEduAplctOnlnService.updateBulk");
|
||||||
|
}
|
||||||
|
modelAndView.addObject("result", "success");
|
||||||
|
return modelAndView;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육설문조사 등록 로직
|
* 교육설문조사 등록 로직
|
||||||
|
|||||||
@ -50,6 +50,8 @@ import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrAsgnmVO;
|
|||||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeAcmdtVO;
|
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeAcmdtVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeService;
|
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||||
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiVO;
|
||||||
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailService;
|
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||||
@ -119,6 +121,10 @@ public class VEAdultEduEndController {
|
|||||||
@Resource(name = "schduleManageService")
|
@Resource(name = "schduleManageService")
|
||||||
private SchduleManageService schduleManageService;
|
private SchduleManageService schduleManageService;
|
||||||
|
|
||||||
|
//교육과정신청
|
||||||
|
@Resource(name = "vEEduMIXService")
|
||||||
|
private VEEduMIXService vEEduMIXService;
|
||||||
|
|
||||||
private static final Logger LOGGER = LoggerFactory.getLogger(EgovFileDownloadController.class);
|
private static final Logger LOGGER = LoggerFactory.getLogger(EgovFileDownloadController.class);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -388,6 +394,29 @@ public class VEAdultEduEndController {
|
|||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//사용자 교육신청 차시 리스트 - 설문정보
|
||||||
|
{
|
||||||
|
//사용자 교육신청 차시 리스트
|
||||||
|
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
|
||||||
|
vEEduChasiVO.setEduAplctOrd(vEInstrAsgnmVO.getEduAplctOrd());
|
||||||
|
vEEduChasiVO.setEduChasiOrd(vEInstrAsgnmVO.getEduChasiOrd());
|
||||||
|
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_20);
|
||||||
|
vEEduChasiVO.setPageIndex(0);
|
||||||
|
|
||||||
|
vEEduChasiVO.setSiteId("20"); //설문정보를 위해서 설문지의 대상값을 넣는다. VE0011 10-청소년, 20-성인,30-체험, 40-외부, 50-기반, 60-기소
|
||||||
|
//대상 설문의 점수대상 확인에 필요하다.
|
||||||
|
vEEduChasiVO.setSiteIdCd("'10','20'"); //site id cd 10-기본설문, 20-신청자설문, 30-강사설문
|
||||||
|
|
||||||
|
|
||||||
|
//List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList(vEEduChasiVO);
|
||||||
|
List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList202312Instr(vEEduChasiVO);
|
||||||
|
|
||||||
|
//복호화
|
||||||
|
vEEduChasiVOList = egovCryptoUtil.decryptVEEduChasiVOList(vEEduChasiVOList);
|
||||||
|
|
||||||
|
model.addAttribute("chasiList", vEEduChasiVOList);
|
||||||
|
}
|
||||||
|
|
||||||
return "/web/ve/instr/adultVisitEdu/endInfo/instrEduEndDetail";
|
return "/web/ve/instr/adultVisitEdu/endInfo/instrEduEndDetail";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -17,8 +17,10 @@ import kcc.com.cmm.LoginVO;
|
|||||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||||
import kcc.let.uat.uia.service.SsoLoginVO;
|
import kcc.let.uat.uia.service.SsoLoginVO;
|
||||||
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
import kcc.let.utl.fcc.service.EgovCryptoUtil;
|
||||||
|
import kcc.ve.cmm.VeConstants;
|
||||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAsgnmMIXService;
|
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEAsgnmMIXService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||||
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEAPrcsAplctPrdInstrAsgnmService;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEAPrcsAplctPrdInstrAsgnmService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEAPrcsAplctPrdInstrAsgnmVO;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEAPrcsAplctPrdInstrAsgnmVO;
|
||||||
@ -253,6 +255,28 @@ public class VEFndtnAsgnmController {
|
|||||||
model.addAttribute("instrAsgnmList", instrAsgnmList);
|
model.addAttribute("instrAsgnmList", instrAsgnmList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//사용자 교육신청 차시 리스트 - 설문정보
|
||||||
|
{
|
||||||
|
//사용자 교육신청 차시 리스트
|
||||||
|
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
|
||||||
|
vEEduChasiVO.setEduAplctOrd(vEPrcsDetailVO.getEduAplctOrd());
|
||||||
|
vEEduChasiVO.setEduChasiOrd(vEPrcsDetailVO.getEduChasiOrd());
|
||||||
|
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_50);
|
||||||
|
vEEduChasiVO.setPageIndex(0);
|
||||||
|
|
||||||
|
vEEduChasiVO.setSiteId("50"); //설문정보를 위해서 설문지의 대상값을 넣는다. VE0011 10-청소년, 20-성인,30-체험, 40-외부, 50-기반, 60-기소
|
||||||
|
//대상 설문의 점수대상 확인에 필요하다.
|
||||||
|
vEEduChasiVO.setSiteIdCd("'10','20'"); //site id cd 10-기본설문, 20-신청자설문, 30-강사설문
|
||||||
|
|
||||||
|
|
||||||
|
//List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList(vEEduChasiVO);
|
||||||
|
List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList202312Instr(vEEduChasiVO);
|
||||||
|
|
||||||
|
//복호화
|
||||||
|
vEEduChasiVOList = egovCryptoUtil.decryptVEEduChasiVOList(vEEduChasiVOList);
|
||||||
|
|
||||||
|
model.addAttribute("chasiList", vEEduChasiVOList);
|
||||||
|
}
|
||||||
|
|
||||||
return "/web/ve/instr/fndtnVisitEdu/asgnmInfo/instrAsgnmEndDetail";
|
return "/web/ve/instr/fndtnVisitEdu/asgnmInfo/instrAsgnmEndDetail";
|
||||||
}
|
}
|
||||||
|
|||||||
@ -108,6 +108,49 @@ public class VEEduChasiVO extends ComDefaultVO implements Serializable {
|
|||||||
|
|
||||||
private String rsltAtchFileId; //ve_edu_aplct 결과보고 첨부파일아이디
|
private String rsltAtchFileId; //ve_edu_aplct 결과보고 첨부파일아이디
|
||||||
|
|
||||||
|
//설문지 분리로 추가됨
|
||||||
|
private String qustnrRespondId10; //기본설문답변정보
|
||||||
|
private String qustnrRespondId20; //신청자설문답변정보
|
||||||
|
private String qustnrRespondId30; //강사설문답변정보
|
||||||
|
|
||||||
|
private String qustnrTmplatId; //설문지정보
|
||||||
|
|
||||||
|
private String qestnrId; //기본설문지정보
|
||||||
|
private String qestnrId10; //기본설문지정보
|
||||||
|
private String qestnrId20; //신청자설문지정보
|
||||||
|
private String qestnrId30; //강사설문지정보
|
||||||
|
|
||||||
|
private String qestnrParticipantCnt; //전체응답자()
|
||||||
|
|
||||||
|
private String qustnrQesitmId10Cnt; //개별취합 전체응답자()
|
||||||
|
private String qustnrQesitmId20Cnt; //개별취합 전체응답자()
|
||||||
|
private String qustnrQesitmId30Cnt; //개별취합 전체응답자()
|
||||||
|
|
||||||
|
private String cnt; //응답자
|
||||||
|
private String sumScore; //전체점수
|
||||||
|
private String avgScore; //평균점수
|
||||||
|
|
||||||
|
private String siteIdCd; //사이트ID 구분 10-기본, 20-신청자, 30-강사
|
||||||
|
|
||||||
|
|
||||||
|
public String getQustnrQesitmId10Cnt() {
|
||||||
|
return qustnrQesitmId10Cnt;
|
||||||
|
}
|
||||||
|
public void setQustnrQesitmId10Cnt(String qustnrQesitmId10Cnt) {
|
||||||
|
this.qustnrQesitmId10Cnt = qustnrQesitmId10Cnt;
|
||||||
|
}
|
||||||
|
public String getQustnrQesitmId20Cnt() {
|
||||||
|
return qustnrQesitmId20Cnt;
|
||||||
|
}
|
||||||
|
public void setQustnrQesitmId20Cnt(String qustnrQesitmId20Cnt) {
|
||||||
|
this.qustnrQesitmId20Cnt = qustnrQesitmId20Cnt;
|
||||||
|
}
|
||||||
|
public String getQustnrQesitmId30Cnt() {
|
||||||
|
return qustnrQesitmId30Cnt;
|
||||||
|
}
|
||||||
|
public void setQustnrQesitmId30Cnt(String qustnrQesitmId30Cnt) {
|
||||||
|
this.qustnrQesitmId30Cnt = qustnrQesitmId30Cnt;
|
||||||
|
}
|
||||||
public String getQustnrRespondId() {
|
public String getQustnrRespondId() {
|
||||||
return qustnrRespondId;
|
return qustnrRespondId;
|
||||||
}
|
}
|
||||||
@ -578,5 +621,83 @@ public class VEEduChasiVO extends ComDefaultVO implements Serializable {
|
|||||||
public void setRsltAtchFileId(String rsltAtchFileId) {
|
public void setRsltAtchFileId(String rsltAtchFileId) {
|
||||||
this.rsltAtchFileId = rsltAtchFileId;
|
this.rsltAtchFileId = rsltAtchFileId;
|
||||||
}
|
}
|
||||||
|
public String getQustnrRespondId10() {
|
||||||
|
return qustnrRespondId10;
|
||||||
|
}
|
||||||
|
public void setQustnrRespondId10(String qustnrRespondId10) {
|
||||||
|
this.qustnrRespondId10 = qustnrRespondId10;
|
||||||
|
}
|
||||||
|
public String getQustnrRespondId20() {
|
||||||
|
return qustnrRespondId20;
|
||||||
|
}
|
||||||
|
public void setQustnrRespondId20(String qustnrRespondId20) {
|
||||||
|
this.qustnrRespondId20 = qustnrRespondId20;
|
||||||
|
}
|
||||||
|
public String getQustnrRespondId30() {
|
||||||
|
return qustnrRespondId30;
|
||||||
|
}
|
||||||
|
public void setQustnrRespondId30(String qustnrRespondId30) {
|
||||||
|
this.qustnrRespondId30 = qustnrRespondId30;
|
||||||
|
}
|
||||||
|
public String getQustnrTmplatId() {
|
||||||
|
return qustnrTmplatId;
|
||||||
|
}
|
||||||
|
public void setQustnrTmplatId(String qustnrTmplatId) {
|
||||||
|
this.qustnrTmplatId = qustnrTmplatId;
|
||||||
|
}
|
||||||
|
public String getQestnrId10() {
|
||||||
|
return qestnrId10;
|
||||||
|
}
|
||||||
|
public void setQestnrId10(String qestnrId10) {
|
||||||
|
this.qestnrId10 = qestnrId10;
|
||||||
|
}
|
||||||
|
public String getQestnrId20() {
|
||||||
|
return qestnrId20;
|
||||||
|
}
|
||||||
|
public void setQestnrId20(String qestnrId20) {
|
||||||
|
this.qestnrId20 = qestnrId20;
|
||||||
|
}
|
||||||
|
public String getQestnrId30() {
|
||||||
|
return qestnrId30;
|
||||||
|
}
|
||||||
|
public void setQestnrId30(String qestnrId30) {
|
||||||
|
this.qestnrId30 = qestnrId30;
|
||||||
|
}
|
||||||
|
public String getQestnrId() {
|
||||||
|
return qestnrId;
|
||||||
|
}
|
||||||
|
public void setQestnrId(String qestnrId) {
|
||||||
|
this.qestnrId = qestnrId;
|
||||||
|
}
|
||||||
|
public String getQestnrParticipantCnt() {
|
||||||
|
return qestnrParticipantCnt;
|
||||||
|
}
|
||||||
|
public void setQestnrParticipantCnt(String qestnrParticipantCnt) {
|
||||||
|
this.qestnrParticipantCnt = qestnrParticipantCnt;
|
||||||
|
}
|
||||||
|
public String getCnt() {
|
||||||
|
return cnt;
|
||||||
|
}
|
||||||
|
public void setCnt(String cnt) {
|
||||||
|
this.cnt = cnt;
|
||||||
|
}
|
||||||
|
public String getSumScore() {
|
||||||
|
return sumScore;
|
||||||
|
}
|
||||||
|
public void setSumScore(String sumScore) {
|
||||||
|
this.sumScore = sumScore;
|
||||||
|
}
|
||||||
|
public String getAvgScore() {
|
||||||
|
return avgScore;
|
||||||
|
}
|
||||||
|
public void setAvgScore(String avgScore) {
|
||||||
|
this.avgScore = avgScore;
|
||||||
|
}
|
||||||
|
public String getSiteIdCd() {
|
||||||
|
return siteIdCd;
|
||||||
|
}
|
||||||
|
public void setSiteIdCd(String siteIdCd) {
|
||||||
|
this.siteIdCd = siteIdCd;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -42,6 +42,15 @@ public interface VEEduMIXService {
|
|||||||
|
|
||||||
List<VEEduChasiVO> selectChasiList(VEEduChasiVO vEEduChasiVO) throws Exception;
|
List<VEEduChasiVO> selectChasiList(VEEduChasiVO vEEduChasiVO) throws Exception;
|
||||||
|
|
||||||
|
//설문지 분리 정보 추가(기본, 신청인)
|
||||||
|
List<VEEduChasiVO> selectChasiList202312(VEEduChasiVO vEEduChasiVO) throws Exception;
|
||||||
|
|
||||||
|
//설문지 분리 정보 추가(강사)
|
||||||
|
List<VEEduChasiVO> selectChasiList202312Instr(VEEduChasiVO vEEduChasiVO) throws Exception;
|
||||||
|
|
||||||
|
//설문지 분리 정보 추가(강사)-기소, 기반 전용
|
||||||
|
List<VEEduChasiVO> selectChasiList202312EAInstr(VEEduChasiVO vEEduChasiVO) throws Exception;
|
||||||
|
|
||||||
//차시별 동반강사 리스트
|
//차시별 동반강사 리스트
|
||||||
List<VEEduChasiVO> selectChasiCompanionList(VEEduChasiVO vEEduChasiVO) throws Exception;
|
List<VEEduChasiVO> selectChasiCompanionList(VEEduChasiVO vEEduChasiVO) throws Exception;
|
||||||
|
|
||||||
@ -49,6 +58,9 @@ public interface VEEduMIXService {
|
|||||||
|
|
||||||
VEEduChasiVO selectChasiInfo(VEEduChasiVO vEEduChasiVO) throws Exception;
|
VEEduChasiVO selectChasiInfo(VEEduChasiVO vEEduChasiVO) throws Exception;
|
||||||
|
|
||||||
|
//설문지 분리 정보 추가(기본, 신청인, 강사)
|
||||||
|
VEEduChasiVO selectChasiInfo202312(VEEduChasiVO vEEduChasiVO) throws Exception;
|
||||||
|
|
||||||
List<VEEduExcelVO> selectExcelList(VEEduAplctVO vEEduAplctVO) throws Exception;
|
List<VEEduExcelVO> selectExcelList(VEEduAplctVO vEEduAplctVO) throws Exception;
|
||||||
|
|
||||||
List<VEEduSatisfactionExcelVO> selectSatisfactionExcelList(VEEduAplctVO vEEduAplctVO) throws Exception;
|
List<VEEduSatisfactionExcelVO> selectSatisfactionExcelList(VEEduAplctVO vEEduAplctVO) throws Exception;
|
||||||
|
|||||||
@ -106,6 +106,27 @@ public class VEEduMIXDAO extends EgovAbstractDAO {
|
|||||||
return tlist;
|
return tlist;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//차시별 강사배치 리스트
|
||||||
|
public List<VEEduChasiVO> selectChasiList202312(VEEduChasiVO vEEduChasiVO) throws Exception {
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
List<VEEduChasiVO> tlist = (List<VEEduChasiVO>) list("VEEduMIXDAO.selectChasiList202312", vEEduChasiVO);
|
||||||
|
return tlist;
|
||||||
|
}
|
||||||
|
|
||||||
|
//차시별 강사배치 리스트
|
||||||
|
public List<VEEduChasiVO> selectChasiList202312Instr(VEEduChasiVO vEEduChasiVO) throws Exception {
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
List<VEEduChasiVO> tlist = (List<VEEduChasiVO>) list("VEEduMIXDAO.selectChasiList202312Instr", vEEduChasiVO);
|
||||||
|
return tlist;
|
||||||
|
}
|
||||||
|
|
||||||
|
//차시별 강사배치 리스트
|
||||||
|
public List<VEEduChasiVO> selectChasiList202312EAInstr(VEEduChasiVO vEEduChasiVO) throws Exception {
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
List<VEEduChasiVO> tlist = (List<VEEduChasiVO>) list("VEEduMIXDAO.selectChasiList202312EAInstr", vEEduChasiVO);
|
||||||
|
return tlist;
|
||||||
|
}
|
||||||
|
|
||||||
//차시별 동반강사 리스트
|
//차시별 동반강사 리스트
|
||||||
public List<VEEduChasiVO> selectChasiCompanionList(VEEduChasiVO vEEduChasiVO) throws Exception {
|
public List<VEEduChasiVO> selectChasiCompanionList(VEEduChasiVO vEEduChasiVO) throws Exception {
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
@ -123,6 +144,10 @@ public class VEEduMIXDAO extends EgovAbstractDAO {
|
|||||||
return (VEEduChasiVO) select("VEEduMIXDAO.selectChasiInfo", vEEduChasiVO);
|
return (VEEduChasiVO) select("VEEduMIXDAO.selectChasiInfo", vEEduChasiVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public VEEduChasiVO selectChasiInfo202312(VEEduChasiVO vEEduChasiVO) throws Exception {
|
||||||
|
return (VEEduChasiVO) select("VEEduMIXDAO.selectChasiInfo202312", vEEduChasiVO);
|
||||||
|
}
|
||||||
|
|
||||||
public List<VEEduExcelVO> selectExcelList(VEEduAplctVO vEEduAplctVO) throws Exception {
|
public List<VEEduExcelVO> selectExcelList(VEEduAplctVO vEEduAplctVO) throws Exception {
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
List<VEEduExcelVO> tlist = (List<VEEduExcelVO>) list("VEEduMIXDAO.selectExcelList", vEEduAplctVO);
|
List<VEEduExcelVO> tlist = (List<VEEduExcelVO>) list("VEEduMIXDAO.selectExcelList", vEEduAplctVO);
|
||||||
|
|||||||
@ -91,6 +91,21 @@ public class VEEduMIXServiceImpl implements VEEduMIXService {
|
|||||||
return vEEduMIXDAO.selectChasiList(vEEduChasiVO);
|
return vEEduMIXDAO.selectChasiList(vEEduChasiVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<VEEduChasiVO> selectChasiList202312(VEEduChasiVO vEEduChasiVO) throws Exception {
|
||||||
|
return vEEduMIXDAO.selectChasiList202312(vEEduChasiVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<VEEduChasiVO> selectChasiList202312Instr(VEEduChasiVO vEEduChasiVO) throws Exception {
|
||||||
|
return vEEduMIXDAO.selectChasiList202312Instr(vEEduChasiVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<VEEduChasiVO> selectChasiList202312EAInstr(VEEduChasiVO vEEduChasiVO) throws Exception {
|
||||||
|
return vEEduMIXDAO.selectChasiList202312EAInstr(vEEduChasiVO);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<VEEduChasiVO> selectChasiCompanionList(VEEduChasiVO vEEduChasiVO) throws Exception {
|
public List<VEEduChasiVO> selectChasiCompanionList(VEEduChasiVO vEEduChasiVO) throws Exception {
|
||||||
return vEEduMIXDAO.selectChasiCompanionList(vEEduChasiVO);
|
return vEEduMIXDAO.selectChasiCompanionList(vEEduChasiVO);
|
||||||
@ -106,6 +121,11 @@ public class VEEduMIXServiceImpl implements VEEduMIXService {
|
|||||||
return vEEduMIXDAO.selectChasiInfo(vEEduChasiVO);
|
return vEEduMIXDAO.selectChasiInfo(vEEduChasiVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public VEEduChasiVO selectChasiInfo202312(VEEduChasiVO vEEduChasiVO) throws Exception {
|
||||||
|
return vEEduMIXDAO.selectChasiInfo202312(vEEduChasiVO);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<VEEduExcelVO> selectExcelList(VEEduAplctVO vEEduAplctVO) throws Exception {
|
public List<VEEduExcelVO> selectExcelList(VEEduAplctVO vEEduAplctVO) throws Exception {
|
||||||
return vEEduMIXDAO.selectExcelList(vEEduAplctVO);
|
return vEEduMIXDAO.selectExcelList(vEEduAplctVO);
|
||||||
|
|||||||
@ -49,6 +49,8 @@ import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeAcmdtVO;
|
|||||||
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeService;
|
import kcc.ve.instr.tngrVisitEdu.asgnmInfo.service.VEInstrFeeService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO;
|
||||||
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiVO;
|
||||||
|
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailService;
|
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailService;
|
||||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||||
@ -117,6 +119,10 @@ public class VEEduEndController {
|
|||||||
@Resource(name = "vEEduAplctService")
|
@Resource(name = "vEEduAplctService")
|
||||||
private VEEduAplctService vEEduAplctService;
|
private VEEduAplctService vEEduAplctService;
|
||||||
|
|
||||||
|
//교육과정신청
|
||||||
|
@Resource(name = "vEEduMIXService")
|
||||||
|
private VEEduMIXService vEEduMIXService;
|
||||||
|
|
||||||
private static final Logger LOGGER = LoggerFactory.getLogger(EgovFileDownloadController.class);
|
private static final Logger LOGGER = LoggerFactory.getLogger(EgovFileDownloadController.class);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -374,6 +380,31 @@ public class VEEduEndController {
|
|||||||
System.out.println(session.toString());
|
System.out.println(session.toString());
|
||||||
System.out.println(session.getAttribute("menuNo").toString());
|
System.out.println(session.getAttribute("menuNo").toString());
|
||||||
|
|
||||||
|
|
||||||
|
//사용자 교육신청 차시 리스트 - 설문정보
|
||||||
|
{
|
||||||
|
//사용자 교육신청 차시 리스트
|
||||||
|
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
|
||||||
|
vEEduChasiVO.setEduAplctOrd(vEInstrAsgnmVO.getEduAplctOrd());
|
||||||
|
vEEduChasiVO.setEduChasiOrd(vEInstrAsgnmVO.getEduChasiOrd());
|
||||||
|
vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_10);
|
||||||
|
vEEduChasiVO.setPageIndex(0);
|
||||||
|
|
||||||
|
vEEduChasiVO.setSiteId("10"); //설문정보를 위해서 설문지의 대상값을 넣는다. VE0011 10-청소년, 20-성인,30-체험, 40-외부, 50-기반, 60-기소
|
||||||
|
//대상 설문의 점수대상 확인에 필요하다.
|
||||||
|
vEEduChasiVO.setSiteIdCd("'10','20'"); //site id cd 10-기본설문, 20-신청자설문, 30-강사설문
|
||||||
|
|
||||||
|
|
||||||
|
//List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList(vEEduChasiVO);
|
||||||
|
List<VEEduChasiVO> vEEduChasiVOList = vEEduMIXService.selectChasiList202312Instr(vEEduChasiVO);
|
||||||
|
|
||||||
|
//복호화
|
||||||
|
vEEduChasiVOList = egovCryptoUtil.decryptVEEduChasiVOList(vEEduChasiVOList);
|
||||||
|
|
||||||
|
model.addAttribute("chasiList", vEEduChasiVOList);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
return "/web/ve/instr/tngrVisitEdu/endInfo/instrEduEndDetail";
|
return "/web/ve/instr/tngrVisitEdu/endInfo/instrEduEndDetail";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -457,7 +457,7 @@ public class EduRsltMngTngrController {
|
|||||||
, HttpServletRequest request
|
, HttpServletRequest request
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
|
|
||||||
//설문 정보
|
//설문 정보(설문지정보, 문항정보)
|
||||||
try {
|
try {
|
||||||
//qustnrCommonUtil._qustnrQesItm(model, p_siteId, p_siteIdCd, p_qestnrTmplatId, p_vEALettnQestnrMIXService, p_egovQustnrRespondInfoService)
|
//qustnrCommonUtil._qustnrQesItm(model, p_siteId, p_siteIdCd, p_qestnrTmplatId, p_vEALettnQestnrMIXService, p_egovQustnrRespondInfoService)
|
||||||
|
|
||||||
@ -528,6 +528,7 @@ public class EduRsltMngTngrController {
|
|||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
//답변정보
|
||||||
try{
|
try{
|
||||||
model = qustnrCommonUtil._chasiSrvyList(
|
model = qustnrCommonUtil._chasiSrvyList(
|
||||||
model
|
model
|
||||||
@ -669,8 +670,10 @@ public class EduRsltMngTngrController {
|
|||||||
String chasiOrd = vEEduAplctVO.getEduChasiOrd();
|
String chasiOrd = vEEduAplctVO.getEduChasiOrd();
|
||||||
|
|
||||||
//기본데이터 불러오기
|
//기본데이터 불러오기
|
||||||
|
System.out.println("//기본데이터 불러오기-s");
|
||||||
vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
|
vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO);
|
||||||
vEEduAplctVO.setEduChasiOrd(chasiOrd);
|
vEEduAplctVO.setEduChasiOrd(chasiOrd);
|
||||||
|
System.out.println("//기본데이터 불러오기-e");
|
||||||
//데이터 복호화 - VO 단위로 만들어서 사용
|
//데이터 복호화 - VO 단위로 만들어서 사용
|
||||||
vEEduAplctVO = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVO);
|
vEEduAplctVO = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVO);
|
||||||
model.addAttribute("info", vEEduAplctVO);
|
model.addAttribute("info", vEEduAplctVO);
|
||||||
|
|||||||
@ -592,6 +592,55 @@
|
|||||||
ORDER BY C.qestn_sn, A.QUSTNR_QESITM_ID
|
ORDER BY C.qestn_sn, A.QUSTNR_QESITM_ID
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="QustnrRespondInfo.selectChasiSrvyList202312" parameterClass="QustnrRespondInfoVO" resultClass="QustnrRespondInfoVO">
|
||||||
|
/* QustnrRespondInfo.selectChasiSrvyList202312 */
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
a.QUSTNR_TMPLAT_ID AS qustnrTmplatId
|
||||||
|
, a.QESTNR_ID AS qestnrId
|
||||||
|
, a.QUSTNR_QESITM_ID AS qustnrQesitmId
|
||||||
|
, a.QESTN_SN AS qestnSn
|
||||||
|
, a.QESTN_CN AS qestnCn
|
||||||
|
|
||||||
|
|
||||||
|
, b.QUSTNR_RSLT_ID AS qustnrRsltId
|
||||||
|
, b.VERY_SATISFIED AS verySatisfied
|
||||||
|
, b.SATISFIED AS satisfied
|
||||||
|
, b.NEITHER AS neither
|
||||||
|
, b.DISSATISFIED AS dissatisfied
|
||||||
|
, b.VERY_DISSATISFIED AS veryDissatisfied
|
||||||
|
, b.ANSWER AS answer
|
||||||
|
, b.QUSTNR_IEM_ID AS qustnrIemId
|
||||||
|
|
||||||
|
|
||||||
|
, c.QUSTNR_RESPOND_ID AS qestnrRespondId
|
||||||
|
, c.QESTNR_RESPONDENT_COUNT AS qestnrParticipant
|
||||||
|
, c.QESTNR_PARTICIPANT_COUNT AS qestnrRespondent
|
||||||
|
|
||||||
|
|
||||||
|
FROM lettnqustnrqesitm a
|
||||||
|
LEFT OUTER JOIN LETTNQESTNRRSLTDETAIL b
|
||||||
|
on(1=1
|
||||||
|
AND a.QUSTNR_TMPLAT_ID = b.QUSTNR_TMPLAT_ID
|
||||||
|
AND a.QESTNR_ID = b.QESTNR_ID
|
||||||
|
AND a.QUSTNR_QESITM_ID = b.QUSTNR_QESITM_ID
|
||||||
|
AND b.EDU_APLCT_ORD = #eduAplctOrd#
|
||||||
|
AND b.EDU_CHASI_ORD = #eduChasiOrd#
|
||||||
|
|
||||||
|
)
|
||||||
|
LEFT OUTER JOIN LETTNQUSTNRRESPONDINFO c
|
||||||
|
ON (
|
||||||
|
c.QUSTNR_TMPLAT_ID = B.QUSTNR_TMPLAT_ID
|
||||||
|
AND c.QESTNR_ID = B.QESTNR_ID
|
||||||
|
AND c.QUSTNR_RESPOND_ID = #qustnrRespondId#
|
||||||
|
|
||||||
|
)
|
||||||
|
WHERE a.QUSTNR_TMPLAT_ID = #qustnrTmplatId#
|
||||||
|
AND a.QESTNR_ID = #qestnrId#
|
||||||
|
|
||||||
|
ORDER BY a.qestn_sn, A.QUSTNR_QESITM_ID
|
||||||
|
</select>
|
||||||
|
|
||||||
<select id="QustnrRespondInfo.selectChasiSrvyList_bak" parameterClass="QustnrRespondInfoVO" resultClass="QustnrRespondInfoVO">
|
<select id="QustnrRespondInfo.selectChasiSrvyList_bak" parameterClass="QustnrRespondInfoVO" resultClass="QustnrRespondInfoVO">
|
||||||
/* QustnrRespondInfo.selectChasiSrvyList_bak */
|
/* QustnrRespondInfo.selectChasiSrvyList_bak */
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@ -805,6 +805,11 @@ function replyCalculation(){
|
|||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
<!-- 등록버튼 추가 필요 -->
|
<!-- 등록버튼 추가 필요 -->
|
||||||
|
<div class="btn_wrap">
|
||||||
|
<div class="btn_right">
|
||||||
|
<button type="button" class="btn_type06" onclick="fn_chasiStatusPop(); return false;">등록</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</c:otherwise>
|
</c:otherwise>
|
||||||
</c:choose>
|
</c:choose>
|
||||||
|
|
||||||
|
|||||||
@ -370,7 +370,15 @@
|
|||||||
<div class="pop_btn_wrap btn_layout01">
|
<div class="pop_btn_wrap btn_layout01">
|
||||||
<div class="btn_left"></div>
|
<div class="btn_left"></div>
|
||||||
<div class="btn_center">
|
<div class="btn_center">
|
||||||
<button type="button" class="btn_type05" id="popupSubmin" onclick="srvySendSubmit();">수정</button>
|
<c:choose>
|
||||||
|
<c:when test="${qestnrParticipant eq '' or qestnrParticipant eq null}">
|
||||||
|
<button type="button" class="btn_type05" id="popupSubmin" onclick="srvySendSubmit();">등록</button>
|
||||||
|
</c:when>
|
||||||
|
<c:otherwise>
|
||||||
|
<button type="button" class="btn_type05" id="popupSubmin" onclick="srvySendSubmit();">수정</button>
|
||||||
|
</c:otherwise>
|
||||||
|
</c:choose>
|
||||||
|
|
||||||
<button type="button" class="btn_type02 tooltip-close" onclick="fn_self_close()">취소</button>
|
<button type="button" class="btn_type02 tooltip-close" onclick="fn_self_close()">취소</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn_right"></div>
|
<div class="btn_right"></div>
|
||||||
|
|||||||
@ -235,6 +235,12 @@ function delete_item(obj, fileIdx){
|
|||||||
$('.td_txt_exist > img').attr('src', '/images/no_img.jpg') ;
|
$('.td_txt_exist > img').attr('src', '/images/no_img.jpg') ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function fnResetDate() {
|
||||||
|
$("#qustnrBgnde").val("");
|
||||||
|
$("#qustnrEndde").val("");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
@ -327,6 +333,7 @@ function delete_item(obj, fileIdx){
|
|||||||
<input type="text" class="calendar" title="종료일 선택" id="qustnrEndde" name="qustnrEndde"
|
<input type="text" class="calendar" title="종료일 선택" id="qustnrEndde" name="qustnrEndde"
|
||||||
value="${qustnrManageVO.qustnrEndde}">
|
value="${qustnrManageVO.qustnrEndde}">
|
||||||
</div>
|
</div>
|
||||||
|
<button type="button" class="btnType02" onclick="fnResetDate(); return false;">설문기간 초기화</button>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr style="display: none;">
|
<tr style="display: none;">
|
||||||
|
|||||||
@ -699,7 +699,9 @@
|
|||||||
</th>
|
</th>
|
||||||
<td colspan="3">
|
<td colspan="3">
|
||||||
<label for="hopeSbjct" class="label">희망주제 입력</label>
|
<label for="hopeSbjct" class="label">희망주제 입력</label>
|
||||||
<input type="text" name="hopeSbjct" id="hopeSbjct" value="${info.hopeSbjct}" style="width: 100%;">
|
<input type="text" name="hopeSbjct" id="hopeSbjct" value="${info.hopeSbjct}"
|
||||||
|
placeholder="예시) 대학생이 알아야 할 저작권 / 공공분야 종사자가 알아야 할 저작권 등"
|
||||||
|
style="width: 100%;">
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
@ -709,7 +711,7 @@
|
|||||||
</th>
|
</th>
|
||||||
<td colspan="3">
|
<td colspan="3">
|
||||||
<label for="rqstCn" class="label">교육 주제 관련 상세 요청사항 및 사전 질의(자유기재) 입력</label>
|
<label for="rqstCn" class="label">교육 주제 관련 상세 요청사항 및 사전 질의(자유기재) 입력</label>
|
||||||
<textarea name="rqstCn" id="rqstCn">${info.rqstCn}</textarea>
|
<textarea name="rqstCn" id="rqstCn" placeholder="예시) 홍보 담당자들이 홍보 업무 중 발생할 수 있는 저작권 문제 또는 논란이 된 주요 사례, 판례 등을 반영한 저작권 교육 요청 / 만화.웹툰 분야 계약할 때 반드시 알아야 할 필수 용어와 팁이 있나요? 등">${info.rqstCn}</textarea>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|||||||
@ -101,6 +101,40 @@
|
|||||||
listForm.submit();
|
listForm.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//설문 팝업
|
||||||
|
function fncQustnrList(
|
||||||
|
id //aplctOrd
|
||||||
|
, chId //chasiOrd
|
||||||
|
, p_site_id_cd //10,20,30
|
||||||
|
, p_action //select, insert
|
||||||
|
, p_qustnrTmplatId //select, insert
|
||||||
|
, p_qestnrId //select, insert
|
||||||
|
, p_qustnrRespondId //select, insert
|
||||||
|
) {
|
||||||
|
|
||||||
|
paramObj = {
|
||||||
|
"eduAplctOrd" : id
|
||||||
|
,"eduChasiOrd" : chId
|
||||||
|
,"site_id_cd" : p_site_id_cd
|
||||||
|
|
||||||
|
,"action" : p_action
|
||||||
|
|
||||||
|
,"qustnrTmplatId" : p_qustnrTmplatId
|
||||||
|
,"qestnrId" : p_qestnrId
|
||||||
|
,"qustnrRespondId" : p_qustnrRespondId
|
||||||
|
};
|
||||||
|
|
||||||
|
commonPopLayeropen(
|
||||||
|
"${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/scholInfo/popup/qustnrPopList.do"
|
||||||
|
, 800
|
||||||
|
, 700
|
||||||
|
, paramObj
|
||||||
|
, "Y"
|
||||||
|
, "scholPop"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
function selectChasiStatus(id, chId, action){
|
function selectChasiStatus(id, chId, action){
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type:"POST"
|
type:"POST"
|
||||||
@ -1088,6 +1122,7 @@
|
|||||||
<col style="width: 12%;">
|
<col style="width: 12%;">
|
||||||
<col style="width: 8%;">
|
<col style="width: 8%;">
|
||||||
<col style="width: 12%;">
|
<col style="width: 12%;">
|
||||||
|
<col style="width: 12%;">
|
||||||
</colgroup>
|
</colgroup>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@ -1096,7 +1131,8 @@
|
|||||||
<th scope="col">대상</th>
|
<th scope="col">대상</th>
|
||||||
<th scope="col">배정강사</th>
|
<th scope="col">배정강사</th>
|
||||||
<th scope="col">인원</th>
|
<th scope="col">인원</th>
|
||||||
<th scope="col">만족도조사</th>
|
<th scope="col">만족도조사(학생)</th>
|
||||||
|
<th scope="col">만족도조사(신청인)</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@ -1137,6 +1173,7 @@
|
|||||||
</td>
|
</td>
|
||||||
<td>${list.prsnl}</td>
|
<td>${list.prsnl}</td>
|
||||||
|
|
||||||
|
<!--
|
||||||
<td>
|
<td>
|
||||||
<c:choose>
|
<c:choose>
|
||||||
<c:when test="${not empty list.qustnrRespondId}">
|
<c:when test="${not empty list.qustnrRespondId}">
|
||||||
@ -1148,6 +1185,64 @@
|
|||||||
</c:choose>
|
</c:choose>
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<td><!-- 학생 -->
|
||||||
|
<c:choose>
|
||||||
|
<c:when test="${not empty list.qustnrRespondId10 and list.qestnrParticipantCnt gt 0 and list.qustnrQesitmId10Cnt gt 0}">
|
||||||
|
<button type="button" class="btnType02" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','10','select'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}'
|
||||||
|
)" title="팝업 열림">설문완료</button>
|
||||||
|
</c:when>
|
||||||
|
|
||||||
|
<c:when test="${not empty list.qestnrId10}">
|
||||||
|
<button type="button" class="btnType01" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','10','insert'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}'
|
||||||
|
)" title="팝업 열림">설문등록</button>
|
||||||
|
</c:when>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<c:otherwise>
|
||||||
|
해당설문없음
|
||||||
|
<!--
|
||||||
|
<button type="button" class="btnType01" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','10','insert'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}'
|
||||||
|
)" title="팝업 열림">설문등록</button>
|
||||||
|
-->
|
||||||
|
</c:otherwise>
|
||||||
|
</c:choose>
|
||||||
|
|
||||||
|
</td>
|
||||||
|
<td><!-- 신청인 -->
|
||||||
|
<c:choose>
|
||||||
|
<c:when test="${not empty list.qustnrRespondId20 and list.qestnrParticipantCnt gt 0 and list.qustnrQesitmId20Cnt gt 0}">
|
||||||
|
<button type="button" class="btnType02" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','20','select'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId20}','${list.qustnrRespondId20}'
|
||||||
|
)" title="팝업 열림">설문완료</button>
|
||||||
|
</c:when>
|
||||||
|
<c:when test="${not empty list.qestnrId20}">
|
||||||
|
<button type="button" class="btnType01" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','20','insert'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId20}','${list.qustnrRespondId20}'
|
||||||
|
)" title="팝업 열림">설문등록</button>
|
||||||
|
</c:when>
|
||||||
|
<c:otherwise>
|
||||||
|
해당설문없음
|
||||||
|
<!--
|
||||||
|
<button type="button" class="btnType01" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','20','insert'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId20}','${list.qustnrRespondId20}'
|
||||||
|
)" title="팝업 열림">설문등록</button>
|
||||||
|
-->
|
||||||
|
</c:otherwise>
|
||||||
|
</c:choose>
|
||||||
|
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</c:forEach>
|
</c:forEach>
|
||||||
<c:if test="${fn:length(chasiList) eq 0}">
|
<c:if test="${fn:length(chasiList) eq 0}">
|
||||||
|
|||||||
@ -0,0 +1,528 @@
|
|||||||
|
<%--
|
||||||
|
|
||||||
|
Class Name : qustnrPopList.jsp
|
||||||
|
Description : 설문팝업
|
||||||
|
Modification Information
|
||||||
|
|
||||||
|
1.강의 종류(청소년, 성인 ... VE0011) 및 설문 종류 (10-기본, 20-신청자, 30-강사) 및 상태(등록, 완료) 에 맞는 설문 레이어 팝업을 만든다.
|
||||||
|
|
||||||
|
수정일 수정자 수정내용
|
||||||
|
------- -------- ---------------------------
|
||||||
|
2021.12.02 조용준 내용
|
||||||
|
|
||||||
|
author : 조용준
|
||||||
|
since : 2021.12.02
|
||||||
|
|
||||||
|
--%>
|
||||||
|
<%@ page contentType="text/html; charset=utf-8"%>
|
||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
|
||||||
|
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
|
||||||
|
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
||||||
|
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||||
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||||
|
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||||
|
|
||||||
|
<script type="text/javascript" src="${pageContext.request.contextPath}/kccadrPb/usr/script/popup.js"></script>
|
||||||
|
<script type="text/javaScript" language="javascript">
|
||||||
|
|
||||||
|
function fncGoScholList(){
|
||||||
|
linkPage(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
function linkPage(pageNo){
|
||||||
|
var data = {
|
||||||
|
pageIndex : pageNo,
|
||||||
|
searchKeyword : $("#searchKeyword").val(),
|
||||||
|
searchCondition : $("#searchCondition").val(),
|
||||||
|
pageUnit : 5,
|
||||||
|
formId : $("#formId").val(),
|
||||||
|
}
|
||||||
|
fncScholList(data);
|
||||||
|
}
|
||||||
|
|
||||||
|
function fncScholList(paramObj) {
|
||||||
|
if(paramObj == undefined || paramObj == ''){
|
||||||
|
paramObj = {
|
||||||
|
pageIndex : 1,
|
||||||
|
searchKeyword : "",
|
||||||
|
searchCondition : "",
|
||||||
|
pageUnit : 5,
|
||||||
|
formId : $("#formId").val(),
|
||||||
|
};
|
||||||
|
}
|
||||||
|
// 학교 리스트 팝업 호출
|
||||||
|
commonPopLayeropen(
|
||||||
|
"${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/scholInfo/popup/scholPopList.do"
|
||||||
|
, 500
|
||||||
|
, 600
|
||||||
|
, paramObj
|
||||||
|
, "N"
|
||||||
|
, "scholPop"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
function fncScholDataSlct_back(p_code, p_nm){
|
||||||
|
var fNm = "#"+$("#formId").val();
|
||||||
|
$(fNm + " #stndrdScholCd").val(p_code);
|
||||||
|
$(fNm + " #scholInsttNm").val(p_nm);
|
||||||
|
|
||||||
|
$(".btn_popup_close").click();
|
||||||
|
}
|
||||||
|
|
||||||
|
function fncScholDataSlct(thisObj){
|
||||||
|
var inObj = $(thisObj).closest("td").find("input[type=hidden]");
|
||||||
|
var rsObj = new Object();
|
||||||
|
$.each(inObj, function(idx, value){
|
||||||
|
console.log(value.value);
|
||||||
|
rsObj[value.name] = value.value;
|
||||||
|
});
|
||||||
|
callBackSchPop(rsObj);
|
||||||
|
$(".btn_popup_close").click();
|
||||||
|
}
|
||||||
|
|
||||||
|
function replyCalculation(){
|
||||||
|
var qestnrParticipant = $("#qestnrParticipant").val(); //참석자 수량
|
||||||
|
var qestnrRespondent = $("#qestnrRespondent").val(); //응답자 수량
|
||||||
|
|
||||||
|
if(qestnrParticipant == "" || qestnrParticipant == null){
|
||||||
|
alert("참석자 수량을 넣어주세요");
|
||||||
|
$("#qestnrParticipant").focus();
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if(qestnrRespondent == "" || qestnrRespondent == null){
|
||||||
|
alert("응답자 수량을 넣어주세요");
|
||||||
|
$("#qestnrParticipant").focus();
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if(Number(qestnrParticipant) < Number(qestnrRespondent)){
|
||||||
|
alert("응답자 수량이 참석자 수량보다 많습니다.");
|
||||||
|
$("#qestnrParticipant").focus();
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
var responseRateTxt = (Number(qestnrRespondent) / Number(qestnrParticipant)*Number(100)).toFixed(1);
|
||||||
|
$("#responseRate").text(responseRateTxt + "%");
|
||||||
|
$("#noResponse").text(Number(qestnrParticipant) - Number(qestnrRespondent));
|
||||||
|
}
|
||||||
|
|
||||||
|
function popupSrvySendSubmit(){
|
||||||
|
|
||||||
|
var qestmSize = parseInt($("#qestmInfoSize").val()); //평가문항 수량
|
||||||
|
var qestnrParticipant = parseInt($("#qestnrParticipant").val()); //참석자 수량
|
||||||
|
var qestnrRespondent = parseInt($("#qestnrRespondent").val()); //응답자 수량
|
||||||
|
|
||||||
|
if(qestnrParticipant == null || qestnrParticipant == ""){
|
||||||
|
alert("참석자 수량을 넣어주세요");
|
||||||
|
$("#qestnrParticipant").focus();
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if(qestnrRespondent == null || qestnrRespondent == ""){
|
||||||
|
alert("응답자 수량을 넣어주세요");
|
||||||
|
$("#qestnrRespondent").focus();
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if(qestnrParticipant < qestnrRespondent){
|
||||||
|
alert("응답자 수량이 참석자 수보다 많습니다 확인해 주세요");
|
||||||
|
$("#qestnrRespondent").focus();
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
for(var i=0; i < qestmSize; i++){
|
||||||
|
var verySatisfied = $("#verySatisfied_"+i).val();
|
||||||
|
var satisfied = $("#satisfied_"+i).val();
|
||||||
|
var neither = $("#neither_"+i).val();
|
||||||
|
var dissatisfied = $("#dissatisfied_"+i).val();
|
||||||
|
var veryDissatisfied = $("#veryDissatisfied_"+i).val();
|
||||||
|
|
||||||
|
if(verySatisfied == null || verySatisfied == ""){
|
||||||
|
alert((i+1)+"번 [매우만족] 만족도를 정확히 넣어주세요");
|
||||||
|
$("#verySatisfied_"+i).focus();
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if(satisfied == null || satisfied == ""){
|
||||||
|
alert((i+1)+"번 [만족] 만족도를 정확히 넣어주세요");
|
||||||
|
$("#satisfied_"+i).focus();
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if(neither == null || neither == ""){
|
||||||
|
alert((i+1)+"번 [보통] 만족도를 정확히 넣어주세요");
|
||||||
|
$("#neither_"+i).focus();
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if(dissatisfied == null || dissatisfied == ""){
|
||||||
|
alert((i+1)+"번 [불만족] 만족도를 정확히 넣어주세요");
|
||||||
|
$("#dissatisfied_"+i).focus();
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if(veryDissatisfied == null || veryDissatisfied == ""){
|
||||||
|
alert((i+1)+"번 [매우불만족] 만족도를 정확히 넣어주세요");
|
||||||
|
$("#veryDissatisfied_"+i).focus();
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
var sum = Number(verySatisfied) + Number(satisfied) + Number(neither) + Number(dissatisfied) + Number(veryDissatisfied);
|
||||||
|
|
||||||
|
if(qestnrRespondent != sum ){
|
||||||
|
alert((i+1)+"문항의 합계가 응답수량과 맞지 않습니다.");
|
||||||
|
$("#verySatisfied_"+i).focus();
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(confirm("설문결과를 등록 하시겠습니까?")){
|
||||||
|
// var frm = document.newSrvyPopupForm;
|
||||||
|
var data = new FormData(document.getElementById("newSrvyPopupForm"));
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type:"POST"
|
||||||
|
,url:"${pageContext.request.contextPath}/web/ve/aplct/tngrVisitEdu/eduEnd/insertNewSrvyInfoAjax.do"
|
||||||
|
,data: data
|
||||||
|
,dataType:'json'
|
||||||
|
,async: false
|
||||||
|
,processData: false
|
||||||
|
,contentType: false
|
||||||
|
,cache: false
|
||||||
|
,success:function(returnData){
|
||||||
|
if(returnData.result == 'success'){
|
||||||
|
alert("설문결과가 등록 되었습니다.");
|
||||||
|
window.location.reload();
|
||||||
|
}else if(returnData.result == 'fail'){
|
||||||
|
alert(returnData.msg);
|
||||||
|
location.href="/web/user/login/ssoLogin.do?test=test";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
,error:function(request , status, error){
|
||||||
|
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$(document).ready(function(){
|
||||||
|
/*
|
||||||
|
boardCaptionDetailToggle4();
|
||||||
|
|
||||||
|
// 레이어팝업 포커싱 이동 수정
|
||||||
|
$(".tooltip-close").click(function(){
|
||||||
|
var activeTarget = $('[data-tooltip-con="sub36_pop02"]');
|
||||||
|
activeTarget.hide();
|
||||||
|
$('[data-tooltip="sub01_pop02"]').focus();
|
||||||
|
});
|
||||||
|
|
||||||
|
//레이어팝업 초정 이동 시 필요한 data 값 추가
|
||||||
|
var btnLast = $('.popup_cont').find('.page').find('button:last-child');
|
||||||
|
btnLast.attr('data-focus-next','sub36_pop02');
|
||||||
|
btnLast.attr('data-focus','sub36_pop02_close');
|
||||||
|
*/
|
||||||
|
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
<!-- 일정 상세 -->
|
||||||
|
<form id="newSrvyPopupForm" name="newSrvyPopupForm" method="post" >
|
||||||
|
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${chasiInfo.eduAplctOrd}">
|
||||||
|
<input type="hidden" name="eduChasiOrd" id="eduChasiOrd" value="${chasiInfo.eduChasiOrd}">
|
||||||
|
<input type="hidden" name="qustnrTmplatId" id="qustnrTmplatId" value="${chasiSrvyList[0].qustnrTmplatId}">
|
||||||
|
<input type="hidden" name="qestnrId" id="qestnrId" value="${chasiSrvyList[0].qestnrId}">
|
||||||
|
<input type="hidden" name="qestmInfoSize" id="qestmInfoSize" value="${fn:length(chasiSrvyList)}">
|
||||||
|
|
||||||
|
<div class="popup_wrap popType01" tabindex="0" data-tooltip-con="sub36_pop02" data-focus="sub36_pop02" data-focus-prev="sub36_pop02_close">
|
||||||
|
<div class="popup_tit">
|
||||||
|
<p>강의만족도 결과 등록</p> <button class="btn_popup_close tooltip-close" data-focus="sub36_pop02_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: 10%;">
|
||||||
|
<col style="width: 15%;">
|
||||||
|
<col style="width: 8%;">
|
||||||
|
<col style="width: 10%;">
|
||||||
|
<col style="width: 10%;">
|
||||||
|
<col style="width: 8%;">
|
||||||
|
<col style="width: 10%;">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">교육일</th>
|
||||||
|
<th scope="col">차시</th>
|
||||||
|
<th scope="col">구분</th>
|
||||||
|
<th scope="col">대상</th>
|
||||||
|
<th scope="col">배정강사</th>
|
||||||
|
<th scope="col">인원</th>
|
||||||
|
<th scope="col">설문완료 여부</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<th scope="row" id="popupEduHopeDt">
|
||||||
|
<c:out value="${chasiInfo.eduHopeDt}" />
|
||||||
|
</th>
|
||||||
|
<td id="popupTm">
|
||||||
|
<c:out value="${chasiInfo.strtTm}" />~<c:out value="${chasiInfo.endTm}" />
|
||||||
|
</td>
|
||||||
|
<td id="popupDivCd">
|
||||||
|
<c:out value="${chasiInfo.divCd}" />
|
||||||
|
</td>
|
||||||
|
<td id="popupTrgt">
|
||||||
|
<c:out value="${chasiInfo.trgt}" />
|
||||||
|
</td>
|
||||||
|
<td id="popupInstrNm">
|
||||||
|
<c:out value="${chasiInfo.instrNm}" />
|
||||||
|
</td>
|
||||||
|
<td id="popupPrsnl">
|
||||||
|
<c:out value="${chasiInfo.prsnl}" />
|
||||||
|
</td>
|
||||||
|
<td id="popupSrvyStatus">
|
||||||
|
<c:choose>
|
||||||
|
<c:when test="${qestnrParticipant eq '' or qestnrParticipant eq null}">
|
||||||
|
설문진행중
|
||||||
|
</c:when>
|
||||||
|
<c:otherwise>
|
||||||
|
설문완료
|
||||||
|
</c:otherwise>
|
||||||
|
</c:choose>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<br/>
|
||||||
|
<br/>
|
||||||
|
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<caption>참석자, 응답율, 응답자, 무응답에 대한 정보를 제공/입력</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 120px;">
|
||||||
|
<col style="width: auto;">
|
||||||
|
<col style="width: 120px;">
|
||||||
|
<col style="width: auto;">
|
||||||
|
</colgroup>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<th scope="row">
|
||||||
|
<p>참석자</p>
|
||||||
|
</th>
|
||||||
|
<td>
|
||||||
|
<label for="qestnrParticipant" class="label">참석자 수 입력</label>
|
||||||
|
<input type="text" numberOnly class="popupInput" style="width: 50%;"
|
||||||
|
id="qestnrParticipant" name="qestnrParticipant" value="<c:out value="${qestnrParticipant}" />">
|
||||||
|
</td>
|
||||||
|
<th scope="row">
|
||||||
|
<p>응답율</p>
|
||||||
|
</th>
|
||||||
|
<td id="responseRate">-</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th scope="row">
|
||||||
|
<p>응답자</p>
|
||||||
|
</th>
|
||||||
|
<td>
|
||||||
|
<label for="qestnrRespondent" class="label">응답자 수 입력</label>
|
||||||
|
<input type="text" numberOnly class="popupInput" style="width: 50%;"
|
||||||
|
id="qestnrRespondent" name="qestnrRespondent" value="<c:out value="${qestnrRespondent}" />" onblur="replyCalculation(); return false;">
|
||||||
|
</td>
|
||||||
|
<th scope="row">
|
||||||
|
<p>무응답</p>
|
||||||
|
</th>
|
||||||
|
<td id="noResponse">-</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<br/>
|
||||||
|
<br/>
|
||||||
|
|
||||||
|
<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>
|
||||||
|
<c:forEach items="${chasiSrvyList}" var="QestmInfo" varStatus="status1">
|
||||||
|
|
||||||
|
<c:set var="setQustnrRsltId" value="${QestmInfo.qustnrRsltId}"/>
|
||||||
|
|
||||||
|
|
||||||
|
<input type="hidden" name="qustnrQesitmId" value="${QestmInfo.qustnrQesitmId}">
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<th scope="row" class="t_left">
|
||||||
|
${status1.count}) <c:out value="${QestmInfo.qestnCn}" escapeXml="false" />
|
||||||
|
<c:if test="${QestmInfo.mxmmChoiseCo > 1}">
|
||||||
|
<font color="red"><b>(최대선택건수 ${QestmInfo.mxmmChoiseCo})</b></font>
|
||||||
|
</c:if>
|
||||||
|
<input type="hidden" name="resultList[${status1.index}].qestnrId" value="${QestmInfo.qestnrId}">
|
||||||
|
<input type="hidden" name="resultList[${status1.index}].qestnrQesitmId" value="${QestmInfo.qustnrQesitmId}">
|
||||||
|
|
||||||
|
</th>
|
||||||
|
<td>
|
||||||
|
<label for="verySatisfied_${status1.index}" class="label">매우만족</label>
|
||||||
|
<input type="text" numberOnly class="popupInput" style="width: 70%;padding:0 5px;text-align:center;"
|
||||||
|
title="매우만족" id="verySatisfied_${status1.index}" name="resultList[${status1.index}].verySatisfied" value="${QestmInfo.verySatisfied}" >
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<label for="satisfied_${status1.index}" class="label">만족</label>
|
||||||
|
<input type="text" numberOnly class="popupInput" style="width: 70%;padding:0 5px;text-align:center;"
|
||||||
|
title="만족" id="satisfied_${status1.index}" name="resultList[${status1.index}].satisfied" value="${QestmInfo.satisfied}" >
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<label for="neither_${status1.index}" class="label">보통</label>
|
||||||
|
<input type="text" numberOnly class="popupInput" style="width: 70%;padding:0 5px;text-align:center;"
|
||||||
|
title="보통" id="neither_${status1.index}" name="resultList[${status1.index}].neither" value="${QestmInfo.neither}" >
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<label for="dissatisfied_${status1.index}" class="label">불만족</label>
|
||||||
|
<input type="text" numberOnly class="popupInput" style="width: 70%;padding:0 5px;text-align:center;"
|
||||||
|
title="불만족" id="dissatisfied_${status1.index}" name="resultList[${status1.index}].dissatisfied" value="${QestmInfo.dissatisfied}" >
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<label for="veryDissatisfied_${status1.index}" class="label">매우불만족</label>
|
||||||
|
<input type="text" numberOnly class="popupInput" style="width: 70%;padding:0 5px;text-align:center;"
|
||||||
|
title="매우불만족" id="veryDissatisfied_${status1.index}" name="resultList[${status1.index}].veryDissatisfied" value="${QestmInfo.veryDissatisfied}" >
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</c:forEach>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<br/>
|
||||||
|
<br/>
|
||||||
|
|
||||||
|
<c:choose>
|
||||||
|
<c:when test="${setQustnrRsltId eq '' or setQustnrRsltId eq null}">
|
||||||
|
<!-- 응답이 없다. -->
|
||||||
|
|
||||||
|
<div class="pop_btn_wrap btn_layout01">
|
||||||
|
<div class="btn_left">
|
||||||
|
</div>
|
||||||
|
<div class="btn_center">
|
||||||
|
|
||||||
|
<button type="button" class="btnType05" id="popupSubmin" onclick="popupSrvySendSubmit();">제출</button>
|
||||||
|
|
||||||
|
<button type="button" class="btnType02 tooltip-close" data-focus="sub37_pop01_close" data-focus-next="sub37_pop01">취소</button>
|
||||||
|
</div>
|
||||||
|
<div class="btn_right">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</c:when>
|
||||||
|
<c:otherwise>
|
||||||
|
<!-- 응답이 있다. -->
|
||||||
|
|
||||||
|
<script>
|
||||||
|
replyCalculation();
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<div class="pop_btn_wrap btn_layout01">
|
||||||
|
<div class="btn_left">
|
||||||
|
</div>
|
||||||
|
<div class="btn_center">
|
||||||
|
|
||||||
|
<button type="button" class="btnType02 tooltip-close" data-focus="sub37_pop01_close" data-focus-next="sub37_pop01">닫기</button>
|
||||||
|
</div>
|
||||||
|
<div class="btn_right">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</c:otherwise>
|
||||||
|
</c:choose>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<table>
|
||||||
|
<caption>학교명 검색 학교급, 지역, 행정구, 선택 을/를 제공하는 표</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 20%;">
|
||||||
|
<col style="width: 20%;">
|
||||||
|
<col style="width: 20%;">
|
||||||
|
<col style="width: auto;">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">학교급</th>
|
||||||
|
<th scope="col">지역</th>
|
||||||
|
<th scope="col">행정구</th>
|
||||||
|
<th scope="col">선택</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<c:forEach var="row" items="${scholList}" varStatus="status">
|
||||||
|
<tr>
|
||||||
|
<th scope="row"><c:out value="${row.scholGradeNm}" /></th>
|
||||||
|
<td><c:out value="${row.locNm}" /></td>
|
||||||
|
<td><c:out value="${row.newAddrDtl}" /></td>
|
||||||
|
<td class="c_ce4900">
|
||||||
|
<a href="#" onclick="fncScholDataSlct(this); return false;"><c:out value="${row.scholNm}" /></a>
|
||||||
|
<input type="hidden" name="scholId" value="${row.scholId}"/>
|
||||||
|
<input type="hidden" name="offcCd" value="${row.offcCd}"/>
|
||||||
|
<input type="hidden" name="offcNm" value="${row.offcNm}"/>
|
||||||
|
<input type="hidden" name="stndrdScholCd" value="${row.stndrdScholCd}"/>
|
||||||
|
<input type="hidden" name="scholNm" value="${row.scholNm}"/>
|
||||||
|
<input type="hidden" name="scholNmEng" value="${row.scholNmEng}"/>
|
||||||
|
<input type="hidden" name="scholGradeNm" value="${row.scholGradeNm}"/>
|
||||||
|
<input type="hidden" name="locNm" value="${row.locNm}"/>
|
||||||
|
<input type="hidden" name="cptntOrgnzNm" value="${row.cptntOrgnzNm}"/>
|
||||||
|
<input type="hidden" name="estbsNm" value="${row.estbsNm}"/>
|
||||||
|
<input type="hidden" name="newZipcd" value="${row.newZipcd}"/>
|
||||||
|
<input type="hidden" name="newAddr" value="${row.newAddr}"/>
|
||||||
|
<input type="hidden" name="newAddrDtl" value="${row.newAddrDtl}"/>
|
||||||
|
<input type="hidden" name="telNum" value="${row.telNum}"/>
|
||||||
|
<input type="hidden" name="homepage" value="${row.homepage}"/>
|
||||||
|
<input type="hidden" name="coeduDivsnNm" value="${row.coeduDivsnNm}"/>
|
||||||
|
<input type="hidden" name="faxNum" value="${row.faxNum}"/>
|
||||||
|
<input type="hidden" name="hsDivsnNm" value="${row.hsDivsnNm}"/>
|
||||||
|
<input type="hidden" name="indSpclCls" value="${row.indSpclCls}"/>
|
||||||
|
<input type="hidden" name="hsTypeNm" value="${row.hsTypeNm}"/>
|
||||||
|
<input type="hidden" name="spclPrpsHsLineNm" value="${row.spclPrpsHsLineNm}"/>
|
||||||
|
<input type="hidden" name="exmPrdDivsnNm" value="${row.exmPrdDivsnNm}"/>
|
||||||
|
<input type="hidden" name="dnDvisnNm" value="${row.dnDvisnNm}"/>
|
||||||
|
<input type="hidden" name="estbsDt" value="${row.estbsDt}"/>
|
||||||
|
|
||||||
|
<input type="hidden" name="scholDivCd" value="${row.scholDivCd}"/>
|
||||||
|
<input type="hidden" name="isltnScholYn" value="${row.isltnScholYn}"/>
|
||||||
|
|
||||||
|
<input type="hidden" name="isltnYn" value="${row.isltnYn}"/>
|
||||||
|
<input type="hidden" name="isltn2Yn" value="${row.isltn2Yn}"/>
|
||||||
|
<input type="hidden" name="isltn3Yn" value="${row.isltn3Yn}"/>
|
||||||
|
<input type="hidden" name="ppltnReducAreaYn" value="${row.ppltnReducAreaYn}"/>
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</c:forEach>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
-->
|
||||||
|
|
||||||
|
<br/>
|
||||||
|
<br/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
@ -91,13 +91,47 @@
|
|||||||
listForm.submit();
|
listForm.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
function selectChasiStatus(id, chId, action){
|
//설문 팝업
|
||||||
|
function fncQustnrList(
|
||||||
|
id //aplctOrd
|
||||||
|
, chId //chasiOrd
|
||||||
|
, p_site_id_cd //10,20,30
|
||||||
|
, p_action //select, insert
|
||||||
|
, p_qustnrTmplatId //select, insert
|
||||||
|
, p_qestnrId //select, insert
|
||||||
|
, p_qustnrRespondId //select, insert
|
||||||
|
) {
|
||||||
|
|
||||||
|
paramObj = {
|
||||||
|
"eduAplctOrd" : id
|
||||||
|
,"eduChasiOrd" : chId
|
||||||
|
,"site_id_cd" : p_site_id_cd
|
||||||
|
|
||||||
|
,"action" : p_action
|
||||||
|
|
||||||
|
,"qustnrTmplatId" : p_qustnrTmplatId
|
||||||
|
,"qestnrId" : p_qestnrId
|
||||||
|
,"qustnrRespondId" : p_qustnrRespondId
|
||||||
|
};
|
||||||
|
|
||||||
|
commonPopLayeropen(
|
||||||
|
"${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/scholInfo/popup/qustnrPopList.do"
|
||||||
|
, 800
|
||||||
|
, 700
|
||||||
|
, paramObj
|
||||||
|
, "Y"
|
||||||
|
, "scholPop"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
function selectChasiStatus(id, chId, p_site_id_cd, action){
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type:"POST"
|
type:"POST"
|
||||||
,url:"${pageContext.request.contextPath}/web/ve/aplct/tngrVisitEdu/eduEnd/selectEduChasiStatusAjax.do"
|
,url:"${pageContext.request.contextPath}/web/ve/aplct/tngrVisitEdu/eduEnd/selectEduChasiStatusAjax.do"
|
||||||
,data: {
|
,data: {
|
||||||
"eduAplctOrd" : id
|
"eduAplctOrd" : id
|
||||||
,"eduChasiOrd" : chId
|
,"eduChasiOrd" : chId
|
||||||
|
,"site_id_cd" : p_site_id_cd
|
||||||
}
|
}
|
||||||
,dataType:'json'
|
,dataType:'json'
|
||||||
,success:function(returnData){
|
,success:function(returnData){
|
||||||
@ -999,13 +1033,17 @@
|
|||||||
<div class="tb_type02">
|
<div class="tb_type02">
|
||||||
<table>
|
<table>
|
||||||
<colgroup>
|
<colgroup>
|
||||||
<col style="width: 18%;">
|
<col style="width: 10%;">
|
||||||
<col style="width: auto;">
|
<col style="width: auto;">
|
||||||
<col style="width: 11%;">
|
<col style="width: 11%;">
|
||||||
<col style="width: 14%;">
|
|
||||||
<col style="width: 12%;">
|
|
||||||
<col style="width: 8%;">
|
<col style="width: 8%;">
|
||||||
|
<col style="width: 8%;">
|
||||||
|
<col style="width: 6%;">
|
||||||
<col style="width: 12%;">
|
<col style="width: 12%;">
|
||||||
|
<col style="width: 12%;">
|
||||||
|
<!--
|
||||||
|
<col style="width: 12%;">
|
||||||
|
-->
|
||||||
</colgroup>
|
</colgroup>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@ -1015,7 +1053,11 @@
|
|||||||
<th scope="col">대상</th>
|
<th scope="col">대상</th>
|
||||||
<th scope="col">배정강사</th>
|
<th scope="col">배정강사</th>
|
||||||
<th scope="col">인원</th>
|
<th scope="col">인원</th>
|
||||||
<th scope="col">만족도조사</th>
|
<th scope="col">만족도조사(학생)</th>
|
||||||
|
<th scope="col">만족도조사(신청인)</th>
|
||||||
|
<!--
|
||||||
|
<th scope="col">만족도조사(강사)</th>
|
||||||
|
-->
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@ -1058,22 +1100,71 @@
|
|||||||
</td>
|
</td>
|
||||||
<td>${list.prsnl}</td>
|
<td>${list.prsnl}</td>
|
||||||
|
|
||||||
<td>
|
<td><!-- 학생 -->
|
||||||
<c:choose>
|
<c:choose>
|
||||||
<c:when test="${not empty list.qustnrRespondId}">
|
<c:when test="${not empty list.qustnrRespondId10 and list.qestnrParticipantCnt gt 0 and list.qustnrQesitmId10Cnt gt 0}">
|
||||||
<button type="button" class="btnType01" data-tooltip="sub37_pop01" onclick="selectChasiStatus('${list.eduAplctOrd}','${list.eduChasiOrd}','select')" title="팝업 열림">설문완료</button>
|
<button type="button" class="btnType02" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','10','select'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}'
|
||||||
|
)" title="팝업 열림">설문완료</button>
|
||||||
|
</c:when>
|
||||||
|
<c:when test="${not empty list.qestnrId10}">
|
||||||
|
<button type="button" class="btnType01" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','10','insert'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}'
|
||||||
|
)" title="팝업 열림">설문등록</button>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
<button type="button" class="btnType01" data-tooltip="sub37_pop01" onclick="selectChasiStatus('${list.eduAplctOrd}','${list.eduChasiOrd}','insert')" title="팝업 열림">설문등록</button>
|
해당설문없음
|
||||||
</c:otherwise>
|
</c:otherwise>
|
||||||
</c:choose>
|
</c:choose>
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
|
<td><!-- 신청인 -->
|
||||||
|
<c:choose>
|
||||||
|
<c:when test="${not empty list.qustnrRespondId20 and list.qestnrParticipantCnt gt 0 and list.qustnrQesitmId20Cnt gt 0}">
|
||||||
|
<button type="button" class="btnType02" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','20','select'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId20}','${list.qustnrRespondId20}'
|
||||||
|
)" title="팝업 열림">설문완료</button>
|
||||||
|
</c:when>
|
||||||
|
<c:when test="${not empty list.qestnrId20}">
|
||||||
|
<button type="button" class="btnType01" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','20','insert'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId20}','${list.qustnrRespondId20}'
|
||||||
|
)" title="팝업 열림">설문등록</button>
|
||||||
|
</c:when>
|
||||||
|
<c:otherwise>
|
||||||
|
해당설문없음
|
||||||
|
</c:otherwise>
|
||||||
|
</c:choose>
|
||||||
|
|
||||||
|
</td>
|
||||||
|
<!-- 강사 -->
|
||||||
|
<!--
|
||||||
|
<td>
|
||||||
|
<c:choose>
|
||||||
|
<c:when test="${not empty list.qustnrRespondId30 and list.qestnrParticipantCnt gt 0 and list.qustnrQesitmId30Cnt gt 0}">
|
||||||
|
<button type="button" class="btnType02" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','30','select'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId30}','${list.qustnrRespondId30}'
|
||||||
|
)" title="팝업 열림">설문완료</button>
|
||||||
|
</c:when>
|
||||||
|
<c:otherwise>
|
||||||
|
<button type="button" class="btnType01" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','30','insert'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId30}','${list.qustnrRespondId30}'
|
||||||
|
)" title="팝업 열림">설문등록</button>
|
||||||
|
</c:otherwise>
|
||||||
|
</c:choose>
|
||||||
|
|
||||||
|
</td>
|
||||||
|
-->
|
||||||
</tr>
|
</tr>
|
||||||
</c:forEach>
|
</c:forEach>
|
||||||
<c:if test="${fn:length(chasiList) eq 0}">
|
<c:if test="${fn:length(chasiList) eq 0}">
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="6"><spring:message code="common.nodata.msg" /></td>
|
<td colspan="8"><spring:message code="common.nodata.msg" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
</c:if>
|
</c:if>
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|||||||
@ -438,6 +438,50 @@ $( document ).ready(function() {
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</c:if>
|
</c:if>
|
||||||
|
|
||||||
|
<c:forEach var="list" items="${chasiList}" varStatus="status">
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<th scope="row">
|
||||||
|
<p>강사설문</p>
|
||||||
|
</th>
|
||||||
|
<td>
|
||||||
|
<c:choose>
|
||||||
|
<c:when test="${not empty list.qustnrRespondId30 and list.qestnrParticipantCnt gt 0 and list.qustnrQesitmId30Cnt gt 0}">
|
||||||
|
<button type="button" class="btnType02 m_btn_block" data-tooltip="sub37_pop30"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','30','select'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId30}','${list.qustnrRespondId30}'
|
||||||
|
)" title="팝업 열림" style="height:40px;width:120px;">설문완료</button>
|
||||||
|
</c:when>
|
||||||
|
<c:when test="${not empty list.qestnrId30}">
|
||||||
|
<button type="button" class="btnType01" data-tooltip="sub37_pop30"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','30','insert'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId30}','${list.qustnrRespondId30}'
|
||||||
|
)" title="팝업 열림">설문등록</button>
|
||||||
|
</c:when>
|
||||||
|
<c:otherwise>
|
||||||
|
해당설문없음
|
||||||
|
<!--
|
||||||
|
<button type="button" class="btnType01" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','20','insert'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId20}','${list.qustnrRespondId20}'
|
||||||
|
)" title="팝업 열림">설문등록</button>
|
||||||
|
-->
|
||||||
|
</c:otherwise>
|
||||||
|
</c:choose>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<th scope="row">
|
||||||
|
<p>강사평균만족도</p>
|
||||||
|
</th>
|
||||||
|
<td>
|
||||||
|
<c:out value="${list.avgScore}" />점
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</c:forEach>
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -67,6 +67,38 @@ $( document ).ready(function() {
|
|||||||
window.open("<c:url value='/web/ve/instr/tngrVisitEdu/endInfo/FileDown.do?atchFileId="+atchFileId+"&fileSn="+fileSn+"&newFileNm="+newFileNm+"'/>");
|
window.open("<c:url value='/web/ve/instr/tngrVisitEdu/endInfo/FileDown.do?atchFileId="+atchFileId+"&fileSn="+fileSn+"&newFileNm="+newFileNm+"'/>");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//설문 팝업
|
||||||
|
function fncQustnrList(
|
||||||
|
id //aplctOrd
|
||||||
|
, chId //chasiOrd
|
||||||
|
, p_site_id_cd //10,20,30
|
||||||
|
, p_action //select, insert
|
||||||
|
, p_qustnrTmplatId //select, insert
|
||||||
|
, p_qestnrId //select, insert
|
||||||
|
, p_qustnrRespondId //select, insert
|
||||||
|
) {
|
||||||
|
|
||||||
|
paramObj = {
|
||||||
|
"eduAplctOrd" : id
|
||||||
|
,"eduChasiOrd" : chId
|
||||||
|
,"site_id_cd" : p_site_id_cd
|
||||||
|
|
||||||
|
,"action" : p_action
|
||||||
|
|
||||||
|
,"qustnrTmplatId" : p_qustnrTmplatId
|
||||||
|
,"qestnrId" : p_qestnrId
|
||||||
|
,"qustnrRespondId" : p_qustnrRespondId
|
||||||
|
};
|
||||||
|
|
||||||
|
commonPopLayeropen(
|
||||||
|
"${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/scholInfo/popup/qustnrPopList.do"
|
||||||
|
, 800
|
||||||
|
, 700
|
||||||
|
, paramObj
|
||||||
|
, "Y"
|
||||||
|
, "scholPop"
|
||||||
|
);
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
@ -538,6 +570,49 @@ $( document ).ready(function() {
|
|||||||
</th>
|
</th>
|
||||||
<td><c:out value="${info3.unqIsues}" /></td>
|
<td><c:out value="${info3.unqIsues}" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<c:forEach var="list" items="${chasiList}" varStatus="status">
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<th scope="row">
|
||||||
|
<p>강사설문</p>
|
||||||
|
</th>
|
||||||
|
<td>
|
||||||
|
<c:choose>
|
||||||
|
<c:when test="${not empty list.qustnrRespondId30 and list.qestnrParticipantCnt gt 0 and list.qustnrQesitmId30Cnt gt 0}">
|
||||||
|
<button type="button" class="btnType02 m_btn_block" data-tooltip="sub37_pop30"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','30','select'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId30}','${list.qustnrRespondId30}'
|
||||||
|
)" title="팝업 열림" style="height:40px;width:120px;">설문완료</button>
|
||||||
|
</c:when>
|
||||||
|
<c:when test="${not empty list.qestnrId30}">
|
||||||
|
<button type="button" class="btnType01" data-tooltip="sub37_pop30"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','30','insert'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId30}','${list.qustnrRespondId30}'
|
||||||
|
)" title="팝업 열림">설문등록</button>
|
||||||
|
</c:when>
|
||||||
|
<c:otherwise>
|
||||||
|
해당설문없음
|
||||||
|
<!--
|
||||||
|
<button type="button" class="btnType01" data-tooltip="sub37_pop20"
|
||||||
|
onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','20','insert'
|
||||||
|
,'${list.qustnrTmplatId}','${list.qestnrId20}','${list.qustnrRespondId20}'
|
||||||
|
)" title="팝업 열림">설문등록</button>
|
||||||
|
-->
|
||||||
|
</c:otherwise>
|
||||||
|
</c:choose>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<th scope="row">
|
||||||
|
<p>강사평균만족도</p>
|
||||||
|
</th>
|
||||||
|
<td>
|
||||||
|
<c:out value="${list.avgScore}" />점
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</c:forEach>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">
|
<th scope="row">
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user