2025-10-24 16:38 관리자 설뭉 & 이수증 수정
This commit is contained in:
parent
9fc2876a75
commit
92ea30250c
@ -38,8 +38,11 @@ import kcc.com.cmm.spring.data.util.ExcelUtil;
|
||||
import kcc.com.cmm.util.StringUtil;
|
||||
import kcc.com.utl.user.service.CheckFileUtil;
|
||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||
import kcc.com.utl.user.service.QustnrCommonUtil;
|
||||
import kcc.let.uat.uia.service.SsoLoginVO;
|
||||
import kcc.let.uss.notify.service.NotifyManageService;
|
||||
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.ITNotiUtil;
|
||||
import kcc.ve.aplct.sspnIdtmt.service.SspnIdtmtService;
|
||||
@ -57,6 +60,7 @@ import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
||||
import kcc.ve.oprtn.cmdTrgt.trgtMng.service.CmdTrgtMngService;
|
||||
import kcc.ve.oprtn.cmdTrgt.trgtMng.service.CmdTrgtMngVO;
|
||||
import kcc.ve.oprtn.fndtnEnhanceTrn.prcsAplctPrdMng.service.ExcelVO;
|
||||
import kcc.ve.oprtn.qestnr.service.VEALettnQestnrMIXService;
|
||||
|
||||
/**
|
||||
* 기반강화연수(관리자)
|
||||
@ -174,6 +178,17 @@ public class CmdPrcsInfoMngController {
|
||||
@Resource(name="eduAplctGnrService")
|
||||
private EgovIdGnrService eduAplctGnrService;
|
||||
|
||||
// 설문 util
|
||||
@Resource(name = "qustnrCommonUtil")
|
||||
private QustnrCommonUtil qustnrCommonUtil;
|
||||
|
||||
// 설문 복합 VEA_
|
||||
@Resource(name = "vEALettnQestnrMIXService")
|
||||
private VEALettnQestnrMIXService vEALettnQestnrMIXService;
|
||||
|
||||
@Resource(name = "egovQustnrRespondInfoService")
|
||||
private EgovQustnrRespondInfoService egovQustnrRespondInfoService;
|
||||
|
||||
/**
|
||||
* 기반강화연수 과정 관리 목록 화면
|
||||
*/
|
||||
@ -1328,6 +1343,92 @@ public class CmdPrcsInfoMngController {
|
||||
model.addAttribute("instrAsgnmList", instrAsgnmList);
|
||||
}
|
||||
|
||||
|
||||
//설문 문항 정보
|
||||
try {
|
||||
model = qustnrCommonUtil._qustnrQesItm(
|
||||
model
|
||||
, LCTR_DIV_CD //청소년 -10, 성인-20, ...VE0012
|
||||
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
||||
, "QTMPLA_0000000000001"
|
||||
, vEALettnQestnrMIXService
|
||||
, egovQustnrRespondInfoService
|
||||
, vEPrcsDetailVO.getPrcsAplctPrdOrd()
|
||||
, ""
|
||||
//, vEEduAplctVO.getEduAplctOrd()
|
||||
//, vEEduAplctVO.getEduChasiOrd()
|
||||
);
|
||||
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
/*
|
||||
// 설문조사 정보
|
||||
QustnrRespondInfoVO qustnrRespondInfoVO = new QustnrRespondInfoVO();
|
||||
qustnrRespondInfoVO.setSiteId(VeConstants.LCTR_DIV_CD_20);
|
||||
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));
|
||||
*/
|
||||
|
||||
try{
|
||||
model = qustnrCommonUtil._chasiSrvyList(
|
||||
model
|
||||
, LCTR_DIV_CD //청소년 -10, 성인-20, ...VE0012
|
||||
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
||||
, vEPrcsDetailVO.getPrcsAplctPrdOrd()
|
||||
, ""
|
||||
//, vEEduAplctVO.getEduAplctOrd()
|
||||
//, vEEduAplctVO.getEduChasiOrd()
|
||||
, vEALettnQestnrMIXService
|
||||
);
|
||||
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
|
||||
//개인별 만족도 관리 - chasiSrvyEAList
|
||||
try{
|
||||
model = qustnrCommonUtil._chasiSrvyEAList(
|
||||
model
|
||||
, LCTR_DIV_CD //청소년 -10, 성인-20, ...VE0012
|
||||
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
||||
, vEPrcsDetailVO.getPrcsAplctPrdOrd()
|
||||
, ""
|
||||
//, vEEduAplctVO.getEduAplctOrd()
|
||||
//, vEEduAplctVO.getEduChasiOrd()
|
||||
, vEALettnQestnrMIXService
|
||||
);
|
||||
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
|
||||
//주관식 답변 정보
|
||||
try {
|
||||
QustnrRespondInfoVO qustnrRespondInfoVO = new QustnrRespondInfoVO();
|
||||
//qustnrRespondInfoVO.setEduChasiOrd(vEEduAplctVO.getEduChasiOrd());
|
||||
qustnrRespondInfoVO.setEduChasiOrd("");
|
||||
|
||||
List<QustnrRespondInfoVO> subjList = egovQustnrRespondInfoService.selectSubjList(qustnrRespondInfoVO);
|
||||
if (subjList.size()>=0) {
|
||||
model.addAttribute("subjInfo", subjList.get(0));
|
||||
}
|
||||
|
||||
|
||||
}catch(Exception ex) {
|
||||
System.out.println("Exception vEEduAplctOnlnService.updateBulk");
|
||||
}
|
||||
|
||||
System.out.println("=============================================chasiSrvyEAList=============================================");
|
||||
|
||||
|
||||
return "/oprtn/cmdTrgt/cndtnEduPrcsAplctCfnMngDetail";
|
||||
}
|
||||
|
||||
|
||||
@ -38,8 +38,11 @@ import kcc.com.cmm.spring.data.util.ExcelUtil;
|
||||
import kcc.com.cmm.util.StringUtil;
|
||||
import kcc.com.utl.user.service.CheckFileUtil;
|
||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||
import kcc.com.utl.user.service.QustnrCommonUtil;
|
||||
import kcc.let.uat.uia.service.SsoLoginVO;
|
||||
import kcc.let.uss.notify.service.NotifyManageService;
|
||||
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.ITNotiUtil;
|
||||
import kcc.ve.aplct.sspnIdtmt.service.SspnIdtmtService;
|
||||
@ -57,6 +60,7 @@ import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService;
|
||||
import kcc.ve.oprtn.cndtnSspnIdtmt.trgtMng.service.CndtnTrgtMngService;
|
||||
import kcc.ve.oprtn.cndtnSspnIdtmt.trgtMng.service.CndtnTrgtMngVO;
|
||||
import kcc.ve.oprtn.fndtnEnhanceTrn.prcsAplctPrdMng.service.ExcelVO;
|
||||
import kcc.ve.oprtn.qestnr.service.VEALettnQestnrMIXService;
|
||||
|
||||
/**
|
||||
* 기반강화연수(관리자)
|
||||
@ -166,7 +170,16 @@ public class PreventMngController {
|
||||
@Resource(name = "checkFileUtil")
|
||||
private CheckFileUtil checkFileUtil;
|
||||
|
||||
|
||||
// 설문 util
|
||||
@Resource(name = "qustnrCommonUtil")
|
||||
private QustnrCommonUtil qustnrCommonUtil;
|
||||
|
||||
// 설문 복합 VEA_
|
||||
@Resource(name = "vEALettnQestnrMIXService")
|
||||
private VEALettnQestnrMIXService vEALettnQestnrMIXService;
|
||||
|
||||
@Resource(name = "egovQustnrRespondInfoService")
|
||||
private EgovQustnrRespondInfoService egovQustnrRespondInfoService;
|
||||
|
||||
/**
|
||||
* 기반강화연수 과정 관리 목록 화면
|
||||
@ -1322,6 +1335,93 @@ public class PreventMngController {
|
||||
model.addAttribute("instrAsgnmList", instrAsgnmList);
|
||||
}
|
||||
|
||||
|
||||
//설문 문항 정보
|
||||
try {
|
||||
model = qustnrCommonUtil._qustnrQesItm(
|
||||
model
|
||||
, LCTR_DIV_CD //청소년 -10, 성인-20, ...VE0012
|
||||
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
||||
, "QTMPLA_0000000000001"
|
||||
, vEALettnQestnrMIXService
|
||||
, egovQustnrRespondInfoService
|
||||
, vEPrcsDetailVO.getPrcsAplctPrdOrd()
|
||||
, ""
|
||||
//, vEEduAplctVO.getEduAplctOrd()
|
||||
//, vEEduAplctVO.getEduChasiOrd()
|
||||
);
|
||||
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
/*
|
||||
// 설문조사 정보
|
||||
QustnrRespondInfoVO qustnrRespondInfoVO = new QustnrRespondInfoVO();
|
||||
qustnrRespondInfoVO.setSiteId(VeConstants.LCTR_DIV_CD_20);
|
||||
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));
|
||||
*/
|
||||
|
||||
try{
|
||||
model = qustnrCommonUtil._chasiSrvyList(
|
||||
model
|
||||
, LCTR_DIV_CD //청소년 -10, 성인-20, ...VE0012
|
||||
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
||||
, vEPrcsDetailVO.getPrcsAplctPrdOrd()
|
||||
, ""
|
||||
//, vEEduAplctVO.getEduAplctOrd()
|
||||
//, vEEduAplctVO.getEduChasiOrd()
|
||||
, vEALettnQestnrMIXService
|
||||
);
|
||||
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
|
||||
//개인별 만족도 관리 - chasiSrvyEAList
|
||||
try{
|
||||
model = qustnrCommonUtil._chasiSrvyEAList(
|
||||
model
|
||||
, LCTR_DIV_CD //청소년 -10, 성인-20, ...VE0012
|
||||
, "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012
|
||||
, vEPrcsDetailVO.getPrcsAplctPrdOrd()
|
||||
, ""
|
||||
//, vEEduAplctVO.getEduAplctOrd()
|
||||
//, vEEduAplctVO.getEduChasiOrd()
|
||||
, vEALettnQestnrMIXService
|
||||
);
|
||||
|
||||
}catch(Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
|
||||
|
||||
//주관식 답변 정보
|
||||
try {
|
||||
QustnrRespondInfoVO qustnrRespondInfoVO = new QustnrRespondInfoVO();
|
||||
//qustnrRespondInfoVO.setEduChasiOrd(vEEduAplctVO.getEduChasiOrd());
|
||||
qustnrRespondInfoVO.setEduChasiOrd("");
|
||||
|
||||
List<QustnrRespondInfoVO> subjList = egovQustnrRespondInfoService.selectSubjList(qustnrRespondInfoVO);
|
||||
if (subjList.size()>=0) {
|
||||
model.addAttribute("subjInfo", subjList.get(0));
|
||||
}
|
||||
|
||||
|
||||
}catch(Exception ex) {
|
||||
System.out.println("Exception vEEduAplctOnlnService.updateBulk");
|
||||
}
|
||||
|
||||
System.out.println("=============================================chasiSrvyEAList=============================================");
|
||||
|
||||
|
||||
|
||||
return "/oprtn/prevent/cndtnEduPrcsAplctCfnMngDetail";
|
||||
}
|
||||
|
||||
|
||||
@ -134,7 +134,9 @@
|
||||
FROM LETTNQUSTNRQESITM A
|
||||
WHERE 1=1
|
||||
AND A.QESTNR_ID = #qestnrId#
|
||||
AND A.QUSTNR_TMPLAT_ID = #qestnrTmplatId#
|
||||
/*
|
||||
AND A.QUSTNR_TMPLAT_ID = qestnrTmplatId
|
||||
*/
|
||||
ORDER BY A.QESTN_SN
|
||||
</select>
|
||||
<!-- 설문조사(설문등록):: 설문등록 /설문 항목정보 -->
|
||||
|
||||
@ -917,24 +917,35 @@
|
||||
a.QUSTNR_TMPLAT_ID ,
|
||||
a.SITE_ID ,
|
||||
|
||||
a.QESTNR_ID as QESTNR_ID_10 ,
|
||||
null as QESTNR_ID_20 ,
|
||||
null as QESTNR_ID_30 ,
|
||||
a.qustnr_bgnde ,
|
||||
a.qustnr_endde
|
||||
|
||||
/*
|
||||
MAX(CASE WHEN a.site_id_cd = '10' THEN a.QESTNR_ID ELSE NULL END) AS QESTNR_ID_10,
|
||||
MAX(CASE WHEN a.site_id_cd = '20' THEN a.QESTNR_ID ELSE NULL END) AS QESTNR_ID_20,
|
||||
MAX(CASE WHEN a.site_id_cd = '30' THEN a.QESTNR_ID ELSE NULL END) AS QESTNR_ID_30
|
||||
MAX(CASE WHEN a.site_id_cd = '30' THEN a.QESTNR_ID ELSE NULL END) AS QESTNR_ID_30
|
||||
*/
|
||||
|
||||
FROM
|
||||
LETTNQESTNRINFO a
|
||||
WHERE
|
||||
a.SITE_ID = #siteId#
|
||||
AND a.SITE_ID_CD IN ('10', '20', '30')
|
||||
AND TO_CHAR(NOW(),
|
||||
'YYYY.MM.DD') BETWEEN COALESCE(a.qustnr_bgnde,
|
||||
'2000.01.01')
|
||||
AND COALESCE(a.qustnr_endde,
|
||||
'9999.12.31')
|
||||
|
||||
/*
|
||||
|
||||
AND TO_CHAR(NOW(), 'YYYY.MM.DD') BETWEEN COALESCE(a.qustnr_bgnde, '2000.01.01') AND COALESCE(a.qustnr_endde, '9999.12.31')
|
||||
|
||||
GROUP BY
|
||||
a.QUSTNR_TMPLAT_ID ,
|
||||
a.SITE_ID ) I ON
|
||||
(1 = 1)
|
||||
a.SITE_ID
|
||||
*/
|
||||
|
||||
) I ON
|
||||
(vpap.edu_strt_pnttm between coalesce(I.qustnr_bgnde, '20000101') and coalesce(I.qustnr_endde,'99991231'))
|
||||
|
||||
|
||||
|
||||
|
||||
@ -147,7 +147,9 @@
|
||||
lettnqustnrrespondinfo b
|
||||
WHERE
|
||||
b.edu_aplct_ord=#eduAplctOrd#
|
||||
AND b.edu_chasi_ord=#eduChasiOrd#
|
||||
/*
|
||||
AND b.edu_chasi_ord=eduChasiOrd
|
||||
*/
|
||||
GROUP BY
|
||||
b.QUSTNR_TMPLAT_ID ,
|
||||
b.QESTNR_ID
|
||||
@ -160,14 +162,22 @@
|
||||
AND a.site_id_cd = #siteIdCd#
|
||||
|
||||
)b
|
||||
on(1=1)
|
||||
on(1=1)
|
||||
, ve_prcs_aplct_prd c
|
||||
|
||||
WHERE 1 =1
|
||||
AND A.SITE_ID = #siteId#
|
||||
AND COALESCE(A.site_id_cd, '10')=#siteIdCd#
|
||||
|
||||
AND c.prcs_aplct_prd_ord=#eduAplctOrd#
|
||||
AND c.edu_strt_pnttm between coalesce(a.qustnr_bgnde, '20000101') and coalesce(a.qustnr_endde, '99991231')
|
||||
|
||||
/*
|
||||
AND to_char(NOW(), 'YYYY.MM.DD') BETWEEN
|
||||
COALESCE(a.qustnr_bgnde,'2000.01.01') AND COALESCE(a.qustnr_endde,'9999.12.31')
|
||||
*/
|
||||
|
||||
AND A.SITE_ID = #siteId#
|
||||
AND COALESCE(A.site_id_cd, '10')=#siteIdCd#
|
||||
|
||||
|
||||
ORDER BY A.QESTNR_ID DESC
|
||||
LIMIT 1
|
||||
@ -230,30 +240,42 @@
|
||||
|
||||
SELECT c02.*
|
||||
FROM (
|
||||
|
||||
SELECT
|
||||
c00.qustnr_tmplat_id
|
||||
, c00.qestnr_id
|
||||
, c00.qustnr_qesitm_id
|
||||
, max(c00.qustnr_rslt_id) AS qustnr_rslt_id
|
||||
|
||||
c00.qestnr_id ,
|
||||
c00.qustnr_qesitm_id ,
|
||||
max(c00.qustnr_rslt_id) as qustnr_rslt_id
|
||||
FROM
|
||||
LETTNQESTNRRSLTDetail c00
|
||||
, ve_edu_aplct d00
|
||||
WHERE
|
||||
c00.EDU_APLCT_ORD = #eduAplctOrd#
|
||||
AND c00.EDU_CHASI_ORD = #eduChasiOrd#
|
||||
d00.prcs_ord = #eduAplctOrd#
|
||||
and d00.EDU_APLCT_ORD=c00.edu_aplct_ord
|
||||
/*
|
||||
and c00.EDU_CHASI_ORD = ''
|
||||
*/
|
||||
GROUP BY
|
||||
c00.qustnr_tmplat_id
|
||||
, c00.qestnr_id
|
||||
, c00.qustnr_qesitm_id
|
||||
|
||||
c00.qestnr_id ,
|
||||
c00.qustnr_qesitm_id
|
||||
|
||||
)c01
|
||||
, LETTNQESTNRRSLTDetail c02
|
||||
WHERE c01.qustnr_tmplat_id=c02.qustnr_tmplat_id
|
||||
WHERE 1=1
|
||||
/*
|
||||
c01.qustnr_tmplat_id=c02.qustnr_tmplat_id
|
||||
*/
|
||||
AND c01.qestnr_id=c02.qestnr_id
|
||||
AND c01.qustnr_qesitm_id=c02.qustnr_qesitm_id
|
||||
AND c01.qustnr_rslt_id=c02.qustnr_rslt_id
|
||||
|
||||
) c
|
||||
on(
|
||||
1=1
|
||||
/*
|
||||
b.QUSTNR_TMPLAT_ID =c.QUSTNR_TMPLAT_ID
|
||||
*/
|
||||
AND b.QESTNR_ID =c.QESTNR_ID
|
||||
AND b.QUSTNR_QESITM_ID =c.QUSTNR_QESITM_ID
|
||||
|
||||
@ -287,7 +309,10 @@
|
||||
LEFT OUTER JOIN LETTNQUSTNRRESPONDINFO e
|
||||
on
|
||||
(
|
||||
d.QUSTNR_TMPLAT_ID =e.QUSTNR_TMPLAT_ID
|
||||
1=1
|
||||
/*
|
||||
d.QUSTNR_TMPLAT_ID =e.QUSTNR_TMPLAT_ID
|
||||
*/
|
||||
AND d.QESTNR_ID =e.QESTNR_ID
|
||||
AND d.QUSTNR_RESPOND_ID =e.QUSTNR_RESPOND_ID
|
||||
AND d.EDU_APLCT_ORD = e.EDU_APLCT_ORD
|
||||
@ -321,7 +346,10 @@
|
||||
|
||||
)F
|
||||
on(
|
||||
1=1
|
||||
/*
|
||||
b.QUSTNR_TMPLAT_ID =f.QUSTNR_TMPLAT_ID
|
||||
*/
|
||||
AND b.QESTNR_ID =f.QESTNR_ID
|
||||
AND b.QUSTNR_QESITM_ID =f.QUSTNR_QESITM_ID
|
||||
|
||||
@ -331,7 +359,9 @@
|
||||
|
||||
WHERE a.site_id=#siteId#
|
||||
AND COALESCE(a.SITE_ID_CD,'10') =#siteIdCd#
|
||||
AND b.QUSTNR_TMPLAT_ID =a.QUSTNR_TMPLAT_ID
|
||||
/*
|
||||
AND b.QUSTNR_TMPLAT_ID =a.QUSTNR_TMPLAT_ID
|
||||
*/
|
||||
AND b.QESTNR_ID =a.QESTNR_ID
|
||||
|
||||
</select>
|
||||
|
||||
@ -961,7 +961,8 @@
|
||||
<button type="button" class="btn_type04" onclick="fn_statusChgList('20', '<c:out value="${info.prcsAplctPrdOrd }" />'); return false;">이수</button>
|
||||
<button type="button" class="btn_type04" onclick="fn_statusChgList('10', '<c:out value="${info.prcsAplctPrdOrd }" />'); return false;">미이수</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
|
||||
<div class="tb_tit01">
|
||||
@ -1015,6 +1016,227 @@
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- 문항리스트_상세 -->
|
||||
<div class="tb_tit01">
|
||||
<p>교육 내용에 대한 전반적 만족도 평가</p>
|
||||
</div>
|
||||
<!-- <div class="tb_type01"> -->
|
||||
<!-- <table> -->
|
||||
<%-- <c:if test="${!empty chasiSrvyList}"> --%>
|
||||
<%-- <colgroup> --%>
|
||||
<%-- <col style="width: 120px;"> --%>
|
||||
<%-- <col style="width: auto;"> --%>
|
||||
<%-- <col style="width: 120px;"> --%>
|
||||
<%-- <col style="width: auto;"> --%>
|
||||
<%-- </colgroup> --%>
|
||||
<!-- <tbody class="ta_con"> -->
|
||||
<!-- <tr> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>참석자</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td> -->
|
||||
<%-- <input type="hidden" class="popupInput" id="qestnrParticipant" name="qestnrParticipant" value="<c:out value="${qestnrParticipant}"/>"> --%>
|
||||
<%-- <c:out value="${qestnrParticipant}"/> --%>
|
||||
<!-- </td> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>응답율</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td id="responseRate">-</td> -->
|
||||
<!-- </tr> -->
|
||||
<!-- <tr> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>응답자</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td> -->
|
||||
<%-- <input type="hidden" class="popupInput" id="qestnrRespondent" name="qestnrRespondent" value="<c:out value="${qestnrRespondent}"/>"> --%>
|
||||
<%-- <c:out value="${qestnrRespondent}"/> --%>
|
||||
<!-- </td> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>무응답</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td id="noResponse">-</td> -->
|
||||
<!-- </tr> -->
|
||||
<!-- </tbody> -->
|
||||
<%-- </c:if> --%>
|
||||
<%-- <c:if test="${empty chasiSrvyList}"> --%>
|
||||
<!-- <tr> -->
|
||||
<!-- <td colspan="2">등록된 평가문항이 없습니다.</td> -->
|
||||
<!-- </tr> -->
|
||||
<%-- </c:if> --%>
|
||||
<!-- </table> -->
|
||||
<!-- </div> -->
|
||||
<c:if test="${!empty chasiSrvyList}">
|
||||
<div class="tb_type01 list2">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: auto;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">평가문항</th>
|
||||
<th scope="col">매우만족</th>
|
||||
<th scope="col">만족</th>
|
||||
<th scope="col">보통</th>
|
||||
<th scope="col">불만족</th>
|
||||
<th scope="col">매우불만족</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach items="${Comtnqustnrqesitm}" var="QestmInfo" varStatus="status1">
|
||||
<c:forEach items="${chasiSrvyList}" var="chasiSrvyInfo" varStatus="">
|
||||
<c:if test="${QestmInfo.qestnrQesitmId eq chasiSrvyInfo.qestnrQesitmId}">
|
||||
<tr>
|
||||
<th scope="row" class="t_left">
|
||||
${status1.count}) <c:out value="${QestmInfo.qestnCn}" escapeXml="true" />
|
||||
</th>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.verySatisfied}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.satisfied}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.neither}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.dissatisfied}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.veryDissatisfied}"/>
|
||||
</td>
|
||||
</tr>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</c:forEach>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</c:if>
|
||||
|
||||
|
||||
<!-- 기타의견이 있으면 보여준다. -->
|
||||
<c:if test="${not empty subjInfo}">
|
||||
<div class="tb_type01 list2">
|
||||
|
||||
<table>
|
||||
<caption>기타의견</caption>
|
||||
<colgroup>
|
||||
<col style="auto;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">기타의견</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<br/>
|
||||
<c:out value="${fn:replace(subjInfo.qustnrCn , crlf , '<br/>')}" escapeXml="false" />
|
||||
<br/>
|
||||
<br/>
|
||||
</th>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<br/>
|
||||
<br/>
|
||||
<br/>
|
||||
|
||||
</div>
|
||||
</c:if>
|
||||
|
||||
<!-- btn_wrap -->
|
||||
<!--
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
<c:if test="${!empty chasiSrvyList}">
|
||||
<button class="btn_type02" onclick="fncExcelDown(); return false;">엑셀 다운로드</button>
|
||||
</c:if>
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br/>
|
||||
<br/>
|
||||
-->
|
||||
|
||||
|
||||
|
||||
|
||||
<c:choose>
|
||||
<%-- <c:when test="${chasiSrvyList[0].neither ne '' and chasiSrvyList[0].neither ne null}"> --%>
|
||||
<c:when test="${qestnrParticipant ne '' and qestnrParticipant ne null}">
|
||||
|
||||
<div class="btn_wrap">
|
||||
<div class="btn_right">
|
||||
|
||||
<c:forEach var="list" items="${chasiQr}" varStatus="status">
|
||||
|
||||
<c:choose>
|
||||
|
||||
<c:when test="${not empty list.qestnrId10}">
|
||||
|
||||
<button type="button" class="btn_type04" data-info="${list.eduChasiOrd}" data-tooltip="sub37_pop20"
|
||||
onclick="fn_chasiQRPop('${list.eduAplctOrd}','${list.eduChasiOrd}','10','print'
|
||||
,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}'
|
||||
)" title="팝업 열림">설문QR</button>
|
||||
</c:when>
|
||||
|
||||
<c:otherwise>
|
||||
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
</c:forEach>
|
||||
|
||||
<button type="button" class="btn_type06" onclick="fn_chasiStatusPop(); return false;">수정</button>
|
||||
<button type="button" class="btn_type01" onclick="fn_delete(); return false;">삭제</button>
|
||||
</div>
|
||||
</div>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<!-- 등록버튼 추가 필요 -->
|
||||
<div class="btn_wrap">
|
||||
<div class="btn_right">
|
||||
|
||||
<c:forEach var="list" items="${chasiQr}" varStatus="status">
|
||||
|
||||
<c:choose>
|
||||
|
||||
<c:when test="${not empty list.qestnrId10}">
|
||||
|
||||
<button type="button" class="btn_type04" data-info="${list.eduChasiOrd}" data-tooltip="sub37_pop20"
|
||||
onclick="fn_chasiQRPop('${list.eduAplctOrd}','${list.eduChasiOrd}','10','print'
|
||||
,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}'
|
||||
)" title="팝업 열림">설문QR</button>
|
||||
</c:when>
|
||||
|
||||
<c:otherwise>
|
||||
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
</c:forEach>
|
||||
|
||||
<!-- <button type="button" class="btn_type06" onclick="fn_chasiStatusPop(); return false;">등록</button> -->
|
||||
</div>
|
||||
</div>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -1108,51 +1108,51 @@
|
||||
<div class="tb_tit01">
|
||||
<p>교육 내용에 대한 전반적 만족도 평가</p>
|
||||
</div>
|
||||
<div class="tb_type01">
|
||||
<table>
|
||||
<c:if test="${!empty chasiSrvyList}">
|
||||
<colgroup>
|
||||
<col style="width: 120px;">
|
||||
<col style="width: auto;">
|
||||
<col style="width: 120px;">
|
||||
<col style="width: auto;">
|
||||
</colgroup>
|
||||
<tbody class="ta_con">
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>참석자</p>
|
||||
</th>
|
||||
<td>
|
||||
<input type="hidden" class="popupInput" id="qestnrParticipant" name="qestnrParticipant" value="<c:out value="${qestnrParticipant}"/>">
|
||||
<c:out value="${qestnrParticipant}"/>
|
||||
</td>
|
||||
<th scope="row">
|
||||
<p>응답율</p>
|
||||
</th>
|
||||
<td id="responseRate">-</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<p>응답자</p>
|
||||
</th>
|
||||
<td>
|
||||
<input type="hidden" class="popupInput" id="qestnrRespondent" name="qestnrRespondent" value="<c:out value="${qestnrRespondent}"/>">
|
||||
<c:out value="${qestnrRespondent}"/>
|
||||
</td>
|
||||
<th scope="row">
|
||||
<p>무응답</p>
|
||||
</th>
|
||||
<td id="noResponse">-</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</c:if>
|
||||
<c:if test="${empty chasiSrvyList}">
|
||||
<tr>
|
||||
<td colspan="2">등록된 평가문항이 없습니다.</td>
|
||||
</tr>
|
||||
</c:if>
|
||||
</table>
|
||||
</div>
|
||||
<!-- <div class="tb_type01"> -->
|
||||
<!-- <table> -->
|
||||
<%-- <c:if test="${!empty chasiSrvyList}"> --%>
|
||||
<%-- <colgroup> --%>
|
||||
<%-- <col style="width: 120px;"> --%>
|
||||
<%-- <col style="width: auto;"> --%>
|
||||
<%-- <col style="width: 120px;"> --%>
|
||||
<%-- <col style="width: auto;"> --%>
|
||||
<%-- </colgroup> --%>
|
||||
<!-- <tbody class="ta_con"> -->
|
||||
<!-- <tr> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>참석자</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td> -->
|
||||
<%-- <input type="hidden" class="popupInput" id="qestnrParticipant" name="qestnrParticipant" value="<c:out value="${qestnrParticipant}"/>"> --%>
|
||||
<%-- <c:out value="${qestnrParticipant}"/> --%>
|
||||
<!-- </td> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>응답율</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td id="responseRate">-</td> -->
|
||||
<!-- </tr> -->
|
||||
<!-- <tr> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>응답자</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td> -->
|
||||
<%-- <input type="hidden" class="popupInput" id="qestnrRespondent" name="qestnrRespondent" value="<c:out value="${qestnrRespondent}"/>"> --%>
|
||||
<%-- <c:out value="${qestnrRespondent}"/> --%>
|
||||
<!-- </td> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>무응답</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td id="noResponse">-</td> -->
|
||||
<!-- </tr> -->
|
||||
<!-- </tbody> -->
|
||||
<%-- </c:if> --%>
|
||||
<%-- <c:if test="${empty chasiSrvyList}"> --%>
|
||||
<!-- <tr> -->
|
||||
<!-- <td colspan="2">등록된 평가문항이 없습니다.</td> -->
|
||||
<!-- </tr> -->
|
||||
<%-- </c:if> --%>
|
||||
<!-- </table> -->
|
||||
<!-- </div> -->
|
||||
<c:if test="${!empty chasiSrvyList}">
|
||||
<div class="tb_type01 list2">
|
||||
<table>
|
||||
@ -1317,7 +1317,7 @@
|
||||
|
||||
</c:forEach>
|
||||
|
||||
<button type="button" class="btn_type06" onclick="fn_chasiStatusPop(); return false;">등록</button>
|
||||
<!-- <button type="button" class="btn_type06" onclick="fn_chasiStatusPop(); return false;">등록</button> -->
|
||||
</div>
|
||||
</div>
|
||||
</c:otherwise>
|
||||
|
||||
@ -962,7 +962,8 @@
|
||||
<button type="button" class="btn_type04" onclick="fn_statusChgList('20', '<c:out value="${info.prcsAplctPrdOrd }" />'); return false;">이수</button>
|
||||
<button type="button" class="btn_type04" onclick="fn_statusChgList('10', '<c:out value="${info.prcsAplctPrdOrd }" />'); return false;">미이수</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br/>
|
||||
|
||||
|
||||
<div class="tb_tit01">
|
||||
@ -1016,7 +1017,229 @@
|
||||
<%-- <button type="button" class="btn_type04" onclick="location.href='<c:url value="/kccadr/oprtn/prevent/cndtnEduPrcsAplctCfnMngList.do" />'; return false;">교육확정목록</button> --%>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- 문항리스트_상세 -->
|
||||
<div class="tb_tit01">
|
||||
<p>교육 내용에 대한 전반적 만족도 평가</p>
|
||||
</div>
|
||||
<!-- <div class="tb_type01"> -->
|
||||
<!-- <table> -->
|
||||
<%-- <c:if test="${!empty chasiSrvyList}"> --%>
|
||||
<%-- <colgroup> --%>
|
||||
<%-- <col style="width: 120px;"> --%>
|
||||
<%-- <col style="width: auto;"> --%>
|
||||
<%-- <col style="width: 120px;"> --%>
|
||||
<%-- <col style="width: auto;"> --%>
|
||||
<%-- </colgroup> --%>
|
||||
<!-- <tbody class="ta_con"> -->
|
||||
<!-- <tr> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>참석자</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td> -->
|
||||
<%-- <input type="hidden" class="popupInput" id="qestnrParticipant" name="qestnrParticipant" value="<c:out value="${qestnrParticipant}"/>"> --%>
|
||||
<%-- <c:out value="${qestnrParticipant}"/> --%>
|
||||
<!-- </td> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>응답율</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td id="responseRate">-</td> -->
|
||||
<!-- </tr> -->
|
||||
<!-- <tr> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>응답자</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td> -->
|
||||
<%-- <input type="hidden" class="popupInput" id="qestnrRespondent" name="qestnrRespondent" value="<c:out value="${qestnrRespondent}"/>"> --%>
|
||||
<%-- <c:out value="${qestnrRespondent}"/> --%>
|
||||
<!-- </td> -->
|
||||
<!-- <th scope="row"> -->
|
||||
<!-- <p>무응답</p> -->
|
||||
<!-- </th> -->
|
||||
<!-- <td id="noResponse">-</td> -->
|
||||
<!-- </tr> -->
|
||||
<!-- </tbody> -->
|
||||
<%-- </c:if> --%>
|
||||
<%-- <c:if test="${empty chasiSrvyList}"> --%>
|
||||
<!-- <tr> -->
|
||||
<!-- <td colspan="2">등록된 평가문항이 없습니다.</td> -->
|
||||
<!-- </tr> -->
|
||||
<%-- </c:if> --%>
|
||||
<!-- </table> -->
|
||||
<!-- </div> -->
|
||||
<c:if test="${!empty chasiSrvyList}">
|
||||
<div class="tb_type01 list2">
|
||||
<table>
|
||||
<colgroup>
|
||||
<col style="width: auto;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
<col style="width: 12%;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">평가문항</th>
|
||||
<th scope="col">매우만족</th>
|
||||
<th scope="col">만족</th>
|
||||
<th scope="col">보통</th>
|
||||
<th scope="col">불만족</th>
|
||||
<th scope="col">매우불만족</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<c:forEach items="${Comtnqustnrqesitm}" var="QestmInfo" varStatus="status1">
|
||||
<c:forEach items="${chasiSrvyList}" var="chasiSrvyInfo" varStatus="">
|
||||
<c:if test="${QestmInfo.qestnrQesitmId eq chasiSrvyInfo.qestnrQesitmId}">
|
||||
<tr>
|
||||
<th scope="row" class="t_left">
|
||||
${status1.count}) <c:out value="${QestmInfo.qestnCn}" escapeXml="true" />
|
||||
</th>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.verySatisfied}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.satisfied}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.neither}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.dissatisfied}"/>
|
||||
</td>
|
||||
<td>
|
||||
<c:out value="${chasiSrvyInfo.veryDissatisfied}"/>
|
||||
</td>
|
||||
</tr>
|
||||
</c:if>
|
||||
</c:forEach>
|
||||
</c:forEach>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</c:if>
|
||||
|
||||
|
||||
<!-- 기타의견이 있으면 보여준다. -->
|
||||
<c:if test="${not empty subjInfo}">
|
||||
<div class="tb_type01 list2">
|
||||
|
||||
<table>
|
||||
<caption>기타의견</caption>
|
||||
<colgroup>
|
||||
<col style="auto;">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">기타의견</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row">
|
||||
<br/>
|
||||
<c:out value="${fn:replace(subjInfo.qustnrCn , crlf , '<br/>')}" escapeXml="false" />
|
||||
<br/>
|
||||
<br/>
|
||||
</th>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<br/>
|
||||
<br/>
|
||||
<br/>
|
||||
|
||||
</div>
|
||||
</c:if>
|
||||
|
||||
<!-- btn_wrap -->
|
||||
<!--
|
||||
<div class="btn_wrap btn_layout01">
|
||||
<div class="btn_left">
|
||||
<c:if test="${!empty chasiSrvyList}">
|
||||
<button class="btn_type02" onclick="fncExcelDown(); return false;">엑셀 다운로드</button>
|
||||
</c:if>
|
||||
</div>
|
||||
<div class="btn_center">
|
||||
</div>
|
||||
<div class="btn_right">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<br/>
|
||||
<br/>
|
||||
-->
|
||||
|
||||
|
||||
|
||||
|
||||
<c:choose>
|
||||
<%-- <c:when test="${chasiSrvyList[0].neither ne '' and chasiSrvyList[0].neither ne null}"> --%>
|
||||
<c:when test="${qestnrParticipant ne '' and qestnrParticipant ne null}">
|
||||
|
||||
<div class="btn_wrap">
|
||||
<div class="btn_right">
|
||||
|
||||
<c:forEach var="list" items="${chasiQr}" varStatus="status">
|
||||
|
||||
<c:choose>
|
||||
|
||||
<c:when test="${not empty list.qestnrId10}">
|
||||
|
||||
<button type="button" class="btn_type04" data-info="${list.eduChasiOrd}" data-tooltip="sub37_pop20"
|
||||
onclick="fn_chasiQRPop('${list.eduAplctOrd}','${list.eduChasiOrd}','10','print'
|
||||
,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}'
|
||||
)" title="팝업 열림">설문QR</button>
|
||||
</c:when>
|
||||
|
||||
<c:otherwise>
|
||||
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
</c:forEach>
|
||||
|
||||
<button type="button" class="btn_type06" onclick="fn_chasiStatusPop(); return false;">수정</button>
|
||||
<button type="button" class="btn_type01" onclick="fn_delete(); return false;">삭제</button>
|
||||
</div>
|
||||
</div>
|
||||
</c:when>
|
||||
<c:otherwise>
|
||||
<!-- 등록버튼 추가 필요 -->
|
||||
<div class="btn_wrap">
|
||||
<div class="btn_right">
|
||||
|
||||
<c:forEach var="list" items="${chasiQr}" varStatus="status">
|
||||
|
||||
<c:choose>
|
||||
|
||||
<c:when test="${not empty list.qestnrId10}">
|
||||
|
||||
<button type="button" class="btn_type04" data-info="${list.eduChasiOrd}" data-tooltip="sub37_pop20"
|
||||
onclick="fn_chasiQRPop('${list.eduAplctOrd}','${list.eduChasiOrd}','10','print'
|
||||
,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}'
|
||||
)" title="팝업 열림">설문QR</button>
|
||||
</c:when>
|
||||
|
||||
<c:otherwise>
|
||||
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
</c:forEach>
|
||||
|
||||
<!-- <button type="button" class="btn_type06" onclick="fn_chasiStatusPop(); return false;">등록</button> -->
|
||||
</div>
|
||||
</div>
|
||||
</c:otherwise>
|
||||
</c:choose>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user