2023-12-15 15:03 개인별 만족도 등록
This commit is contained in:
parent
2dd8b03bdb
commit
43a3a2725f
@ -90,4 +90,32 @@ public class QustnrCommonUtil {
|
|||||||
|
|
||||||
return p_model;
|
return p_model;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ModelMap _chasiSrvyEAList(
|
||||||
|
ModelMap p_model
|
||||||
|
, String p_siteId
|
||||||
|
, String p_siteIdCd
|
||||||
|
, String p_eduAplctOrd
|
||||||
|
, String p_eduChasiOrd
|
||||||
|
, VEALettnQestnrMIXService p_vEALettnQestnrMIXService
|
||||||
|
)throws Exception{
|
||||||
|
|
||||||
|
//설문지 정보
|
||||||
|
System.out.println("===========!설문지정보!===========");
|
||||||
|
VEAQestnrVO vEAQestnrVO = new VEAQestnrVO();
|
||||||
|
vEAQestnrVO.setSiteId(p_siteId); //청소년
|
||||||
|
vEAQestnrVO.setSiteIdCd(p_siteIdCd); //10-기본설문, 20-신청자설문, 30-강사설문
|
||||||
|
vEAQestnrVO = p_vEALettnQestnrMIXService.selectDetail_MIX_LQI_02(vEAQestnrVO);
|
||||||
|
|
||||||
|
vEAQestnrVO.setEduAplctOrd(p_eduAplctOrd);
|
||||||
|
vEAQestnrVO.setEduChasiOrd(p_eduChasiOrd);
|
||||||
|
|
||||||
|
List<VEAQestnrVO> chasiSrvyList = p_vEALettnQestnrMIXService.selectDetail_MIX_LQI_04(vEAQestnrVO);
|
||||||
|
|
||||||
|
if(chasiSrvyList.size() > 0) {
|
||||||
|
p_model.addAttribute("chasiSrvyEAList",chasiSrvyList);
|
||||||
|
}
|
||||||
|
|
||||||
|
return p_model;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@ -7,6 +7,7 @@ import kcc.com.cmm.ComDefaultVO;
|
|||||||
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 kcc.ve.oprtn.qestnr.service.VEAQestnrVO;
|
||||||
/**
|
/**
|
||||||
* 설문조사 Service Class 구현
|
* 설문조사 Service Class 구현
|
||||||
* @author 공통서비스 장동한
|
* @author 공통서비스 장동한
|
||||||
@ -155,6 +156,10 @@ public interface EgovQustnrRespondInfoService {
|
|||||||
//개별 응답 저장
|
//개별 응답 저장
|
||||||
void insertSrvyEAInfo(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception;
|
void insertSrvyEAInfo(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception;
|
||||||
|
|
||||||
|
//개별 응답 저장
|
||||||
|
void deleteSrvyEAInfo(VEAQestnrVO vEAQestnrVO) throws Exception;
|
||||||
|
|
||||||
|
|
||||||
void updateSrvyInfo(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception;
|
void updateSrvyInfo(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception;
|
||||||
|
|
||||||
// 차수별 설문 조회
|
// 차수별 설문 조회
|
||||||
|
|||||||
@ -15,6 +15,7 @@ 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 kcc.ve.oprtn.qestnr.service.VEAQestnrVO;
|
||||||
/**
|
/**
|
||||||
* 설문조사 ServiceImpl Class 구현
|
* 설문조사 ServiceImpl Class 구현
|
||||||
* @author 공통서비스 장동한
|
* @author 공통서비스 장동한
|
||||||
@ -227,6 +228,11 @@ public class EgovQustnrRespondInfoServiceImpl extends EgovAbstractServiceImpl im
|
|||||||
dao.insertSrvyEAInfo(qustnrRespondInfoVO);
|
dao.insertSrvyEAInfo(qustnrRespondInfoVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deleteSrvyEAInfo(VEAQestnrVO vEAQestnrVO) throws Exception {
|
||||||
|
dao.deleteSrvyEAInfo(vEAQestnrVO);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateSrvyInfo(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception {
|
public void updateSrvyInfo(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception {
|
||||||
dao.updateSrvyInfo(qustnrRespondInfoVO);
|
dao.updateSrvyInfo(qustnrRespondInfoVO);
|
||||||
|
|||||||
@ -11,6 +11,7 @@ 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 kcc.ve.oprtn.qestnr.service.VEAQestnrVO;
|
||||||
/**
|
/**
|
||||||
* 설문조사 Dao Class 구현
|
* 설문조사 Dao Class 구현
|
||||||
* @author 공통서비스 장동한
|
* @author 공통서비스 장동한
|
||||||
@ -188,6 +189,10 @@ public class QustnrRespondInfoDao extends EgovAbstractDAO {
|
|||||||
insert("QustnrRespondInfo.insertSrvyEAInfo", qustnrRespondInfoVO);
|
insert("QustnrRespondInfo.insertSrvyEAInfo", qustnrRespondInfoVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void deleteSrvyEAInfo(VEAQestnrVO vEAQestnrVO) throws Exception{
|
||||||
|
delete("QustnrRespondInfo.deleteSrvyEAInfo", vEAQestnrVO);
|
||||||
|
}
|
||||||
|
|
||||||
public void updateSrvyInfo(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception{
|
public void updateSrvyInfo(QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception{
|
||||||
update("QustnrRespondInfo.updateSrvyInfo", qustnrRespondInfoVO);
|
update("QustnrRespondInfo.updateSrvyInfo", qustnrRespondInfoVO);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -346,28 +346,23 @@ public class EduRsltMngAdultController {
|
|||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
// 설문조사 결과 조회
|
//개인별 만족도 관리 - chasiSrvyEAList
|
||||||
qustnrRespondInfoVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
try{
|
||||||
qustnrRespondInfoVO.setEduChasiOrd(vEEduAplctVO.getEduChasiOrd());
|
model = qustnrCommonUtil._chasiSrvyEAList(
|
||||||
List<QustnrRespondInfoVO> chasiSrvyList = egovQustnrRespondInfoService.selectChasiSrvyList(qustnrRespondInfoVO);
|
model
|
||||||
if(chasiSrvyList.size() > 0) {
|
, VeConstants.LCTR_DIV_CD_20 //청소년 -10, 성인-20, ...VE0012
|
||||||
model.addAttribute("qestnrRespondent", chasiSrvyList.get(0).getQestnrRespondent());
|
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
||||||
model.addAttribute("qestnrParticipant", chasiSrvyList.get(0).getQestnrParticipant());
|
, vEEduAplctVO.getEduAplctOrd()
|
||||||
model.addAttribute("chasiSrvyList",chasiSrvyList);
|
, vEEduAplctVO.getEduChasiOrd()
|
||||||
|
, vEALettnQestnrMIXService
|
||||||
|
);
|
||||||
|
|
||||||
|
}catch(Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
|
||||||
|
System.out.println("=============================================chasiSrvyEAList=============================================");
|
||||||
|
|
||||||
/*
|
|
||||||
System.out.println("------------------------");
|
|
||||||
//전체 차시 배정 강사 정보
|
|
||||||
vEInstrAsgnmVO.setEduChasiOrd("");
|
|
||||||
List<VEInstrAsgnmVO> selectAsgnmInstrList = vEAsgnmMIXService.selectAsgnmInstrList(vEInstrAsgnmVO);
|
|
||||||
model.addAttribute("listChasi", selectAsgnmInstrList);
|
|
||||||
System.out.println("------------------------=======================");
|
|
||||||
*/
|
|
||||||
|
|
||||||
//20220223 우영두 추가
|
//20220223 우영두 추가
|
||||||
//강의내역 NOTI 입력
|
//강의내역 NOTI 입력
|
||||||
|
|||||||
@ -15,4 +15,7 @@ public interface VEALettnQestnrMIXService {
|
|||||||
|
|
||||||
//관리자 청소년,성인 - 만족도 평가
|
//관리자 청소년,성인 - 만족도 평가
|
||||||
List<VEAQestnrVO> selectDetail_MIX_LQI_03(VEAQestnrVO paramVO) throws Exception; // R
|
List<VEAQestnrVO> selectDetail_MIX_LQI_03(VEAQestnrVO paramVO) throws Exception; // R
|
||||||
|
|
||||||
|
//관리자 청소년,성인 - 개별 만족도 리스트
|
||||||
|
List<VEAQestnrVO> selectDetail_MIX_LQI_04(VEAQestnrVO paramVO) throws Exception; // R
|
||||||
}
|
}
|
||||||
|
|||||||
@ -91,6 +91,11 @@ public class VEAQestnrVO extends ComDefaultVO implements Serializable {
|
|||||||
private String qestnrQesitmId;
|
private String qestnrQesitmId;
|
||||||
|
|
||||||
|
|
||||||
|
private String qustnrNm; //개별설문등록자명
|
||||||
|
private String qustnrBirth; //개별설문등록자생년월일
|
||||||
|
private String qustnrScore; //개별설문등록자점수
|
||||||
|
|
||||||
|
|
||||||
public String getQestnrQesitmId() {
|
public String getQestnrQesitmId() {
|
||||||
return qestnrQesitmId;
|
return qestnrQesitmId;
|
||||||
}
|
}
|
||||||
@ -360,5 +365,23 @@ public class VEAQestnrVO extends ComDefaultVO implements Serializable {
|
|||||||
public void setFrstRegisterNm(String frstRegisterNm) {
|
public void setFrstRegisterNm(String frstRegisterNm) {
|
||||||
this.frstRegisterNm = frstRegisterNm;
|
this.frstRegisterNm = frstRegisterNm;
|
||||||
}
|
}
|
||||||
|
public String getQustnrNm() {
|
||||||
|
return qustnrNm;
|
||||||
|
}
|
||||||
|
public void setQustnrNm(String qustnrNm) {
|
||||||
|
this.qustnrNm = qustnrNm;
|
||||||
|
}
|
||||||
|
public String getQustnrBirth() {
|
||||||
|
return qustnrBirth;
|
||||||
|
}
|
||||||
|
public void setQustnrBirth(String qustnrBirth) {
|
||||||
|
this.qustnrBirth = qustnrBirth;
|
||||||
|
}
|
||||||
|
public String getQustnrScore() {
|
||||||
|
return qustnrScore;
|
||||||
|
}
|
||||||
|
public void setQustnrScore(String qustnrScore) {
|
||||||
|
this.qustnrScore = qustnrScore;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -27,4 +27,9 @@ public class VEALettnQestnrMIXDAO extends EgovAbstractDAO {
|
|||||||
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_03", paramVO);
|
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_03", paramVO);
|
||||||
return tlist;
|
return tlist;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<VEAQestnrVO> selectDetail_MIX_LQI_04(VEAQestnrVO paramVO) throws Exception {
|
||||||
|
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_04", paramVO);
|
||||||
|
return tlist;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -35,4 +35,9 @@ public class VEALettnQestnrMIXServiceImpl implements VEALettnQestnrMIXService {
|
|||||||
public List<VEAQestnrVO> selectDetail_MIX_LQI_03(VEAQestnrVO paramVO) throws Exception{
|
public List<VEAQestnrVO> selectDetail_MIX_LQI_03(VEAQestnrVO paramVO) throws Exception{
|
||||||
return vEALettnQestnrMIXDAO.selectDetail_MIX_LQI_03(paramVO);
|
return vEALettnQestnrMIXDAO.selectDetail_MIX_LQI_03(paramVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//관리자 (청년, 성인) 만족도 평가
|
||||||
|
public List<VEAQestnrVO> selectDetail_MIX_LQI_04(VEAQestnrVO paramVO) throws Exception{
|
||||||
|
return vEALettnQestnrMIXDAO.selectDetail_MIX_LQI_04(paramVO);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -787,37 +787,9 @@ public class EduRsltMngTngrController {
|
|||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
{
|
|
||||||
VEAQestnrVO vEAQestnrVO = new VEAQestnrVO();
|
|
||||||
vEAQestnrVO.setSiteId(VeConstants.LCTR_DIV_CD_10); //청소년
|
|
||||||
vEAQestnrVO.setSiteIdCd("10"); //10-기본설문, 20-신청자설문, 30-강사설문
|
|
||||||
vEAQestnrVO = vEALettnQestnrMIXService.selectDetail_MIX_LQI_02(vEAQestnrVO);
|
|
||||||
|
|
||||||
//문항정보
|
|
||||||
Map <String, Object> commandMap =new HashMap<String, Object>();
|
|
||||||
commandMap.put("qestnrTmplatId", "QTMPLA_0000000000001");
|
|
||||||
commandMap.put("qestnrId",vEAQestnrVO.getQestnrId()); //문제 ID
|
|
||||||
model.addAttribute("Comtnqustnrqesitm", egovQustnrRespondInfoService.selectQustnrRespondInfoManageComtnqustnrqesitm(commandMap));
|
|
||||||
model.addAttribute("qestnrId", vEAQestnrVO.getQestnrId());
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
// 설문조사 정보
|
|
||||||
QustnrRespondInfoVO qustnrRespondInfoVO = new QustnrRespondInfoVO();
|
|
||||||
qustnrRespondInfoVO.setSiteId(VeConstants.LCTR_DIV_CD_10);
|
|
||||||
//QustnrRespondInfoVO info = egovQustnrRespondInfoService.selectSiteIdQustnrTmplat(qustnrRespondInfoVO);
|
|
||||||
|
|
||||||
// 설문조사 문항리스트 조회
|
|
||||||
Map <String, Object> commandMap =new HashMap<String, Object>();
|
|
||||||
commandMap.put("qestnrTmplatId", "QTMPLA_0000000000001");
|
|
||||||
commandMap.put("qestnrId",info.getQestnrId()); //문제 ID
|
|
||||||
model.addAttribute("Comtnqustnrqesitm", egovQustnrRespondInfoService.selectQustnrRespondInfoManageComtnqustnrqesitm(commandMap));
|
|
||||||
*/
|
|
||||||
|
|
||||||
System.out.println("================================= Comtnqustnrqesitm =================================");
|
System.out.println("================================= Comtnqustnrqesitm =================================");
|
||||||
|
// 설문조사 정보
|
||||||
try{
|
try{
|
||||||
model = qustnrCommonUtil._chasiSrvyList(
|
model = qustnrCommonUtil._chasiSrvyList(
|
||||||
model
|
model
|
||||||
@ -828,51 +800,27 @@ public class EduRsltMngTngrController {
|
|||||||
, vEALettnQestnrMIXService
|
, vEALettnQestnrMIXService
|
||||||
);
|
);
|
||||||
|
|
||||||
/*
|
|
||||||
model = this._chasiSrvyList(
|
|
||||||
model
|
|
||||||
, VeConstants.LCTR_DIV_CD_10 //청소년 -10, 성인-20, ...VE0012
|
|
||||||
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
|
||||||
, vEEduAplctVO.getEduAplctOrd()
|
|
||||||
, vEEduAplctVO.getEduChasiOrd()
|
|
||||||
);
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
VEAQestnrVO vEAQestnrVO = new VEAQestnrVO();
|
|
||||||
vEAQestnrVO.setSiteId(VeConstants.LCTR_DIV_CD_10); //청소년
|
|
||||||
vEAQestnrVO.setSiteIdCd("10"); //10-기본설문, 20-신청자설문, 30-강사설문
|
|
||||||
vEAQestnrVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
|
||||||
vEAQestnrVO.setEduChasiOrd(vEEduAplctVO.getEduChasiOrd());
|
|
||||||
|
|
||||||
List<VEAQestnrVO> chasiSrvyList = vEALettnQestnrMIXService.selectDetail_MIX_LQI_03(vEAQestnrVO);
|
|
||||||
|
|
||||||
if(chasiSrvyList.size() > 0) {
|
|
||||||
model.addAttribute("qestnrRespondent", chasiSrvyList.get(0).getQestnrRespondent());
|
|
||||||
model.addAttribute("qestnrParticipant", chasiSrvyList.get(0).getQestnrParticipant());
|
|
||||||
model.addAttribute("chasiSrvyList",chasiSrvyList);
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
/*
|
|
||||||
// 설문조사 결과 조회
|
|
||||||
QustnrRespondInfoVO qustnrRespondInfoVO = new QustnrRespondInfoVO();
|
|
||||||
qustnrRespondInfoVO.setSiteId(VeConstants.LCTR_DIV_CD_10);
|
|
||||||
qustnrRespondInfoVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd());
|
|
||||||
qustnrRespondInfoVO.setEduChasiOrd(vEEduAplctVO.getEduChasiOrd());
|
|
||||||
vEAQestnrVO = vEALettnQestnrMIXService.selectDetail_MIX_LQI_02(vEAQestnrVO);
|
|
||||||
List<QustnrRespondInfoVO> chasiSrvyList = egovQustnrRespondInfoService.selectChasiSrvyList(qustnrRespondInfoVO);
|
|
||||||
if(chasiSrvyList.size() > 0) {
|
|
||||||
model.addAttribute("qestnrRespondent", chasiSrvyList.get(0).getQestnrRespondent());
|
|
||||||
model.addAttribute("qestnrParticipant", chasiSrvyList.get(0).getQestnrParticipant());
|
|
||||||
model.addAttribute("chasiSrvyList",chasiSrvyList);
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
}catch(Exception ex) {
|
}catch(Exception ex) {
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
System.out.println("=============================================chasiSrvyList=============================================");
|
//개인별 만족도 관리 - chasiSrvyEAList
|
||||||
|
try{
|
||||||
|
model = qustnrCommonUtil._chasiSrvyEAList(
|
||||||
|
model
|
||||||
|
, VeConstants.LCTR_DIV_CD_10 //청소년 -10, 성인-20, ...VE0012
|
||||||
|
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
||||||
|
, vEEduAplctVO.getEduAplctOrd()
|
||||||
|
, vEEduAplctVO.getEduChasiOrd()
|
||||||
|
, vEALettnQestnrMIXService
|
||||||
|
);
|
||||||
|
|
||||||
|
}catch(Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.println("=============================================chasiSrvyEAList=============================================");
|
||||||
|
|
||||||
/*
|
/*
|
||||||
System.out.println("------------------------");
|
System.out.println("------------------------");
|
||||||
@ -1798,72 +1746,44 @@ public class EduRsltMngTngrController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 브라우저 구분 얻기.
|
* 교육설문 삭제 - 청소년, 성인 공통 - 사용자 개인별 만족도 등록자 삭제
|
||||||
*
|
|
||||||
* @param request
|
|
||||||
* @return
|
|
||||||
*/
|
*/
|
||||||
private String getBrowser(HttpServletRequest request) {
|
@RequestMapping(value="/deleteNewSrvyEAInfoAjax.do")
|
||||||
String header = request.getHeader("User-Agent");
|
public ModelAndView deleteNewSrvyEAInfoAjax(
|
||||||
if (header.indexOf("MSIE") > -1) {
|
HttpServletRequest request
|
||||||
return "MSIE";
|
, ModelMap model
|
||||||
} else if (header.indexOf("Trident") > -1) { // IE11 문자열 깨짐 방지
|
, VEAQestnrVO vEAQestnrVO
|
||||||
return "Trident";
|
) throws Exception {
|
||||||
} else if (header.indexOf("Chrome") > -1) {
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
return "Chrome";
|
modelAndView.setViewName("jsonView");
|
||||||
} else if (header.indexOf("Opera") > -1) {
|
try {
|
||||||
return "Opera";
|
|
||||||
}
|
|
||||||
return "Firefox";
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
//String
|
||||||
* Disposition 지정하기.
|
|
||||||
*
|
|
||||||
* @param filename
|
|
||||||
* @param request
|
|
||||||
* @param response
|
|
||||||
* @throws Exception
|
|
||||||
*/
|
|
||||||
private void setDisposition(String filename, HttpServletRequest request, HttpServletResponse response) throws Exception {
|
|
||||||
String browser = getBrowser(request);
|
|
||||||
|
|
||||||
String dispositionPrefix = "attachment; filename=";
|
LoginVO loginVO = checkLoginUtil.getAuthLoginVO();
|
||||||
String encodedFilename = null;
|
if (loginVO == null) {
|
||||||
|
modelAndView.addObject("result", "fail");
|
||||||
if (browser.equals("MSIE")) {
|
modelAndView.addObject("msg", "로그인 해주세요.");
|
||||||
encodedFilename = URLEncoder.encode(filename, "UTF-8").replaceAll("\\+", "%20");
|
return modelAndView;
|
||||||
} else if (browser.equals("Trident")) { // IE11 문자열 깨짐 방지
|
|
||||||
encodedFilename = URLEncoder.encode(filename, "UTF-8").replaceAll("\\+", "%20");
|
|
||||||
} else if (browser.equals("Firefox")) {
|
|
||||||
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
|
|
||||||
} else if (browser.equals("Opera")) {
|
|
||||||
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
|
|
||||||
} else if (browser.equals("Chrome")) {
|
|
||||||
StringBuffer sb = new StringBuffer();
|
|
||||||
for (int i = 0; i < filename.length(); i++) {
|
|
||||||
char c = filename.charAt(i);
|
|
||||||
if (c > '~') {
|
|
||||||
sb.append(URLEncoder.encode("" + c, "UTF-8"));
|
|
||||||
} else {
|
|
||||||
sb.append(c);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
encodedFilename = sb.toString();
|
|
||||||
} else {
|
|
||||||
//throw new RuntimeException("Not supported browser");
|
|
||||||
throw new IOException("Not supported browser");
|
|
||||||
}
|
|
||||||
|
|
||||||
// response.setHeader("Content-Disposition", dispositionPrefix + encodedFilename); // 파일명에 콤마 포함시 오류
|
System.out.println(vEAQestnrVO.toString());
|
||||||
response.setHeader("Content-Disposition", dispositionPrefix + "\"" + encodedFilename + "\"");
|
System.out.println(request.getParameter("qustnrTmplatId"));
|
||||||
|
|
||||||
if ("Opera".equals(browser)) {
|
|
||||||
response.setContentType("application/octet-stream;charset=UTF-8");
|
|
||||||
}
|
egovQustnrRespondInfoService.deleteSrvyEAInfo(vEAQestnrVO);
|
||||||
|
|
||||||
|
modelAndView.addObject("result", "success");
|
||||||
|
|
||||||
|
}catch(Exception ex) {
|
||||||
|
System.out.println("egovQustnrRespondInfoService.deleteSrvyEAInfo");
|
||||||
|
modelAndView.addObject("result", "fail");
|
||||||
|
}
|
||||||
|
|
||||||
|
return modelAndView;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
@ -1968,4 +1888,70 @@ public class EduRsltMngTngrController {
|
|||||||
return p_model;
|
return p_model;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Disposition 지정하기.
|
||||||
|
*
|
||||||
|
* @param filename
|
||||||
|
* @param request
|
||||||
|
* @param response
|
||||||
|
* @throws Exception
|
||||||
|
*/
|
||||||
|
private void setDisposition(String filename, HttpServletRequest request, HttpServletResponse response) throws Exception {
|
||||||
|
String browser = getBrowser(request);
|
||||||
|
|
||||||
|
String dispositionPrefix = "attachment; filename=";
|
||||||
|
String encodedFilename = null;
|
||||||
|
|
||||||
|
if (browser.equals("MSIE")) {
|
||||||
|
encodedFilename = URLEncoder.encode(filename, "UTF-8").replaceAll("\\+", "%20");
|
||||||
|
} else if (browser.equals("Trident")) { // IE11 문자열 깨짐 방지
|
||||||
|
encodedFilename = URLEncoder.encode(filename, "UTF-8").replaceAll("\\+", "%20");
|
||||||
|
} else if (browser.equals("Firefox")) {
|
||||||
|
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
|
||||||
|
} else if (browser.equals("Opera")) {
|
||||||
|
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
|
||||||
|
} else if (browser.equals("Chrome")) {
|
||||||
|
StringBuffer sb = new StringBuffer();
|
||||||
|
for (int i = 0; i < filename.length(); i++) {
|
||||||
|
char c = filename.charAt(i);
|
||||||
|
if (c > '~') {
|
||||||
|
sb.append(URLEncoder.encode("" + c, "UTF-8"));
|
||||||
|
} else {
|
||||||
|
sb.append(c);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
encodedFilename = sb.toString();
|
||||||
|
} else {
|
||||||
|
//throw new RuntimeException("Not supported browser");
|
||||||
|
throw new IOException("Not supported browser");
|
||||||
|
}
|
||||||
|
|
||||||
|
// response.setHeader("Content-Disposition", dispositionPrefix + encodedFilename); // 파일명에 콤마 포함시 오류
|
||||||
|
response.setHeader("Content-Disposition", dispositionPrefix + "\"" + encodedFilename + "\"");
|
||||||
|
|
||||||
|
if ("Opera".equals(browser)) {
|
||||||
|
response.setContentType("application/octet-stream;charset=UTF-8");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 브라우저 구분 얻기.
|
||||||
|
*
|
||||||
|
* @param request
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
private String getBrowser(HttpServletRequest request) {
|
||||||
|
String header = request.getHeader("User-Agent");
|
||||||
|
if (header.indexOf("MSIE") > -1) {
|
||||||
|
return "MSIE";
|
||||||
|
} else if (header.indexOf("Trident") > -1) { // IE11 문자열 깨짐 방지
|
||||||
|
return "Trident";
|
||||||
|
} else if (header.indexOf("Chrome") > -1) {
|
||||||
|
return "Chrome";
|
||||||
|
} else if (header.indexOf("Opera") > -1) {
|
||||||
|
return "Opera";
|
||||||
|
}
|
||||||
|
return "Firefox";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -10,6 +10,7 @@
|
|||||||
<typeAlias alias="QustnrRespondInfoVO" type="kcc.let.uss.olp.qri.service.QustnrRespondInfoVO"/>
|
<typeAlias alias="QustnrRespondInfoVO" type="kcc.let.uss.olp.qri.service.QustnrRespondInfoVO"/>
|
||||||
<typeAlias alias="qustnrRespondManageVO" type="kcc.let.uss.olp.qrm.service.QustnrRespondManageVO"/>
|
<typeAlias alias="qustnrRespondManageVO" type="kcc.let.uss.olp.qrm.service.QustnrRespondManageVO"/>
|
||||||
<typeAlias alias="VEPrcsDetailVO" type="kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO"/>
|
<typeAlias alias="VEPrcsDetailVO" type="kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO"/>
|
||||||
|
<typeAlias alias="VEAQestnrVO" type="kcc.ve.oprtn.qestnr.service.VEAQestnrVO"/>
|
||||||
|
|
||||||
|
|
||||||
<select id="QustnrRespondInfo.selectSiteIdQustnrTmplat" parameterClass="QustnrRespondInfoVO" resultClass="QustnrRespondInfoVO">
|
<select id="QustnrRespondInfo.selectSiteIdQustnrTmplat" parameterClass="QustnrRespondInfoVO" resultClass="QustnrRespondInfoVO">
|
||||||
@ -514,6 +515,18 @@
|
|||||||
)
|
)
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
|
<delete id="QustnrRespondInfo.deleteSrvyEAInfo" parameterClass="VEAQestnrVO">
|
||||||
|
/* QustnrRespondInfo.deleteSrvyEAInfo */
|
||||||
|
DELETE FROM LETTNQESTNRRSLTEADetail
|
||||||
|
WHERE 1=1
|
||||||
|
AND QUSTNR_TMPLAT_ID = #qustnrTmplatId#
|
||||||
|
AND QESTNR_ID = #qestnrId#
|
||||||
|
|
||||||
|
AND QUSTNR_NM = #qustnrNm#
|
||||||
|
AND QUSTNR_BIRTH = #qustnrBirth#
|
||||||
|
|
||||||
|
</delete>
|
||||||
|
|
||||||
<insert id="QustnrRespondInfo.insertSrvyInfo_bak" parameterClass="QustnrRespondInfoVO">
|
<insert id="QustnrRespondInfo.insertSrvyInfo_bak" parameterClass="QustnrRespondInfoVO">
|
||||||
/* QustnrRespondInfo.insertSrvyInfo_bak */
|
/* QustnrRespondInfo.insertSrvyInfo_bak */
|
||||||
INSERT INTO LETTNQESTNRRSLT
|
INSERT INTO LETTNQESTNRRSLT
|
||||||
|
|||||||
@ -218,4 +218,38 @@
|
|||||||
AND b.QESTNR_ID =a.QESTNR_ID
|
AND b.QESTNR_ID =a.QESTNR_ID
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!-- //관리자 청소년/성인 만족도 평가 R -->
|
||||||
|
<select id="VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_04" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
|
||||||
|
/* VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_04 */
|
||||||
|
|
||||||
|
SELECT a.qustnr_tmplat_id AS qustnrTmplatId
|
||||||
|
, a.qestnr_id AS qestnrId
|
||||||
|
, a.qustnr_nm AS qustnrNm
|
||||||
|
, a.qustnr_birth AS qustnrBirth
|
||||||
|
, count(*) AS rrspnsResultCnt
|
||||||
|
|
||||||
|
, ROUND(SUM(a.VERY_SATISFIED * 100
|
||||||
|
+ a.SATISFIED * 80
|
||||||
|
+ a.NEITHER * 60
|
||||||
|
+ a.dissatisfied * 40
|
||||||
|
+ a.very_dissatisfied * 20)
|
||||||
|
/
|
||||||
|
count(*),1) AS qustnrScore
|
||||||
|
|
||||||
|
FROM LETTNQESTNRRSLTEADetail a
|
||||||
|
WHERE 1=1
|
||||||
|
|
||||||
|
AND a.EDU_APLCT_ORD = #eduAplctOrd#
|
||||||
|
AND a.EDU_CHASI_ORD = #eduChasiOrd#
|
||||||
|
|
||||||
|
AND a.QESTNR_ID = #qestnrId#
|
||||||
|
AND a.QUSTNR_TMPLAT_ID = #qustnrTmplatId#
|
||||||
|
|
||||||
|
GROUP BY a.qustnr_tmplat_id
|
||||||
|
, a.qestnr_id
|
||||||
|
, a.qustnr_nm
|
||||||
|
, a.qustnr_birth
|
||||||
|
|
||||||
|
</select>
|
||||||
</sqlMap>
|
</sqlMap>
|
||||||
|
|||||||
@ -88,6 +88,54 @@
|
|||||||
listForm.action = "<c:url value='/kccadr/oprtn/adultVisitEdu/eduRsltSrvyExcelDownLoad.do'/>";
|
listForm.action = "<c:url value='/kccadr/oprtn/adultVisitEdu/eduRsltSrvyExcelDownLoad.do'/>";
|
||||||
listForm.submit();
|
listForm.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//개인별 만족도 등록자 정보 삭제 - 청소년/성인 공통
|
||||||
|
function deleteSrvyEA(
|
||||||
|
p_qustnrTmplatId
|
||||||
|
, p_qestnrId
|
||||||
|
, p_qustnrNm
|
||||||
|
, p_qustnrBirth
|
||||||
|
|
||||||
|
){
|
||||||
|
|
||||||
|
if (!confirm("삭제 하시겠습니까?\n(삭제 후 복구가 불가능합니다.)")) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
paramObj = {
|
||||||
|
"qustnrTmplatId" : p_qustnrTmplatId,
|
||||||
|
"qestnrId" : p_qestnrId,
|
||||||
|
"qustnrNm" : p_qustnrNm,
|
||||||
|
"qustnrBirth" : p_qustnrBirth
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type:"POST",
|
||||||
|
url:"${pageContext.request.contextPath}/kccadr/oprtn/tngrVisitEdu/deleteNewSrvyEAInfoAjax.do",
|
||||||
|
|
||||||
|
data:{
|
||||||
|
"qustnrTmplatId" : p_qustnrTmplatId,
|
||||||
|
"qestnrId" : p_qestnrId,
|
||||||
|
"qustnrNm" : p_qustnrNm,
|
||||||
|
"qustnrBirth" : p_qustnrBirth
|
||||||
|
},
|
||||||
|
dataType:'json',
|
||||||
|
async: false,
|
||||||
|
//processData: false,
|
||||||
|
//contentType: false,
|
||||||
|
cache: false,
|
||||||
|
success:function(returnData){
|
||||||
|
if(returnData.result == "success"){
|
||||||
|
alert("삭제 되었습니다.");
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error:function(request , status, error){
|
||||||
|
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
@ -335,6 +383,19 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<!-- list_상세 -->
|
<!-- list_상세 -->
|
||||||
|
|
||||||
|
<!-- btn_wrap -->
|
||||||
|
<div class="btn_wrap btn_layout01">
|
||||||
|
<div class="btn_left">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="btn_center">
|
||||||
|
</div>
|
||||||
|
<div class="btn_right">
|
||||||
|
<button class="btn_type02" onclick="fncGoList(); return false;">목록</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<%-- <div class="tb_tit01">
|
<%-- <div class="tb_tit01">
|
||||||
<p>교육 내용에 대한 전반적 만족도 평가</p>
|
<p>교육 내용에 대한 전반적 만족도 평가</p>
|
||||||
</div>
|
</div>
|
||||||
@ -500,9 +561,67 @@
|
|||||||
<div class="btn_center">
|
<div class="btn_center">
|
||||||
</div>
|
</div>
|
||||||
<div class="btn_right">
|
<div class="btn_right">
|
||||||
<button class="btn_type02" onclick="fncGoList(); return false;">목록</button>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<br/>
|
||||||
|
<br/>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- 문항리스트_상세 -->
|
||||||
|
<div class="tb_tit01">
|
||||||
|
<p>개인별 만족도 등록자 리스트</p>
|
||||||
|
</div>
|
||||||
|
<c:if test="${!empty chasiSrvyEAList}">
|
||||||
|
<div class="tb_type01 list2">
|
||||||
|
<table>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 25%;">
|
||||||
|
<col style="width: 25%;">
|
||||||
|
<col style="width: 25%;">
|
||||||
|
<col style="width: 25%;">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">등록자명</th>
|
||||||
|
<th scope="col">등록자생년월일</th>
|
||||||
|
<th scope="col">만족도평가점수</th>
|
||||||
|
<th scope="col">비고</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<c:forEach items="${chasiSrvyEAList}" var="chasiSrvyEAInfo" varStatus="status1">
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<c:out value="${chasiSrvyEAInfo.qustnrNm}"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<c:out value="${chasiSrvyEAInfo.qustnrBirth}"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<c:out value="${chasiSrvyEAInfo.qustnrScore}"/>점
|
||||||
|
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<button type="button" class="btn_type04"
|
||||||
|
onclick="deleteSrvyEA(
|
||||||
|
'<c:out value="${chasiSrvyEAInfo.qustnrTmplatId}"/>'
|
||||||
|
,'<c:out value="${chasiSrvyEAInfo.qestnrId}"/>'
|
||||||
|
,'<c:out value="${chasiSrvyEAInfo.qustnrNm}"/>'
|
||||||
|
,'<c:out value="${chasiSrvyEAInfo.qustnrBirth}"/>'); return false;">삭제</button>
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</c:forEach>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</c:if>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -284,9 +284,53 @@ function replyCalculation(){
|
|||||||
document.popForm.submit();
|
document.popForm.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//개인별 만족도 등록자 정보 삭제 - 청소년/성인 공통
|
||||||
|
function deleteSrvyEA(
|
||||||
|
p_qustnrTmplatId
|
||||||
|
, p_qestnrId
|
||||||
|
, p_qustnrNm
|
||||||
|
, p_qustnrBirth
|
||||||
|
|
||||||
|
){
|
||||||
|
|
||||||
|
if (!confirm("삭제 하시겠습니까?\n(삭제 후 복구가 불가능합니다.)")) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
paramObj = {
|
||||||
|
"qustnrTmplatId" : p_qustnrTmplatId,
|
||||||
|
"qestnrId" : p_qestnrId,
|
||||||
|
"qustnrNm" : p_qustnrNm,
|
||||||
|
"qustnrBirth" : p_qustnrBirth
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type:"POST",
|
||||||
|
url:"${pageContext.request.contextPath}/kccadr/oprtn/tngrVisitEdu/deleteNewSrvyEAInfoAjax.do",
|
||||||
|
|
||||||
|
data:{
|
||||||
|
"qustnrTmplatId" : p_qustnrTmplatId,
|
||||||
|
"qestnrId" : p_qestnrId,
|
||||||
|
"qustnrNm" : p_qustnrNm,
|
||||||
|
"qustnrBirth" : p_qustnrBirth
|
||||||
|
},
|
||||||
|
dataType:'json',
|
||||||
|
async: false,
|
||||||
|
//processData: false,
|
||||||
|
//contentType: false,
|
||||||
|
cache: false,
|
||||||
|
success:function(returnData){
|
||||||
|
if(returnData.result == "success"){
|
||||||
|
alert("삭제 되었습니다.");
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error:function(request , status, error){
|
||||||
|
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@ -693,6 +737,73 @@ function replyCalculation(){
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- 비공개 메보 정보 -->
|
||||||
|
<div class="tb_tit01">
|
||||||
|
<p>비공개 메모</p>
|
||||||
|
</div>
|
||||||
|
<div class="tb_type02">
|
||||||
|
<table>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 220px;">
|
||||||
|
<col style="width: auto;">
|
||||||
|
</colgroup>
|
||||||
|
<tr>
|
||||||
|
<th scope="row">
|
||||||
|
<p>내용</p>
|
||||||
|
</th>
|
||||||
|
<td class="tb_alram">
|
||||||
|
<div>
|
||||||
|
<textarea name="hiddenMemo" id="hiddenMemo"><c:out value="${info.prvtMemoCn}" /></textarea>
|
||||||
|
<button type="button" class="btn_type08" onclick="updateHiddenMemo(); return false;">메모 저장</button>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- 비공개 메보 정보 -->
|
||||||
|
<%-- <div class="tb_tit01">
|
||||||
|
<p>강사공개 메모</p>
|
||||||
|
</div>
|
||||||
|
<div class="tb_type02">
|
||||||
|
<table>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 220px;">
|
||||||
|
<col style="width: auto;">
|
||||||
|
</colgroup>
|
||||||
|
<tr>
|
||||||
|
<th scope="row">
|
||||||
|
<p>내용</p>
|
||||||
|
</th>
|
||||||
|
<td class="tb_alram">
|
||||||
|
<div>
|
||||||
|
<textarea name="hiddenMemoCn" id="hiddenMemoCn"><c:out value="${info.memoCn}" /></textarea>
|
||||||
|
<button type="button" class="btn_type08" onclick="updateHiddenMemoCn(); return false;">메모 저장</button>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div> --%>
|
||||||
|
<div class="btn_wrap btn_layout01">
|
||||||
|
<div class="btn_left"></div>
|
||||||
|
<div class="btn_center">
|
||||||
|
<c:set var="qustnrRespondIdYn" value="N" />
|
||||||
|
<c:forEach var="chasiAllList" items="${chasiAllList}" varStatus="status">
|
||||||
|
<c:if test="${not empty chasiAllList.qustnrRespondId}">
|
||||||
|
<c:set var="qustnrRespondIdYn" value="Y" />
|
||||||
|
</c:if>
|
||||||
|
</c:forEach>
|
||||||
|
<c:if test="${qustnrRespondIdYn eq 'N'}">
|
||||||
|
<!-- <button type="button" class="btn_type01" onclick="fncGoEdit();">신청서 수정</button> -->
|
||||||
|
</c:if>
|
||||||
|
</div>
|
||||||
|
<div class="btn_right">
|
||||||
|
<button type="button" class="btn_type03" onclick="fncGoList1();">목록</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- //비공개 메모 정보 -->
|
||||||
|
|
||||||
<!-- 문항리스트_상세 -->
|
<!-- 문항리스트_상세 -->
|
||||||
<div class="tb_tit01">
|
<div class="tb_tit01">
|
||||||
<p>교육 내용에 대한 전반적 만족도 평가</p>
|
<p>교육 내용에 대한 전반적 만족도 평가</p>
|
||||||
@ -822,72 +933,7 @@ function replyCalculation(){
|
|||||||
<!-- </div> -->
|
<!-- </div> -->
|
||||||
<%-- </c:if> --%>
|
<%-- </c:if> --%>
|
||||||
|
|
||||||
<!-- 비공개 메보 정보 -->
|
|
||||||
<div class="tb_tit01">
|
|
||||||
<p>비공개 메모</p>
|
|
||||||
</div>
|
|
||||||
<div class="tb_type02">
|
|
||||||
<table>
|
|
||||||
<colgroup>
|
|
||||||
<col style="width: 220px;">
|
|
||||||
<col style="width: auto;">
|
|
||||||
</colgroup>
|
|
||||||
<tr>
|
|
||||||
<th scope="row">
|
|
||||||
<p>내용</p>
|
|
||||||
</th>
|
|
||||||
<td class="tb_alram">
|
|
||||||
<div>
|
|
||||||
<textarea name="hiddenMemo" id="hiddenMemo"><c:out value="${info.prvtMemoCn}" /></textarea>
|
|
||||||
<button type="button" class="btn_type08" onclick="updateHiddenMemo(); return false;">메모 저장</button>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<!-- 비공개 메보 정보 -->
|
|
||||||
<%-- <div class="tb_tit01">
|
|
||||||
<p>강사공개 메모</p>
|
|
||||||
</div>
|
|
||||||
<div class="tb_type02">
|
|
||||||
<table>
|
|
||||||
<colgroup>
|
|
||||||
<col style="width: 220px;">
|
|
||||||
<col style="width: auto;">
|
|
||||||
</colgroup>
|
|
||||||
<tr>
|
|
||||||
<th scope="row">
|
|
||||||
<p>내용</p>
|
|
||||||
</th>
|
|
||||||
<td class="tb_alram">
|
|
||||||
<div>
|
|
||||||
<textarea name="hiddenMemoCn" id="hiddenMemoCn"><c:out value="${info.memoCn}" /></textarea>
|
|
||||||
<button type="button" class="btn_type08" onclick="updateHiddenMemoCn(); return false;">메모 저장</button>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div> --%>
|
|
||||||
<div class="btn_wrap btn_layout01">
|
|
||||||
<div class="btn_left"></div>
|
|
||||||
<div class="btn_center">
|
|
||||||
<c:set var="qustnrRespondIdYn" value="N" />
|
|
||||||
<c:forEach var="chasiAllList" items="${chasiAllList}" varStatus="status">
|
|
||||||
<c:if test="${not empty chasiAllList.qustnrRespondId}">
|
|
||||||
<c:set var="qustnrRespondIdYn" value="Y" />
|
|
||||||
</c:if>
|
|
||||||
</c:forEach>
|
|
||||||
<c:if test="${qustnrRespondIdYn eq 'N'}">
|
|
||||||
<!-- <button type="button" class="btn_type01" onclick="fncGoEdit();">신청서 수정</button> -->
|
|
||||||
</c:if>
|
|
||||||
</div>
|
|
||||||
<div class="btn_right">
|
|
||||||
<button type="button" class="btn_type03" onclick="fncGoList1();">목록</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- //비공개 메모 정보 -->
|
|
||||||
|
|
||||||
<!-- //list_상세 -->
|
<!-- //list_상세 -->
|
||||||
<!-- btn_wrap -->
|
<!-- btn_wrap -->
|
||||||
@ -899,6 +945,61 @@ function replyCalculation(){
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
||||||
|
<!-- 문항리스트_상세 -->
|
||||||
|
<div class="tb_tit01">
|
||||||
|
<p>개인별 만족도 등록자 리스트</p>
|
||||||
|
</div>
|
||||||
|
<c:if test="${!empty chasiSrvyEAList}">
|
||||||
|
<div class="tb_type01 list2">
|
||||||
|
<table>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: 25%;">
|
||||||
|
<col style="width: 25%;">
|
||||||
|
<col style="width: 25%;">
|
||||||
|
<col style="width: 25%;">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th scope="col">등록자명</th>
|
||||||
|
<th scope="col">등록자생년월일</th>
|
||||||
|
<th scope="col">만족도평가점수</th>
|
||||||
|
<th scope="col">비고</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<c:forEach items="${chasiSrvyEAList}" var="chasiSrvyEAInfo" varStatus="status1">
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<c:out value="${chasiSrvyEAInfo.qustnrNm}"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<c:out value="${chasiSrvyEAInfo.qustnrBirth}"/>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<c:out value="${chasiSrvyEAInfo.qustnrScore}"/>점
|
||||||
|
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<button type="button" class="btn_type04"
|
||||||
|
onclick="deleteSrvyEA(
|
||||||
|
'<c:out value="${chasiSrvyEAInfo.qustnrTmplatId}"/>'
|
||||||
|
,'<c:out value="${chasiSrvyEAInfo.qestnrId}"/>'
|
||||||
|
,'<c:out value="${chasiSrvyEAInfo.qustnrNm}"/>'
|
||||||
|
,'<c:out value="${chasiSrvyEAInfo.qustnrBirth}"/>'); return false;">삭제</button>
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</c:forEach>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</c:if>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -134,6 +134,38 @@
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//설문 출력 팝업
|
||||||
|
function fncQustnrPrintList(
|
||||||
|
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
|
||||||
|
,"siteIdCd" : 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/qustnrPrintPopList.do"
|
||||||
|
, 800
|
||||||
|
, 700
|
||||||
|
, paramObj
|
||||||
|
, "Y"
|
||||||
|
, "scholPrintPop"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
function selectChasiStatus(id, chId, action){
|
function selectChasiStatus(id, chId, action){
|
||||||
$.ajax({
|
$.ajax({
|
||||||
|
|||||||
@ -124,7 +124,7 @@
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
//설문 팝업
|
//설문 출력 팝업
|
||||||
function fncQustnrPrintList(
|
function fncQustnrPrintList(
|
||||||
id //aplctOrd
|
id //aplctOrd
|
||||||
, chId //chasiOrd
|
, chId //chasiOrd
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user