Merge branch 'advc' of http://subsub8729@vcs.iten.co.kr:9999/hylee/offedu into advc
This commit is contained in:
commit
660d9005cd
@ -16,6 +16,7 @@ import org.springframework.stereotype.Controller;
|
|||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||||
|
|
||||||
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||||
@ -493,7 +494,42 @@ public class MyPageController {
|
|||||||
return "web/my/myQnaMngDetail";
|
return "web/my/myQnaMngDetail";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@RequestMapping(value = { "/web/my/myNotifyMngDeleteAjax.do"})
|
||||||
|
public ModelAndView myNotifyMngDeleteAjax(
|
||||||
|
@ModelAttribute("notifyManageVO") NotifyManageVO notifyManageVO
|
||||||
|
, ModelMap model
|
||||||
|
, RedirectAttributes redirectAttributes
|
||||||
|
, HttpSession session
|
||||||
|
, HttpServletRequest request
|
||||||
|
, String[] chk
|
||||||
|
) throws Exception {
|
||||||
|
|
||||||
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
|
modelAndView.setViewName("jsonView");
|
||||||
|
|
||||||
|
//로그인 처리====================================
|
||||||
|
//로그인 정보 가져오기
|
||||||
|
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||||
|
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
||||||
|
|
||||||
|
if (loginVO == null || ssoLoginVO == null) {
|
||||||
|
modelAndView.addObject("result", "loginFail");
|
||||||
|
}
|
||||||
|
//로그인 처리====================================
|
||||||
|
|
||||||
|
try {
|
||||||
|
notifyManageVO.setCmmNotifyOrdArr(chk);
|
||||||
|
notifyManageService.updateChkedUseYnN(notifyManageVO);
|
||||||
|
modelAndView.addObject("result", "success");
|
||||||
|
}catch(Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
modelAndView.addObject("result", "fail");
|
||||||
|
}
|
||||||
|
|
||||||
|
//세부과정 목록 조회
|
||||||
|
|
||||||
|
return modelAndView;
|
||||||
|
}
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
|
|||||||
@ -60,6 +60,8 @@ public interface NotifyManageService {
|
|||||||
int selectNotifyCnt(String uniqId);
|
int selectNotifyCnt(String uniqId);
|
||||||
|
|
||||||
void updateM7DaysUseYnN();
|
void updateM7DaysUseYnN();
|
||||||
|
|
||||||
|
void updateChkedUseYnN(NotifyManageVO notifyManageVO);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -46,6 +46,7 @@ public class NotifyManageVO extends ComDefaultVO implements Serializable {
|
|||||||
private String mngUserId;
|
private String mngUserId;
|
||||||
private String mngUserNm;
|
private String mngUserNm;
|
||||||
|
|
||||||
|
private String[] cmmNotifyOrdArr;
|
||||||
|
|
||||||
public String getCmmNotifyOrd() {
|
public String getCmmNotifyOrd() {
|
||||||
return cmmNotifyOrd;
|
return cmmNotifyOrd;
|
||||||
@ -143,6 +144,12 @@ public class NotifyManageVO extends ComDefaultVO implements Serializable {
|
|||||||
public void setMngUserNm(String mngUserNm) {
|
public void setMngUserNm(String mngUserNm) {
|
||||||
this.mngUserNm = mngUserNm;
|
this.mngUserNm = mngUserNm;
|
||||||
}
|
}
|
||||||
|
public String[] getCmmNotifyOrdArr() {
|
||||||
|
return cmmNotifyOrdArr;
|
||||||
|
}
|
||||||
|
public void setCmmNotifyOrdArr(String[] cmmNotifyOrdArr) {
|
||||||
|
this.cmmNotifyOrdArr = cmmNotifyOrdArr;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -5,8 +5,6 @@ import java.util.List;
|
|||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
import egovframework.rte.psl.dataaccess.EgovAbstractDAO;
|
import egovframework.rte.psl.dataaccess.EgovAbstractDAO;
|
||||||
import kcc.com.cmm.service.CmmnDetailCode;
|
|
||||||
import kcc.let.sym.ccm.cde.service.CmmnDetailCodeVO;
|
|
||||||
import kcc.let.uss.notify.service.NotifyManageVO;
|
import kcc.let.uss.notify.service.NotifyManageVO;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -85,6 +83,9 @@ public class NotifyManageDAO extends EgovAbstractDAO {
|
|||||||
public void updateM7DaysUseYnN() {
|
public void updateM7DaysUseYnN() {
|
||||||
update("VEANotifyDAO.updateM7DaysUseYnN");
|
update("VEANotifyDAO.updateM7DaysUseYnN");
|
||||||
}
|
}
|
||||||
|
public void updateChkedUseYnN(NotifyManageVO notifyManageVO) {
|
||||||
|
update("VEANotifyDAO.updateChkedUseYnN", notifyManageVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -392,4 +392,10 @@ public class NotifyManageServiceImpl extends EgovAbstractServiceImpl implements
|
|||||||
notifyManageDAO.updateM7DaysUseYnN();
|
notifyManageDAO.updateM7DaysUseYnN();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updateChkedUseYnN(NotifyManageVO notifyManageVO) {
|
||||||
|
notifyManageDAO.updateChkedUseYnN(notifyManageVO);
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -23,6 +23,15 @@ public class VEEduSatisfactionExcelVO {
|
|||||||
private String qestnSn8; //항목8
|
private String qestnSn8; //항목8
|
||||||
|
|
||||||
private String srt; //정렬순서
|
private String srt; //정렬순서
|
||||||
|
|
||||||
|
private String qestnSn; //정렬순서
|
||||||
|
private String qestnCn; //정렬순서
|
||||||
|
private String verySatisfied; //정렬순서
|
||||||
|
private String satisfied; //정렬순서
|
||||||
|
private String neither; //정렬순서
|
||||||
|
private String disSatisfied; //정렬순서
|
||||||
|
private String veryDisSatisfied; //정렬순서
|
||||||
|
|
||||||
|
|
||||||
public String getEduHopeDt() {
|
public String getEduHopeDt() {
|
||||||
return eduHopeDt;
|
return eduHopeDt;
|
||||||
@ -151,5 +160,61 @@ public class VEEduSatisfactionExcelVO {
|
|||||||
public void setSrt(String srt) {
|
public void setSrt(String srt) {
|
||||||
this.srt = srt;
|
this.srt = srt;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getQestnSn() {
|
||||||
|
return qestnSn;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setQestnSn(String qestnSn) {
|
||||||
|
this.qestnSn = qestnSn;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getQestnCn() {
|
||||||
|
return qestnCn;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setQestnCn(String qestnCn) {
|
||||||
|
this.qestnCn = qestnCn;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getVerySatisfied() {
|
||||||
|
return verySatisfied;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setVerySatisfied(String verySatisfied) {
|
||||||
|
this.verySatisfied = verySatisfied;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSatisfied() {
|
||||||
|
return satisfied;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSatisfied(String satisfied) {
|
||||||
|
this.satisfied = satisfied;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getNeither() {
|
||||||
|
return neither;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setNeither(String neither) {
|
||||||
|
this.neither = neither;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDisSatisfied() {
|
||||||
|
return disSatisfied;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDisSatisfied(String disSatisfied) {
|
||||||
|
this.disSatisfied = disSatisfied;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getVeryDisSatisfied() {
|
||||||
|
return veryDisSatisfied;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setVeryDisSatisfied(String veryDisSatisfied) {
|
||||||
|
this.veryDisSatisfied = veryDisSatisfied;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -165,6 +165,8 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
|
|||||||
private List<String> eduAplctOrdList; //교육신청순번
|
private List<String> eduAplctOrdList; //교육신청순번
|
||||||
private List<String> sspnIdtmtTrgtOrdList; //교육신청순번
|
private List<String> sspnIdtmtTrgtOrdList; //교육신청순번
|
||||||
|
|
||||||
|
private String siteIdCd; //10-학생, 20-선생, 30-강사
|
||||||
|
|
||||||
public int getChasi() {
|
public int getChasi() {
|
||||||
return chasi;
|
return chasi;
|
||||||
}
|
}
|
||||||
@ -2058,6 +2060,12 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
|
|||||||
public void setMberId(String mberId) {
|
public void setMberId(String mberId) {
|
||||||
this.mberId = mberId;
|
this.mberId = mberId;
|
||||||
}
|
}
|
||||||
|
public String getSiteIdCd() {
|
||||||
|
return siteIdCd;
|
||||||
|
}
|
||||||
|
public void setSiteIdCd(String siteIdCd) {
|
||||||
|
this.siteIdCd = siteIdCd;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -69,6 +69,8 @@ public interface VEEduMIXService {
|
|||||||
|
|
||||||
List<VEEduSatisfactionExcelVO> selectSatisfactionExcelList(VEEduAplctVO vEEduAplctVO) throws Exception;
|
List<VEEduSatisfactionExcelVO> selectSatisfactionExcelList(VEEduAplctVO vEEduAplctVO) throws Exception;
|
||||||
|
|
||||||
|
List<VEEduSatisfactionExcelVO> selectSatisfaction202401ExcelList(VEEduAplctVO vEEduAplctVO) throws Exception;
|
||||||
|
|
||||||
List<VEEduExcelVO> selectOprtnExcelList(VEEduAplctVO vEEduAplctVO) throws Exception;
|
List<VEEduExcelVO> selectOprtnExcelList(VEEduAplctVO vEEduAplctVO) throws Exception;
|
||||||
|
|
||||||
void insertExprnClsrmEndInfo(VEEduAplctVO vEEduAplctVO) throws Exception;
|
void insertExprnClsrmEndInfo(VEEduAplctVO vEEduAplctVO) throws Exception;
|
||||||
|
|||||||
@ -173,6 +173,12 @@ public class VEEduMIXDAO extends EgovAbstractDAO {
|
|||||||
return tlist;
|
return tlist;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<VEEduSatisfactionExcelVO> selectSatisfaction202401ExcelList(VEEduAplctVO vEEduAplctVO) throws Exception {
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
List<VEEduSatisfactionExcelVO> tlist = (List<VEEduSatisfactionExcelVO>) list("VEEduMIXDAO.selectSatisfaction202401ExcelList", vEEduAplctVO);
|
||||||
|
return tlist;
|
||||||
|
}
|
||||||
|
|
||||||
public List<VEEduExcelVO> selectOprtnExcelList(VEEduAplctVO vEEduAplctVO) throws Exception {
|
public List<VEEduExcelVO> selectOprtnExcelList(VEEduAplctVO vEEduAplctVO) throws Exception {
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
List<VEEduExcelVO> tlist = (List<VEEduExcelVO>) list("VEEduMIXDAO.selectOprtnExcelList", vEEduAplctVO);
|
List<VEEduExcelVO> tlist = (List<VEEduExcelVO>) list("VEEduMIXDAO.selectOprtnExcelList", vEEduAplctVO);
|
||||||
|
|||||||
@ -146,6 +146,11 @@ public class VEEduMIXServiceImpl implements VEEduMIXService {
|
|||||||
return vEEduMIXDAO.selectSatisfactionExcelList(vEEduAplctVO);
|
return vEEduMIXDAO.selectSatisfactionExcelList(vEEduAplctVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<VEEduSatisfactionExcelVO> selectSatisfaction202401ExcelList(VEEduAplctVO vEEduAplctVO) throws Exception {
|
||||||
|
return vEEduMIXDAO.selectSatisfaction202401ExcelList(vEEduAplctVO);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<VEEduExcelVO> selectOprtnExcelList(VEEduAplctVO vEEduAplctVO) throws Exception {
|
public List<VEEduExcelVO> selectOprtnExcelList(VEEduAplctVO vEEduAplctVO) throws Exception {
|
||||||
return vEEduMIXDAO.selectOprtnExcelList(vEEduAplctVO);
|
return vEEduMIXDAO.selectOprtnExcelList(vEEduAplctVO);
|
||||||
|
|||||||
@ -8,8 +8,6 @@ import java.util.Collections;
|
|||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
|
|
||||||
import org.apache.poi.EncryptedDocumentException;
|
import org.apache.poi.EncryptedDocumentException;
|
||||||
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
|
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
|
||||||
import org.apache.poi.ss.usermodel.Cell;
|
import org.apache.poi.ss.usermodel.Cell;
|
||||||
@ -21,10 +19,7 @@ import org.apache.poi.ss.usermodel.Workbook;
|
|||||||
import org.apache.poi.ss.usermodel.WorkbookFactory;
|
import org.apache.poi.ss.usermodel.WorkbookFactory;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
import kcc.com.cmm.ComDefaultCodeVO;
|
|
||||||
import kcc.com.cmm.service.EgovCmmUseService;
|
|
||||||
import kcc.ve.oprtn.cndtnSspnIdtmt.trgtMng.service.CndtnTrgtMngVO;
|
import kcc.ve.oprtn.cndtnSspnIdtmt.trgtMng.service.CndtnTrgtMngVO;
|
||||||
|
|
||||||
public class TrgtExcelReader {
|
public class TrgtExcelReader {
|
||||||
@ -49,30 +44,38 @@ public class TrgtExcelReader {
|
|||||||
Row row = sheet.getRow(i);
|
Row row = sheet.getRow(i);
|
||||||
if (row != null) {
|
if (row != null) {
|
||||||
|
|
||||||
CndtnTrgtMngVO cndtnTrgtMngVO = new CndtnTrgtMngVO();
|
try {
|
||||||
|
CndtnTrgtMngVO cndtnTrgtMngVO = new CndtnTrgtMngVO();
|
||||||
// cndtnTrgtMngVO.set getCellValue(row.getCell(0));
|
|
||||||
cndtnTrgtMngVO.setReqPnttm(getCellValue(row.getCell(1))); // 의뢰번호
|
// cndtnTrgtMngVO.set getCellValue(row.getCell(0));
|
||||||
|
cndtnTrgtMngVO.setReqPnttm(getCellValue(row.getCell(1))); // 의뢰번호
|
||||||
String vntInfo[] = getCellValue(row.getCell(2)).split("형제");
|
|
||||||
cndtnTrgtMngVO.setVntYear( vntInfo[0] ); // 사건번호 년
|
System.out.println("row.getCell(2)");
|
||||||
cndtnTrgtMngVO.setVntNmbr( vntInfo[1] ); // 사건번호 번호
|
System.out.println(row.getCell(2));
|
||||||
cndtnTrgtMngVO.setCmptntAthrt( getCellValue(row.getCell(3)));
|
|
||||||
cndtnTrgtMngVO.setdBirth( getCellValue(row.getCell(4)).replaceAll("-", "")); // 생년월일
|
String vntInfo[] = getCellValue(row.getCell(2)).split("형제");
|
||||||
cndtnTrgtMngVO.setTrgtNm( getCellValue(row.getCell(5))); // 대상자 이름
|
cndtnTrgtMngVO.setVntYear( vntInfo[0] ); // 사건번호 년
|
||||||
cndtnTrgtMngVO.setSex( getCellValue(row.getCell(6)));
|
cndtnTrgtMngVO.setVntNmbr( vntInfo[1] ); // 사건번호 번호
|
||||||
cndtnTrgtMngVO.setAddr( getCellValue(row.getCell(7))); // 주소, detail과 구분해야함
|
cndtnTrgtMngVO.setCmptntAthrt( getCellValue(row.getCell(3)));
|
||||||
cndtnTrgtMngVO.setPost( getCellValue(row.getCell(8))); // 우편번호
|
cndtnTrgtMngVO.setdBirth( getCellValue(row.getCell(4)).replaceAll("-", "")); // 생년월일
|
||||||
cndtnTrgtMngVO.setClphone( getCellValue(row.getCell(9)).replaceAll("-", "")); // 핸드폰
|
cndtnTrgtMngVO.setTrgtNm( getCellValue(row.getCell(5))); // 대상자 이름
|
||||||
cndtnTrgtMngVO.setReqNmbr( getCellValue(row.getCell(10))); // 의뢰번호
|
cndtnTrgtMngVO.setSex( getCellValue(row.getCell(6)));
|
||||||
cndtnTrgtMngVO.setPrsctrNm( getCellValue(row.getCell(11))); // 담당검사 이름
|
cndtnTrgtMngVO.setAddr( getCellValue(row.getCell(7))); // 주소, detail과 구분해야함
|
||||||
|
cndtnTrgtMngVO.setPost( getCellValue(row.getCell(8))); // 우편번호
|
||||||
|
cndtnTrgtMngVO.setClphone( getCellValue(row.getCell(9)).replaceAll("-", "")); // 핸드폰
|
||||||
|
cndtnTrgtMngVO.setReqNmbr( getCellValue(row.getCell(10))); // 의뢰번호
|
||||||
|
cndtnTrgtMngVO.setPrsctrNm( getCellValue(row.getCell(11))); // 담당검사 이름
|
||||||
|
|
||||||
cndtnTrgtMngVO.setReqStateCd( getCellValue(row.getCell(12)) ); // 의뢰상태 코드 , if로 구분해야함
|
cndtnTrgtMngVO.setReqStateCd( getCellValue(row.getCell(12)) ); // 의뢰상태 코드 , if로 구분해야함
|
||||||
cndtnTrgtMngVO.setEduStateCd( getCellValue(row.getCell(13))); // 교육 상태 코드
|
cndtnTrgtMngVO.setEduStateCd( getCellValue(row.getCell(13))); // 교육 상태 코드
|
||||||
cndtnTrgtMngVO.setPrcsAplctPrdOrdCmplt( getCellValue(row.getCell(14))); // 병합상태코드
|
cndtnTrgtMngVO.setPrcsAplctPrdOrdCmplt( getCellValue(row.getCell(14))); // 병합상태코드
|
||||||
cndtnTrgtMngVO.setRmrks( getCellValue(row.getCell(15))); // 비고
|
cndtnTrgtMngVO.setRmrks( getCellValue(row.getCell(15))); // 비고
|
||||||
|
|
||||||
cndtnTrgtInfoMngVOList.add(cndtnTrgtMngVO);
|
cndtnTrgtInfoMngVOList.add(cndtnTrgtMngVO);
|
||||||
|
|
||||||
|
}catch(Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1671,6 +1671,67 @@ public class EduRsltMngTngrController {
|
|||||||
return modelAndView;
|
return modelAndView;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//강사만족도 excel download
|
||||||
|
@SuppressWarnings("rawtypes")
|
||||||
|
@RequestMapping(value = "eduRsltSatisfaction202401ExcelDownLoad.do")
|
||||||
|
public ModelAndView eduRsltSatisfaction202401ExcelDownLoad(@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO, ModelMap model) throws Exception {
|
||||||
|
|
||||||
|
try {
|
||||||
|
// 요청, 반려건
|
||||||
|
vEEduAplctVO.setSearchNotStatusArr(new String[]{"60"});
|
||||||
|
// 청소년
|
||||||
|
vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_10);
|
||||||
|
vEEduAplctVO.setMode(VeConstants.MODE_EXCEL);
|
||||||
|
vEEduAplctVO.setSiteId("10");
|
||||||
|
vEEduAplctVO.setSiteIdCd("10");
|
||||||
|
vEEduAplctVO.setInstrDiv("10");
|
||||||
|
List<VEEduSatisfactionExcelVO> list = vEEduMIXService.selectSatisfaction202401ExcelList(vEEduAplctVO);
|
||||||
|
|
||||||
|
// 복호화
|
||||||
|
list = egovCryptoUtil.decryptVEEduSatisfactionExcelVOList(list);
|
||||||
|
|
||||||
|
System.out.println("out-list-2");
|
||||||
|
|
||||||
|
|
||||||
|
List<Object> excelData = new ArrayList<>();
|
||||||
|
excelData.addAll(list);
|
||||||
|
|
||||||
|
|
||||||
|
// 세팅값
|
||||||
|
String title = "청소년 찾아가는 저작권 교육 강사만족도";
|
||||||
|
int[] width = {
|
||||||
|
4000, 4000, 4000, 4000, 4000
|
||||||
|
, 4000, 4000, 4000, 4000, 4000
|
||||||
|
}; // 너비
|
||||||
|
|
||||||
|
//33개 항목
|
||||||
|
String[] header = {
|
||||||
|
"교육일자", "학교명", "강사명", "순번", "질문"
|
||||||
|
, "매우만족", "만족", "보통", "불만족", "매우불만족"
|
||||||
|
};
|
||||||
|
|
||||||
|
String[] order = {
|
||||||
|
"EduHopeDt", "ScholInsttNm", "InstrNm", "QestnSn", "QestnCn"
|
||||||
|
, "VerySatisfied", "Satisfied", "Neither", "DisSatisfied", "VeryDisSatisfied"
|
||||||
|
};
|
||||||
|
|
||||||
|
// 호출
|
||||||
|
SXSSFWorkbook workbook = ExcelUtil.makeSimpleFruitExcelWorkbook(excelData , header, order, width, title);
|
||||||
|
model.addAttribute("locale", Locale.KOREA);
|
||||||
|
model.addAttribute("workbook", workbook);
|
||||||
|
model.addAttribute("workbookName", title);
|
||||||
|
|
||||||
|
}catch(Exception ep) {
|
||||||
|
ep.getStackTrace();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
|
modelAndView.setViewName("excelDownloadView");
|
||||||
|
modelAndView.addObject(model);
|
||||||
|
return modelAndView;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육설문 삭제 - 청소년, 성인 공통 - 사용자 개인별 만족도 등록자 삭제
|
* 교육설문 삭제 - 청소년, 성인 공통 - 사용자 개인별 만족도 등록자 삭제
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -165,4 +165,10 @@
|
|||||||
WHERE FRST_REGIST_PNTTM <![CDATA[ <= ]]> SYSDATE - 7;
|
WHERE FRST_REGIST_PNTTM <![CDATA[ <= ]]> SYSDATE - 7;
|
||||||
|
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
<delete id="VEANotifyDAO.updateChkedUseYnN" parameterClass="notifyManageVO">
|
||||||
|
UPDATE VEA_CMM_NOTIFY
|
||||||
|
SET USE_YN = 'N'
|
||||||
|
WHERE <iterate open="(" close=")" conjunction="," property="cmmNotifyOrdArr" prepend="cmm_notify_ord IN " > #cmmNotifyOrdArr[]#</iterate>
|
||||||
|
</delete>
|
||||||
</sqlMap>
|
</sqlMap>
|
||||||
@ -6518,6 +6518,451 @@ VALUES
|
|||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!-- 강사만족도 excel-->
|
||||||
|
<select id="VEEduMIXDAO.selectSatisfaction202401ExcelList" parameterClass="VEEduAplctVO" resultClass="VEEduSatisfactionExcelVO">
|
||||||
|
/* VEEduMIXDAO.selectSatisfaction202401ExcelList */
|
||||||
|
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
AA.*,
|
||||||
|
NVL(BB.qustnrRsltCnt,0) AS qustnrRsltCnt ,
|
||||||
|
2
|
||||||
|
|
||||||
|
, cc.qestn_sn AS qestnSn
|
||||||
|
, cc.qestn_ty_code AS qestnTyCode
|
||||||
|
, cc.qestn_cn AS qestnCn
|
||||||
|
|
||||||
|
, cc.verySatisfied
|
||||||
|
, cc.satisfied
|
||||||
|
, cc.neither
|
||||||
|
, cc.dissatisfied
|
||||||
|
, cc.veryDissatisfied
|
||||||
|
|
||||||
|
FROM (
|
||||||
|
SELECT
|
||||||
|
a.edu_aplct_ord AS eduAplctOrd ,
|
||||||
|
TO_CHAR(a.aprvl_pnttm,'YYYY-MM-DD') AS aprvlPnttm ,
|
||||||
|
a.edu_slct_cd AS eduSlctCd ,
|
||||||
|
a.edu_slct_area_cd AS eduSlctAreaCd ,
|
||||||
|
a.schol_instt_nm AS scholInsttNm ,
|
||||||
|
a.instt_div_cd AS insttDivCd ,
|
||||||
|
a.instt_nm AS insttNm ,
|
||||||
|
a.addr AS addr ,
|
||||||
|
a.strt_oprtn_dt AS strtOprtnDt ,
|
||||||
|
a.end_oprtn_dt AS endOprtnDt ,
|
||||||
|
a.chrg_nm AS chrgNm ,
|
||||||
|
a.schol_div_cd AS scholDivCd ,
|
||||||
|
a.stndrd_schol_cd AS stndrdScholCd ,
|
||||||
|
a.edu_trgt AS eduTrgt ,
|
||||||
|
a.clphone AS clphone ,
|
||||||
|
a.email AS email ,
|
||||||
|
a.hope_sbjct AS hopeSbjct,
|
||||||
|
a.phone AS phone,
|
||||||
|
a.edu_md AS eduMd,
|
||||||
|
a.edu_md_cd AS eduMdCd,
|
||||||
|
b.edu_chasi_ord AS eduChasiOrd ,
|
||||||
|
b.lrn_tm AS lrnTm ,
|
||||||
|
b.edu_hope_dt AS eduHopeDt ,
|
||||||
|
b.instr_cnfrm_cd AS instrCnfrmCd ,
|
||||||
|
b.strt_tm AS strtTm ,
|
||||||
|
b.end_tm AS endTm ,
|
||||||
|
b.trgt AS trgt ,
|
||||||
|
b.prsnl AS eduPrsnl ,
|
||||||
|
b.div_cd AS lctrDivCd ,
|
||||||
|
NVL(b.chasi, 0) AS chasi,
|
||||||
|
c.sbmt_yn AS sbmtYn ,
|
||||||
|
d.user_id AS userId ,
|
||||||
|
d.asgnm_aprvl_cd AS asgnmAprvlCd,
|
||||||
|
e.instr_nm AS instrNm,
|
||||||
|
e.phone AS instrPhone,
|
||||||
|
e.email AS instrEmail,
|
||||||
|
e.appt_div AS apptDiv,
|
||||||
|
g.atch_file_id AS atchFileId,
|
||||||
|
g.APRVL_CD AS acmdtAprvlCd,
|
||||||
|
d.rmrks AS rmrks,
|
||||||
|
c.atch_file_id AS rprtAtchFileId,
|
||||||
|
(select
|
||||||
|
count(1)
|
||||||
|
from
|
||||||
|
ve_edu_rslt_rprt
|
||||||
|
where 1=1
|
||||||
|
AND edu_aplct_ord = a.edu_aplct_ord
|
||||||
|
AND edu_chasi_ord = b.edu_chasi_ord
|
||||||
|
AND frst_register_id = d.user_id
|
||||||
|
AND sbmt_yn = 'Y') as cnt
|
||||||
|
<isEqual property="asgnmAprvlCd" compareValue="30">
|
||||||
|
,
|
||||||
|
f.sbmt_yn AS feeSbmtYn,
|
||||||
|
f.aprvl_cd AS feeAprvlCd,
|
||||||
|
|
||||||
|
NVL(TO_NUMBER(IF(f.instr_fee='',0,f.instr_fee)),0)
|
||||||
|
+ NVL(TO_NUMBER(IF(f.bsns_trip_fee='',0,f.bsns_trip_fee)),0)
|
||||||
|
+ NVL(TO_NUMBER(IF(f.spare_fee='',0,f.spare_fee)),0)
|
||||||
|
+ NVL(TO_NUMBER(IF(f.special_work_allow='',0,f.special_work_allow)),0)
|
||||||
|
+ NVL(TO_NUMBER(IF(f.distance_allow='',0,f.distance_allow)),0)
|
||||||
|
+ NVL(TO_NUMBER(IF(f.traffic_fee='',0,f.traffic_fee)),0)
|
||||||
|
- NVL(TO_NUMBER(IF(f.income_tax='',0,f.income_tax)),0)
|
||||||
|
- NVL(TO_NUMBER(IF(f.local_income_tax='',0,f.local_income_tax)),0)
|
||||||
|
AS totFee
|
||||||
|
</isEqual>
|
||||||
|
, (
|
||||||
|
SELECT COUNT(1)
|
||||||
|
FROM ve_new_noti e
|
||||||
|
WHERE (b.edu_aplct_ord = e.tbl_uniq_ord OR b.edu_chasi_ord = e.tbl_uniq_ord)
|
||||||
|
AND e.menu_no = #menuNo#
|
||||||
|
AND e.frst_register_id = #notiUserId#
|
||||||
|
)
|
||||||
|
AS notiCnt
|
||||||
|
, h.oneway_dstnc AS onewayDstnc
|
||||||
|
,NVL((
|
||||||
|
SELECT
|
||||||
|
COUNT(1)
|
||||||
|
FROM
|
||||||
|
ve_instr a
|
||||||
|
INNER JOIN ve_instr_detail e
|
||||||
|
ON (
|
||||||
|
a.user_id = e.user_id
|
||||||
|
AND e.use_yn = 'Y'
|
||||||
|
AND e.instr_div = '10'
|
||||||
|
)
|
||||||
|
INNER JOIN ve_edu_chasi_instr_asgnm_hstry i
|
||||||
|
ON(
|
||||||
|
/* 추가 강사 인원은 선정완료(20), 선정제외(30), 강의신청(50) 모두 나와야 한다. */
|
||||||
|
e.user_id = i.user_id
|
||||||
|
|
||||||
|
AND i.hstry_cd in ('20', '30', '50')
|
||||||
|
/*
|
||||||
|
AND i.hstry_cd in ('50')
|
||||||
|
*/
|
||||||
|
)
|
||||||
|
WHERE 1=1
|
||||||
|
AND e.instr_div ='10'
|
||||||
|
AND b.edu_aplct_ord = i.edu_aplct_ord
|
||||||
|
AND b.edu_chasi_ord = i.edu_chasi_ord
|
||||||
|
GROUP BY i.edu_aplct_ord , i.edu_chasi_ord
|
||||||
|
),0) AS rowNo
|
||||||
|
, e.rsdne as rsdne
|
||||||
|
, o.vea_rslt_rprt_ord AS veaRsltRprtOrd
|
||||||
|
FROM ve_edu_aplct a
|
||||||
|
, ve_edu_chasi b
|
||||||
|
|
||||||
|
LEFT OUTER JOIN ve_edu_rslt_rprt c
|
||||||
|
ON( b.edu_aplct_ord=c.edu_aplct_ord
|
||||||
|
AND b.edu_chasi_ord=c.edu_chasi_ord)
|
||||||
|
|
||||||
|
LEFT OUTER JOIN ve_edu_chasi_instr_asgnm d
|
||||||
|
ON( b.edu_aplct_ord=d.edu_aplct_ord
|
||||||
|
AND b.edu_chasi_ord=d.edu_chasi_ord)
|
||||||
|
<isNotEmpty property="searchTableJoin">
|
||||||
|
<isEqual property="searchTableJoin" compareValue="tngrResult">
|
||||||
|
INNER JOIN ve_instr_detail e
|
||||||
|
</isEqual>
|
||||||
|
</isNotEmpty>
|
||||||
|
<isEmpty property="searchTableJoin">
|
||||||
|
LEFT OUTER JOIN ve_instr_detail e
|
||||||
|
</isEmpty>
|
||||||
|
ON( d.user_id=e.user_id
|
||||||
|
AND e.instr_div=#instrDiv#
|
||||||
|
AND e.use_yn='Y'
|
||||||
|
)
|
||||||
|
<isEqual property="asgnmAprvlCd" compareValue="30">
|
||||||
|
LEFT OUTER JOIN ve_instr_fee f
|
||||||
|
ON( b.edu_aplct_ord = f.edu_aplct_ord
|
||||||
|
AND b.edu_chasi_ord = f.edu_chasi_ord
|
||||||
|
)
|
||||||
|
</isEqual>
|
||||||
|
/*
|
||||||
|
LEFT OUTER JOIN ve_acmdt_aplct g
|
||||||
|
*/
|
||||||
|
|
||||||
|
LEFT OUTER JOIN (
|
||||||
|
SELECT B00.*
|
||||||
|
FROM (
|
||||||
|
SELECT edu_aplct_ord, edu_chasi_ord, MAX(acmdt_aplct_ord) acmdt_aplct_ord
|
||||||
|
FROM ve_acmdt_aplct
|
||||||
|
GROUP BY edu_aplct_ord, edu_chasi_ord
|
||||||
|
)A00
|
||||||
|
, ve_acmdt_aplct B00
|
||||||
|
WHERE a00.edu_aplct_ord=b00.edu_aplct_ord
|
||||||
|
AND a00.edu_chasi_ord=b00.edu_chasi_ord
|
||||||
|
AND a00.acmdt_aplct_ord=b00.acmdt_aplct_ord
|
||||||
|
) g
|
||||||
|
|
||||||
|
ON ( b.edu_aplct_ord=g.edu_aplct_ord
|
||||||
|
AND b.edu_chasi_ord=g.edu_chasi_ord
|
||||||
|
)
|
||||||
|
LEFT OUTER JOIN ve_edu_instr_dstnc h
|
||||||
|
ON b.edu_aplct_ord = h.edu_aplct_ord AND d.user_id = h.user_id
|
||||||
|
LEFT OUTER JOIN vea_rslt_rprt o
|
||||||
|
ON b.edu_aplct_ord = o.edu_aplct_ord
|
||||||
|
WHERE 1=1
|
||||||
|
AND a.edu_aplct_ord=b.edu_aplct_ord
|
||||||
|
AND NVL(A.USE_YN, 'Y') <![CDATA[ <> ]]> 'N'
|
||||||
|
<isNotEmpty property="lctrDivCd">
|
||||||
|
AND a.LCTR_DIV_CD = #lctrDivCd#
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="aprvlCd">
|
||||||
|
AND a.aprvl_cd = #aprvlCd#
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="instrCnfrmCd">
|
||||||
|
AND b.instr_cnfrm_cd = #instrCnfrmCd#
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="searchInsttDivCd">
|
||||||
|
AND a.instt_div_cd = #searchInsttDivCd#
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="searchEduSlctCd">
|
||||||
|
AND a.edu_slct_cd = #searchEduSlctCd#
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
<isNotEmpty property="feeSbmtYn">
|
||||||
|
AND f.sbmt_yn = #feeSbmtYn#
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
<isNotEmpty property="selectPagingListQuery">
|
||||||
|
$selectPagingListQuery$
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
<isNotEmpty property="searchAsgnmAprvlCd">
|
||||||
|
<isEqual property="searchAsgnmAprvlCd" compareValue="90">
|
||||||
|
AND d.asgnm_aprvl_cd is null
|
||||||
|
</isEqual>
|
||||||
|
<isNotEqual property="searchAsgnmAprvlCd" compareValue="90">
|
||||||
|
AND d.asgnm_aprvl_cd = #searchAsgnmAprvlCd#
|
||||||
|
</isNotEqual>
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
<isNotEmpty property="searchStartDt">
|
||||||
|
/*
|
||||||
|
AND b.EDU_HOPE_DT <![CDATA[ >= ]]> REPLACE(searchStartDt, '.' , '')
|
||||||
|
*/
|
||||||
|
AND b.EDU_HOPE_DT <![CDATA[ >= ]]> #searchStartDt#
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
<isNotEmpty property="searchEndDt">
|
||||||
|
/*
|
||||||
|
AND b.EDU_HOPE_DT <![CDATA[ <= ]]> REPLACE(searchEndDt, '.' , '')
|
||||||
|
*/
|
||||||
|
AND b.EDU_HOPE_DT <![CDATA[ <= ]]> #searchEndDt#
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
<isEmpty property="searchStartDt">
|
||||||
|
<isEmpty property="searchEndDt">
|
||||||
|
AND 1=1
|
||||||
|
</isEmpty>
|
||||||
|
</isEmpty>
|
||||||
|
) AA
|
||||||
|
|
||||||
|
,
|
||||||
|
(
|
||||||
|
SELECT b0.EDU_APLCT_ORD
|
||||||
|
, b0.EDU_CHASI_ORD
|
||||||
|
, count(*) qustnrRsltCnt
|
||||||
|
FROM LETTNQESTNRRSLTDETAIL b0
|
||||||
|
GROUP BY b0.EDU_APLCT_ORD
|
||||||
|
, b0.EDU_CHASI_ORD
|
||||||
|
)bb
|
||||||
|
,(
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
b.QUSTNR_QESITM_ID AS qestnrQesitmId
|
||||||
|
, c.QUSTNR_RSLT_ID AS qustnrRsltId
|
||||||
|
|
||||||
|
, NVL(c.VERY_SATISFIED, cVERY_SATISFIED) AS verySatisfied
|
||||||
|
, NVL(c.SATISFIED, cSATISFIED) AS satisfied
|
||||||
|
, NVL(c.NEITHER, cNEITHER) AS neither
|
||||||
|
, NVL(c.DISSATISFIED, cDISSATISFIED) AS dissatisfied
|
||||||
|
, NVL(c.VERY_DISSATISFIED, cVERY_DISSATISFIED) AS veryDissatisfied
|
||||||
|
, c.ANSWER AS answer
|
||||||
|
, c.QUSTNR_IEM_ID AS qustnrIemId
|
||||||
|
|
||||||
|
|
||||||
|
, b.qestn_sn AS qestnSn
|
||||||
|
|
||||||
|
, e.QESTNR_RESPONDENT_COUNT AS qestnrParticipant
|
||||||
|
, e.QESTNR_PARTICIPANT_COUNT AS qestnrRespondent
|
||||||
|
, d.QUSTNR_RESPOND_ID AS qestnrRespondId
|
||||||
|
|
||||||
|
, g.qestn_sn
|
||||||
|
, g.qestn_ty_code
|
||||||
|
, g.qestn_cn
|
||||||
|
|
||||||
|
, c.EDU_APLCT_ORD
|
||||||
|
, c.EDU_CHASI_ORD
|
||||||
|
|
||||||
|
|
||||||
|
FROM LETTNQESTNRINFO a
|
||||||
|
, LETTNQUSTNRQESITM b
|
||||||
|
LEFT OUTER join LETTNQESTNRRSLTDetail c
|
||||||
|
on(
|
||||||
|
b.QUSTNR_TMPLAT_ID =c.QUSTNR_TMPLAT_ID
|
||||||
|
AND b.QESTNR_ID =c.QESTNR_ID
|
||||||
|
AND b.QUSTNR_QESITM_ID =c.QUSTNR_QESITM_ID
|
||||||
|
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
/* 중복답변 처리 */
|
||||||
|
LEFT OUTER JOIN (
|
||||||
|
SELECT d0.QUSTNR_TMPLAT_ID
|
||||||
|
, d0.QESTNR_ID
|
||||||
|
, d0.EDU_APLCT_ORD
|
||||||
|
, d0.EDU_CHASI_ORD
|
||||||
|
, MAX(d0.QUSTNR_RESPOND_ID) AS QUSTNR_RESPOND_ID
|
||||||
|
FROM LETTNQUSTNRRESPONDINFO d0
|
||||||
|
GROUP BY d0.QUSTNR_TMPLAT_ID
|
||||||
|
, d0.QESTNR_ID
|
||||||
|
, d0.EDU_APLCT_ORD
|
||||||
|
, d0.EDU_CHASI_ORD
|
||||||
|
) d
|
||||||
|
ON (
|
||||||
|
c.QESTNR_ID = d.QESTNR_ID
|
||||||
|
AND c.EDU_APLCT_ORD = d.EDU_APLCT_ORD
|
||||||
|
AND c.EDU_CHASI_ORD = d.EDU_CHASI_ORD
|
||||||
|
)
|
||||||
|
|
||||||
|
LEFT OUTER JOIN LETTNQUSTNRRESPONDINFO e
|
||||||
|
on
|
||||||
|
(
|
||||||
|
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
|
||||||
|
AND d.EDU_CHASI_ORD = e.EDU_CHASI_ORD
|
||||||
|
)
|
||||||
|
|
||||||
|
LEFT OUTER JOIN (
|
||||||
|
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
c.QUSTNR_TMPLAT_ID
|
||||||
|
, c.QESTNR_ID
|
||||||
|
, c.QUSTNR_QESITM_ID
|
||||||
|
, c.EDU_APLCT_ORD
|
||||||
|
, c.EDU_CHASI_ORD
|
||||||
|
|
||||||
|
, sum(c.very_satisfied) AS cvery_satisfied
|
||||||
|
, sum(c.satisfied) AS csatisfied
|
||||||
|
, sum(c.neither) AS cneither
|
||||||
|
, sum(c.dissatisfied) AS cdissatisfied
|
||||||
|
, sum(c.very_dissatisfied) AS cvery_dissatisfied
|
||||||
|
|
||||||
|
FROM LETTNQESTNRRSLTEADetail c
|
||||||
|
GROUP BY
|
||||||
|
c.QUSTNR_TMPLAT_ID
|
||||||
|
, c.QESTNR_ID
|
||||||
|
, c.QUSTNR_QESITM_ID
|
||||||
|
, c.EDU_APLCT_ORD
|
||||||
|
, c.EDU_CHASI_ORD
|
||||||
|
|
||||||
|
|
||||||
|
)F
|
||||||
|
on(
|
||||||
|
b.QUSTNR_TMPLAT_ID =f.QUSTNR_TMPLAT_ID
|
||||||
|
AND b.QESTNR_ID =f.QESTNR_ID
|
||||||
|
AND b.QUSTNR_QESITM_ID =f.QUSTNR_QESITM_ID
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
, LETTNQUSTNRQESITM G
|
||||||
|
|
||||||
|
WHERE a.site_id=#siteId#
|
||||||
|
AND a.SITE_ID_CD =#siteIdCd#
|
||||||
|
AND b.QUSTNR_TMPLAT_ID =a.QUSTNR_TMPLAT_ID
|
||||||
|
AND b.QESTNR_ID =a.QESTNR_ID
|
||||||
|
AND b.QUSTNR_QESITM_ID = g.QUSTNR_QESITM_ID
|
||||||
|
|
||||||
|
)cc
|
||||||
|
|
||||||
|
|
||||||
|
WHERE 1=1
|
||||||
|
AND aa.eduAplctOrd = bb.edu_aplct_ord
|
||||||
|
AND aa.eduChasiOrd = bb.edu_chasi_ord
|
||||||
|
|
||||||
|
AND aa.eduAplctOrd = cc.edu_aplct_ord
|
||||||
|
AND aa.eduChasiOrd = cc.edu_chasi_ord
|
||||||
|
|
||||||
|
|
||||||
|
<isNotEmpty property="checkListQuery">
|
||||||
|
$checkListQuery$
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
<isNotEmpty property="selectRsdneQuery">
|
||||||
|
$selectRsdneQuery$
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
|
||||||
|
<isEqual property="searchSubmitYn" compareValue="Y">
|
||||||
|
AND AA.CNT <![CDATA[ >= ]]> 1
|
||||||
|
</isEqual>
|
||||||
|
<isEqual property="searchSubmitYn" compareValue="N">
|
||||||
|
AND AA.CNT = 0
|
||||||
|
</isEqual>
|
||||||
|
<isNotEmpty property="searchScholDivCd">
|
||||||
|
AND AA.scholDivCd = #searchScholDivCd#
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="searchEduSlctAreaCd">
|
||||||
|
AND (
|
||||||
|
(
|
||||||
|
AA.eduSlctAreaCd = #searchEduSlctAreaCd#
|
||||||
|
AND AA.eduSlctCd = '20'
|
||||||
|
)
|
||||||
|
OR
|
||||||
|
(
|
||||||
|
'400' = #searchEduSlctAreaCd#
|
||||||
|
AND AA.eduSlctCd = '10'
|
||||||
|
)
|
||||||
|
)
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
<isNotEmpty property="searchScholNm">
|
||||||
|
AND AA.scholInsttNm LIKE '%' || #searchScholNm# || '%'
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="searchInsttNm">
|
||||||
|
AND AA.insttNm LIKE '%' || #searchInsttNm# || '%'
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="searchInstrNm">
|
||||||
|
AND AA.instrNm LIKE '%' || #searchInstrNm# || '%'
|
||||||
|
</isNotEmpty>
|
||||||
|
<isEmpty property="searchCondition">
|
||||||
|
<isNotEmpty property="searchKeyword">
|
||||||
|
AND (
|
||||||
|
A.SCHOL_INSTT_NM LIKE '%' || #searchKeyword# || '%' OR
|
||||||
|
A.INSTT_NM LIKE '%' || #searchKeyword# || '%'
|
||||||
|
)
|
||||||
|
</isNotEmpty>
|
||||||
|
</isEmpty>
|
||||||
|
<isNotEmpty property="searchKeyword">
|
||||||
|
<isEqual property="searchCondition" compareValue="0">
|
||||||
|
AND (AA.scholInsttNm LIKE '%' || #searchKeyword# || '%' OR AA.instrNm LIKE '%' || #instrNm# || '%')
|
||||||
|
</isEqual>
|
||||||
|
<isEqual property="searchCondition" compareValue="1">
|
||||||
|
AND AA.scholInsttNm LIKE '%' || #searchKeyword# || '%'
|
||||||
|
</isEqual>
|
||||||
|
<isEqual property="searchCondition" compareValue="2">
|
||||||
|
AND AA.instrNm LIKE '%' || #instrNm# || '%'
|
||||||
|
</isEqual>
|
||||||
|
<isEqual property="searchCondition" compareValue="3">
|
||||||
|
AND (AA.insttNm LIKE '%' || #searchKeyword# || '%' OR AA.instrNm LIKE '%' || #searchKeyword# || '%')
|
||||||
|
</isEqual>
|
||||||
|
<isEqual property="searchCondition" compareValue="4">
|
||||||
|
AND AA.insttNm LIKE '%' || #searchKeyword# || '%'
|
||||||
|
</isEqual>
|
||||||
|
</isNotEmpty>
|
||||||
|
ORDER BY 1
|
||||||
|
|
||||||
|
<isEmpty property="orderByQuery">
|
||||||
|
, eduhopedt
|
||||||
|
, scholinsttnm
|
||||||
|
, cc.edu_chasi_ord
|
||||||
|
, cc.qestnSn
|
||||||
|
</isEmpty>
|
||||||
|
<isNotEmpty property="orderByQuery">
|
||||||
|
, $orderByQuery$
|
||||||
|
</isNotEmpty>
|
||||||
|
|
||||||
|
|
||||||
|
</select>
|
||||||
|
|
||||||
<insert id="VEEduMIXDAO.updateRsltRprtFileIdNull" parameterClass="VEEduAplctVO">
|
<insert id="VEEduMIXDAO.updateRsltRprtFileIdNull" parameterClass="VEEduAplctVO">
|
||||||
UPDATE
|
UPDATE
|
||||||
ve_edu_rslt_rprt
|
ve_edu_rslt_rprt
|
||||||
|
|||||||
@ -213,8 +213,8 @@
|
|||||||
d.QUSTNR_TMPLAT_ID =e.QUSTNR_TMPLAT_ID
|
d.QUSTNR_TMPLAT_ID =e.QUSTNR_TMPLAT_ID
|
||||||
AND d.QESTNR_ID =e.QESTNR_ID
|
AND d.QESTNR_ID =e.QESTNR_ID
|
||||||
AND d.QUSTNR_RESPOND_ID =e.QUSTNR_RESPOND_ID
|
AND d.QUSTNR_RESPOND_ID =e.QUSTNR_RESPOND_ID
|
||||||
AND d.EDU_APLCT_ORD = d.EDU_APLCT_ORD
|
AND d.EDU_APLCT_ORD = e.EDU_APLCT_ORD
|
||||||
AND d.EDU_CHASI_ORD = d.EDU_CHASI_ORD
|
AND d.EDU_CHASI_ORD = e.EDU_CHASI_ORD
|
||||||
)
|
)
|
||||||
|
|
||||||
LEFT OUTER JOIN (
|
LEFT OUTER JOIN (
|
||||||
|
|||||||
@ -304,10 +304,24 @@
|
|||||||
});
|
});
|
||||||
alert("발송되었습니다.");
|
alert("발송되었습니다.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function fn_excel_upload() {
|
||||||
|
|
||||||
|
var form = document.excelForm;
|
||||||
|
|
||||||
|
// form.action = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/popup/duplChkPopup.do'/>";
|
||||||
|
form.action = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/popup/excelUploadPopup.do'/>";
|
||||||
|
|
||||||
|
window.open("#", "_duplChkPopup", "scrollbars = no, top=100px, left=100px, height=750px, width=950px");
|
||||||
|
form.target = "_duplChkPopup";
|
||||||
|
form.submit();
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
<title>교육과정관리</title>
|
<title>교육과정관리</title>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
<form id="excelForm" name="excelForm" method="post" >
|
||||||
|
</form>
|
||||||
<form id="popForm" name="popForm" method="post">
|
<form id="popForm" name="popForm" method="post">
|
||||||
<input type="hidden" name="sspnIdtmtTrgtOrd" value=""/>
|
<input type="hidden" name="sspnIdtmtTrgtOrd" value=""/>
|
||||||
<input type="hidden" name="targetId" value=""/>
|
<input type="hidden" name="targetId" value=""/>
|
||||||
@ -606,9 +620,10 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="btn_wrap btn_layout01">
|
<div class="btn_wrap btn_layout01">
|
||||||
<div class="btn_left">
|
<div class="btn_left">
|
||||||
<button type="button" class="btn_type06" onclick="openSmsPopup();">문자발송</button>
|
<button type="button" class="btn_type04" onclick="fn_excel_upload(); return false;">엑셀 업로드</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn_center">
|
<div class="btn_center">
|
||||||
|
<button type="button" class="btn_type06" onclick="openSmsPopup();">문자발송</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn_right">
|
<div class="btn_right">
|
||||||
<button type="button" class="btn_type01" onclick="fncCreate(); return false;">등록</button>
|
<button type="button" class="btn_type01" onclick="fncCreate(); return false;">등록</button>
|
||||||
|
|||||||
@ -279,6 +279,12 @@
|
|||||||
listForm.submit();
|
listForm.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function fncSatisfaction202401ExcelDownLoad(){
|
||||||
|
var listForm = document.listForm ;
|
||||||
|
listForm.action = "<c:url value='/kccadr/oprtn/tngrVisitEdu/eduRsltSatisfaction202401ExcelDownLoad.do'/>";
|
||||||
|
listForm.submit();
|
||||||
|
}
|
||||||
|
|
||||||
//숙박영수증 첨부파일 일괄 다운로드(zip) - 파일ID 다름, SN 동일 : type A
|
//숙박영수증 첨부파일 일괄 다운로드(zip) - 파일ID 다름, SN 동일 : type A
|
||||||
function fnAcmdtFileZipDownload(){
|
function fnAcmdtFileZipDownload(){
|
||||||
var frm = document.listForm;
|
var frm = document.listForm;
|
||||||
@ -546,7 +552,7 @@
|
|||||||
|
|
||||||
<div class="btn_wrap btn_layout01">
|
<div class="btn_wrap btn_layout01">
|
||||||
<div class="btn_left">
|
<div class="btn_left">
|
||||||
<button type="button" class="btn_type06" onclick="fncSatisfactionExcelDownLoad();return false;">강사만족도다운로드</button>
|
<button type="button" class="btn_type06" onclick="fncSatisfaction202401ExcelDownLoad();return false;">강사만족도다운로드</button>
|
||||||
(*교육일자 조건만 지원)
|
(*교육일자 조건만 지원)
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -344,79 +344,90 @@
|
|||||||
</script>
|
</script>
|
||||||
</c:if>
|
</c:if>
|
||||||
</c:forEach>
|
</c:forEach>
|
||||||
<!-- 횟수 차트 -->
|
|
||||||
<div id="chartContainer" style="display:flex; width:100%;">
|
<div id="chartContainer" style="display:flex; width:100%;">
|
||||||
<div id="chartNumOfTime" style="float:left; width: 50%; height:600px;">
|
<div id="chartAll" style="float:left; width: 100%; height:600px;">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
<!-- 차트 선언 -->
|
var chartAll = echarts.init(document.getElementById('chartAll'));
|
||||||
var chartNOT = echarts.init(document.getElementById('chartNumOfTime'));
|
|
||||||
var month = ['1월', '2월', '3월', '4월', '5월','6월','7월','8월', '9월','10월','11월', '12월'];
|
var month = ['1월', '2월', '3월', '4월', '5월','6월','7월','8월', '9월','10월','11월', '12월'];
|
||||||
//차트 옵션 지정하기
|
|
||||||
var optionNOT = {
|
var optionAll = {
|
||||||
// 차트 제목
|
toolbox: {
|
||||||
title: {
|
feature: {
|
||||||
text: '월별 횟수 차트 (총합 :' + dataNOTSum +')',
|
//dataView: { show: true, readOnly: false },
|
||||||
},
|
magicType: { show: true, type: ['line', 'bar'] },
|
||||||
// x축 라벨
|
restore: { show: true },
|
||||||
xAxis: {
|
saveAsImage: { show: true }
|
||||||
data: month,
|
}
|
||||||
},
|
},
|
||||||
yAxis: {},
|
legend: {
|
||||||
series: [
|
data: ['횟수', '인원']
|
||||||
{
|
},
|
||||||
name: '개수',
|
xAxis: [
|
||||||
type: 'bar', // 막대 그래프
|
{
|
||||||
data: dataNOT,
|
type: 'category',
|
||||||
label: {
|
data: month,
|
||||||
show: true,
|
axisPointer: {
|
||||||
position: 'top'
|
type: 'shadow'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
yAxis: [
|
||||||
|
{
|
||||||
|
type: 'value',
|
||||||
|
name: '횟수',
|
||||||
|
interval: 50,
|
||||||
|
max : dataNOTSum,
|
||||||
|
axisLabel: {
|
||||||
|
formatter: '{value}회'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'value',
|
||||||
|
name: '인원',
|
||||||
|
interval: 50,
|
||||||
|
mas : dataNOTSum,
|
||||||
|
axisLabel: {
|
||||||
|
formatter: '{value}명'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
series: [
|
||||||
|
{
|
||||||
|
name: '횟수',
|
||||||
|
type: 'bar',
|
||||||
|
tooltip: {
|
||||||
|
valueFormatter: function (value) {
|
||||||
|
return value + '회';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
label: {
|
||||||
|
show: true,
|
||||||
|
position: 'top'
|
||||||
|
},
|
||||||
|
data: dataNOT
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '인원',
|
||||||
|
type: 'line',
|
||||||
|
yAxisIndex: 1,
|
||||||
|
tooltip: {
|
||||||
|
valueFormatter: function (value) {
|
||||||
|
return value + '명';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
label: {
|
||||||
|
show: true,
|
||||||
|
position: 'top'
|
||||||
|
},
|
||||||
|
data: dataNOP
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
//차트 옵션 적용
|
||||||
],
|
chartAll.setOption(optionAll);
|
||||||
}
|
|
||||||
|
|
||||||
//차트 옵션 적용
|
|
||||||
chartNOT.setOption(optionNOT);
|
|
||||||
</script>
|
|
||||||
<!-- /횟수 차트 -->
|
|
||||||
|
|
||||||
<!-- 인원 차트 -->
|
|
||||||
<div id="chartNumOfPeople" style="float:right; width: 50%; height:600px;">
|
|
||||||
</div>
|
|
||||||
<script type="text/javascript">
|
|
||||||
<!-- 차트 선언 -->
|
|
||||||
var chartNOP = echarts.init(document.getElementById('chartNumOfPeople'));
|
|
||||||
<!-- 차트 옵션 지정하기 -->
|
|
||||||
var optionNOP = {
|
|
||||||
// 차트 제목
|
|
||||||
title: {
|
|
||||||
text: '월별 인원 차트(총합 :' + dataNOPSum +')',
|
|
||||||
},
|
|
||||||
// x축 라벨
|
|
||||||
xAxis: {
|
|
||||||
data: month,
|
|
||||||
},
|
|
||||||
yAxis: {},
|
|
||||||
series: [
|
|
||||||
{
|
|
||||||
name: '개수',
|
|
||||||
type: 'bar', // 막대 그래프
|
|
||||||
data: dataNOP,
|
|
||||||
label: {
|
|
||||||
show: true,
|
|
||||||
position: 'top'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
],
|
|
||||||
}
|
|
||||||
|
|
||||||
<!-- 차트 옵션 적용 -->
|
|
||||||
chartNOP.setOption(optionNOP);
|
|
||||||
</script>
|
</script>
|
||||||
</div>
|
</div>
|
||||||
<!-- /인원 차트 -->
|
|
||||||
<!-- /월별 횟수/교육인원 차트 -->
|
<!-- /월별 횟수/교육인원 차트 -->
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -240,14 +240,13 @@ function usrJoin(){
|
|||||||
<div class="inner">
|
<div class="inner">
|
||||||
<div class="top_link">
|
<div class="top_link">
|
||||||
<ul>
|
<ul>
|
||||||
<!-- <li><a href="https://edu-copyright.or.kr/portal/main.do">포털사이트</a></li>
|
<!-- 240119 요청으로 인하여 운영서버는 링크 제외 -->
|
||||||
<li><a href="https://edu-copyright.or.kr/user/main/main.do">저작권e배움터</a></li>
|
<c:if test="${environment ne 'real' }">
|
||||||
<li><a href="https://edu-copyright.or.kr/dsprUser/main/main.do">장애인e배움터</a></li>
|
<li><a href="#goLink" onclick="goLink('portal');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">포털사이트</a></li>
|
||||||
<li class="on"><a href="https://www.edu-copyright.or.kr/offedu/web/main/mainPage.do">저작권배움터</a></li> -->
|
<li><a href="#goLink" onclick="goLink('user');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">저작권e배움터</a></li>
|
||||||
<li><a href="#goLink" onclick="goLink('portal');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">포털사이트</a></li>
|
<li><a href="#goLink" onclick="goLink('dsprUser');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">장애인e배움터</a></li>
|
||||||
<li><a href="#goLink" onclick="goLink('user');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">저작권e배움터</a></li>
|
<li class="on"><a href="#goLink" onclick="goLink('offedu');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">저작권배움터</a></li>
|
||||||
<li><a href="#goLink" onclick="goLink('dsprUser');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">장애인e배움터</a></li>
|
</c:if>
|
||||||
<li class="on"><a href="#goLink" onclick="goLink('offedu');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">저작권배움터</a></li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<!-- <div class="area_left">
|
<!-- <div class="area_left">
|
||||||
@ -311,14 +310,13 @@ function usrJoin(){
|
|||||||
<div class="inner">
|
<div class="inner">
|
||||||
<div class="top_link">
|
<div class="top_link">
|
||||||
<ul>
|
<ul>
|
||||||
<!-- <li><a href="https://edu-copyright.or.kr/portal/main.do">포털사이트</a></li>
|
<!-- 240119 요청으로 인하여 운영서버는 링크 제외 -->
|
||||||
<li><a href="https://edu-copyright.or.kr/user/main/main.do">저작권e배움터</a></li>
|
<c:if test="${environment ne 'real' }">
|
||||||
<li><a href="https://edu-copyright.or.kr/dsprUser/main/main.do">장애인e배움터</a></li>
|
<li><a href="#goLink" onclick="goLink('portal');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">포털사이트</a></li>
|
||||||
<li class="on"><a href="https://edu-copyright.or.kr/offedu/web/main/mainPage.do">저작권배움터</a></li> -->
|
<li><a href="#goLink" onclick="goLink('user');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">저작권e배움터</a></li>
|
||||||
<li><a href="#goLink" onclick="goLink('portal');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">포털사이트</a></li>
|
<li><a href="#goLink" onclick="goLink('dsprUser');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">장애인e배움터</a></li>
|
||||||
<li><a href="#goLink" onclick="goLink('user');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">저작권e배움터</a></li>
|
<li class="on"><a href="#goLink" onclick="goLink('offedu');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">저작권배움터</a></li>
|
||||||
<li><a href="#goLink" onclick="goLink('dsprUser');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">장애인e배움터</a></li>
|
</c:if>
|
||||||
<li class="on"><a href="#goLink" onclick="goLink('offedu');return false;" onkeypress="this.onclick;" title="새창열림" target="_blank">저작권배움터</a></li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<!--<div class="area_left">
|
<!--<div class="area_left">
|
||||||
|
|||||||
@ -40,9 +40,44 @@ function fn_goDetail(cmmNotifyOrd){
|
|||||||
form.submit();
|
form.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function chkDelete(){
|
||||||
|
var chkLen = $(listForm).find("input[name=chk]:checked").length;
|
||||||
|
if(chkLen == 0){
|
||||||
|
alert("선택된 항목이 없습니다.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(confirm("삭제하시겠습니까?")){
|
||||||
|
var data = new FormData(document.getElementById("listForm"));
|
||||||
|
var url = "<c:url value='/web/my/myNotifyMngDeleteAjax.do'/>"
|
||||||
|
$.ajax({
|
||||||
|
type : "Post",
|
||||||
|
url : url,
|
||||||
|
data : data,
|
||||||
|
dataType : 'json',
|
||||||
|
async : false,
|
||||||
|
processData : false,
|
||||||
|
contentType : false,
|
||||||
|
cache : false,
|
||||||
|
success : function(returnData){
|
||||||
|
if(returnData.result == "success"){
|
||||||
|
alert("삭제되었습니다.");
|
||||||
|
location.reload();
|
||||||
|
}else{
|
||||||
|
alert("실패하였습니다.")
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error : function(request, status, error){
|
||||||
|
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@ -81,12 +116,15 @@ function fn_goDetail(cmmNotifyOrd){
|
|||||||
<table>
|
<table>
|
||||||
<caption>내알림 : 분야, 메시지, 등록일 등의 정보제공</caption>
|
<caption>내알림 : 분야, 메시지, 등록일 등의 정보제공</caption>
|
||||||
<colgroup>
|
<colgroup>
|
||||||
|
<col style="width:3%;">
|
||||||
|
<col style="width:13%;">
|
||||||
|
<col style="width:13%;">
|
||||||
<col style="width:10%;">
|
<col style="width:10%;">
|
||||||
<col style="width:13%;">
|
|
||||||
<col style="width:13%;">
|
|
||||||
</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>
|
||||||
@ -95,6 +133,9 @@ function fn_goDetail(cmmNotifyOrd){
|
|||||||
<tbody>
|
<tbody>
|
||||||
<c:forEach var="list" items="${list}">
|
<c:forEach var="list" items="${list}">
|
||||||
<tr onclick="fn_goDetail('${list.cmmNotifyOrd}')" onkeypress="if(event.keyCode == 13){fn_goDetail('${list.cmmNotifyOrd}');}" style="cursor: pointer;" tabindex="0" >
|
<tr onclick="fn_goDetail('${list.cmmNotifyOrd}')" onkeypress="if(event.keyCode == 13){fn_goDetail('${list.cmmNotifyOrd}');}" style="cursor: pointer;" tabindex="0" >
|
||||||
|
<td onclick="event.cancelBubble=true">
|
||||||
|
<input name="chk" id="<c:out value="${list.cmmNotifyOrd}"/>" type="checkbox" value="<c:out value="${list.cmmNotifyOrd}"/>"/> <label for="<c:out value="${list.cmmNotifyOrd}"/>"></label>
|
||||||
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<c:if test="${list.notifyChk ne 'Y'}">
|
<c:if test="${list.notifyChk ne 'Y'}">
|
||||||
<span class="mypage_new">NEW</span>
|
<span class="mypage_new">NEW</span>
|
||||||
@ -126,6 +167,7 @@ function fn_goDetail(cmmNotifyOrd){
|
|||||||
|
|
||||||
<div class="btn_wrap btn_layout01">
|
<div class="btn_wrap btn_layout01">
|
||||||
<div class="btn_left">
|
<div class="btn_left">
|
||||||
|
<button type="button" class="btnType01" onclick="chkDelete();" />삭제</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn_center">
|
<div class="btn_center">
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -143,7 +143,7 @@
|
|||||||
<li>
|
<li>
|
||||||
<div class="wrap">
|
<div class="wrap">
|
||||||
<div class="title">
|
<div class="title">
|
||||||
<p><img src="/offedu/visitEdu/usr/publish/images/content/mypage_icon03.png" alt="체험교실 마이페이지 아이콘">체험교실</p>
|
<p><img src="/offedu/visitEdu/usr/publish/images/content/mypage_icon03.png" alt="체험교실 마이페이지 아이콘"> 체험교실</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="inner_text" style="text-align: left;">
|
<div class="inner_text" style="text-align: left;">
|
||||||
<a href="#" onclick="fn_goExprnListForm(20)">
|
<a href="#" onclick="fn_goExprnListForm(20)">
|
||||||
|
|||||||
@ -56,6 +56,7 @@
|
|||||||
.popup_cont .tb_type01.tb_write {margin:0 0 20px 0;}
|
.popup_cont .tb_type01.tb_write {margin:0 0 20px 0;}
|
||||||
.popup_cont .popup_cont.upload_area {margin:-20px 0 0 0;}
|
.popup_cont .popup_cont.upload_area {margin:-20px 0 0 0;}
|
||||||
.popup_cont .pop_btn_wrap.btn_layout01 {margin:-20px 0 0 0;}
|
.popup_cont .pop_btn_wrap.btn_layout01 {margin:-20px 0 0 0;}
|
||||||
|
.popup_cont .pop_btn_wrap .qr_btn{margin: 40px 0 0 0;}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
<script type="text/javaScript" language="javascript">
|
<script type="text/javaScript" language="javascript">
|
||||||
|
|||||||
@ -13,6 +13,16 @@
|
|||||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||||
|
|
||||||
<script type="text/javaScript" language="javascript">
|
<script type="text/javaScript" language="javascript">
|
||||||
|
|
||||||
|
$( document ).ready(function(){
|
||||||
|
|
||||||
|
if (${empty list}){
|
||||||
|
alert("운영 중인 체험교실이 없습니다.");
|
||||||
|
location.href = "<c:url value='/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/exprnClsrmAplctGuide.do'/>";
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
function linkPage(pageNo){
|
function linkPage(pageNo){
|
||||||
var listForm = document.listForm ;
|
var listForm = document.listForm ;
|
||||||
listForm.pageIndex.value = pageNo ;
|
listForm.pageIndex.value = pageNo ;
|
||||||
|
|||||||
@ -550,7 +550,7 @@
|
|||||||
<dt>전체 교육인원</dt>
|
<dt>전체 교육인원</dt>
|
||||||
<dd>
|
<dd>
|
||||||
<label for="trgtPrsnlRealTxt" class="label">전체 교육인원</label>
|
<label for="trgtPrsnlRealTxt" class="label">전체 교육인원</label>
|
||||||
<input type="text" id="trgtPrsnlRealTxt" onkeyup="onlyNumber(this);" value="${info.trgtPrsnlReal}" title="전체 교육인원" size="20" maxlength="3">
|
<input type="text" id="trgtPrsnlRealTxt" onblur="onlyNumber(this);" value="${info.trgtPrsnlReal}" title="전체 교육인원" size="20" maxlength="3">
|
||||||
</dd>
|
</dd>
|
||||||
</dl>
|
</dl>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -20,7 +20,7 @@
|
|||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script type="text/javaScript" language="javascript">
|
<script type="text/javaScript" language="javascript">
|
||||||
var aprvlCd = ${info.aprvlCd}
|
var aprvlCd = "${info.aprvlCd}";
|
||||||
|
|
||||||
$( document ).ready(function(){
|
$( document ).ready(function(){
|
||||||
if(${info == null}){
|
if(${info == null}){
|
||||||
|
|||||||
@ -750,7 +750,7 @@
|
|||||||
<div class="tb_type02 tb_type02_write">
|
<div class="tb_type02 tb_type02_write">
|
||||||
<table class="addClassRow" rowLimit="1" >
|
<table class="addClassRow" rowLimit="1" >
|
||||||
<colgroup>
|
<colgroup>
|
||||||
<col style="width: 13%;">
|
<col style="width: 14%;">
|
||||||
<col style="width: 25%;">
|
<col style="width: 25%;">
|
||||||
<col style="width: auto;">
|
<col style="width: auto;">
|
||||||
<col style="width: 15%;">
|
<col style="width: 15%;">
|
||||||
|
|||||||
@ -272,7 +272,7 @@ $(document).ready(function(){
|
|||||||
<div class="popup_cont">
|
<div class="popup_cont">
|
||||||
<div class="cont_body">
|
<div class="cont_body">
|
||||||
|
|
||||||
<div class="pop_tb_type02">
|
<div class="pop_tb_type02 qr_wrap">
|
||||||
<!--
|
<!--
|
||||||
<table>
|
<table>
|
||||||
<caption>교육일, 차시, 구분, 대상, 배정강사, 인원, 설문완료 여부 등의 정보제공</caption>
|
<caption>교육일, 차시, 구분, 대상, 배정강사, 인원, 설문완료 여부 등의 정보제공</caption>
|
||||||
@ -474,7 +474,7 @@ $(document).ready(function(){
|
|||||||
|
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<div id="qrcode"></div>
|
<div id="qrcode" class="qr_img"></div>
|
||||||
|
|
||||||
<br/>
|
<br/>
|
||||||
|
|
||||||
@ -485,7 +485,7 @@ $(document).ready(function(){
|
|||||||
<div class="pop_btn_wrap btn_layout01">
|
<div class="pop_btn_wrap btn_layout01">
|
||||||
<div class="btn_left">
|
<div class="btn_left">
|
||||||
</div>
|
</div>
|
||||||
<div class="btn_center">
|
<div class="btn_center qr_btn">
|
||||||
|
|
||||||
<!-- <button type="button" class="btnType05" id="popupSubmin" onclick="popupSrvySendSubmit();">제출</button> -->
|
<!-- <button type="button" class="btnType05" id="popupSubmin" onclick="popupSrvySendSubmit();">제출</button> -->
|
||||||
<button type="button" class="btnType05" id="popupSubmin" onclick="onclickPrint();" title="새창 열림">출력</button>
|
<button type="button" class="btnType05" id="popupSubmin" onclick="onclickPrint();" title="새창 열림">출력</button>
|
||||||
|
|||||||
@ -778,7 +778,7 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
|
|||||||
.mypage_wrap .mypage .wrap{height: 178px; border-radius: 10px; background-color: #eaedf1;}
|
.mypage_wrap .mypage .wrap{height: 178px; border-radius: 10px; background-color: #eaedf1;}
|
||||||
.mypage_wrap .mypage .wrap .title{border-radius: 10px 10px 0 0; background-color: #3a72db; text-align: center; font-size: 20px; color: #fff; font-weight: 500; line-height: 53px;}
|
.mypage_wrap .mypage .wrap .title{border-radius: 10px 10px 0 0; background-color: #3a72db; text-align: center; font-size: 20px; color: #fff; font-weight: 500; line-height: 53px;}
|
||||||
.mypage_wrap .mypage .wrap .title p img{margin: 0 0 4px 0;}
|
.mypage_wrap .mypage .wrap .title p img{margin: 0 0 4px 0;}
|
||||||
.mypage_wrap .mypage .wrap .inner_text{width: calc(100% - 68px); height: calc(100% - 116px); padding: 7px 7px 10px 7px; margin: 23px auto 0 auto; border-radius: 10px; background-color: #fff; font-size: 18px; font-weight: 400; color: #666; text-align: center; line-height: 1.4;}
|
.mypage_wrap .mypage .wrap .inner_text{width: calc(100% - 68px); height: calc(100% - 116px); padding: 7px 7px 10px 17px; margin: 23px auto 0 auto; border-radius: 10px; background-color: #fff; font-size: 18px; font-weight: 400; color: #666; text-align: center; line-height: 1.4;}
|
||||||
.mypage_wrap .mypage .wrap .inner_text a i{display: inline-block; width: 4px; height: 4px; background-color: #3a72db; margin: 0 5px 4px 0; border-radius: 100%;}
|
.mypage_wrap .mypage .wrap .inner_text a i{display: inline-block; width: 4px; height: 4px; background-color: #3a72db; margin: 0 5px 4px 0; border-radius: 100%;}
|
||||||
.mypage_wrap .mypage .wrap .inner_text a p span{margin: 0 0 0 20px; font-size: 22px; font-weight: 500; color: #222;}
|
.mypage_wrap .mypage .wrap .inner_text a p span{margin: 0 0 0 20px; font-size: 22px; font-weight: 500; color: #222;}
|
||||||
.mypage_wrap .mypage .wrap .inner_text a:hover *{color: #e95504;}
|
.mypage_wrap .mypage .wrap .inner_text a:hover *{color: #e95504;}
|
||||||
@ -876,7 +876,7 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
|
|||||||
/*마이페이지 추가*/
|
/*마이페이지 추가*/
|
||||||
.mypage_wrap .mypage{margin: 0 0 20px 0;}
|
.mypage_wrap .mypage{margin: 0 0 20px 0;}
|
||||||
.mypage_wrap .mypage li{width: calc((100% - 45px)/2); margin: 0 0 40px 0;}
|
.mypage_wrap .mypage li{width: calc((100% - 45px)/2); margin: 0 0 40px 0;}
|
||||||
.mypage_wrap .mypage .wrap .inner_text{width: calc(100% - 67px); height: calc(100% - 116px); padding: 7px 7px 11px 7px; margin: 21px auto 0 auto;}
|
.mypage_wrap .mypage .wrap .inner_text{width: calc(100% - 67px); height: calc(100% - 116px); padding: 7px 7px 11px 17px; margin: 21px auto 0 auto;}
|
||||||
/*.mypage_wrap .mypage_table .right{margin: 0 40px 0 0;}*/
|
/*.mypage_wrap .mypage_table .right{margin: 0 40px 0 0;}*/
|
||||||
|
|
||||||
.tb_tit01{display: block;}
|
.tb_tit01{display: block;}
|
||||||
@ -1137,7 +1137,7 @@ select.selType1 {height: 40px; border: 1px solid #d5d5d5; border-radius: 5px; pa
|
|||||||
/*마이페이지 추가*/
|
/*마이페이지 추가*/
|
||||||
/*.mypage_wrap .mypage{margin: 0 0 -40px 0;}*/
|
/*.mypage_wrap .mypage{margin: 0 0 -40px 0;}*/
|
||||||
.mypage_wrap .mypage li{width: calc((100% - 26px)/2); margin: 0 0 25px 0;}
|
.mypage_wrap .mypage li{width: calc((100% - 26px)/2); margin: 0 0 25px 0;}
|
||||||
.mypage_wrap .mypage .wrap .inner_text{width: calc(100% - 63px); height: calc(100% - 113px); padding: 9px 7px 8px 7px; margin: 21px auto 0 auto;}
|
.mypage_wrap .mypage .wrap .inner_text{width: calc(100% - 63px); height: calc(100% - 113px); padding: 9px 7px 8px 17px; margin: 21px auto 0 auto;}
|
||||||
.time_layer.on{position:fixed; width:100%; top:calc(100% - 143px); left:0; border:0;}
|
.time_layer.on{position:fixed; width:100%; top:calc(100% - 143px); left:0; border:0;}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -130,6 +130,11 @@
|
|||||||
/*성인 > 완료상세 > 교육완료 내용 > 강사 참석 확인서 업로드 팝업 > 확인, 취소 버튼 여백 수정*/
|
/*성인 > 완료상세 > 교육완료 내용 > 강사 참석 확인서 업로드 팝업 > 확인, 취소 버튼 여백 수정*/
|
||||||
.upload_pop .upload_btn{margin: 20px 0 0 0;}
|
.upload_pop .upload_btn{margin: 20px 0 0 0;}
|
||||||
|
|
||||||
|
/*청소년, 성인 > 완료상세 > 설문QR 레이어팝업 > QR코드 가운데 정렬 수정 + 스크롤 없앰*/
|
||||||
|
.popup_cont .cont_body .qr_wrap{margin-bottom: 0px; overflow-y: hidden;}
|
||||||
|
.popup_cont .cont_body .qr_wrap .qr_img img{margin: 0 auto; /*display: block;*/}
|
||||||
|
|
||||||
|
|
||||||
@media all and (max-width: 767px){
|
@media all and (max-width: 767px){
|
||||||
.popup_cont {padding: 10px;}
|
.popup_cont {padding: 10px;}
|
||||||
.popup_wrap.popType02 {width: 360px;}
|
.popup_wrap.popType02 {width: 360px;}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user