2025-11-10 16:16 설문내용 수정
This commit is contained in:
parent
986b400838
commit
ac7be2aeaa
@ -128,6 +128,30 @@ public class QustnrCommonUtil {
|
|||||||
return p_model;
|
return p_model;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ModelMap _chasiSrvyItemList(
|
||||||
|
ModelMap p_model
|
||||||
|
, String p_siteId
|
||||||
|
, String p_siteIdCd
|
||||||
|
, String p_eduAplctOrd
|
||||||
|
, String p_eduChasiOrd
|
||||||
|
, VEALettnQestnrMIXService p_vEALettnQestnrMIXService
|
||||||
|
)throws Exception{
|
||||||
|
VEAQestnrVO vEAQestnrVO = new VEAQestnrVO();
|
||||||
|
vEAQestnrVO.setSiteId(p_siteId); //청소년
|
||||||
|
vEAQestnrVO.setSiteIdCd(p_siteIdCd); //10-기본설문, 20-신청자설문, 30-강사설문
|
||||||
|
vEAQestnrVO.setEduAplctOrd(p_eduAplctOrd);
|
||||||
|
vEAQestnrVO.setEduChasiOrd(p_eduChasiOrd);
|
||||||
|
vEAQestnrVO = p_vEALettnQestnrMIXService.selectDetail_MIX_LQI_02(vEAQestnrVO);
|
||||||
|
|
||||||
|
List<VEAQestnrVO> chasiSrvyList = p_vEALettnQestnrMIXService.selectDetail_MIX_LQI_05(vEAQestnrVO);
|
||||||
|
|
||||||
|
if(chasiSrvyList.size() > 0) {
|
||||||
|
p_model.addAttribute("chasiSrvyItemList",chasiSrvyList);
|
||||||
|
}
|
||||||
|
|
||||||
|
return p_model;
|
||||||
|
}
|
||||||
|
|
||||||
public ModelMap _chasiSrvyList_TA(
|
public ModelMap _chasiSrvyList_TA(
|
||||||
ModelMap p_model
|
ModelMap p_model
|
||||||
, String p_siteId
|
, String p_siteId
|
||||||
|
|||||||
@ -132,6 +132,9 @@ public class QustnrRespondInfoVO implements Serializable {
|
|||||||
|
|
||||||
private String prcsAplctPrdOrd = "";
|
private String prcsAplctPrdOrd = "";
|
||||||
|
|
||||||
|
private String qestnTyCode = "";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 20231124 이호영
|
// 20231124 이호영
|
||||||
// 강화 기반은 라디오 버튼이라 변수 추가함
|
// 강화 기반은 라디오 버튼이라 변수 추가함
|
||||||
@ -676,4 +679,16 @@ public class QustnrRespondInfoVO implements Serializable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public String getQestnTyCode() {
|
||||||
|
return qestnTyCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public void setQestnTyCode(String qestnTyCode) {
|
||||||
|
this.qestnTyCode = qestnTyCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1387,6 +1387,22 @@ public class CndtnPrcsInfoMngController {
|
|||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 설문조사 문항항목
|
||||||
|
try{
|
||||||
|
model = qustnrCommonUtil._chasiSrvyItemList(
|
||||||
|
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
|
//개인별 만족도 관리 - chasiSrvyEAList
|
||||||
try{
|
try{
|
||||||
|
|||||||
@ -18,4 +18,7 @@ public interface VEALettnQestnrMIXService {
|
|||||||
|
|
||||||
//관리자 청소년,성인 - 개별 만족도 리스트
|
//관리자 청소년,성인 - 개별 만족도 리스트
|
||||||
List<VEAQestnrVO> selectDetail_MIX_LQI_04(VEAQestnrVO paramVO) throws Exception; // R
|
List<VEAQestnrVO> selectDetail_MIX_LQI_04(VEAQestnrVO paramVO) throws Exception; // R
|
||||||
|
|
||||||
|
//관리자 청소년,성인 - 설문항목
|
||||||
|
List<VEAQestnrVO> selectDetail_MIX_LQI_05(VEAQestnrVO paramVO) throws Exception; // R
|
||||||
}
|
}
|
||||||
|
|||||||
@ -95,6 +95,42 @@ public class VEAQestnrVO extends ComDefaultVO implements Serializable {
|
|||||||
private String qustnrBirth; //개별설문등록자생년월일
|
private String qustnrBirth; //개별설문등록자생년월일
|
||||||
private String qustnrScore; //개별설문등록자점수
|
private String qustnrScore; //개별설문등록자점수
|
||||||
|
|
||||||
|
private String sn1;
|
||||||
|
private String sn2;
|
||||||
|
private String sn3;
|
||||||
|
public String getSn1() {
|
||||||
|
return sn1;
|
||||||
|
}
|
||||||
|
public void setSn1(String sn1) {
|
||||||
|
this.sn1 = sn1;
|
||||||
|
}
|
||||||
|
public String getSn2() {
|
||||||
|
return sn2;
|
||||||
|
}
|
||||||
|
public void setSn2(String sn2) {
|
||||||
|
this.sn2 = sn2;
|
||||||
|
}
|
||||||
|
public String getSn3() {
|
||||||
|
return sn3;
|
||||||
|
}
|
||||||
|
public void setSn3(String sn3) {
|
||||||
|
this.sn3 = sn3;
|
||||||
|
}
|
||||||
|
public String getSn4() {
|
||||||
|
return sn4;
|
||||||
|
}
|
||||||
|
public void setSn4(String sn4) {
|
||||||
|
this.sn4 = sn4;
|
||||||
|
}
|
||||||
|
public String getSn5() {
|
||||||
|
return sn5;
|
||||||
|
}
|
||||||
|
public void setSn5(String sn5) {
|
||||||
|
this.sn5 = sn5;
|
||||||
|
}
|
||||||
|
private String sn4;
|
||||||
|
private String sn5;
|
||||||
|
|
||||||
|
|
||||||
public String getQestnrQesitmId() {
|
public String getQestnrQesitmId() {
|
||||||
return qestnrQesitmId;
|
return qestnrQesitmId;
|
||||||
|
|||||||
@ -32,4 +32,9 @@ public class VEALettnQestnrMIXDAO extends EgovAbstractDAO {
|
|||||||
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_04", paramVO);
|
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_04", paramVO);
|
||||||
return tlist;
|
return tlist;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<VEAQestnrVO> selectDetail_MIX_LQI_05(VEAQestnrVO paramVO) throws Exception {
|
||||||
|
List<VEAQestnrVO> tlist = (List<VEAQestnrVO>) list("VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_05", paramVO);
|
||||||
|
return tlist;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -40,4 +40,9 @@ public class VEALettnQestnrMIXServiceImpl implements VEALettnQestnrMIXService {
|
|||||||
public List<VEAQestnrVO> selectDetail_MIX_LQI_04(VEAQestnrVO paramVO) throws Exception{
|
public List<VEAQestnrVO> selectDetail_MIX_LQI_04(VEAQestnrVO paramVO) throws Exception{
|
||||||
return vEALettnQestnrMIXDAO.selectDetail_MIX_LQI_04(paramVO);
|
return vEALettnQestnrMIXDAO.selectDetail_MIX_LQI_04(paramVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//관리자 설문 문항
|
||||||
|
public List<VEAQestnrVO> selectDetail_MIX_LQI_05(VEAQestnrVO paramVO) throws Exception{
|
||||||
|
return vEALettnQestnrMIXDAO.selectDetail_MIX_LQI_05(paramVO);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -127,7 +127,7 @@
|
|||||||
A.LAST_UPDT_PNTTM,
|
A.LAST_UPDT_PNTTM,
|
||||||
A.LAST_UPDUSR_ID,
|
A.LAST_UPDUSR_ID,
|
||||||
A.QESTN_SN,
|
A.QESTN_SN,
|
||||||
A.QESTN_TY_CODE,
|
A.QESTN_TY_CODE "qestnTyCode",
|
||||||
A.QESTN_CN,
|
A.QESTN_CN,
|
||||||
A.MXMM_CHOISE_CO,
|
A.MXMM_CHOISE_CO,
|
||||||
A.QUSTNR_TMPLAT_ID "qestnrTmplatId"
|
A.QUSTNR_TMPLAT_ID "qestnrTmplatId"
|
||||||
@ -806,7 +806,7 @@
|
|||||||
|
|
||||||
, e.prcs_ord AS prcsAplctPrdOrd
|
, e.prcs_ord AS prcsAplctPrdOrd
|
||||||
|
|
||||||
|
, f.qestn_ty_code AS qestnTyCode
|
||||||
|
|
||||||
FROM lettnqustnrqesitm a
|
FROM lettnqustnrqesitm a
|
||||||
LEFT OUTER JOIN LETTNQESTNRRSLTDETAIL b
|
LEFT OUTER JOIN LETTNQESTNRRSLTDETAIL b
|
||||||
@ -863,6 +863,9 @@
|
|||||||
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
LEFT OUTER JOIN lettnqustnrqesitm f
|
||||||
|
ON a.QUSTNR_QESITM_ID = f.QUSTNR_QESITM_ID
|
||||||
|
|
||||||
,(
|
,(
|
||||||
|
|
||||||
SELECT a.prcs_ord
|
SELECT a.prcs_ord
|
||||||
|
|||||||
@ -832,12 +832,12 @@
|
|||||||
END AS qestRsltExists,
|
END AS qestRsltExists,
|
||||||
/* 설문지 정보 */
|
/* 설문지 정보 */
|
||||||
I.qustnr_tmplat_id AS qustnrTmplatId ,
|
I.qustnr_tmplat_id AS qustnrTmplatId ,
|
||||||
COALESCE(qustnr01.QESTNR_ID_10,
|
COALESCE(i.qestnr_id_10, qustnr01.QESTNR_ID_10
|
||||||
i.qestnr_id_10) AS qestnrId10 ,
|
) AS qestnrId10 ,
|
||||||
COALESCE(qustnr01.QESTNR_ID_20,
|
COALESCE(i.qestnr_id_20, qustnr01.QESTNR_ID_20
|
||||||
i.qestnr_id_20) AS qestnrId20 ,
|
) AS qestnrId20 ,
|
||||||
COALESCE(qustnr01.QESTNR_ID_30,
|
COALESCE(i.qestnr_id_30, qustnr01.QESTNR_ID_30
|
||||||
i.qestnr_id_30) AS qestnrId30 ,
|
) AS qestnrId30 ,
|
||||||
/* 답변 정보 */
|
/* 답변 정보 */
|
||||||
qustnr01.QESTNR_ID_10_CNT AS qestnrId10Cnt ,
|
qustnr01.QESTNR_ID_10_CNT AS qestnrId10Cnt ,
|
||||||
qustnr01.QESTNR_ID_20_CNT AS qestnrId20Cnt ,
|
qustnr01.QESTNR_ID_20_CNT AS qestnrId20Cnt ,
|
||||||
@ -955,7 +955,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
) I ON
|
) I ON
|
||||||
(vpap.edu_strt_pnttm between coalesce(I.qustnr_bgnde, '20000101') and coalesce(I.qustnr_endde,'99991231'))
|
(replace(vpap.edu_strt_pnttm,'.','') between coalesce(I.qustnr_bgnde, '20000101') and coalesce(I.qustnr_endde,'99991231'))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1789,9 +1789,9 @@
|
|||||||
I10.qustnr_tmplat_id AS qustnrTmplatId ,
|
I10.qustnr_tmplat_id AS qustnrTmplatId ,
|
||||||
*/
|
*/
|
||||||
|
|
||||||
COALESCE(qustnr01.QESTNR_ID_10, I10.qestnr_id_10) AS qestnrId10 ,
|
COALESCE(I10.qestnr_id_10, qustnr01.QESTNR_ID_10) AS qestnrId10 ,
|
||||||
COALESCE(qustnr01.QESTNR_ID_20, I20.qestnr_id_20) AS qestnrId20 ,
|
COALESCE(I20.qestnr_id_20, qustnr01.QESTNR_ID_20) AS qestnrId20 ,
|
||||||
COALESCE(qustnr01.QESTNR_ID_30, I30.qestnr_id_30) AS qestnrId30 ,
|
COALESCE(I30.qestnr_id_30, qustnr01.QESTNR_ID_30) AS qestnrId30 ,
|
||||||
|
|
||||||
/* 답변 정보 */
|
/* 답변 정보 */
|
||||||
|
|
||||||
@ -1885,9 +1885,13 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
SELECT site_id, min(qestnr_id_10) as qestnr_id_10
|
SELECT site_id, min(qestnr_id_10) as qestnr_id_10
|
||||||
|
*/
|
||||||
|
SELECT a0.prcs_ord, a0.site_id, a0.qestnr_id_10
|
||||||
FROM (
|
FROM (
|
||||||
select
|
select
|
||||||
|
b0.prcs_ord,
|
||||||
a.QUSTNR_TMPLAT_ID ,
|
a.QUSTNR_TMPLAT_ID ,
|
||||||
a.SITE_ID ,
|
a.SITE_ID ,
|
||||||
/* (CASE WHEN a.STTUS = '1' THEN a.QESTNR_ID END) AS QESTNR_ID_10 */
|
/* (CASE WHEN a.STTUS = '1' THEN a.QESTNR_ID END) AS QESTNR_ID_10 */
|
||||||
@ -1900,6 +1904,7 @@
|
|||||||
, (
|
, (
|
||||||
|
|
||||||
select
|
select
|
||||||
|
a.prcs_ord ,
|
||||||
b.edu_strt_pnttm
|
b.edu_strt_pnttm
|
||||||
, b.lctr_div_cd
|
, b.lctr_div_cd
|
||||||
from
|
from
|
||||||
@ -1919,7 +1924,7 @@
|
|||||||
/*
|
/*
|
||||||
AND a.STTUS IN ('1') */
|
AND a.STTUS IN ('1') */
|
||||||
|
|
||||||
and b0.edu_strt_pnttm between coalesce(a.qustnr_bgnde,
|
and replace(b0.edu_strt_pnttm,'.','') between coalesce(a.qustnr_bgnde,
|
||||||
'2000.01.01')
|
'2000.01.01')
|
||||||
and coalesce(a.qustnr_endde,
|
and coalesce(a.qustnr_endde,
|
||||||
'9999.12.31')
|
'9999.12.31')
|
||||||
@ -1928,11 +1933,16 @@
|
|||||||
coalesce(a.qustnr_bgnde,
|
coalesce(a.qustnr_bgnde,
|
||||||
'9999.12.31')
|
'9999.12.31')
|
||||||
)a0
|
)a0
|
||||||
|
/*
|
||||||
group by a0.site_id
|
group by a0.site_id
|
||||||
|
*/
|
||||||
|
GROUP BY a0.prcs_ord, a0.site_id, a0.qestnr_id_10
|
||||||
|
|
||||||
|
|
||||||
) I10 ON
|
) I10 ON
|
||||||
(1 = 1 and a.lctr_div_cd = I10.site_id)
|
(1 = 1 and a.lctr_div_cd = I10.site_id
|
||||||
|
and a.prcs_ord = I10.prcs_ord
|
||||||
|
)
|
||||||
|
|
||||||
LEFT OUTER JOIN (
|
LEFT OUTER JOIN (
|
||||||
/* 현재 진행가능한 설문 정보(기본, 선생님, 강사) 여러개가 있는 경우는 최근 등록된 설문 정보를 가져온다.*/
|
/* 현재 진행가능한 설문 정보(기본, 선생님, 강사) 여러개가 있는 경우는 최근 등록된 설문 정보를 가져온다.*/
|
||||||
|
|||||||
@ -170,7 +170,7 @@
|
|||||||
AND COALESCE(A.site_id_cd, '10')=#siteIdCd#
|
AND COALESCE(A.site_id_cd, '10')=#siteIdCd#
|
||||||
|
|
||||||
AND c.prcs_aplct_prd_ord=#eduAplctOrd#
|
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 REPLACE(c.edu_strt_pnttm,'.','') between coalesce(a.qustnr_bgnde, '20000101') and coalesce(a.qustnr_endde, '99991231')
|
||||||
|
|
||||||
/*
|
/*
|
||||||
AND to_char(NOW(), 'YYYY.MM.DD') BETWEEN
|
AND to_char(NOW(), 'YYYY.MM.DD') BETWEEN
|
||||||
@ -399,4 +399,35 @@
|
|||||||
, a.qustnr_birth
|
, a.qustnr_birth
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!-- //관리자 청소년/성인 만족도 평가 R -->
|
||||||
|
<select id="VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_05" parameterClass="VEAQestnrVO" resultClass="VEAQestnrVO">
|
||||||
|
/* VEALettnQestnrMIXDAO.selectDetail_MIX_LQI_05 */
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
a.qestnr_id as qestnrId,
|
||||||
|
qustnr_qesitm_id as qustnrQesitmId
|
||||||
|
, max(case
|
||||||
|
when a.iem_sn = 1 then a.iem_cn
|
||||||
|
end) as sn1
|
||||||
|
, max(case
|
||||||
|
when a.iem_sn = 2 then a.iem_cn
|
||||||
|
end) as sn2
|
||||||
|
, max(case
|
||||||
|
when a.iem_sn = 3 then a.iem_cn
|
||||||
|
end) as sn3
|
||||||
|
, max(case
|
||||||
|
when a.iem_sn = 4 then a.iem_cn
|
||||||
|
end) as sn4
|
||||||
|
, max(case
|
||||||
|
when a.iem_sn = 5 then a.iem_cn
|
||||||
|
end) as sn5
|
||||||
|
|
||||||
|
FROM lettnqustnriem a
|
||||||
|
WHERE 1=1
|
||||||
|
and A.QESTNR_ID = #qestnrId#
|
||||||
|
|
||||||
|
GROUP BY a.qestnr_id, qustnr_qesitm_id
|
||||||
|
|
||||||
|
</select>
|
||||||
</sqlMap>
|
</sqlMap>
|
||||||
|
|||||||
@ -211,6 +211,7 @@
|
|||||||
|
|
||||||
// form.action = "<c:url value='/kccadr/oprtn/cmdTrgt/popup/fndthInstrAsgnmPopup.do'/>";
|
// form.action = "<c:url value='/kccadr/oprtn/cmdTrgt/popup/fndthInstrAsgnmPopup.do'/>";
|
||||||
form.action = "<c:url value='/kccadr/oprtn/cmdTrgt/popup/cndtnInstrAsgnmPopup.do'/>";
|
form.action = "<c:url value='/kccadr/oprtn/cmdTrgt/popup/cndtnInstrAsgnmPopup.do'/>";
|
||||||
|
form.action = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/popup/cndtnInstrAsgnmPopup.do'/>";
|
||||||
|
|
||||||
window.open("#", "_securityPop", "scrollbars = no, top=100px, left=100px, height=750px, width=950px");
|
window.open("#", "_securityPop", "scrollbars = no, top=100px, left=100px, height=750px, width=950px");
|
||||||
form.target = "_securityPop";
|
form.target = "_securityPop";
|
||||||
@ -535,8 +536,20 @@
|
|||||||
<div class="cont_wrap">
|
<div class="cont_wrap">
|
||||||
<div class="box">
|
<div class="box">
|
||||||
|
|
||||||
|
<!-- cont_tit -->
|
||||||
|
<!-- 메뉴에 등록된 URL을 넣으면 해당 메뉴명까지 자동 노출 해줌 -->
|
||||||
|
<!-- 메뉴에 등록되지 않은 메뉴를 마지막에 넣을떄 1 -->
|
||||||
|
<!-- 메뉴에 등록되지 않은 메뉴를 마지막에 넣을떄 2 -->
|
||||||
|
<!-- 메뉴에 등록되지 않은 메뉴를 마지막에 넣을떄 3 -->
|
||||||
|
<c:import url="/cmm/navi/adminContNav.do">
|
||||||
|
<c:param name="url" value="/kccadr/oprtn/cmdTrgt/cndtnEduPrcsMngList.do"/>
|
||||||
|
<c:param name="name1" value="확정과정관리"/>
|
||||||
|
<c:param name="name2" value="확정과정 상세"/>
|
||||||
|
<c:param name="name3" value=""/>
|
||||||
|
</c:import>
|
||||||
|
|
||||||
<!-- cont_tit -->
|
<!-- cont_tit -->
|
||||||
|
<!--
|
||||||
<div class="cont_tit">
|
<div class="cont_tit">
|
||||||
<h2>교육확정상세</h2>
|
<h2>교육확정상세</h2>
|
||||||
<ul class="cont_nav">
|
<ul class="cont_nav">
|
||||||
@ -547,6 +560,7 @@
|
|||||||
<li><span class="cur_nav">교육확정상세</span></li>
|
<li><span class="cur_nav">교육확정상세</span></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
-->
|
||||||
<!-- //cont_tit -->
|
<!-- //cont_tit -->
|
||||||
|
|
||||||
<div class="cont">
|
<div class="cont">
|
||||||
@ -820,8 +834,10 @@
|
|||||||
<input type="text" id="email_${status.count}" name="email_${status.count}"
|
<input type="text" id="email_${status.count}" name="email_${status.count}"
|
||||||
placeholder="이메일을 입력하세요." class="search_input"
|
placeholder="이메일을 입력하세요." class="search_input"
|
||||||
value="<c:out value='${list.email}'/>">
|
value="<c:out value='${list.email}'/>">
|
||||||
|
<!--
|
||||||
<button type="button" class="btn_type04"
|
<button type="button" class="btn_type04"
|
||||||
onclick="fn_emailChg('<c:out value="${list.eduAplctOrd }" />', 'email_${status.count}')">저장</button>
|
onclick="fn_emailChg('<c:out value="${list.eduAplctOrd }" />', 'email_${status.count}')">저장</button>
|
||||||
|
-->
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<c:out value="${list.phone}"/>
|
<c:out value="${list.phone}"/>
|
||||||
|
|||||||
@ -1167,18 +1167,46 @@
|
|||||||
</colgroup>
|
</colgroup>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<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>
|
<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>
|
||||||
<c:forEach items="${Comtnqustnrqesitm}" var="QestmInfo" varStatus="status1">
|
<c:forEach items="${Comtnqustnrqesitm}" var="QestmInfo" varStatus="status1">
|
||||||
<c:forEach items="${chasiSrvyList}" var="chasiSrvyInfo" varStatus="">
|
<c:forEach items="${chasiSrvyList}" var="chasiSrvyInfo" varStatus="">
|
||||||
|
|
||||||
|
|
||||||
<c:if test="${QestmInfo.qestnrQesitmId eq chasiSrvyInfo.qestnrQesitmId}">
|
<c:if test="${QestmInfo.qestnrQesitmId eq chasiSrvyInfo.qestnrQesitmId}">
|
||||||
|
|
||||||
|
<c:forEach items="${chasiSrvyItemList}" var="chasiSrvyItemInfo" varStatus="">
|
||||||
|
|
||||||
|
<c:if test="${chasiSrvyItemInfo.qustnrQesitmId eq chasiSrvyInfo.qestnrQesitmId}">
|
||||||
|
<c:if test="${QestmInfo.qestnTyCode eq '1'}">
|
||||||
|
<tr>
|
||||||
|
<td>객관식질문</td>
|
||||||
|
<td>${chasiSrvyItemInfo.sn1}</td>
|
||||||
|
<td>${chasiSrvyItemInfo.sn2}</td>
|
||||||
|
<td>${chasiSrvyItemInfo.sn3}</td>
|
||||||
|
<td>${chasiSrvyItemInfo.sn4}</td>
|
||||||
|
<td>${chasiSrvyItemInfo.sn5}</td>
|
||||||
|
</tr>
|
||||||
|
</c:if>
|
||||||
|
<c:if test="${QestmInfo.qestnTyCode eq '2'}">
|
||||||
|
<tr>
|
||||||
|
<td>주관식질문</td>
|
||||||
|
<td></td>
|
||||||
|
<td></td>
|
||||||
|
<td></td>
|
||||||
|
<td></td>
|
||||||
|
<td></td>
|
||||||
|
</tr>
|
||||||
|
</c:if>
|
||||||
|
</c:if>
|
||||||
|
</c:forEach>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row" class="t_left">
|
<th scope="row" class="t_left">
|
||||||
${status1.count}) <c:out value="${QestmInfo.qestnCn}" escapeXml="true" />
|
${status1.count}) <c:out value="${QestmInfo.qestnCn}" escapeXml="true" />
|
||||||
|
|||||||
@ -485,19 +485,6 @@
|
|||||||
vForm.action = "<c:url value='/kccadr/oprtn/prevent/trgtEduAplctCnfrmExcel.do'/>";
|
vForm.action = "<c:url value='/kccadr/oprtn/prevent/trgtEduAplctCnfrmExcel.do'/>";
|
||||||
vForm.submit();
|
vForm.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 이수증
|
|
||||||
function fncPrintCert(prcsAplctPrdOrd) {
|
|
||||||
var form = document.popForm;
|
|
||||||
|
|
||||||
form.prcsAplctPrdOrd.value = prcsAplctPrdOrd;
|
|
||||||
|
|
||||||
form.action = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/popup/printCertPopup.do'/>";
|
|
||||||
|
|
||||||
window.open("#", "_printCertPop", "scrollbars = no, top=10px, left=10px, height=1500px, width=1200px");
|
|
||||||
form.target = "_printCertPop";
|
|
||||||
form.submit();
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
@ -943,7 +930,7 @@
|
|||||||
<c:when test="${list.qestRsltExists and list.aprvlCd eq '60' and list.aplctStateCd eq '20' and list.qestnrId10Cnt gt 0}">
|
<c:when test="${list.qestRsltExists and list.aprvlCd eq '60' and list.aplctStateCd eq '20' and list.qestnrId10Cnt gt 0}">
|
||||||
<!-- 교육 기간 종료 & 교육신청은 확정(60) & 교육상태는 이슈(20) & 수료증 출력 가능 -->
|
<!-- 교육 기간 종료 & 교육신청은 확정(60) & 교육상태는 이슈(20) & 수료증 출력 가능 -->
|
||||||
<button type="button" class="btn_type04"
|
<button type="button" class="btn_type04"
|
||||||
onclick="fncPrintCert('<c:out value="${info.prcsAplctPrdOrd }" />')"/>출력</button>
|
onclick="fncPrintCert('${list.eduAplctOrd}','${list.eduChasiOrd}','10','insert','${list.qustnrTmplatId}','${list.qestnrId10}','')"/>출력</button>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
-
|
-
|
||||||
|
|||||||
@ -115,6 +115,27 @@
|
|||||||
function popupSrvySendSubmit(){
|
function popupSrvySendSubmit(){
|
||||||
|
|
||||||
|
|
||||||
|
const $inputs = $('.check-input'); // 동일한 class의 text input들
|
||||||
|
const totalCount = $inputs.length; // 전체 개수
|
||||||
|
let filledCount = 0; // 값이 입력된 개수
|
||||||
|
|
||||||
|
$inputs.each(function() {
|
||||||
|
if ($(this).val().trim() !== '') {
|
||||||
|
filledCount++;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
if (filledCount === totalCount) {
|
||||||
|
alert("✅ 모든 ${totalCount}개의 입력란이 채워졌습니다.");
|
||||||
|
//$('#result').text(`✅ 모든 ${totalCount}개의 입력란이 채워졌습니다.`);
|
||||||
|
} else {
|
||||||
|
alert("⚠️ 전체 ${totalCount}개 중 ${filledCount}개만 입력되었습니다.");
|
||||||
|
//$('#result').text(`⚠️ 전체 ${totalCount}개 중 ${filledCount}개만 입력되었습니다.`);
|
||||||
|
}
|
||||||
|
|
||||||
|
//return;
|
||||||
|
|
||||||
|
|
||||||
var v_qestmSize = parseInt('${chasiSrvyListCnt}'); //평가문항 수량
|
var v_qestmSize = parseInt('${chasiSrvyListCnt}'); //평가문항 수량
|
||||||
var v_sum = 0;
|
var v_sum = 0;
|
||||||
//var qestmSize = parseInt($("#qestmInfoSize").val()); //평가문항 수량
|
//var qestmSize = parseInt($("#qestmInfoSize").val()); //평가문항 수량
|
||||||
@ -197,7 +218,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
if(v_qestmSize != v_sum ){
|
if(v_qestmSize != v_sum + filledCount ){
|
||||||
alert("문항의 합계가 응답수량과 맞지 않습니다.");
|
alert("문항의 합계가 응답수량과 맞지 않습니다.");
|
||||||
$("#verySatisfied_"+i).focus();
|
$("#verySatisfied_"+i).focus();
|
||||||
return
|
return
|
||||||
@ -454,6 +475,8 @@ $(document).ready(function(){
|
|||||||
|
|
||||||
</th>
|
</th>
|
||||||
<td style="text-align:left;">
|
<td style="text-align:left;">
|
||||||
|
<c:if test="${QestmInfo.qestnTyCode eq '1'}">
|
||||||
|
|
||||||
<div class="radio_wrap">
|
<div class="radio_wrap">
|
||||||
|
|
||||||
<c:if test="${not empty QestmInfo.answer5}">
|
<c:if test="${not empty QestmInfo.answer5}">
|
||||||
@ -532,6 +555,20 @@ $(document).ready(function(){
|
|||||||
</span>
|
</span>
|
||||||
</c:if>
|
</c:if>
|
||||||
</div>
|
</div>
|
||||||
|
</c:if>
|
||||||
|
|
||||||
|
<c:if test="${QestmInfo.qestnTyCode eq '2'}">
|
||||||
|
|
||||||
|
<div class="radio_wrap">
|
||||||
|
<span>
|
||||||
|
<label>
|
||||||
|
<input type="text" numberOnly class="popupInput check-input" style="width: 50%;"
|
||||||
|
id="answer" name="answer" value="<c:out value="${QestmInfo.answer}" />">
|
||||||
|
</label>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</c:if>
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</c:forEach>
|
</c:forEach>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user